GitHits session
Three.js Shader and Geometry Investigation
Investigated Three.js 0.185.1 shaders, postprocessing, math, geometry, simplex-noise, and related rendering code across ToonLab and Godot repositories.
Session overview
GitHits Remote MCP Session
Aug 7, 2026, 1:13 PM – Aug 7, 2026, 8:08 PM UTC
- Tool calls
- 441
- Tools
- 6
- Targets
- 15
- Wall time
- 43 min 10 s
- Successful
- 437
- Failed
- 4
Session activity
What the agent did
The code, documentation, package data, and examples used by the agent in this session.
+0:00PKG InfoPackage intelligencepkg:npm:three
pkg:npm:threeResult summary
{ "outcome": "result_returned", "packages": [ "npm:three" ], "status": "success" }Request
Request payload
{ "name": "three", "registry": "npm" }Response
Response payload
{ "summary": { "outcome": "result_returned", "packages": [ "npm:three" ], "status": "success" }, "title": null, "content": null }+0:22Code GrepCode navigationthree“Ocean.js”
Ocean.js
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 0, "context_lines_before": 0, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 10, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "examples/jsm/objects" } ], "pattern": "Ocean.js", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+0:23Get ExampleGenerated examplethree.js toon cel shading outline inverted hull post-process
three.js toon cel shading outline inverted hull post-process · javascript · strict
three.js Toon Cel Shading with Inverted-Hull and Post-Processing Outline
import * as THREE from 'three'; import { OrbitControls } from 'three/addons/controls/OrbitControls.js'; import { EffectComposer } from 'three/addons/postprocessing/EffectComposer.js'; import { RenderPass } from 'three/addons/postprocessing/RenderPass.js'; import { OutlinePass } from 'three/addons/postprocessing/OutlinePass.js'; import { OutputPass } from 'three/addons/postprocessing/OutputPass.js'; const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(window.devicePixelRatio, 2)); renderer.setSize(window.innerWidth, window.innerHeight); renderer.outputColorSpace = THREE.SRGBColorSpace; document.body.style.margin = '0'; document.body.appendChild(renderer.domElement); const scene = new THREE.Scene(); scene.background = new THREE.Color(0xbfe3ff); scene.fog = new THREE.Fog(0xbfe3ff, 8, 22); const camera = new THREE.PerspectiveCamera( 45, window.innerWidth / window.innerHeight, 0.1, 100, ); camera.position.set(4, 3, 6); const controls = new OrbitControls(camera, renderer.domElement); controls.target.set(0, 1, 0); controls.enableDamping = true; const hemiLight = new THREE.HemisphereLight(0xffffff, 0x52613e, 2.0); scene.add(hemiLight); const keyLight = new THREE.DirectionalLight(0xfff1d0, 3.0); keyLight.position.set(4, 7, 5); keyLight.castShadow = true; scene.add(keyLight); // A nearest-filtered ramp turns diffuse lighting into discrete cel bands. function createToonRamp(bands) { const pixels = new Uint8Array(bands); for (let i = 0; i < bands; i++) { pixels[i] = Math.round((i / (bands - 1)) * 255); } const ramp = new THREE.DataTexture(pixels, bands, 1, THREE.RedFormat); ramp.minFilter = THREE.NearestFilter; ramp.magFilter = THREE.NearestFilter; ramp.needsUpdate = true; return ramp; } const toonRamp = createToonRamp(4); const toonMaterial = new THREE.MeshToonMaterial({ color: 0x63a7df, gradientMap: toonRamp, }); const character = new THREE.Group(); scene.add(character); const body = new THREE.Mesh( new THREE.SphereGeometry(1.15, 32, 20), toonMaterial, ); body.scale.set(1, 1.25, 0.8); body.position.y = 1.25; body.castShadow = true; body.receiveShadow = true; character.add(body); const head = new THREE.Mesh( new THREE.SphereGeometry(0.72, 32, 20), new THREE.MeshToonMaterial({ color: 0xffc58f, gradientMap: toonRamp }), ); head.position.set(0, 2.65, 0); head.castShadow = true; character.add(head); // Inverted hull: expand along vertex normals and render the copy back-facing. // Back-face culling hides the expanded copy except at the silhouette. function createInvertedHull(mesh, thickness, color = 0x172238) { const geometry = mesh.geometry.clone(); const positions = geometry.attributes.position; const normals = geometry.attributes.normal; if (!normals) { geometry.computeVertexNormals(); } for (let i = 0; i < positions.count; i++) { positions.setXYZ( i, positions.getX(i) + normals.getX(i) * thickness, positions.getY(i) + normals.getY(i) * thickness, positions.getZ(i) + normals.getZ(i) * thickness, ); } positions.needsUpdate = true; geometry.computeBoundingSphere(); const ink = new THREE.MeshBasicMaterial({ color, side: THREE.BackSide, depthWrite: true, }); const hull = new THREE.Mesh(geometry, ink); hull.renderOrder = -1; mesh.add(hull); return hull; } createInvertedHull(body, 0.055); createInvertedHull(head, 0.04); // Ground makes the toon lighting and silhouette easier to see. const ground = new THREE.Mesh( new THREE.PlaneGeometry(30, 30), new THREE.MeshToonMaterial({ color: 0x6f8b5c, gradientMap: toonRamp }), ); ground.rotation.x = -Math.PI / 2; ground.receiveShadow = true; scene.add(ground); renderer.shadowMap.enabled = true; // The post-process pass adds a second, screen-space outline around the selected // object. It complements the inverted hull with a controllable pixel outline. const composer = new EffectComposer(renderer); composer.addPass(new RenderPass(scene, camera)); const outlinePass = new OutlinePass( new THREE.Vector2(window.innerWidth, window.innerHeight), scene, camera, [character], ); outlinePass.edgeStrength = 1.6; outlinePass.edgeGlow = 0.15; outlinePass.edgeThickness = 1.25; outlinePass.pulsePeriod = 0; outlinePass.visibleEdgeColor.set(0x10131a); outlinePass.hiddenEdgeColor.set(0x10131a); composer.addPass(outlinePass); composer.addPass(new OutputPass()); function resize() { camera.aspect = window.innerWidth / window.innerHeight; camera.updateProjectionMatrix(); renderer.setSize(window.innerWidth, window.innerHeight); composer.setSize(window.innerWidth, window.innerHeight); } window.addEventListener('resize', resize); const clock = new THREE.Clock(); function animate() { requestAnimationFrame(animate); character.rotation.y = clock.getElapsedTime() * 0.35; controls.update(); composer.render(); } animate();References
2- call-me-sensei/toonlabsrc/post/postProcessing.js
Direct JavaScript/three.js post-processing pipeline implementation for toon-style screen-space outlines (outlineStrength/Depth/Luma, screenOutline, and composite passes). Doesn’t specifically show an inverted-hull outline pass, so it’s a strong but incomplete match to the “inverted hull” part.
- MattPoetker/origindbexamples/originlands/public/main.js
Direct Three.js example implementing toon cel shading plus an outline via inverted-hull (expanded backface ink) in main.js; includes the core technique needed for toon cel shading with inverted-hull outline, though it’s not a post-process OutlinePass-based approach.
Request
Request payload
{ "query": "three.js toon cel shading outline inverted hull post-process", "language": "javascript", "license_mode": "strict" }- call-me-sensei/toonlabsrc/post/postProcessing.js
+3:13Code FilesCode navigationthreeexamples/jsm/postprocessing/
pkg:npm:three@0.185.1Result summary
{ "code_index_state": "current", "files": [ "examples/jsm/postprocessing/AfterimagePass.js", "examples/jsm/postprocessing/BloomPass.js", "examples/jsm/postprocessing/BokehPass.js", "examples/jsm/postprocessing/ClearPass.js", "examples/jsm/postprocessing/CubeTexturePass.js", "examples/jsm/postprocessing/DotScreenPass.js", "examples/jsm/postprocessing/EffectComposer.js", "examples/jsm/postprocessing/FXAAPass.js", "examples/jsm/postprocessing/FilmPass.js", "examples/jsm/postprocessing/GTAOPass.js", "examples/jsm/postprocessing/GlitchPass.js", "examples/jsm/postprocessing/HalftonePass.js", "examples/jsm/postprocessing/LUTPass.js", "examples/jsm/postprocessing/MaskPass.js", "examples/jsm/postprocessing/OutlinePass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/Pass.js", "examples/jsm/postprocessing/RenderPass.js", "examples/jsm/postprocessing/RenderPixelatedPass.js", "examples/jsm/postprocessing/RenderTransitionPass.js" ], "has_more": false, "indexing_status": "indexed", "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/AfterimagePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/AfterimagePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/BloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BloomPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/BokehPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BokehPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/ClearPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/ClearPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/CubeTexturePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/CubeTexturePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/DotScreenPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/DotScreenPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/FXAAPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FXAAPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/FilmPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FilmPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/GTAOPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/GTAOPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/GlitchPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/GlitchPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/HalftonePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/HalftonePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/LUTPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/LUTPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/MaskPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/MaskPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/OutlinePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutlinePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/Pass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/Pass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/RenderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/RenderPixelatedPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderPixelatedPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/RenderTransitionPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderTransitionPass.js", "repo_url": "https://github.com/mrdoob/three.js" } ], "result_pointers_truncated": true, "returned": 30, "status": "success", "total": 30 }Request
Request payload
{ "exclude_doc_files": false, "exclude_test_files": false, "include_hidden": false, "limit": 100, "offset": 0, "package_name": "three", "path_prefix": "examples/jsm/postprocessing/", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }ResponseTruncated
Response payload
{ "summary": { "code_index_state": "current", "files": [ "examples/jsm/postprocessing/AfterimagePass.js", "examples/jsm/postprocessing/BloomPass.js", "examples/jsm/postprocessing/BokehPass.js", "examples/jsm/postprocessing/ClearPass.js", "examples/jsm/postprocessing/CubeTexturePass.js", "examples/jsm/postprocessing/DotScreenPass.js", "examples/jsm/postprocessing/EffectComposer.js", "examples/jsm/postprocessing/FXAAPass.js", "examples/jsm/postprocessing/FilmPass.js", "examples/jsm/postprocessing/GTAOPass.js", "examples/jsm/postprocessing/GlitchPass.js", "examples/jsm/postprocessing/HalftonePass.js", "examples/jsm/postprocessing/LUTPass.js", "examples/jsm/postprocessing/MaskPass.js", "examples/jsm/postprocessing/OutlinePass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/Pass.js", "examples/jsm/postprocessing/RenderPass.js", "examples/jsm/postprocessing/RenderPixelatedPass.js", "examples/jsm/postprocessing/RenderTransitionPass.js" ], "has_more": false, "indexing_status": "indexed", "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/AfterimagePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/AfterimagePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/BloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BloomPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/BokehPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BokehPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/ClearPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/ClearPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/CubeTexturePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/CubeTexturePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/DotScreenPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/DotScreenPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/FXAAPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FXAAPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/FilmPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FilmPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/GTAOPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/GTAOPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/GlitchPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/GlitchPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/HalftonePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/HalftonePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/LUTPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/LUTPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/MaskPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/MaskPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/OutlinePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutlinePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/Pass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/Pass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/RenderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/RenderPixelatedPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderPixelatedPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/RenderTransitionPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderTransitionPass.js", "repo_url": "https://github.com/mrdoob/three.js" } ], "result_pointers_truncated": true, "returned": 30, "status": "success", "total": 30 }, "title": null, "content": null }This shared record contains a truncated response.
+3:13PKG InfoPackage intelligencepkg:npm:three
pkg:npm:threeResult summary
{ "outcome": "result_returned", "packages": [ "npm:three" ], "status": "success" }Request
Request payload
{ "name": "three", "registry": "npm" }Response
Response payload
{ "summary": { "outcome": "result_returned", "packages": [ "npm:three" ], "status": "success" }, "title": null, "content": null }+3:32Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 150, "indexing_status": "indexed", "language": "javascript", "line_count": 150, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 150, "file_path": "examples/jsm/objects/Water.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/objects/Water.js#L1-L150", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 374 }Request
Request payload
{ "end_line": 150, "file_path": "examples/jsm/objects/Water.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 150, "indexing_status": "indexed", "language": "javascript", "line_count": 150, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 150, "file_path": "examples/jsm/objects/Water.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/objects/Water.js#L1-L150", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 374 }, "title": null, "content": null }+3:32Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 110, "indexing_status": "indexed", "language": "javascript", "line_count": 110, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js#L1-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 365 }Request
Request payload
{ "end_line": 110, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 110, "indexing_status": "indexed", "language": "javascript", "line_count": 110, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js#L1-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 365 }, "title": null, "content": null }+3:33Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 120, "indexing_status": "indexed", "language": "javascript", "line_count": 120, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L1-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 148 }Request
Request payload
{ "end_line": 120, "file_path": "examples/jsm/postprocessing/OutputPass.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 120, "indexing_status": "indexed", "language": "javascript", "line_count": 120, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L1-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 148 }, "title": null, "content": null }+3:39Code GrepCode navigationthree“outputColorSpace”
outputColorSpace
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 310, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L298-L310", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 298 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2297, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2285-L2297", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2285 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2297, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2285-L2297", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2285 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2348, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2336-L2348", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2336 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2402, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2390-L2402", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2390 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3604, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3592-L3604", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3592 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3606, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3594-L3606", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3594 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3610, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3598-L3610", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3598 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3612, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3600-L3612", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3600 } ], "returned_matches": 9, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 9, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 12, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "outputColorSpace", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 310, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L298-L310", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 298 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2297, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2285-L2297", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2285 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2297, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2285-L2297", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2285 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2348, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2336-L2348", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2336 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2402, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2390-L2402", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2390 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3604, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3592-L3604", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3592 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3606, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3594-L3606", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3594 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3610, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3598-L3610", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3598 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3612, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3600-L3612", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3600 } ], "returned_matches": 9, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 9, "unique_files_matched": 1 }, "title": null, "content": null }+3:39Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 110, "indexing_status": "indexed", "language": "javascript", "line_count": 110, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L1-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 524 }Request
Request payload
{ "end_line": 110, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 110, "indexing_status": "indexed", "language": "javascript", "line_count": 110, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L1-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 524 }, "title": null, "content": null }+3:45Code GrepCode navigationthree“constructor( width = 1, height = 1, options = {} )”
constructor( width = 1, height = 1, options = {} )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/RenderTarget.js", "src/renderers/WebGLRenderTarget.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L40-L60", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 27, "file_path": "src/renderers/WebGLRenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderTarget.js#L7-L27", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 7 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/core/RenderTarget.js" }, { "kind": "GLOB", "value": "src/renderers/common/RenderTarget.js" }, { "kind": "GLOB", "value": "src/renderers/WebGLRenderTarget.js" }, { "kind": "GLOB", "value": "src/core/**" } ], "pattern": "constructor( width = 1, height = 1, options = {} )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/RenderTarget.js", "src/renderers/WebGLRenderTarget.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L40-L60", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 27, "file_path": "src/renderers/WebGLRenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderTarget.js#L7-L27", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 7 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }, "title": null, "content": null }+3:45Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 280, "indexing_status": "indexed", "language": "javascript", "line_count": 131, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 280, "file_path": "examples/jsm/objects/Water.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/objects/Water.js#L150-L280", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 150 } ], "start_line": 150, "status": "success", "total_lines": 374 }Request
Request payload
{ "end_line": 280, "file_path": "examples/jsm/objects/Water.js", "package_name": "three", "registry": "npm", "start_line": 150, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 280, "indexing_status": "indexed", "language": "javascript", "line_count": 131, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 280, "file_path": "examples/jsm/objects/Water.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/objects/Water.js#L150-L280", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 150 } ], "start_line": 150, "status": "success", "total_lines": 374 }, "title": null, "content": null }+3:46Code GrepCode navigationthree“gradientMap”
gradientMap
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "src/renderers/shaders/ShaderLib.js", "src/renderers/shaders/ShaderLib/meshtoon.glsl.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 50, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L34-L50", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 34 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 50, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L34-L50", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 34 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 179, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L163-L179", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 163 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 179, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L163-L179", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 163 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 11, "file_path": "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js#L1-L11", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 13, "file_path": "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js#L1-L13", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 23, "file_path": "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js#L7-L23", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 7 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 25, "file_path": "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js#L9-L25", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 9 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 125, "file_path": "src/renderers/shaders/ShaderLib.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib.js#L109-L125", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 109 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 77, "file_path": "src/renderers/shaders/ShaderLib/meshtoon.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshtoon.glsl.js#L61-L77", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 61 } ], "returned_matches": 10, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 10, "unique_files_matched": 4 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 10, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/shaders/" } ], "pattern": "gradientMap", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "src/renderers/shaders/ShaderLib.js", "src/renderers/shaders/ShaderLib/meshtoon.glsl.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 50, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L34-L50", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 34 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 50, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L34-L50", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 34 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 179, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L163-L179", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 163 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 179, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L163-L179", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 163 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 11, "file_path": "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js#L1-L11", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 13, "file_path": "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js#L1-L13", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 23, "file_path": "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js#L7-L23", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 7 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 25, "file_path": "src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js#L9-L25", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 9 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 125, "file_path": "src/renderers/shaders/ShaderLib.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib.js#L109-L125", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 109 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 77, "file_path": "src/renderers/shaders/ShaderLib/meshtoon.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshtoon.glsl.js#L61-L77", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 61 } ], "returned_matches": 10, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 10, "unique_files_matched": 4 }, "title": null, "content": null }+3:51Get ExampleGenerated exampleGerstner wave ocean shader GLSL sum of waves with CPU height sampling for buoyancy in three.js
Gerstner wave ocean shader GLSL sum of waves with CPU height sampling for buoyancy in three.js · javascript · strict
Three.js Gerstner Ocean Shader with CPU Buoyancy Sampling
import * as THREE from 'three'; // Keep this wave list identical for the GPU shader and CPU sampler. const waves = [ { direction: new THREE.Vector2(1, 0.25).normalize(), amplitude: 0.42, wavelength: 18, steepness: 0.55, speed: 1.0 }, { direction: new THREE.Vector2(-0.35, 1).normalize(), amplitude: 0.22, wavelength: 9, steepness: 0.35, speed: 1.35 }, { direction: new THREE.Vector2(0.8, 0.65).normalize(), amplitude: 0.10, wavelength: 4.5, steepness: 0.25, speed: 1.9 } ]; const waterLevel = 0; const gravity = 9.8; function waveUniforms() { return waves.map((wave) => ({ direction: wave.direction, amplitude: wave.amplitude, wavelength: wave.wavelength, steepness: wave.steepness, speed: wave.speed })); } const vertexShader = /* glsl */ ` uniform float uTime; uniform float uWaterLevel; struct Wave { vec2 direction; float amplitude; float wavelength; float steepness; float speed; }; uniform Wave uWaves[3]; varying vec3 vWorldPosition; varying vec3 vNormal; const float PI = 3.14159265359; vec3 gerstnerDisplacement(vec2 xz, Wave wave, float time) { float k = 2.0 * PI / wave.wavelength; float phaseSpeed = sqrt(9.8 / k) * wave.speed; float phase = k * dot(wave.direction, xz) - phaseSpeed * time; float horizontalAmplitude = wave.steepness * wave.amplitude; return vec3( wave.direction.x * horizontalAmplitude * cos(phase), wave.amplitude * sin(phase), wave.direction.y * horizontalAmplitude * cos(phase) ); } vec3 displacedPosition(vec3 position) { vec3 result = position; for (int i = 0; i < 3; i++) { result += gerstnerDisplacement(position.xz, uWaves[i], uTime); } result.y += uWaterLevel; return result; } void main() { vec3 displaced = displacedPosition(position); float epsilon = 0.05; vec3 displacedX = displacedPosition(position + vec3(epsilon, 0.0, 0.0)); vec3 displacedZ = displacedPosition(position + vec3(0.0, 0.0, epsilon)); vec3 tangentX = displacedX - displaced; vec3 tangentZ = displacedZ - displaced; vec3 localNormal = normalize(cross(tangentZ, tangentX)); vec4 worldPosition = modelMatrix * vec4(displaced, 1.0); vWorldPosition = worldPosition.xyz; vNormal = normalize(mat3(modelMatrix) * localNormal); gl_Position = projectionMatrix * viewMatrix * worldPosition; } `; const fragmentShader = /* glsl */ ` uniform vec3 uDeepColor; uniform vec3 uShallowColor; uniform vec3 uSunDirection; uniform vec3 uCameraPosition; varying vec3 vWorldPosition; varying vec3 vNormal; void main() { vec3 normal = normalize(vNormal); vec3 viewDirection = normalize(uCameraPosition - vWorldPosition); float diffuse = max(dot(normal, normalize(uSunDirection)), 0.0); float fresnel = pow(1.0 - max(dot(normal, viewDirection), 0.0), 3.0); vec3 color = mix(uDeepColor, uShallowColor, diffuse * 0.45 + fresnel * 0.35); color += vec3(0.08, 0.14, 0.18) * diffuse; gl_FragColor = vec4(color, 0.88); } `; function createWaveUniforms() { return waves.map((wave) => ({ direction: { value: wave.direction }, amplitude: { value: wave.amplitude }, wavelength: { value: wave.wavelength }, steepness: { value: wave.steepness }, speed: { value: wave.speed } })); } const scene = new THREE.Scene(); scene.background = new THREE.Color(0x9cc9e8); const camera = new THREE.PerspectiveCamera(55, innerWidth / innerHeight, 0.1, 1000); camera.position.set(12, 9, 16); camera.lookAt(0, 0, 0); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setSize(innerWidth, innerHeight); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); document.body.appendChild(renderer.domElement); const oceanGeometry = new THREE.PlaneGeometry(80, 80, 160, 160); oceanGeometry.rotateX(-Math.PI / 2); const oceanMaterial = new THREE.ShaderMaterial({ vertexShader, fragmentShader, transparent: true, uniforms: { uTime: { value: 0 }, uWaterLevel: { value: waterLevel }, uWaves: { value: createWaveUniforms() }, uDeepColor: { value: new THREE.Color(0x075276) }, uShallowColor: { value: new THREE.Color(0x38a8bd) }, uSunDirection: { value: new THREE.Vector3(0.4, 1, 0.25).normalize() }, uCameraPosition: { value: camera.position } } }); const ocean = new THREE.Mesh(oceanGeometry, oceanMaterial); scene.add(ocean); // This sampler uses the same Gerstner equation as the vertex shader. function sampleWaterHeight(worldX, worldZ, time) { let height = waterLevel; for (const wave of waves) { const k = (2 * Math.PI) / wave.wavelength; const phaseSpeed = Math.sqrt(gravity / k) * wave.speed; const phase = k * (wave.direction.x * worldX + wave.direction.y * worldZ) - phaseSpeed * time; height += wave.amplitude * Math.sin(phase); } return height; } function sampleWaterNormal(worldX, worldZ, time, epsilon = 0.05) { const center = sampleWaterHeight(worldX, worldZ, time); const heightX = sampleWaterHeight(worldX + epsilon, worldZ, time); const heightZ = sampleWaterHeight(worldX, worldZ + epsilon, time); return new THREE.Vector3( -(heightX - center) / epsilon, 1, -(heightZ - center) / epsilon ).normalize(); } // Simple buoyancy body: sample several points, then apply lift and align to the water. const boat = new THREE.Mesh( new THREE.BoxGeometry(2.4, 0.45, 1.1), new THREE.MeshStandardMaterial({ color: 0x8b4b2c, roughness: 0.8 }) ); boat.position.set(0, 1, 0); scene.add(boat); const buoyancyPoints = [ new THREE.Vector3(-0.85, 0, -0.35), new THREE.Vector3(0.85, 0, -0.35), new THREE.Vector3(-0.85, 0, 0.35), new THREE.Vector3(0.85, 0, 0.35) ]; const clock = new THREE.Clock(); const velocity = new THREE.Vector3(); function updateBuoyancy(delta, time) { const averageNormal = new THREE.Vector3(); let submergedPoints = 0; let averageHeight = 0; for (const localPoint of buoyancyPoints) { const worldPoint = boat.localToWorld(localPoint.clone()); const waterY = sampleWaterHeight(worldPoint.x, worldPoint.z, time); const depth = waterY - worldPoint.y; if (depth > 0) { const lift = Math.min(depth * 18, 12); velocity.y += lift * delta; submergedPoints++; averageHeight += waterY; averageNormal.add(sampleWaterNormal(worldPoint.x, worldPoint.z, time)); } } // Gravity and mild damping keep the body from gaining unlimited energy. velocity.y -= 9.8 * delta; velocity.multiplyScalar(Math.pow(0.985, delta * 60)); boat.position.y += velocity.y * delta; if (submergedPoints > 0) { averageHeight /= submergedPoints; const targetY = averageHeight + 0.05; boat.position.y = THREE.MathUtils.lerp(boat.position.y, targetY, 0.08); averageNormal.normalize(); const targetQuaternion = new THREE.Quaternion().setFromUnitVectors( new THREE.Vector3(0, 1, 0), averageNormal ); boat.quaternion.slerp(targetQuaternion, 0.08); } } function animate() { requestAnimationFrame(animate); const delta = Math.min(clock.getDelta(), 0.05); const time = clock.elapsedTime; oceanMaterial.uniforms.uTime.value = time; oceanMaterial.uniforms.uCameraPosition.value.copy(camera.position); updateBuoyancy(delta, time); renderer.render(scene, camera); } addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); }); animate();References
2- majiayu000/claude-skill-registryskills/design/ta-water-shader/SKILL.md
Strong Three.js/R3F Gerstner-wave ocean shader guidance (GLSL + layered waves, foam/caustics), but it focuses on rendering/shader logic and only lightly covers CPU height sampling for buoyancy rather than a concrete CPU sampler implementation.
- majiayu000/claude-skill-registryskills/data/ta-water-shader/SKILL.md
Directly relevant Three.js/R3F Gerstner-wave ocean shader GLSL implementation details (wave summation, normals, foam/caustics) and explicitly mentions buoyancy/floating objects, but it’s documentation-style rather than concrete CPU height-sampling code for buoyancy.
Request
Request payload
{ "query": "Gerstner wave ocean shader GLSL sum of waves with CPU height sampling for buoyancy in three.js", "language": "javascript", "license_mode": "strict" }- majiayu000/claude-skill-registryskills/design/ta-water-shader/SKILL.md
+3:54Get ExampleGenerated examplethree.js onBeforeCompile MeshStandardMaterial inject custom GLSL toon banded lighting shader replace lights_fragment_begin
three.js onBeforeCompile MeshStandardMaterial inject custom GLSL toon banded lighting shader replace lights_fragment_begin · javascript · strict
Inject Banded Toon Lighting into MeshStandardMaterial
import * as THREE from 'three'; export function createToonStandardMaterial(options = {}) { const material = new THREE.MeshStandardMaterial({ color: options.color ?? 0xffffff, roughness: options.roughness ?? 0.8, metalness: options.metalness ?? 0, map: options.map ?? null }); material.userData.toonBands = options.bands ?? 4; material.userData.toonUniforms = { bands: { value: material.userData.toonBands } }; material.onBeforeCompile = (shader) => { const { toonUniforms } = material.userData; shader.uniforms.toonBands = toonUniforms.bands; const lightsBegin = '#include <lights_fragment_begin>'; const toonLighting = ` ${lightsBegin} // Quantize the accumulated direct diffuse lighting into toon bands. float toonDiffuseLuma = dot( reflectedLight.directDiffuse, vec3(0.2126, 0.7152, 0.0722) ); float toonBandCount = max(toonBands, 2.0); float toonBand = floor( clamp(toonDiffuseLuma, 0.0, 1.0) * (toonBandCount - 1.0) + 0.5 ) / (toonBandCount - 1.0); if (toonDiffuseLuma > 0.0001) { reflectedLight.directDiffuse *= toonBand / toonDiffuseLuma; } else { reflectedLight.directDiffuse = vec3(0.0); } `; if (shader.fragmentShader.includes(lightsBegin)) { shader.fragmentShader = shader.fragmentShader.replace( lightsBegin, toonLighting ); } material.userData.shader = shader; }; material.customProgramCacheKey = () => `toon-standard-bands-${material.userData.toonBands}`; return material; } // Example usage: const scene = new THREE.Scene(); const camera = new THREE.PerspectiveCamera(45, innerWidth / innerHeight, 0.1, 100); camera.position.set(2, 2, 5); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setSize(innerWidth, innerHeight); document.body.appendChild(renderer.domElement); const mesh = new THREE.Mesh( new THREE.SphereGeometry(1, 64, 32), createToonStandardMaterial({ color: 0x4f8cff, bands: 4 }) ); scene.add(mesh); scene.add(new THREE.HemisphereLight(0xffffff, 0x223344, 1.2)); const keyLight = new THREE.DirectionalLight(0xffffff, 2.5); keyLight.position.set(3, 4, 2); scene.add(keyLight); function animate() { requestAnimationFrame(animate); mesh.rotation.y += 0.01; renderer.render(scene, camera); } animate();References
2- VRodos/VRodosassets/js/runtime/master/vrodos_master_rendering.js
Uses three.js material `onBeforeCompile` to inject custom GLSL into the shader fragment (via `#include <lights_fragment_end>`). It’s close in technique but doesn’t specifically target `MeshStandardMaterial` toon banded lighting or `lights_fragment_begin`, so it’s only a partial match.
- dmnsgn/vector-fieldweb_modules/three/src/renderers/WebGLRenderer.js
three.js WebGLRenderer implementation code referencing shader chunk markers like `lights_fragment_begin` and lighting integration paths, which is relevant background for replacing/injecting GLSL for toon/banded lighting via `onBeforeCompile`; however it doesn’t directly show the `MeshStandardMaterial` `onBeforeCompile` toon banded lighting override workflow.
Request
Request payload
{ "query": "three.js onBeforeCompile MeshStandardMaterial inject custom GLSL toon banded lighting shader replace lights_fragment_begin", "language": "javascript", "license_mode": "strict" }- VRodos/VRodosassets/js/runtime/master/vrodos_master_rendering.js
+3:55Code GrepCode navigationthree“class Skeleton”
class Skeleton
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/helpers/SkeletonHelper.js", "src/objects/Skeleton.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 33, "file_path": "src/helpers/SkeletonHelper.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/helpers/SkeletonHelper.js#L13-L33", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 13 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 47, "file_path": "src/objects/Skeleton.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Skeleton.js#L27-L47", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 27 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/**/*.js" } ], "pattern": "class Skeleton", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/helpers/SkeletonHelper.js", "src/objects/Skeleton.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 33, "file_path": "src/helpers/SkeletonHelper.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/helpers/SkeletonHelper.js#L13-L33", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 13 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 47, "file_path": "src/objects/Skeleton.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Skeleton.js#L27-L47", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 27 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }, "title": null, "content": null }+3:57Code GrepCode navigationthree“class SkinnedMesh”
class SkinnedMesh
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/objects/SkinnedMesh.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 48, "file_path": "src/objects/SkinnedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/SkinnedMesh.js#L28-L48", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/**/*.js" } ], "pattern": "class SkinnedMesh", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/objects/SkinnedMesh.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 48, "file_path": "src/objects/SkinnedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/SkinnedMesh.js#L28-L48", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+4:01Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 187, "indexing_status": "indexed", "language": "javascript", "line_count": 150, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 187, "file_path": "src/objects/SkinnedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/SkinnedMesh.js#L38-L187", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 38 } ], "start_line": 38, "status": "success", "total_lines": 370 }Request
Request payload
{ "end_line": 187, "file_path": "src/objects/SkinnedMesh.js", "package_name": "three", "registry": "npm", "start_line": 38, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 187, "indexing_status": "indexed", "language": "javascript", "line_count": 150, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 187, "file_path": "src/objects/SkinnedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/SkinnedMesh.js#L38-L187", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 38 } ], "start_line": 38, "status": "success", "total_lines": 370 }, "title": null, "content": null }+4:01Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 186, "indexing_status": "indexed", "language": "javascript", "line_count": 150, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 186, "file_path": "src/objects/Skeleton.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Skeleton.js#L37-L186", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 } ], "start_line": 37, "status": "success", "total_lines": 383 }Request
Request payload
{ "end_line": 186, "file_path": "src/objects/Skeleton.js", "package_name": "three", "registry": "npm", "start_line": 37, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 186, "indexing_status": "indexed", "language": "javascript", "line_count": 150, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 186, "file_path": "src/objects/Skeleton.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Skeleton.js#L37-L186", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 } ], "start_line": 37, "status": "success", "total_lines": 383 }, "title": null, "content": null }+4:10PKG InfoPackage intelligencepkg:npm:simplex-noise
pkg:npm:simplex-noiseResult summary
{ "outcome": "result_returned", "packages": [ "npm:simplex-noise" ], "status": "success" }Request
Request payload
{ "name": "simplex-noise", "registry": "npm" }Response
Response payload
{ "summary": { "outcome": "result_returned", "packages": [ "npm:simplex-noise" ], "status": "success" }, "title": null, "content": null }+4:13Code GrepCode navigationthree“bind( skeleton, bindMatrix )”
bind( skeleton, bindMatrix )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/objects/SkinnedMesh.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 240, "file_path": "src/objects/SkinnedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/SkinnedMesh.js#L220-L240", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 220 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/objects/SkinnedMesh.js" } ], "pattern": "bind( skeleton, bindMatrix )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/objects/SkinnedMesh.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 240, "file_path": "src/objects/SkinnedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/SkinnedMesh.js#L220-L240", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 220 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+4:14Code GrepCode navigationthree“applyBoneTransform”
applyBoneTransform
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/objects/SkinnedMesh.js", "src/objects/SkinnedMesh.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 227, "file_path": "src/objects/SkinnedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/SkinnedMesh.js#L207-L227", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 207 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 329, "file_path": "src/objects/SkinnedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/SkinnedMesh.js#L309-L329", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 309 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/objects/SkinnedMesh.js" } ], "pattern": "applyBoneTransform", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/objects/SkinnedMesh.js", "src/objects/SkinnedMesh.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 227, "file_path": "src/objects/SkinnedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/SkinnedMesh.js#L207-L227", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 207 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 329, "file_path": "src/objects/SkinnedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/SkinnedMesh.js#L309-L329", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 309 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+4:16Code GrepCode navigationthree“class InstancedMesh”
class InstancedMesh
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "build/three.core.js", "src/objects/InstancedMesh.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 24731, "file_path": "build/three.core.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.core.js#L24715-L24731", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 24715 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 36, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L20-L36", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 20 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [ "js" ], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "class InstancedMesh", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "build/three.core.js", "src/objects/InstancedMesh.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 24731, "file_path": "build/three.core.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.core.js#L24715-L24731", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 24715 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 36, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L20-L36", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 20 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }, "title": null, "content": null }+4:17Code GrepCode navigationthree“setColorAt”
setColorAt
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/objects/BatchedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1114, "file_path": "src/objects/BatchedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/BatchedMesh.js#L1102-L1114", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1102 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 68, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L56-L68", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 56 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 324, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L312-L324", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 312 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/**/*.js" } ], "pattern": "setColorAt", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/objects/BatchedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1114, "file_path": "src/objects/BatchedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/BatchedMesh.js#L1102-L1114", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1102 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 68, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L56-L68", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 56 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 324, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L312-L324", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 312 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 2 }, "title": null, "content": null }+4:20Code GrepCode navigationthree“skinIndices.push”
skinIndices.push
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "docs/scenes/bones-browser.html", "docs/scenes/ccdiksolver-browser.html", "utils/docs/template/static/scenes/bones-browser.html", "utils/docs/template/static/scenes/ccdiksolver-browser.html" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 147, "file_path": "docs/scenes/bones-browser.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/scenes/bones-browser.html#L127-L147", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 127 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 138, "file_path": "docs/scenes/ccdiksolver-browser.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/scenes/ccdiksolver-browser.html#L118-L138", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 118 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 147, "file_path": "utils/docs/template/static/scenes/bones-browser.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/utils/docs/template/static/scenes/bones-browser.html#L127-L147", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 127 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 138, "file_path": "utils/docs/template/static/scenes/ccdiksolver-browser.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/utils/docs/template/static/scenes/ccdiksolver-browser.html#L118-L138", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 118 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 4 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "skinIndices.push", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "docs/scenes/bones-browser.html", "docs/scenes/ccdiksolver-browser.html", "utils/docs/template/static/scenes/bones-browser.html", "utils/docs/template/static/scenes/ccdiksolver-browser.html" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 147, "file_path": "docs/scenes/bones-browser.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/scenes/bones-browser.html#L127-L147", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 127 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 138, "file_path": "docs/scenes/ccdiksolver-browser.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/scenes/ccdiksolver-browser.html#L118-L138", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 118 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 147, "file_path": "utils/docs/template/static/scenes/bones-browser.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/utils/docs/template/static/scenes/bones-browser.html#L127-L147", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 127 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 138, "file_path": "utils/docs/template/static/scenes/ccdiksolver-browser.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/utils/docs/template/static/scenes/ccdiksolver-browser.html#L118-L138", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 118 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 4 }, "title": null, "content": null }+4:20Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 130, "indexing_status": "indexed", "language": "javascript", "line_count": 103, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 130, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L28-L130", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 } ], "start_line": 28, "status": "success", "total_lines": 411 }Request
Request payload
{ "end_line": 130, "file_path": "src/objects/InstancedMesh.js", "package_name": "three", "registry": "npm", "start_line": 28, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 130, "indexing_status": "indexed", "language": "javascript", "line_count": 103, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 130, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L28-L130", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 } ], "start_line": 28, "status": "success", "total_lines": 411 }, "title": null, "content": null }+4:21Code GrepCode navigationthree“normalizeSkinWeights”
normalizeSkinWeights
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/objects/SkinnedMesh.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 270, "file_path": "src/objects/SkinnedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/SkinnedMesh.js#L254-L270", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 254 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/objects/SkinnedMesh.js" } ], "pattern": "normalizeSkinWeights", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/objects/SkinnedMesh.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 270, "file_path": "src/objects/SkinnedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/SkinnedMesh.js#L254-L270", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 254 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+4:22Code GrepCode navigationthree“function mergeGeometries”
function mergeGeometries
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 139, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L127-L139", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 127 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "function mergeGeometries", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 139, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L127-L139", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 127 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+4:24Code GrepCode navigationthree“depthTexture = new DepthTexture”
depthTexture = new DepthTexture
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.cjs", "build/three.module.js", "build/three.module.js", "build/three.webgpu.js", "build/three.webgpu.js", "build/three.webgpu.js", "build/three.webgpu.js", "build/three.webgpu.js", "build/three.webgpu.js", "build/three.webgpu.js", "build/three.webgpu.nodes.js", "build/three.webgpu.nodes.js", "build/three.webgpu.nodes.js", "build/three.webgpu.nodes.js", "build/three.webgpu.nodes.js", "build/three.webgpu.nodes.js", "build/three.webgpu.nodes.js", "examples/jsm/objects/ReflectorForSSRPass.js", "examples/jsm/postprocessing/GTAOPass.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 69272, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L69256-L69272", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 69256 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 69289, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L69273-L69289", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 69273 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 9294, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L9278-L9294", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 9278 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 9311, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L9295-L9311", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 9295 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 34065, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L34049-L34065", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 34049 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37483, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L37467-L37483", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37467 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37872, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L37856-L37872", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37856 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 40436, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L40420-L40436", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40420 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 45033, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L45017-L45033", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 45017 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 58180, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L58164-L58180", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 58164 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 58981, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L58965-L58981", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 58965 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 34065, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L34049-L34065", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 34049 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37483, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L37467-L37483", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37467 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37872, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L37856-L37872", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37856 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 40436, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L40420-L40436", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40420 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 45033, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L45017-L45033", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 45017 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 58180, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L58164-L58180", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 58164 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 58981, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L58965-L58981", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 58965 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 119, "file_path": "examples/jsm/objects/ReflectorForSSRPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/objects/ReflectorForSSRPass.js#L103-L119", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 103 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 322, "file_path": "examples/jsm/postprocessing/GTAOPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/GTAOPass.js#L306-L322", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 306 } ], "result_pointers_truncated": true, "returned_matches": 36, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 36, "unique_files_matched": 20 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "depthTexture = new DepthTexture", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }ResponseTruncated
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.cjs", "build/three.module.js", "build/three.module.js", "build/three.webgpu.js", "build/three.webgpu.js", "build/three.webgpu.js", "build/three.webgpu.js", "build/three.webgpu.js", "build/three.webgpu.js", "build/three.webgpu.js", "build/three.webgpu.nodes.js", "build/three.webgpu.nodes.js", "build/three.webgpu.nodes.js", "build/three.webgpu.nodes.js", "build/three.webgpu.nodes.js", "build/three.webgpu.nodes.js", "build/three.webgpu.nodes.js", "examples/jsm/objects/ReflectorForSSRPass.js", "examples/jsm/postprocessing/GTAOPass.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 69272, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L69256-L69272", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 69256 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 69289, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L69273-L69289", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 69273 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 9294, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L9278-L9294", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 9278 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 9311, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L9295-L9311", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 9295 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 34065, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L34049-L34065", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 34049 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37483, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L37467-L37483", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37467 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37872, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L37856-L37872", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37856 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 40436, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L40420-L40436", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40420 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 45033, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L45017-L45033", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 45017 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 58180, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L58164-L58180", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 58164 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 58981, "file_path": "build/three.webgpu.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.js#L58965-L58981", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 58965 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 34065, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L34049-L34065", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 34049 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37483, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L37467-L37483", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37467 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37872, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L37856-L37872", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37856 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 40436, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L40420-L40436", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40420 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 45033, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L45017-L45033", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 45017 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 58180, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L58164-L58180", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 58164 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 58981, "file_path": "build/three.webgpu.nodes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.webgpu.nodes.js#L58965-L58981", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 58965 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 119, "file_path": "examples/jsm/objects/ReflectorForSSRPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/objects/ReflectorForSSRPass.js#L103-L119", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 103 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 322, "file_path": "examples/jsm/postprocessing/GTAOPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/GTAOPass.js#L306-L322", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 306 } ], "result_pointers_truncated": true, "returned_matches": 36, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 36, "unique_files_matched": 20 }, "title": null, "content": null }This shared record contains a truncated response.
+4:25Code GrepCode navigationthree“perspectiveDepthToViewZ”
perspectiveDepthToViewZ
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/packing.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "src/renderers/shaders/ShaderChunk/packing.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/packing.glsl.js#L98-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 98 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/renderers/shaders/**" } ], "pattern": "perspectiveDepthToViewZ", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/packing.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "src/renderers/shaders/ShaderChunk/packing.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/packing.glsl.js#L98-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 98 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+4:27Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 230, "indexing_status": "indexed", "line_count": 131, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 230, "file_path": "docs/scenes/bones-browser.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/scenes/bones-browser.html#L100-L230", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 100 } ], "start_line": 100, "status": "success", "total_lines": 290 }Request
Request payload
{ "end_line": 230, "file_path": "docs/scenes/bones-browser.html", "package_name": "three", "registry": "npm", "start_line": 100, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 230, "indexing_status": "indexed", "line_count": 131, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 230, "file_path": "docs/scenes/bones-browser.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/scenes/bones-browser.html#L100-L230", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 100 } ], "start_line": 100, "status": "success", "total_lines": 290 }, "title": null, "content": null }+4:27Code GrepCode navigationthree“setRefDistance”
setRefDistance
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/audio/PositionalAudio.js", "src/audio/PositionalAudio.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 33, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L17-L33", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 17 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 117, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L101-L117", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 101 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/audio/*.js" } ], "pattern": "setRefDistance", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/audio/PositionalAudio.js", "src/audio/PositionalAudio.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 33, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L17-L33", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 17 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 117, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L101-L117", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 101 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+4:28Code GrepCode navigationthree“constructor( name, duration = -1, tracks, blendMode”
constructor( name, duration = -1, tracks, blendMode
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/animation/*.js" } ], "pattern": "constructor( name, duration = -1, tracks, blendMode", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+4:29Code GrepCode navigationthree“setMediaElementSource|setBuffer|getOutput|constructor( listener )”
setMediaElementSource|setBuffer|getOutput|constructor( listener )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/PositionalAudio.js", "src/audio/PositionalAudio.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 24, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L16-L24", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 16 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 82, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L74-L82", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 74 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 228, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L220-L228", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 220 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 261, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L253-L261", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 253 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 299, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L291-L299", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 291 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 446, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L438-L446", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 438 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 450, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L442-L450", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 442 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 484, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L476-L484", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 476 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 488, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L480-L488", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 480 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 28, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L20-L28", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 20 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 88, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L80-L88", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 80 } ], "returned_matches": 11, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 11, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/audio/Audio.js" }, { "kind": "GLOB", "value": "src/audio/PositionalAudio.js" }, { "kind": "GLOB", "value": "src/audio/AudioListener.js" } ], "pattern": "setMediaElementSource|setBuffer|getOutput|constructor( listener )", "pattern_type": "REGEX", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/Audio.js", "src/audio/PositionalAudio.js", "src/audio/PositionalAudio.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 24, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L16-L24", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 16 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 82, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L74-L82", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 74 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 228, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L220-L228", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 220 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 261, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L253-L261", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 253 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 299, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L291-L299", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 291 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 446, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L438-L446", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 438 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 450, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L442-L450", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 442 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 484, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L476-L484", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 476 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 488, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L480-L488", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 480 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 28, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L20-L28", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 20 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 88, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L80-L88", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 80 } ], "returned_matches": 11, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 11, "unique_files_matched": 2 }, "title": null, "content": null }+4:33Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 90, "indexing_status": "indexed", "language": "javascript", "line_count": 90, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 90, "file_path": "src/audio/AudioListener.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/AudioListener.js#L1-L90", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 218 }Request
Request payload
{ "end_line": 90, "file_path": "src/audio/AudioListener.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 90, "indexing_status": "indexed", "language": "javascript", "line_count": 90, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 90, "file_path": "src/audio/AudioListener.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/AudioListener.js#L1-L90", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 218 }, "title": null, "content": null }+4:36Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 100, "indexing_status": "indexed", "language": "javascript", "line_count": 100, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L1-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 405 }Request
Request payload
{ "end_line": 100, "file_path": "src/core/RenderTarget.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 100, "indexing_status": "indexed", "language": "javascript", "line_count": 100, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L1-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 405 }, "title": null, "content": null }+4:38Code GrepCode navigationcall-me-sensei/toonlab“BackSide”
BackSide
repo:https://github.com/call-me-sensei/toonlabResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/urban-prop-shader/main.js", "labs/asset-lab/engine/assetEngine.js", "labs/asset-lab/engine/assetEngine.js", "labs/asset-lab/engine/assetEngine.js", "labs/tree-lab/engine/skyWeather.js", "scripts/verify-scene-depth-color-pass.mjs" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 619, "file_path": "examples/urban-prop-shader/main.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/examples/urban-prop-shader/main.js#L599-L619", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 599 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 243, "file_path": "labs/asset-lab/engine/assetEngine.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/labs/asset-lab/engine/assetEngine.js#L223-L243", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 223 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 246, "file_path": "labs/asset-lab/engine/assetEngine.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/labs/asset-lab/engine/assetEngine.js#L226-L246", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 226 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 251, "file_path": "labs/asset-lab/engine/assetEngine.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/labs/asset-lab/engine/assetEngine.js#L231-L251", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 231 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 62, "file_path": "labs/tree-lab/engine/skyWeather.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/labs/tree-lab/engine/skyWeather.js#L42-L62", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 42 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 76, "file_path": "scripts/verify-scene-depth-color-pass.mjs", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/scripts/verify-scene-depth-color-pass.mjs#L56-L76", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 56 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 4 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "pattern": "BackSide", "pattern_type": "LITERAL", "repo_url": "https://github.com/call-me-sensei/toonlab", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/urban-prop-shader/main.js", "labs/asset-lab/engine/assetEngine.js", "labs/asset-lab/engine/assetEngine.js", "labs/asset-lab/engine/assetEngine.js", "labs/tree-lab/engine/skyWeather.js", "scripts/verify-scene-depth-color-pass.mjs" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 619, "file_path": "examples/urban-prop-shader/main.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/examples/urban-prop-shader/main.js#L599-L619", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 599 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 243, "file_path": "labs/asset-lab/engine/assetEngine.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/labs/asset-lab/engine/assetEngine.js#L223-L243", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 223 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 246, "file_path": "labs/asset-lab/engine/assetEngine.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/labs/asset-lab/engine/assetEngine.js#L226-L246", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 226 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 251, "file_path": "labs/asset-lab/engine/assetEngine.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/labs/asset-lab/engine/assetEngine.js#L231-L251", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 231 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 62, "file_path": "labs/tree-lab/engine/skyWeather.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/labs/tree-lab/engine/skyWeather.js#L42-L62", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 42 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 76, "file_path": "scripts/verify-scene-depth-color-pass.mjs", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/scripts/verify-scene-depth-color-pass.mjs#L56-L76", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 56 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 4 }, "title": null, "content": null }+4:40Code GrepCode navigationthree“class AnimationClip”
class AnimationClip
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/animation/AnimationClip.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 25, "file_path": "src/animation/AnimationClip.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationClip.js#L5-L25", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 5 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/animation/AnimationClip.js" } ], "pattern": "class AnimationClip", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/animation/AnimationClip.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 25, "file_path": "src/animation/AnimationClip.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationClip.js#L5-L25", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 5 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+4:41Code GrepCode navigationthree“constructor(”
constructor(
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/animation/AnimationAction.js", "src/animation/AnimationClip.js", "src/animation/AnimationClip.js", "src/animation/AnimationMixer.js", "src/animation/KeyframeTrack.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 25, "file_path": "src/animation/AnimationAction.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationAction.js#L9-L25", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 9 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 39, "file_path": "src/animation/AnimationClip.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationClip.js#L23-L39", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 23 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 399, "file_path": "src/animation/AnimationClip.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationClip.js#L383-L399", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 383 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 31, "file_path": "src/animation/AnimationMixer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationMixer.js#L15-L31", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 15 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37, "file_path": "src/animation/KeyframeTrack.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/KeyframeTrack.js#L21-L37", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 21 } ], "returned_matches": 5, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 5, "unique_files_matched": 4 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/animation/KeyframeTrack.js" }, { "kind": "GLOB", "value": "src/animation/AnimationMixer.js" }, { "kind": "GLOB", "value": "src/animation/AnimationAction.js" }, { "kind": "GLOB", "value": "src/animation/AnimationClip.js" } ], "pattern": "constructor(", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/animation/AnimationAction.js", "src/animation/AnimationClip.js", "src/animation/AnimationClip.js", "src/animation/AnimationMixer.js", "src/animation/KeyframeTrack.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 25, "file_path": "src/animation/AnimationAction.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationAction.js#L9-L25", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 9 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 39, "file_path": "src/animation/AnimationClip.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationClip.js#L23-L39", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 23 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 399, "file_path": "src/animation/AnimationClip.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationClip.js#L383-L399", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 383 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 31, "file_path": "src/animation/AnimationMixer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationMixer.js#L15-L31", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 15 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37, "file_path": "src/animation/KeyframeTrack.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/KeyframeTrack.js#L21-L37", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 21 } ], "returned_matches": 5, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 5, "unique_files_matched": 4 }, "title": null, "content": null }+4:43Code GrepCode navigationthree“setRenderTarget”
setRenderTarget
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/objects/Reflector.js", "examples/jsm/objects/Reflector.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 232, "file_path": "examples/jsm/objects/Reflector.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/objects/Reflector.js#L224-L232", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 224 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 242, "file_path": "examples/jsm/objects/Reflector.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/objects/Reflector.js#L234-L242", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 234 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "examples/jsm/objects/Reflector.js" } ], "pattern": "setRenderTarget", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/objects/Reflector.js", "examples/jsm/objects/Reflector.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 232, "file_path": "examples/jsm/objects/Reflector.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/objects/Reflector.js#L224-L232", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 224 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 242, "file_path": "examples/jsm/objects/Reflector.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/objects/Reflector.js#L234-L242", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 234 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+4:44Code GrepCode navigationcall-me-sensei/toonlab“fresnel”
fresnel
repo:https://github.com/call-me-sensei/toonlabResult summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 5, "max_matches_per_file": 20, "path_selectors": [ { "kind": "GLOB", "value": "examples/**/*.js" } ], "pattern": "fresnel", "pattern_type": "LITERAL", "repo_url": "https://github.com/call-me-sensei/toonlab", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+4:47Code GrepCode navigationthree“parseTrackName”
parseTrackName
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/animation/PropertyBinding.js", "src/animation/PropertyBinding.js", "src/animation/PropertyBinding.js", "src/animation/PropertyBinding.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 52, "file_path": "src/animation/PropertyBinding.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/PropertyBinding.js#L32-L52", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 32 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 142, "file_path": "src/animation/PropertyBinding.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/PropertyBinding.js#L122-L142", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 122 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 190, "file_path": "src/animation/PropertyBinding.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/PropertyBinding.js#L170-L190", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 170 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 219, "file_path": "src/animation/PropertyBinding.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/PropertyBinding.js#L199-L219", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 199 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/animation/PropertyBinding.js" } ], "pattern": "parseTrackName", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/animation/PropertyBinding.js", "src/animation/PropertyBinding.js", "src/animation/PropertyBinding.js", "src/animation/PropertyBinding.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 52, "file_path": "src/animation/PropertyBinding.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/PropertyBinding.js#L32-L52", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 32 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 142, "file_path": "src/animation/PropertyBinding.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/PropertyBinding.js#L122-L142", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 122 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 190, "file_path": "src/animation/PropertyBinding.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/PropertyBinding.js#L170-L190", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 170 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 219, "file_path": "src/animation/PropertyBinding.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/PropertyBinding.js#L199-L219", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 199 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+4:47Code GrepCode navigationcall-me-sensei/toonlab“rim”
rim
repo:https://github.com/call-me-sensei/toonlabResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/fauna-demo/main.js", "examples/outdoor-world/main.js", "examples/outdoor-world/main.js", "examples/outdoor-world/main.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 216, "file_path": "examples/fauna-demo/main.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/examples/fauna-demo/main.js#L196-L216", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 196 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 314, "file_path": "examples/outdoor-world/main.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/examples/outdoor-world/main.js#L294-L314", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 294 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 463, "file_path": "examples/outdoor-world/main.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/examples/outdoor-world/main.js#L443-L463", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 443 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 501, "file_path": "examples/outdoor-world/main.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/examples/outdoor-world/main.js#L481-L501", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 481 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "path_selectors": [ { "kind": "GLOB", "value": "examples/**/*.js" } ], "pattern": "rim", "pattern_type": "LITERAL", "repo_url": "https://github.com/call-me-sensei/toonlab", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/fauna-demo/main.js", "examples/outdoor-world/main.js", "examples/outdoor-world/main.js", "examples/outdoor-world/main.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 216, "file_path": "examples/fauna-demo/main.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/examples/fauna-demo/main.js#L196-L216", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 196 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 314, "file_path": "examples/outdoor-world/main.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/examples/outdoor-world/main.js#L294-L314", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 294 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 463, "file_path": "examples/outdoor-world/main.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/examples/outdoor-world/main.js#L443-L463", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 443 }, { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 501, "file_path": "examples/outdoor-world/main.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/examples/outdoor-world/main.js#L481-L501", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 481 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 2 }, "title": null, "content": null }+4:48PKG InfoPackage intelligencepkg:npm:three-mesh-bvh
pkg:npm:three-mesh-bvhResult summary
{ "outcome": "result_returned", "packages": [ "npm:three-mesh-bvh" ], "status": "success" }Request
Request payload
{ "name": "three-mesh-bvh", "registry": "npm" }Response
Response payload
{ "summary": { "outcome": "result_returned", "packages": [ "npm:three-mesh-bvh" ], "status": "success" }, "title": null, "content": null }+4:52Get ExampleGenerated examplethree.js screen space outline post-process depth texture and normal render target sobel edge detection ShaderPass WebGLRenderTarget DepthTexture MeshNormalMaterial prepass
three.js screen space outline post-process depth texture and normal render target sobel edge detection ShaderPass WebGLRenderTarget DepthTexture MeshNormalMaterial prepass · javascript · strict
three.js Depth-and-Normal Sobel Screen-Space Outline
import * as THREE from 'three'; import { OrbitControls } from 'three/addons/controls/OrbitControls.js'; import { EffectComposer } from 'three/addons/postprocessing/EffectComposer.js'; import { RenderPass } from 'three/addons/postprocessing/RenderPass.js'; import { ShaderPass } from 'three/addons/postprocessing/ShaderPass.js'; const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(window.devicePixelRatio, 2)); renderer.setSize(window.innerWidth, window.innerHeight); renderer.outputColorSpace = THREE.SRGBColorSpace; document.body.appendChild(renderer.domElement); const scene = new THREE.Scene(); scene.background = new THREE.Color(0x20242b); const camera = new THREE.PerspectiveCamera( 50, window.innerWidth / window.innerHeight, 0.1, 100 ); camera.position.set(4, 3, 6); const controls = new OrbitControls(camera, renderer.domElement); controls.target.set(0, 0.8, 0); controls.update(); scene.add(new THREE.HemisphereLight(0xffffff, 0x334455, 2)); const keyLight = new THREE.DirectionalLight(0xffffff, 3); keyLight.position.set(4, 6, 3); scene.add(keyLight); const material = new THREE.MeshStandardMaterial({ color: 0x4e9cff, roughness: 0.72, metalness: 0.05 }); const cube = new THREE.Mesh(new THREE.BoxGeometry(1.4, 1.4, 1.4), material); cube.position.y = 0.8; scene.add(cube); const sphere = new THREE.Mesh(new THREE.SphereGeometry(0.85, 64, 32), material); sphere.position.set(-1.8, 0.85, 0.2); scene.add(sphere); const ground = new THREE.Mesh( new THREE.PlaneGeometry(20, 20), new THREE.MeshStandardMaterial({ color: 0x454b55, roughness: 1 }) ); ground.rotation.x = -Math.PI / 2; scene.add(ground); const normalMaterial = new THREE.MeshNormalMaterial({ side: THREE.DoubleSide }); const depthTarget = new THREE.WebGLRenderTarget(1, 1, { minFilter: THREE.NearestFilter, magFilter: THREE.NearestFilter, format: THREE.RGBAFormat, depthBuffer: true, stencilBuffer: false }); depthTarget.depthTexture = new THREE.DepthTexture(1, 1); depthTarget.depthTexture.format = THREE.DepthFormat; depthTarget.depthTexture.type = THREE.UnsignedShortType; depthTarget.depthTexture.minFilter = THREE.NearestFilter; depthTarget.depthTexture.magFilter = THREE.NearestFilter; const normalTarget = new THREE.WebGLRenderTarget(1, 1, { minFilter: THREE.LinearFilter, magFilter: THREE.LinearFilter, format: THREE.RGBAFormat, depthBuffer: false, stencilBuffer: false }); normalTarget.texture.colorSpace = THREE.NoColorSpace; const outlineShader = { uniforms: { tDiffuse: { value: null }, tDepth: { value: depthTarget.depthTexture }, tNormal: { value: normalTarget.texture }, texelSize: { value: new THREE.Vector2() }, depthStrength: { value: 3.0 }, normalStrength: { value: 1.35 }, threshold: { value: 0.08 }, lineColor: { value: new THREE.Color(0x050505) } }, vertexShader: ` varying vec2 vUv; void main() { vUv = uv; gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); } `, fragmentShader: ` uniform sampler2D tDiffuse; uniform sampler2D tDepth; uniform sampler2D tNormal; uniform vec2 texelSize; uniform float depthStrength; uniform float normalStrength; uniform float threshold; uniform vec3 lineColor; varying vec2 vUv; float depthAt(vec2 uv) { return texture2D(tDepth, uv).r; } vec3 normalAt(vec2 uv) { return normalize(texture2D(tNormal, uv).xyz * 2.0 - 1.0); } void main() { vec4 source = texture2D(tDiffuse, vUv); float centerDepth = depthAt(vUv); vec3 centerNormal = normalAt(vUv); // Background has no geometry in the depth prepass. if (centerDepth >= 0.99999) { gl_FragColor = source; return; } vec2 offsets[8]; offsets[0] = vec2(-1.0, -1.0); offsets[1] = vec2( 0.0, -1.0); offsets[2] = vec2( 1.0, -1.0); offsets[3] = vec2(-1.0, 0.0); offsets[4] = vec2( 1.0, 0.0); offsets[5] = vec2(-1.0, 1.0); offsets[6] = vec2( 0.0, 1.0); offsets[7] = vec2( 1.0, 1.0); float depthEdge = 0.0; float normalEdge = 0.0; for (int i = 0; i < 8; i++) { vec2 uv = vUv + offsets[i] * texelSize; float neighborDepth = depthAt(uv); vec3 neighborNormal = normalAt(uv); // Relative depth difference avoids making distant objects too thick. depthEdge = max(depthEdge, abs(neighborDepth - centerDepth) / max(centerDepth, 0.05)); normalEdge = max(normalEdge, 1.0 - max(dot(centerNormal, neighborNormal), 0.0)); } float edge = max(depthEdge * depthStrength, normalEdge * normalStrength); edge = smoothstep(threshold, threshold + 0.12, edge); gl_FragColor = vec4(mix(source.rgb, lineColor, edge), source.a); } ` }; const composer = new EffectComposer(renderer); composer.addPass(new RenderPass(scene, camera)); const outlinePass = new ShaderPass(outlineShader); composer.addPass(outlinePass); function resize() { const width = window.innerWidth; const height = window.innerHeight; const pixelRatio = renderer.getPixelRatio(); camera.aspect = width / height; camera.updateProjectionMatrix(); renderer.setSize(width, height); composer.setSize(width, height); depthTarget.setSize(width * pixelRatio, height * pixelRatio); normalTarget.setSize(width * pixelRatio, height * pixelRatio); outlinePass.uniforms.texelSize.value.set( 1 / (width * pixelRatio), 1 / (height * pixelRatio) ); } function renderPrepasses() { const previousOverride = scene.overrideMaterial; const previousTarget = renderer.getRenderTarget(); const previousAutoClear = renderer.autoClear; scene.overrideMaterial = normalMaterial; renderer.autoClear = true; renderer.setRenderTarget(depthTarget); renderer.clear(true, true, true); renderer.render(scene, camera); renderer.setRenderTarget(normalTarget); renderer.clear(true, false, false); renderer.render(scene, camera); scene.overrideMaterial = previousOverride; renderer.autoClear = previousAutoClear; renderer.setRenderTarget(previousTarget); } function animate() { requestAnimationFrame(animate); cube.rotation.y += 0.006; renderPrepasses(); composer.render(); } window.addEventListener('resize', resize); resize(); animate();References
2- mkkellogg/GaussianSplats3DCompatibility between Viewer & PostProcessing Effects
Relevant to three.js EffectComposer + postprocessing compatibility with depth-related effects: the issue discussion explains depth-buffer interactions and provides concrete workarounds for keeping splats visible when combining composer passes (including depthWrite=false), which is useful context for depth/normal-based outline/Sobel pipelines.
- plusplastic/byRhinoViewwww/app.js
Only indirect match: a three.js app uses EffectComposer and includes ShaderPass/OutlinePass imports, but the shown file snippet doesn’t implement screen-space outline with depth/normal render targets or Sobel/depth-texture prepasses.
Request
Request payload
{ "query": "three.js screen space outline post-process depth texture and normal render target sobel edge detection ShaderPass WebGLRenderTarget DepthTexture MeshNormalMaterial prepass", "language": "javascript", "license_mode": "strict" }- mkkellogg/GaussianSplats3DCompatibility between Viewer & PostProcessing Effects
+4:58Get ExampleGenerated exampleboat buoyancy multi point flotation submerged depth drag angular damping rigid body javascript
boat buoyancy multi point flotation submerged depth drag angular damping rigid body javascript · javascript · strict
Multi-Point Boat Buoyancy for a Rigid Body
// Multi-point flotation with submerged-depth buoyancy, hydrodynamic drag, // and angular damping. The rigid body uses force/torque integration. class Vec3 { constructor(x = 0, y = 0, z = 0) { this.x = x; this.y = y; this.z = z; } set(x, y, z) { this.x = x; this.y = y; this.z = z; return this; } clone() { return new Vec3(this.x, this.y, this.z); } add(v) { this.x += v.x; this.y += v.y; this.z += v.z; return this; } sub(v) { this.x -= v.x; this.y -= v.y; this.z -= v.z; return this; } multiplyScalar(s) { this.x *= s; this.y *= s; this.z *= s; return this; } dot(v) { return this.x * v.x + this.y * v.y + this.z * v.z; } cross(v) { return new Vec3( this.y * v.z - this.z * v.y, this.z * v.x - this.x * v.z, this.x * v.y - this.y * v.x ); } length() { return Math.hypot(this.x, this.y, this.z); } normalize() { const n = this.length() || 1; return this.multiplyScalar(1 / n); } } class RigidBody { constructor({ mass, inertia = new Vec3(1, 1, 1), position = new Vec3() }) { this.mass = mass; this.invMass = 1 / mass; this.inertia = inertia; this.invInertia = new Vec3(1 / inertia.x, 1 / inertia.y, 1 / inertia.z); this.position = position; this.velocity = new Vec3(); this.angularVelocity = new Vec3(); this.force = new Vec3(); this.torque = new Vec3(); } addForceAtWorldPoint(force, point) { this.force.add(force); this.torque.add(point.clone().sub(this.position).cross(force)); } addForce(force) { this.force.add(force); } addTorque(torque) { this.torque.add(torque); } integrate(dt) { this.velocity.add(this.force.clone().multiplyScalar(this.invMass * dt)); this.position.add(this.velocity.clone().multiplyScalar(dt)); this.angularVelocity.x += this.torque.x * this.invInertia.x * dt; this.angularVelocity.y += this.torque.y * this.invInertia.y * dt; this.angularVelocity.z += this.torque.z * this.invInertia.z * dt; this.force.set(0, 0, 0); this.torque.set(0, 0, 0); } } class Boat { constructor({ body, waterHeight = 0, volume, samples }) { this.body = body; this.waterHeight = waterHeight; this.volume = volume; this.samples = samples; this.waterDensity = 1000; this.gravity = 9.81; this.maxSampleDepth = 0.6; this.linearDrag = 35; this.lateralDrag = 180; this.verticalDrag = 80; this.angularDamping = new Vec3(45, 30, 45); } // Replace this with a wave-field lookup for non-flat water. sampleWaterHeight(x, z) { return this.waterHeight + 0.08 * Math.sin(x * 0.7 + z * 0.35); } // Local-to-world transform for a level boat. A quaternion/matrix can be // inserted here when the rigid body also integrates orientation. localToWorld(localPoint) { return this.body.position.clone().add(localPoint); } step(dt) { const body = this.body; let submergedSamples = 0; for (const sample of this.samples) { const point = this.localToWorld(sample.position); const surfaceY = this.sampleWaterHeight(point.x, point.z); const depth = surfaceY - point.y; if (depth <= 0) continue; submergedSamples++; // Ramp force by local submerged depth to avoid discontinuities at entry. const submergedFraction = Math.min(depth / this.maxSampleDepth, 1); const displacedVolume = this.volume * sample.weight * submergedFraction; const buoyancy = this.waterDensity * this.gravity * displacedVolume; body.addForceAtWorldPoint(new Vec3(0, buoyancy, 0), point); // Velocity at the sample includes angular motion: v = vCoM + omega x r. const radius = point.clone().sub(body.position); const pointVelocity = body.velocity.clone().add(body.angularVelocity.cross(radius)); // Quadratic resistance is applied separately in forward, lateral, and // vertical directions, which preserves boat tracking behavior. const forward = new Vec3(0, 0, 1); const right = new Vec3(1, 0, 0); const vertical = new Vec3(0, 1, 0); const longitudinalSpeed = pointVelocity.dot(forward); const lateralSpeed = pointVelocity.dot(right); const verticalSpeed = pointVelocity.dot(vertical); const drag = new Vec3( -longitudinalSpeed * Math.abs(longitudinalSpeed) * this.linearDrag, -verticalSpeed * Math.abs(verticalSpeed) * this.verticalDrag, -lateralSpeed * Math.abs(lateralSpeed) * this.lateralDrag ).multiplyScalar(submergedFraction * sample.weight); body.addForceAtWorldPoint(drag, point); } // Angular damping prevents wave-induced roll, pitch, and yaw from growing. body.addTorque(new Vec3( -body.angularVelocity.x * this.angularDamping.x, -body.angularVelocity.y * this.angularDamping.y, -body.angularVelocity.z * this.angularDamping.z ).multiplyScalar(submergedSamples / this.samples.length)); body.integrate(dt); } } function createBoat() { const body = new RigidBody({ mass: 900, inertia: new Vec3(1200, 1800, 1200), position: new Vec3(0, 0.15, 0) }); // Points should cover bow, stern, port, and starboard areas. Their weights // sum to one and represent each point's share of the hull volume. const samples = [ { position: new Vec3(-0.9, -0.45, 1.8), weight: 0.10 }, { position: new Vec3( 0.9, -0.45, 1.8), weight: 0.10 }, { position: new Vec3(-1.2, -0.55, 0.4), weight: 0.15 }, { position: new Vec3( 1.2, -0.55, 0.4), weight: 0.15 }, { position: new Vec3(-1.2, -0.55, -1.2), weight: 0.15 }, { position: new Vec3( 1.2, -0.55, -1.2), weight: 0.15 }, { position: new Vec3(-0.8, -0.50, -2.0), weight: 0.10 }, { position: new Vec3( 0.8, -0.50, -2.0), weight: 0.10 } ]; return new Boat({ body, volume: 1.0, samples }); } const boat = createBoat(); for (let i = 0; i < 600; i++) { boat.step(1 / 60); } console.log({ position: boat.body.position, velocity: boat.body.velocity, angularVelocity: boat.body.angularVelocity });References
4- scalabled/decarlo-boyzsrc/vehicles/dynamics.js
Directly implements boat-in-water rigid-body buoyancy with submerged depth, buoyancy force, hydrodynamic drag, and angular damping/torque handling in JavaScript (Three.js), including water height sampling and water effects via forces at points.
- scalabled/decarlo-boyzsrc/vehicles/boat.js
Direct JavaScript implementation of multi-point flotation buoyancy using multiple hull sample points (volume-based buoyancy), submerged-depth checks, plus hydrodynamic drag and angular/yaw/roll/pitch damping for a rigid-body boat.
- Dante83/a-watersrc/js/ocean-system/components/buoyant.js
Provides a concrete JavaScript A-Frame buoyancy implementation with multi-point flotation probes, force-based (rigid) Archimedes buoyancy including submerged depth sampling, and drag/torque/angluar damping parameters (linearDrag/formDrag/angularDrag/angularFormDrag) relevant to the requested boat buoyancy behavior.
- ryanfitzpatrickio/threejs-playgroundsrc/game/vehicles/BaseVehicle.js
Strong match: JavaScript implementation of rigid-body boat/water buoyancy with submerged depth, multi-factor water resistance, and angular damping via Rapier forces/torques in BaseVehicle._integrateWater and surrounding body damping setup.
Request
Request payload
{ "query": "boat buoyancy multi point flotation submerged depth drag angular damping rigid body javascript", "language": "javascript", "license_mode": "strict" }- scalabled/decarlo-boyzsrc/vehicles/dynamics.js
+5:15Code GrepCode navigationthree-mesh-bvh“shapecast”
shapecast
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "indexing_ref": "4eca351b-d8f8-4389-b924-9e5aed59c588", "next_cursor_present": false, "outcome": "deferred", "returned_matches": 0, "status": "success", "target_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "git_ref": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "kind": "code_target", "package_name": "three-mesh-bvh", "registry": "npm", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "role": "resolved_requested", "version": "0.9.14" } ], "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "path_selectors": [ { "kind": "GLOB", "value": "example/characterMovement.js" } ], "pattern": "shapecast", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "indexing_ref": "4eca351b-d8f8-4389-b924-9e5aed59c588", "next_cursor_present": false, "outcome": "deferred", "returned_matches": 0, "status": "success", "target_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "git_ref": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "kind": "code_target", "package_name": "three-mesh-bvh", "registry": "npm", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "role": "resolved_requested", "version": "0.9.14" } ], "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+5:20Code GrepCode navigationthree“crossFadeTo(”
crossFadeTo(
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/animation/AnimationAction.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 379, "file_path": "src/animation/AnimationAction.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationAction.js#L359-L379", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 359 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/animation/AnimationAction.js" } ], "pattern": "crossFadeTo(", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/animation/AnimationAction.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 379, "file_path": "src/animation/AnimationAction.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationAction.js#L359-L379", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 359 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+5:24Code GrepCode navigationthree“makeClipAdditive”
makeClipAdditive
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/animation/AnimationUtils.js", "src/animation/AnimationUtils.js", "src/animation/AnimationUtils.js", "src/animation/AnimationUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 261, "file_path": "src/animation/AnimationUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationUtils.js#L241-L261", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 241 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 488, "file_path": "src/animation/AnimationUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationUtils.js#L468-L488", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 468 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 490, "file_path": "src/animation/AnimationUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationUtils.js#L470-L490", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 470 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 496, "file_path": "src/animation/AnimationUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationUtils.js#L483-L496", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 483 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/animation/AnimationUtils.js" } ], "pattern": "makeClipAdditive", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/animation/AnimationUtils.js", "src/animation/AnimationUtils.js", "src/animation/AnimationUtils.js", "src/animation/AnimationUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 261, "file_path": "src/animation/AnimationUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationUtils.js#L241-L261", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 241 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 488, "file_path": "src/animation/AnimationUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationUtils.js#L468-L488", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 468 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 490, "file_path": "src/animation/AnimationUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationUtils.js#L470-L490", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 470 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 496, "file_path": "src/animation/AnimationUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationUtils.js#L483-L496", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 483 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+5:34Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 100, "indexing_status": "indexed", "language": "javascript", "line_count": 100, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "examples/jsm/postprocessing/ShaderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/ShaderPass.js#L1-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 135 }Request
Request payload
{ "end_line": 100, "file_path": "examples/jsm/postprocessing/ShaderPass.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 100, "indexing_status": "indexed", "language": "javascript", "line_count": 100, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "examples/jsm/postprocessing/ShaderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/ShaderPass.js#L1-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 135 }, "title": null, "content": null }+5:35Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 86, "indexing_status": "indexed", "language": "javascript", "line_count": 47, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 86, "file_path": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshnormal.glsl.js#L40-L86", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 } ], "start_line": 40, "status": "success", "total_lines": 86 }Request
Request payload
{ "end_line": 100, "file_path": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "package_name": "three", "registry": "npm", "start_line": 40, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 86, "indexing_status": "indexed", "language": "javascript", "line_count": 47, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 86, "file_path": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshnormal.glsl.js#L40-L86", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 } ], "start_line": 40, "status": "success", "total_lines": 86 }, "title": null, "content": null }+5:47Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 80, "indexing_status": "indexed", "language": "javascript", "line_count": 80, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 80, "file_path": "examples/jsm/postprocessing/RenderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderPass.js#L1-L80", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 193 }Request
Request payload
{ "end_line": 80, "file_path": "examples/jsm/postprocessing/RenderPass.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 80, "indexing_status": "indexed", "language": "javascript", "line_count": 80, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 80, "file_path": "examples/jsm/postprocessing/RenderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderPass.js#L1-L80", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 193 }, "title": null, "content": null }+5:57Get ExampleGenerated examplethree.js stylized gradient sky dome ShaderMaterial BackSide sun disc procedural clouds fbm noise fragment shader
three.js stylized gradient sky dome ShaderMaterial BackSide sun disc procedural clouds fbm noise fragment shader · javascript · strict
Three.js Stylized Sky Dome with FBM Clouds and Sun Disc
import * as THREE from 'three'; const scene = new THREE.Scene(); const camera = new THREE.PerspectiveCamera(60, innerWidth / innerHeight, 0.1, 1000); camera.position.set(0, 2, 8); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.setSize(innerWidth, innerHeight); document.body.style.margin = '0'; document.body.appendChild(renderer.domElement); const skyVertexShader = /* glsl */ ` varying vec3 vDirection; void main() { vDirection = normalize(position); gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); } `; const skyFragmentShader = /* glsl */ ` uniform vec3 topColor; uniform vec3 horizonColor; uniform vec3 cloudColor; uniform vec3 sunDirection; uniform float time; uniform float cloudAmount; uniform float cloudSpeed; varying vec3 vDirection; float hash(vec2 p) { p = fract(p * vec2(123.34, 456.21)); p += dot(p, p + 45.32); return fract(p.x * p.y); } float noise(vec2 p) { vec2 cell = floor(p); vec2 local = fract(p); local = local * local * (3.0 - 2.0 * local); float a = hash(cell); float b = hash(cell + vec2(1.0, 0.0)); float c = hash(cell + vec2(0.0, 1.0)); float d = hash(cell + vec2(1.0, 1.0)); return mix(mix(a, b, local.x), mix(c, d, local.x), local.y); } float fbm(vec2 p) { float value = 0.0; float amplitude = 0.5; for (int i = 0; i < 5; i++) { value += amplitude * noise(p); p = p * 2.0 + 17.13; amplitude *= 0.5; } return value; } void main() { vec3 direction = normalize(vDirection); // Smooth vertical gradient: horizonColor at eye level, topColor overhead. float height = smoothstep(-0.15, 0.85, direction.y); vec3 color = mix(horizonColor, topColor, height); // Project procedural cloud coordinates onto the upper hemisphere. float upperHemisphere = smoothstep(0.02, 0.32, direction.y); vec2 cloudUv = direction.xz / max(direction.y, 0.12); cloudUv = cloudUv * 1.8 + vec2(time * cloudSpeed, time * cloudSpeed * 0.45); float cloudNoise = fbm(cloudUv); float clouds = smoothstep(0.52 - cloudAmount, 0.72 - cloudAmount, cloudNoise); clouds *= upperHemisphere; color = mix(color, cloudColor, clouds * 0.72); // Warm glow around the sun direction. float sunDot = max(dot(direction, normalize(sunDirection)), 0.0); float sunGlow = pow(sunDot, 18.0) * 0.24; color += vec3(1.0, 0.48, 0.16) * sunGlow; gl_FragColor = vec4(color, 1.0); } `; const sunVertexShader = /* glsl */ ` varying vec2 vUv; void main() { vUv = uv; gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); } `; const sunFragmentShader = /* glsl */ ` uniform vec3 sunColor; uniform float intensity; varying vec2 vUv; void main() { float distanceFromCenter = distance(vUv, vec2(0.5)); float disc = 1.0 - smoothstep(0.42, 0.5, distanceFromCenter); float glow = pow(max(0.0, 1.0 - distanceFromCenter * 2.0), 3.0) * 0.35; float alpha = max(disc, glow); if (alpha < 0.01) discard; gl_FragColor = vec4(sunColor * (disc + glow) * intensity, alpha); } `; const skyUniforms = { topColor: { value: new THREE.Color('#163c72') }, horizonColor: { value: new THREE.Color('#f2a66f') }, cloudColor: { value: new THREE.Color('#fff1d2') }, sunDirection: { value: new THREE.Vector3(0.55, 0.45, -0.75).normalize() }, time: { value: 0 }, cloudAmount: { value: 0.22 }, cloudSpeed: { value: 0.006 }, }; const skyMaterial = new THREE.ShaderMaterial({ vertexShader: skyVertexShader, fragmentShader: skyFragmentShader, uniforms: skyUniforms, side: THREE.BackSide, depthWrite: false, fog: false, }); const sky = new THREE.Mesh( new THREE.SphereGeometry(200, 64, 32), skyMaterial, ); scene.add(sky); const sunMaterial = new THREE.ShaderMaterial({ vertexShader: sunVertexShader, fragmentShader: sunFragmentShader, uniforms: { sunColor: { value: new THREE.Color('#fff4bf') }, intensity: { value: 2.2 }, }, transparent: true, depthWrite: false, blending: THREE.AdditiveBlending, side: THREE.DoubleSide, }); const sun = new THREE.Mesh(new THREE.PlaneGeometry(12, 12), sunMaterial); const sunDistance = 120; sun.position.copy(skyUniforms.sunDirection.value).multiplyScalar(sunDistance); sun.renderOrder = 2; scene.add(sun); const clock = new THREE.Clock(); function animate() { requestAnimationFrame(animate); const elapsed = clock.getElapsedTime(); skyUniforms.time.value = elapsed; // Keep the dome centered on the camera and the sun plane facing the camera. sky.position.copy(camera.position); sun.lookAt(camera.position); renderer.render(scene, camera); } addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); }); animate();References
2- jimmyorr/chill-flightsky.js
Three.js ShaderMaterial sky dome/backside gradient shader wiring with uniforms for sun direction, and procedural sky effects including a noise texture suitable for clouds-style fbm; strong direct match to stylized gradient sky dome ShaderMaterial and procedural noise/cloud parameters.
- jamescockburn47/moorsteadsrc/sky.js
Strong, directly applicable three.js implementation: uses ShaderMaterial with side: BackSide for a procedural gradient sky dome, includes fbm-style noise clouds in the fragment shader, sun disc sprites, and integrates BackSide dome rendering—matches the requested symbols and shader approach in JavaScript.
Request
Request payload
{ "query": "three.js stylized gradient sky dome ShaderMaterial BackSide sun disc procedural clouds fbm noise fragment shader", "language": "javascript", "license_mode": "strict" }- jimmyorr/chill-flightsky.js
+5:59SearchCode navigationDante83/a-watergerstner wave displacement height sampling buoyancy
gerstner wave displacement height sampling buoyancy
repo:https://github.com/Dante83/a-waterResult summary
{ "completed": false, "indexing_targets": [ { "indexing_ref": "2d947304-cdeb-4992-a29e-4a03dd5b9ee2", "target": "github:dante83/a-water" } ], "outcome": "deferred", "search_ref_present": true, "status": "success" }Request
Request payload
{ "allow_partial_results": false, "context_lines_after": 2, "context_lines_before": 2, "limit": 10, "offset": 0, "query": "gerstner wave displacement height sampling buoyancy", "sources": [ "auto" ], "targets": [ { "repo_url": "https://github.com/Dante83/a-water" } ], "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "completed": false, "indexing_targets": [ { "indexing_ref": "2d947304-cdeb-4992-a29e-4a03dd5b9ee2", "target": "github:dante83/a-water" } ], "outcome": "deferred", "search_ref_present": true, "status": "success" }, "title": null, "content": null }+6:02Get ExampleGenerated exampleinvert Gerstner wave horizontal displacement fixed point iteration water surface height at world position
invert Gerstner wave horizontal displacement fixed point iteration water surface height at world position · rust · strict
Invert Gerstner Horizontal Displacement with Fixed-Point Iteration
use std::f32::consts::TAU; #[derive(Clone, Copy, Debug)] struct Vec2 { x: f32, z: f32, } impl Vec2 { const ZERO: Self = Self { x: 0.0, z: 0.0 }; fn dot(self, other: Self) -> f32 { self.x * other.x + self.z * other.z } fn length_squared(self) -> f32 { self.dot(self) } } impl std::ops::Add for Vec2 { type Output = Self; fn add(self, rhs: Self) -> Self { Self { x: self.x + rhs.x, z: self.z + rhs.z, } } } impl std::ops::Sub for Vec2 { type Output = Self; fn sub(self, rhs: Self) -> Self { Self { x: self.x - rhs.x, z: self.z - rhs.z, } } } impl std::ops::Mul<f32> for Vec2 { type Output = Self; fn mul(self, rhs: f32) -> Self { Self { x: self.x * rhs, z: self.z * rhs, } } } #[derive(Clone, Copy)] struct Wave { direction: Vec2, // Must be normalized. amplitude: f32, wavelength: f32, steepness: f32, speed: f32, } impl Wave { fn packed(self) -> PackedWave { let k = TAU / self.wavelength.max(1e-4); let q = if self.amplitude > 0.0 { self.steepness / (k * self.amplitude) } else { 0.0 }; PackedWave { direction: self.direction, amplitude: self.amplitude, k, q, omega: self.speed * k, } } } #[derive(Clone, Copy)] struct PackedWave { direction: Vec2, amplitude: f32, k: f32, q: f32, omega: f32, } struct Surface { waves: Vec<PackedWave>, max_iterations: usize, tolerance: f32, } impl Surface { fn new(waves: Vec<Wave>) -> Self { Self { waves: waves.into_iter().map(Wave::packed).collect(), max_iterations: 32, tolerance: 1e-5, } } // Horizontal Gerstner displacement for an undisturbed position `base`. fn gather(&self, base: Vec2, time: f32) -> Vec2 { self.waves.iter().fold(Vec2::ZERO, |offset, wave| { let phase = wave.k * wave.direction.dot(base) - wave.omega * time; offset + wave.direction * (wave.q * wave.amplitude * phase.cos()) }) } // Solve query = base + gather(base, time) for the undisturbed position. fn base_under(&self, query: Vec2, time: f32) -> Vec2 { let mut base = query; for _ in 0..self.max_iterations { let next = query - self.gather(base, time); let delta = next - base; base = next; if delta.length_squared() <= self.tolerance * self.tolerance { break; } } base } // Once the inverse horizontal mapping is known, evaluate the vertical sum. fn height_at(&self, world_xz: Vec2, time: f32, water_level: f32) -> f32 { let base = self.base_under(world_xz, time); water_level + self.waves.iter().fold(0.0, |height, wave| { let phase = wave.k * wave.direction.dot(base) - wave.omega * time; height + wave.amplitude * phase.sin() }) } } fn main() { let surface = Surface::new(vec![ Wave { direction: Vec2 { x: 1.0, z: 0.0 }, amplitude: 0.8, wavelength: 12.0, steepness: 0.35, speed: 1.5, }, Wave { direction: Vec2 { x: 0.0, z: 1.0 }, amplitude: 0.35, wavelength: 5.0, steepness: 0.2, speed: 2.2, }, ]); let world_position = Vec2 { x: 3.0, z: -1.5 }; let time = 4.0; let height = surface.height_at(world_position, time, 2.0); println!( "water height at ({:.2}, {:.2}) = {:.4}", world_position.x, world_position.z, height ); }References
1- Sloptimum/forgecrates/engine-core/src/water.rs
Provides a concrete inverse mapping for Gerstner waves: fixed-point iteration to invert horizontal displacement (`base_under`) and then compute world surface height/normal (`sample_at`) at an (x,z) position, matching the query intent closely.
Request
Request payload
{ "query": "invert Gerstner wave horizontal displacement fixed point iteration water surface height at world position", "language": "rust", "license_mode": "strict" }- Sloptimum/forgecrates/engine-core/src/water.rs
+6:24Code GrepCode navigationthree-mesh-bvh“shapecast”
shapecast
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "example/characterMovement.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 378, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L358-L378", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 358 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "path_selectors": [ { "kind": "GLOB", "value": "example/characterMovement.js" } ], "pattern": "shapecast", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 60000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "example/characterMovement.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 378, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L358-L378", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 358 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+6:28Code ReadCode navigationthree-mesh-bvh
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "end_line": 449, "indexing_status": "indexed", "language": "javascript", "line_count": 150, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 449, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L300-L449", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 300 } ], "start_line": 300, "status": "success", "total_lines": 479 }Request
Request payload
{ "end_line": 449, "file_path": "example/characterMovement.js", "package_name": "three-mesh-bvh", "registry": "npm", "start_line": 300, "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 449, "indexing_status": "indexed", "language": "javascript", "line_count": 150, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 449, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L300-L449", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 300 } ], "start_line": 300, "status": "success", "total_lines": 479 }, "title": null, "content": null }+6:30Code GrepCode navigationthree“#include <lights_fragment_”
#include <lights_fragment_
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "src/renderers/shaders/ShaderLib/meshphysical.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 190, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L182-L190", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 182 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 191, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L183-L191", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 183 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 192, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L184-L192", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 184 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js" } ], "pattern": "#include <lights_fragment_", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "src/renderers/shaders/ShaderLib/meshphysical.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 190, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L182-L190", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 182 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 191, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L183-L191", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 183 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 192, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L184-L192", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 184 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }, "title": null, "content": null }+6:33Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 215, "indexing_status": "indexed", "language": "javascript", "line_count": 30, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 215, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L186-L215", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 186 } ], "start_line": 186, "status": "success", "total_lines": 224 }Request
Request payload
{ "end_line": 215, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "package_name": "three", "registry": "npm", "start_line": 186, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 215, "indexing_status": "indexed", "language": "javascript", "line_count": 30, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 215, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L186-L215", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 186 } ], "start_line": 186, "status": "success", "total_lines": 224 }, "title": null, "content": null }+6:37Code GrepCode navigationthree“damp”
damp
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/MathUtils.js", "src/math/MathUtils.js", "src/math/MathUtils.js", "src/math/MathUtils.js", "src/math/MathUtils.js", "src/math/MathUtils.js", "src/math/MathUtils.js", "src/math/MathUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 134, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L116-L134", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 116 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 134, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L116-L134", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 116 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 143, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L125-L143", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 125 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 564, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L546-L564", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 546 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 564, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L546-L564", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 546 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 575, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L557-L575", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 557 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 575, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L557-L575", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 557 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 743, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L725-L743", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 725 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 9, "context_lines_before": 9, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/math/MathUtils.js" } ], "pattern": "damp", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/MathUtils.js", "src/math/MathUtils.js", "src/math/MathUtils.js", "src/math/MathUtils.js", "src/math/MathUtils.js", "src/math/MathUtils.js", "src/math/MathUtils.js", "src/math/MathUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 134, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L116-L134", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 116 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 134, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L116-L134", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 116 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 143, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L125-L143", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 125 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 564, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L546-L564", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 546 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 564, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L546-L564", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 546 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 575, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L557-L575", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 557 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 575, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L557-L575", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 557 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 743, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L725-L743", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 725 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 1 }, "title": null, "content": null }+6:39Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 224, "indexing_status": "indexed", "language": "javascript", "line_count": 10, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 224, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L215-L224", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 215 } ], "start_line": 215, "status": "success", "total_lines": 224 }Request
Request payload
{ "end_line": 224, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "package_name": "three", "registry": "npm", "start_line": 215, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 224, "indexing_status": "indexed", "language": "javascript", "line_count": 10, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 224, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L215-L224", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 215 } ], "start_line": 215, "status": "success", "total_lines": 224 }, "title": null, "content": null }+6:44Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 75, "indexing_status": "indexed", "language": "javascript", "line_count": 75, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 75, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js#L1-L75", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 213 }Request
Request payload
{ "end_line": 75, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 75, "indexing_status": "indexed", "language": "javascript", "line_count": 75, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 75, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js#L1-L75", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 213 }, "title": null, "content": null }+6:50Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 180, "indexing_status": "indexed", "language": "javascript", "line_count": 101, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 180, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L80-L180", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 80 } ], "start_line": 80, "status": "success", "total_lines": 3703 }Request
Request payload
{ "end_line": 180, "file_path": "src/renderers/WebGLRenderer.js", "package_name": "three", "registry": "npm", "start_line": 80, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 180, "indexing_status": "indexed", "language": "javascript", "line_count": 101, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 180, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L80-L180", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 80 } ], "start_line": 80, "status": "success", "total_lines": 3703 }, "title": null, "content": null }+6:54Code GrepCode navigationDante83/a-water“LOD”
LOD
repo:https://github.com/Dante83/a-waterResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/js/ocean-system/components/buoyant.js", "src/js/ocean-system/components/ocean-shadow-csm.js", "src/js/ocean-system/components/ocean-splash.js", "src/js/ocean-system/luts/ocean-height-composer.js", "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "src/js/ocean-system/materials/ocean-material/water-shader.js", "src/js/ocean-system/materials/ocean-material/water-shader.js", "src/js/ocean-system/materials/ocean-material/water-shader.js", "src/js/ocean-system/materials/ocean-material/water-shader.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 19, "file_path": "src/js/ocean-system/components/buoyant.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/buoyant.js#L7-L19", "repo_url": "https://github.com/dante83/a-water", "start_line": 7 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 57, "file_path": "src/js/ocean-system/components/ocean-shadow-csm.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-shadow-csm.js#L45-L57", "repo_url": "https://github.com/dante83/a-water", "start_line": 45 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 929, "file_path": "src/js/ocean-system/components/ocean-splash.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-splash.js#L917-L929", "repo_url": "https://github.com/dante83/a-water", "start_line": 917 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 67, "file_path": "src/js/ocean-system/luts/ocean-height-composer.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/luts/ocean-height-composer.js#L55-L67", "repo_url": "https://github.com/dante83/a-water", "start_line": 55 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 89, "file_path": "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/horizon-skirt.js#L77-L89", "repo_url": "https://github.com/dante83/a-water", "start_line": 77 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 93, "file_path": "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/horizon-skirt.js#L81-L93", "repo_url": "https://github.com/dante83/a-water", "start_line": 81 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 94, "file_path": "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/horizon-skirt.js#L82-L94", "repo_url": "https://github.com/dante83/a-water", "start_line": 82 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 94, "file_path": "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/horizon-skirt.js#L82-L94", "repo_url": "https://github.com/dante83/a-water", "start_line": 82 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 352, "file_path": "src/js/ocean-system/materials/ocean-material/water-shader.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/water-shader.js#L340-L352", "repo_url": "https://github.com/dante83/a-water", "start_line": 340 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1381, "file_path": "src/js/ocean-system/materials/ocean-material/water-shader.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/water-shader.js#L1369-L1381", "repo_url": "https://github.com/dante83/a-water", "start_line": 1369 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1815, "file_path": "src/js/ocean-system/materials/ocean-material/water-shader.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/water-shader.js#L1803-L1815", "repo_url": "https://github.com/dante83/a-water", "start_line": 1803 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 2224, "file_path": "src/js/ocean-system/materials/ocean-material/water-shader.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/water-shader.js#L2212-L2224", "repo_url": "https://github.com/dante83/a-water", "start_line": 2212 } ], "returned_matches": 12, "route_taken": "CONTENT_INDEX", "status": "success", "target_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "kind": "code_target", "repo_url": "https://github.com/dante83/a-water", "role": "resolved_requested" } ], "total_matches": 12, "unique_files_matched": 6 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "include_hidden": false, "max_matches": 18, "max_matches_per_file": 20, "path_selectors": [ { "kind": "GLOB", "value": "src/js/ocean-system/**/*.js" } ], "pattern": "LOD", "pattern_type": "LITERAL", "repo_url": "https://github.com/Dante83/a-water", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/js/ocean-system/components/buoyant.js", "src/js/ocean-system/components/ocean-shadow-csm.js", "src/js/ocean-system/components/ocean-splash.js", "src/js/ocean-system/luts/ocean-height-composer.js", "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "src/js/ocean-system/materials/ocean-material/water-shader.js", "src/js/ocean-system/materials/ocean-material/water-shader.js", "src/js/ocean-system/materials/ocean-material/water-shader.js", "src/js/ocean-system/materials/ocean-material/water-shader.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 19, "file_path": "src/js/ocean-system/components/buoyant.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/buoyant.js#L7-L19", "repo_url": "https://github.com/dante83/a-water", "start_line": 7 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 57, "file_path": "src/js/ocean-system/components/ocean-shadow-csm.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-shadow-csm.js#L45-L57", "repo_url": "https://github.com/dante83/a-water", "start_line": 45 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 929, "file_path": "src/js/ocean-system/components/ocean-splash.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-splash.js#L917-L929", "repo_url": "https://github.com/dante83/a-water", "start_line": 917 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 67, "file_path": "src/js/ocean-system/luts/ocean-height-composer.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/luts/ocean-height-composer.js#L55-L67", "repo_url": "https://github.com/dante83/a-water", "start_line": 55 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 89, "file_path": "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/horizon-skirt.js#L77-L89", "repo_url": "https://github.com/dante83/a-water", "start_line": 77 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 93, "file_path": "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/horizon-skirt.js#L81-L93", "repo_url": "https://github.com/dante83/a-water", "start_line": 81 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 94, "file_path": "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/horizon-skirt.js#L82-L94", "repo_url": "https://github.com/dante83/a-water", "start_line": 82 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 94, "file_path": "src/js/ocean-system/materials/ocean-material/horizon-skirt.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/horizon-skirt.js#L82-L94", "repo_url": "https://github.com/dante83/a-water", "start_line": 82 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 352, "file_path": "src/js/ocean-system/materials/ocean-material/water-shader.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/water-shader.js#L340-L352", "repo_url": "https://github.com/dante83/a-water", "start_line": 340 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1381, "file_path": "src/js/ocean-system/materials/ocean-material/water-shader.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/water-shader.js#L1369-L1381", "repo_url": "https://github.com/dante83/a-water", "start_line": 1369 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1815, "file_path": "src/js/ocean-system/materials/ocean-material/water-shader.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/water-shader.js#L1803-L1815", "repo_url": "https://github.com/dante83/a-water", "start_line": 1803 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 2224, "file_path": "src/js/ocean-system/materials/ocean-material/water-shader.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/materials/ocean-material/water-shader.js#L2212-L2224", "repo_url": "https://github.com/dante83/a-water", "start_line": 2212 } ], "returned_matches": 12, "route_taken": "CONTENT_INDEX", "status": "success", "target_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "kind": "code_target", "repo_url": "https://github.com/dante83/a-water", "role": "resolved_requested" } ], "total_matches": 12, "unique_files_matched": 6 }, "title": null, "content": null }+6:55Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 86, "indexing_status": "indexed", "language": "javascript", "line_count": 27, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 86, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L60-L86", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60 } ], "start_line": 60, "status": "success", "total_lines": 3703 }Request
Request payload
{ "end_line": 86, "file_path": "src/renderers/WebGLRenderer.js", "package_name": "three", "registry": "npm", "start_line": 60, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 86, "indexing_status": "indexed", "language": "javascript", "line_count": 27, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 86, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L60-L86", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60 } ], "start_line": 60, "status": "success", "total_lines": 3703 }, "title": null, "content": null }+6:57Get ExampleGenerated exampleprocedural low-poly character built from Object3D group hierarchy with limb pivot joints animated in three.js walk cycle
procedural low-poly character built from Object3D group hierarchy with limb pivot joints animated in three.js walk cycle · javascript · strict
Procedural Low-Poly Three.js Character with Pivot-Joint Walk Cycle
import * as THREE from 'three'; const scene = new THREE.Scene(); scene.background = new THREE.Color(0x9fc9d6); const camera = new THREE.PerspectiveCamera(45, innerWidth / innerHeight, 0.1, 100); camera.position.set(4, 3.2, 6); camera.lookAt(0, 1.2, 0); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.setSize(innerWidth, innerHeight); renderer.shadowMap.enabled = true; document.body.style.margin = '0'; document.body.appendChild(renderer.domElement); scene.add(new THREE.HemisphereLight(0xffffff, 0x557060, 2)); const sun = new THREE.DirectionalLight(0xffffff, 2.5); sun.position.set(4, 8, 5); sun.castShadow = true; scene.add(sun); const ground = new THREE.Mesh( new THREE.CylinderGeometry(6, 6, 0.2, 12), new THREE.MeshToonMaterial({ color: 0x6d9b72 }) ); ground.position.y = -0.1; ground.receiveShadow = true; scene.add(ground); const materials = { skin: new THREE.MeshToonMaterial({ color: 0xf0ad82 }), shirt: new THREE.MeshToonMaterial({ color: 0x3d70c9 }), pants: new THREE.MeshToonMaterial({ color: 0x283653 }), shoes: new THREE.MeshToonMaterial({ color: 0x20242c }), hair: new THREE.MeshToonMaterial({ color: 0x30251d }) }; function box(width, height, depth, material) { const mesh = new THREE.Mesh( new THREE.BoxGeometry(width, height, depth), material ); mesh.castShadow = true; mesh.receiveShadow = true; return mesh; } function lowPolySphere(radius, material) { const mesh = new THREE.Mesh( new THREE.IcosahedronGeometry(radius, 1), material ); mesh.castShadow = true; mesh.receiveShadow = true; return mesh; } function createCharacter() { const character = new THREE.Group(); character.position.y = 1.25; const hips = new THREE.Group(); hips.position.y = 0.95; character.add(hips); const pelvis = box(0.72, 0.42, 0.42, materials.pants); pelvis.position.y = 0.12; hips.add(pelvis); const torso = new THREE.Group(); torso.position.y = 0.35; hips.add(torso); const body = box(0.82, 0.95, 0.48, materials.shirt); body.position.y = 0.45; torso.add(body); const neck = new THREE.Group(); neck.position.y = 0.98; torso.add(neck); const neckMesh = box(0.2, 0.18, 0.2, materials.skin); neckMesh.position.y = -0.05; neck.add(neckMesh); const head = lowPolySphere(0.42, materials.skin); head.position.y = 0.4; neck.add(head); const hair = lowPolySphere(0.44, materials.hair); hair.scale.set(1.02, 0.62, 1.02); hair.position.set(0, 0.62, -0.02); neck.add(hair); const limbs = { leftArm: new THREE.Group(), rightArm: new THREE.Group(), leftForearm: new THREE.Group(), rightForearm: new THREE.Group(), leftLeg: new THREE.Group(), rightLeg: new THREE.Group(), leftShin: new THREE.Group(), rightShin: new THREE.Group() }; // Shoulder pivots. Meshes are offset below each pivot so rotation happens at the joint. limbs.leftArm.position.set(-0.52, 0.82, 0); limbs.rightArm.position.set(0.52, 0.82, 0); torso.add(limbs.leftArm, limbs.rightArm); const upperArmL = box(0.22, 0.7, 0.22, materials.shirt); const upperArmR = box(0.22, 0.7, 0.22, materials.shirt); upperArmL.position.y = -0.35; upperArmR.position.y = -0.35; limbs.leftArm.add(upperArmL); limbs.rightArm.add(upperArmR); // Elbow pivots are children of the upper arms. limbs.leftForearm.position.y = -0.7; limbs.rightForearm.position.y = -0.7; limbs.leftArm.add(limbs.leftForearm); limbs.rightArm.add(limbs.rightForearm); const forearmL = box(0.2, 0.62, 0.2, materials.skin); const forearmR = box(0.2, 0.62, 0.2, materials.skin); forearmL.position.y = -0.31; forearmR.position.y = -0.31; limbs.leftForearm.add(forearmL); limbs.rightForearm.add(forearmR); // Hip pivots. limbs.leftLeg.position.set(-0.22, 0.0, 0); limbs.rightLeg.position.set(0.22, 0.0, 0); hips.add(limbs.leftLeg, limbs.rightLeg); const thighL = box(0.27, 0.72, 0.27, materials.pants); const thighR = box(0.27, 0.72, 0.27, materials.pants); thighL.position.y = -0.36; thighR.position.y = -0.36; limbs.leftLeg.add(thighL); limbs.rightLeg.add(thighR); // Knee pivots are children of the thigh meshes' parent groups. limbs.leftShin.position.y = -0.72; limbs.rightShin.position.y = -0.72; limbs.leftLeg.add(limbs.leftShin); limbs.rightLeg.add(limbs.rightShin); const shinL = box(0.23, 0.68, 0.23, materials.skin); const shinR = box(0.23, 0.68, 0.23, materials.skin); shinL.position.y = -0.34; shinR.position.y = -0.34; limbs.leftShin.add(shinL); limbs.rightShin.add(shinR); const shoeL = box(0.32, 0.16, 0.52, materials.shoes); const shoeR = box(0.32, 0.16, 0.52, materials.shoes); shoeL.position.set(0, -0.7, 0.1); shoeR.position.set(0, -0.7, 0.1); limbs.leftShin.add(shoeL); limbs.rightShin.add(shoeR); character.userData.joints = limbs; character.userData.walkDistance = 0; return character; } const character = createCharacter(); scene.add(character); const clock = new THREE.Clock(); const keys = new Set(); addEventListener('keydown', event => keys.add(event.code)); addEventListener('keyup', event => keys.delete(event.code)); function animateWalk(character, elapsed, speed) { const { joints } = character.userData; const moving = speed > 0.01; const phase = elapsed * (moving ? 9.5 : 2.0); const stride = moving ? 0.62 : 0.06; const swing = Math.sin(phase) * stride; const oppositeSwing = Math.sin(phase + Math.PI) * stride; const liftL = Math.max(0, Math.sin(phase + Math.PI)) * 0.42; const liftR = Math.max(0, Math.sin(phase)) * 0.42; joints.leftLeg.rotation.x = swing; joints.rightLeg.rotation.x = oppositeSwing; joints.leftShin.rotation.x = liftL; joints.rightShin.rotation.x = liftR; joints.leftArm.rotation.x = oppositeSwing * 0.75; joints.rightArm.rotation.x = swing * 0.75; joints.leftForearm.rotation.x = -Math.max(0, swing) * 0.25; joints.rightForearm.rotation.x = -Math.max(0, oppositeSwing) * 0.25; const bounce = moving ? Math.abs(Math.sin(phase * 2)) * 0.045 : Math.sin(elapsed * 2) * 0.015; character.position.y = 1.25 + bounce; character.rotation.y = moving ? Math.atan2(0, 1) : 0; } function update(delta) { const direction = new THREE.Vector3( (keys.has('ArrowRight') || keys.has('KeyD') ? 1 : 0) - (keys.has('ArrowLeft') || keys.has('KeyA') ? 1 : 0), 0, (keys.has('ArrowDown') || keys.has('KeyS') ? 1 : 0) - (keys.has('ArrowUp') || keys.has('KeyW') ? 1 : 0) ); const speed = direction.lengthSq() ? 2.2 : 0; if (speed) { direction.normalize(); character.position.addScaledVector(direction, speed * delta); character.rotation.y = Math.atan2(direction.x, direction.z); } character.userData.walkDistance += speed * delta; animateWalk(character, character.userData.walkDistance, speed); } function render() { const delta = Math.min(clock.getDelta(), 0.05); update(delta); renderer.render(scene, camera); requestAnimationFrame(render); } addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); }); render();References
3- craftmygame/little-citylittle-taipei/main.js
JavaScript/three.js code that builds a procedural low-poly scene and imports a dedicated character module (likely where the walk/motion is defined), but the provided snippet doesn’t explicitly show Object3D limb pivot joints or a walk-cycle implementation.
- Codemarchant/rexclawweb/src/services/avatar_renderer.js
Three.js/JavaScript implementation involving an Object3D hierarchy with humanoid bone nodes and animation via AnimationMixer; includes rotation/bone handling concepts that can inform limb pivot joint walk-cycle structure, though it’s not explicitly procedural low-poly character or limb-pivot joint walk-cycle code.
- Jisan901/PolyForge3D-FT_experiments/esm/ART.js
Implements three.js/rapier-style procedural jointed character components (including ragdoll with limb hierarchy and joint anchors), but it doesn’t show an Object3D low-poly walk-cycle animation or procedural walking/pivot-joint animation loop, so it’s only a partial match to the requested walk animation workflow.
Request
Request payload
{ "query": "procedural low-poly character built from Object3D group hierarchy with limb pivot joints animated in three.js walk cycle", "language": "javascript", "license_mode": "strict" }- craftmygame/little-citylittle-taipei/main.js
+7:00Code GrepCode navigationDante83/a-water“Math.floor”
Math.floor
repo:https://github.com/Dante83/a-waterResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1204, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1188-L1204", "repo_url": "https://github.com/dante83/a-water", "start_line": 1188 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1204, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1188-L1204", "repo_url": "https://github.com/dante83/a-water", "start_line": 1188 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1205, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1189-L1205", "repo_url": "https://github.com/dante83/a-water", "start_line": 1189 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1206, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1190-L1206", "repo_url": "https://github.com/dante83/a-water", "start_line": 1190 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1277, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1261-L1277", "repo_url": "https://github.com/dante83/a-water", "start_line": 1261 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1278, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1262-L1278", "repo_url": "https://github.com/dante83/a-water", "start_line": 1262 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1325, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1309-L1325", "repo_url": "https://github.com/dante83/a-water", "start_line": 1309 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1325, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1309-L1325", "repo_url": "https://github.com/dante83/a-water", "start_line": 1309 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "target_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "kind": "code_target", "repo_url": "https://github.com/dante83/a-water", "role": "resolved_requested" } ], "total_matches": 8, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "include_hidden": false, "max_matches": 8, "max_matches_per_file": 20, "path_selectors": [ { "kind": "GLOB", "value": "src/js/ocean-system/components/ocean-grid.js" } ], "pattern": "Math.floor", "pattern_type": "LITERAL", "repo_url": "https://github.com/Dante83/a-water", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1204, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1188-L1204", "repo_url": "https://github.com/dante83/a-water", "start_line": 1188 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1204, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1188-L1204", "repo_url": "https://github.com/dante83/a-water", "start_line": 1188 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1205, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1189-L1205", "repo_url": "https://github.com/dante83/a-water", "start_line": 1189 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1206, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1190-L1206", "repo_url": "https://github.com/dante83/a-water", "start_line": 1190 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1277, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1261-L1277", "repo_url": "https://github.com/dante83/a-water", "start_line": 1261 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1278, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1262-L1278", "repo_url": "https://github.com/dante83/a-water", "start_line": 1262 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1325, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1309-L1325", "repo_url": "https://github.com/dante83/a-water", "start_line": 1309 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1325, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1309-L1325", "repo_url": "https://github.com/dante83/a-water", "start_line": 1309 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "target_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "kind": "code_target", "repo_url": "https://github.com/dante83/a-water", "role": "resolved_requested" } ], "total_matches": 8, "unique_files_matched": 1 }, "title": null, "content": null }+7:08Get ExampleGenerated examplethree.js MeshToonMaterial gradientMap DataTexture toon ramp NearestFilter three tone five tone create gradient texture
three.js MeshToonMaterial gradientMap DataTexture toon ramp NearestFilter three tone five tone create gradient texture · javascript · strict
Five-Tone Three.js Toon GradientMap
import * as THREE from 'three'; // Five grayscale bands used by MeshToonMaterial for cel shading. function createFiveToneGradient() { const tones = [74, 124, 172, 214, 255]; const data = new Uint8Array(tones.length * 4); for (let i = 0; i < tones.length; i++) { const offset = i * 4; data[offset] = tones[i]; data[offset + 1] = tones[i]; data[offset + 2] = tones[i]; data[offset + 3] = 255; } const texture = new THREE.DataTexture( data, tones.length, 1, THREE.RGBAFormat, THREE.UnsignedByteType, ); // Nearest filtering keeps the five lighting bands sharp. texture.minFilter = THREE.NearestFilter; texture.magFilter = THREE.NearestFilter; texture.wrapS = THREE.ClampToEdgeWrapping; texture.wrapT = THREE.ClampToEdgeWrapping; texture.generateMipmaps = false; texture.colorSpace = THREE.NoColorSpace; texture.needsUpdate = true; return texture; } const scene = new THREE.Scene(); const camera = new THREE.PerspectiveCamera(45, innerWidth / innerHeight, 0.1, 100); camera.position.set(0, 1, 4); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setSize(innerWidth, innerHeight); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); document.body.appendChild(renderer.domElement); const keyLight = new THREE.DirectionalLight(0xffffff, 2); keyLight.position.set(2, 3, 4); scene.add(keyLight, new THREE.AmbientLight(0x667799, 0.35)); const material = new THREE.MeshToonMaterial({ color: 0x4f8fd9, gradientMap: createFiveToneGradient(), }); const sphere = new THREE.Mesh( new THREE.SphereGeometry(1, 64, 32), material, ); scene.add(sphere); function animate() { sphere.rotation.y += 0.008; renderer.render(scene, camera); requestAnimationFrame(animate); } addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); }); animate();References
5- webspace-sdk/webspace-enginesrc/systems/vox-system.js
Strong match to creating a MeshToonMaterial-compatible gradientMap using THREE.DataTexture with NearestFilter and applying it to toon shading (via ShaderLib.toon / MeshToonMaterial defines).
- Kenton-GMI/sakura-crossingsrc/core/toon.js
Very close to the requested toon ramp gradientMap creation: generates a THREE.DataTexture ramp (RGBA) with NearestFilter and uses MeshToonMaterial gradientMap; also includes tone-band customization.
- webspace-sdk/jel-mplsrc/hubs/components/gltf-model-plus.js
Direct three.js implementation of a toon ramp using THREE.DataTexture with NearestFilter for min/mag filters, constructing a gradient texture (tone ramp) suitable for MeshToonMaterial/gradientMap usage; strongly aligned to the query’s core APIs/symbols.
- cl0nazepamm/maxjsweb/js/material_builder.js
Strong three.js MeshToonMaterial setup showing gradientMap binding plus NearestFilter configuration on DataTexture used as a toon ramp, with practical code structure for ramp/texture creation.
- MattPoetker/origindbexamples/originlands/public/main.js
Clear example of creating a toon gradient ramp via DataTexture, assigning it to MeshToonMaterial.gradientMap, and setting NearestFilter for cel-step look; missing broader tone-mapping/bake context but matches the core requested pieces.
Request
Request payload
{ "query": "three.js MeshToonMaterial gradientMap DataTexture toon ramp NearestFilter three tone five tone create gradient texture", "language": "javascript", "license_mode": "strict" }- webspace-sdk/webspace-enginesrc/systems/vox-system.js
+7:15Code GrepCode navigationDante83/a-water“ringIndex”
ringIndex
repo:https://github.com/Dante83/a-waterResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1140, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1124-L1140", "repo_url": "https://github.com/dante83/a-water", "start_line": 1124 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1392, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1376-L1392", "repo_url": "https://github.com/dante83/a-water", "start_line": 1376 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1409, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1393-L1409", "repo_url": "https://github.com/dante83/a-water", "start_line": 1393 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1412, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1396-L1412", "repo_url": "https://github.com/dante83/a-water", "start_line": 1396 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "target_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "kind": "code_target", "repo_url": "https://github.com/dante83/a-water", "role": "resolved_requested" } ], "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "path_selectors": [ { "kind": "GLOB", "value": "src/js/ocean-system/components/ocean-grid.js" } ], "pattern": "ringIndex", "pattern_type": "LITERAL", "repo_url": "https://github.com/Dante83/a-water", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1140, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1124-L1140", "repo_url": "https://github.com/dante83/a-water", "start_line": 1124 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1392, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1376-L1392", "repo_url": "https://github.com/dante83/a-water", "start_line": 1376 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1409, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1393-L1409", "repo_url": "https://github.com/dante83/a-water", "start_line": 1393 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 1412, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L1396-L1412", "repo_url": "https://github.com/dante83/a-water", "start_line": 1396 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "target_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "kind": "code_target", "repo_url": "https://github.com/dante83/a-water", "role": "resolved_requested" } ], "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+7:28Code GrepCode navigationDante83/a-water“foamRenderMap”
foamRenderMap
repo:https://github.com/Dante83/a-waterResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 103, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L87-L103", "repo_url": "https://github.com/dante83/a-water", "start_line": 87 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 2787, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L2771-L2787", "repo_url": "https://github.com/dante83/a-water", "start_line": 2771 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 2789, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L2773-L2789", "repo_url": "https://github.com/dante83/a-water", "start_line": 2773 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 3198, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L3182-L3198", "repo_url": "https://github.com/dante83/a-water", "start_line": 3182 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 3198, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L3182-L3198", "repo_url": "https://github.com/dante83/a-water", "start_line": 3182 } ], "returned_matches": 5, "route_taken": "CONTENT_INDEX", "status": "success", "target_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "kind": "code_target", "repo_url": "https://github.com/dante83/a-water", "role": "resolved_requested" } ], "total_matches": 5, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "include_hidden": false, "max_matches": 5, "max_matches_per_file": 20, "path_selectors": [ { "kind": "GLOB", "value": "src/js/ocean-system/components/*.js" } ], "pattern": "foamRenderMap", "pattern_type": "LITERAL", "repo_url": "https://github.com/Dante83/a-water", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js", "src/js/ocean-system/components/ocean-grid.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 103, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L87-L103", "repo_url": "https://github.com/dante83/a-water", "start_line": 87 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 2787, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L2771-L2787", "repo_url": "https://github.com/dante83/a-water", "start_line": 2771 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 2789, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L2773-L2789", "repo_url": "https://github.com/dante83/a-water", "start_line": 2773 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 3198, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L3182-L3198", "repo_url": "https://github.com/dante83/a-water", "start_line": 3182 }, { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "end_line": 3198, "file_path": "src/js/ocean-system/components/ocean-grid.js", "kind": "code", "permalink": "https://github.com/dante83/a-water/blob/a9ec246238482323a2c05bf86cd24ff8bd45a92a/src/js/ocean-system/components/ocean-grid.js#L3182-L3198", "repo_url": "https://github.com/dante83/a-water", "start_line": 3182 } ], "returned_matches": 5, "route_taken": "CONTENT_INDEX", "status": "success", "target_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "kind": "code_target", "repo_url": "https://github.com/dante83/a-water", "role": "resolved_requested" } ], "total_matches": 5, "unique_files_matched": 1 }, "title": null, "content": null }+7:33Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 175, "indexing_status": "indexed", "language": "javascript", "line_count": 76, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 175, "file_path": "examples/jsm/postprocessing/Pass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/Pass.js#L100-L175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 100 } ], "start_line": 100, "status": "success", "total_lines": 191 }Request
Request payload
{ "end_line": 175, "file_path": "examples/jsm/postprocessing/Pass.js", "package_name": "three", "registry": "npm", "start_line": 100, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 175, "indexing_status": "indexed", "language": "javascript", "line_count": 76, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 175, "file_path": "examples/jsm/postprocessing/Pass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/Pass.js#L100-L175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 100 } ], "start_line": 100, "status": "success", "total_lines": 191 }, "title": null, "content": null }+7:34Code GrepCode navigationthree“intersectsSphere”
intersectsSphere
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Box3.js", "src/math/Sphere.js", "src/math/Sphere.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 465, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L449-L465", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 449 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 185, "file_path": "src/math/Sphere.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Sphere.js#L169-L185", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 169 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 201, "file_path": "src/math/Sphere.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Sphere.js#L185-L201", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 185 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/math/Box3.js" }, { "kind": "GLOB", "value": "src/math/Sphere.js" } ], "pattern": "intersectsSphere", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Box3.js", "src/math/Sphere.js", "src/math/Sphere.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 465, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L449-L465", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 449 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 185, "file_path": "src/math/Sphere.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Sphere.js#L169-L185", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 169 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 201, "file_path": "src/math/Sphere.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Sphere.js#L185-L201", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 185 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 2 }, "title": null, "content": null }+7:37Code GrepCode navigationthree“count = 1”
count = 1
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/RenderTarget.js" } ], "pattern": "count = 1", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+7:38Code GrepCode navigationDante83/a-water“wake”
wake
repo:https://github.com/Dante83/a-waterResult summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "target_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "kind": "code_target", "repo_url": "https://github.com/dante83/a-water", "role": "resolved_requested" } ], "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 7, "context_lines_before": 7, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "path_selectors": [ { "kind": "GLOB", "value": "src/js/ocean-system/components/ocean-splash.js" } ], "pattern": "wake", "pattern_type": "LITERAL", "repo_url": "https://github.com/Dante83/a-water", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "target_pointers": [ { "commit_sha": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "git_ref": "a9ec246238482323a2c05bf86cd24ff8bd45a92a", "kind": "code_target", "repo_url": "https://github.com/dante83/a-water", "role": "resolved_requested" } ], "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+7:41Code GrepCode navigationthree“depthTexture”
depthTexture
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 43, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L27-L43", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 27 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 48, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L32-L48", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 32 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 70, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L54-L70", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 54 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 75, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L59-L75", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 59 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/RenderTarget.js" } ], "pattern": "depthTexture", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 43, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L27-L43", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 27 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 48, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L32-L48", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 32 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 70, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L54-L70", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 54 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 75, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L59-L75", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 59 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+7:45Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 116, "indexing_status": "indexed", "language": "javascript", "line_count": 27, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 116, "file_path": "src/renderers/shaders/ShaderChunk/packing.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/packing.glsl.js#L90-L116", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 90 } ], "start_line": 90, "status": "success", "total_lines": 116 }Request
Request payload
{ "end_line": 130, "file_path": "src/renderers/shaders/ShaderChunk/packing.glsl.js", "package_name": "three", "registry": "npm", "start_line": 90, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 116, "indexing_status": "indexed", "language": "javascript", "line_count": 27, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 116, "file_path": "src/renderers/shaders/ShaderChunk/packing.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/packing.glsl.js#L90-L116", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 90 } ], "start_line": 90, "status": "success", "total_lines": 116 }, "title": null, "content": null }+7:45Code GrepCode navigationthree“clampWhenFinished”
clampWhenFinished
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/animation/AnimationAction.js", "src/animation/AnimationAction.js", "src/animation/AnimationAction.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 160, "file_path": "src/animation/AnimationAction.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationAction.js#L142-L160", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 142 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 780, "file_path": "src/animation/AnimationAction.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationAction.js#L762-L780", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 762 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 831, "file_path": "src/animation/AnimationAction.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationAction.js#L813-L831", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 813 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 9, "context_lines_before": 9, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/animation/AnimationAction.js" } ], "pattern": "clampWhenFinished", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/animation/AnimationAction.js", "src/animation/AnimationAction.js", "src/animation/AnimationAction.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 160, "file_path": "src/animation/AnimationAction.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationAction.js#L142-L160", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 142 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 780, "file_path": "src/animation/AnimationAction.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationAction.js#L762-L780", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 762 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 831, "file_path": "src/animation/AnimationAction.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/animation/AnimationAction.js#L813-L831", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 813 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 1 }, "title": null, "content": null }+7:49Code GrepCode navigationthree-mesh-bvh“export”
export
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 1, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L1-L1", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 1 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 2, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L2-L2", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 2 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 3, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L3-L3", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 3 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 4, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L4-L4", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 4 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 5, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L5-L5", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 5 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 6, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L6-L6", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 6 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 7, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L7-L7", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 7 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 8, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L8-L8", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 8 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 9, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L9-L9", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 9 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 10, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L10-L10", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 10 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 11, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L11-L11", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 11 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 12, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L12-L12", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 12 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 13, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L13-L13", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 13 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 14, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L14-L14", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 14 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 15, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L15-L15", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 15 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 16, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L16-L16", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 16 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 17, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L17-L17", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 17 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 18, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L18-L18", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 18 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 22, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L22-L22", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 22 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 23, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L23-L23", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 23 } ], "returned_matches": 20, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 20, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 0, "context_lines_before": 0, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "path_selectors": [ { "kind": "GLOB", "value": "src/index.js" } ], "pattern": "export", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js", "src/index.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 1, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L1-L1", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 1 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 2, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L2-L2", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 2 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 3, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L3-L3", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 3 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 4, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L4-L4", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 4 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 5, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L5-L5", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 5 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 6, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L6-L6", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 6 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 7, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L7-L7", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 7 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 8, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L8-L8", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 8 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 9, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L9-L9", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 9 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 10, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L10-L10", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 10 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 11, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L11-L11", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 11 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 12, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L12-L12", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 12 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 13, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L13-L13", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 13 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 14, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L14-L14", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 14 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 15, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L15-L15", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 15 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 16, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L16-L16", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 16 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 17, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L17-L17", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 17 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 18, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L18-L18", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 18 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 22, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L22-L22", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 22 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 23, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L23-L23", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 23 } ], "returned_matches": 20, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 20, "unique_files_matched": 1 }, "title": null, "content": null }+7:50Code FilesCode navigationthreeexamples/jsm/shaders/
pkg:npm:three@0.185.1Result summary
{ "code_index_state": "current", "files": [ "examples/jsm/shaders/ACESFilmicToneMappingShader.js", "examples/jsm/shaders/AfterimageShader.js", "examples/jsm/shaders/BasicShader.js", "examples/jsm/shaders/BleachBypassShader.js", "examples/jsm/shaders/BlendShader.js", "examples/jsm/shaders/BokehShader.js", "examples/jsm/shaders/BokehShader2.js", "examples/jsm/shaders/BrightnessContrastShader.js", "examples/jsm/shaders/ColorCorrectionShader.js", "examples/jsm/shaders/ColorifyShader.js", "examples/jsm/shaders/ConvolutionShader.js", "examples/jsm/shaders/CopyShader.js", "examples/jsm/shaders/DOFMipMapShader.js", "examples/jsm/shaders/DepthLimitedBlurShader.js", "examples/jsm/shaders/DigitalGlitch.js", "examples/jsm/shaders/DotScreenShader.js", "examples/jsm/shaders/ExposureShader.js", "examples/jsm/shaders/FXAAShader.js", "examples/jsm/shaders/FilmShader.js", "examples/jsm/shaders/FocusShader.js" ], "has_more": false, "indexing_status": "indexed", "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/ACESFilmicToneMappingShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/ACESFilmicToneMappingShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/AfterimageShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/AfterimageShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/BasicShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/BasicShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/BleachBypassShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/BleachBypassShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/BlendShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/BlendShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/BokehShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/BokehShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/BokehShader2.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/BokehShader2.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/BrightnessContrastShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/BrightnessContrastShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/ColorCorrectionShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/ColorCorrectionShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/ColorifyShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/ColorifyShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/ConvolutionShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/ConvolutionShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/CopyShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/CopyShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/DOFMipMapShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/DOFMipMapShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/DepthLimitedBlurShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/DepthLimitedBlurShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/DigitalGlitch.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/DigitalGlitch.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/DotScreenShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/DotScreenShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/ExposureShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/ExposureShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/FXAAShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/FXAAShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/FilmShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/FilmShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/FocusShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/FocusShader.js", "repo_url": "https://github.com/mrdoob/three.js" } ], "result_pointers_truncated": true, "returned": 50, "returned_truncated": true, "status": "success", "total": 52 }Request
Request payload
{ "exclude_doc_files": false, "exclude_test_files": false, "include_hidden": false, "limit": 60, "offset": 0, "package_name": "three", "path_prefix": "examples/jsm/shaders/", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }ResponseTruncated
Response payload
{ "summary": { "code_index_state": "current", "files": [ "examples/jsm/shaders/ACESFilmicToneMappingShader.js", "examples/jsm/shaders/AfterimageShader.js", "examples/jsm/shaders/BasicShader.js", "examples/jsm/shaders/BleachBypassShader.js", "examples/jsm/shaders/BlendShader.js", "examples/jsm/shaders/BokehShader.js", "examples/jsm/shaders/BokehShader2.js", "examples/jsm/shaders/BrightnessContrastShader.js", "examples/jsm/shaders/ColorCorrectionShader.js", "examples/jsm/shaders/ColorifyShader.js", "examples/jsm/shaders/ConvolutionShader.js", "examples/jsm/shaders/CopyShader.js", "examples/jsm/shaders/DOFMipMapShader.js", "examples/jsm/shaders/DepthLimitedBlurShader.js", "examples/jsm/shaders/DigitalGlitch.js", "examples/jsm/shaders/DotScreenShader.js", "examples/jsm/shaders/ExposureShader.js", "examples/jsm/shaders/FXAAShader.js", "examples/jsm/shaders/FilmShader.js", "examples/jsm/shaders/FocusShader.js" ], "has_more": false, "indexing_status": "indexed", "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/ACESFilmicToneMappingShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/ACESFilmicToneMappingShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/AfterimageShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/AfterimageShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/BasicShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/BasicShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/BleachBypassShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/BleachBypassShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/BlendShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/BlendShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/BokehShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/BokehShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/BokehShader2.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/BokehShader2.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/BrightnessContrastShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/BrightnessContrastShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/ColorCorrectionShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/ColorCorrectionShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/ColorifyShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/ColorifyShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/ConvolutionShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/ConvolutionShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/CopyShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/CopyShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/DOFMipMapShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/DOFMipMapShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/DepthLimitedBlurShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/DepthLimitedBlurShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/DigitalGlitch.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/DigitalGlitch.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/DotScreenShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/DotScreenShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/ExposureShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/ExposureShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/FXAAShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/FXAAShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/FilmShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/FilmShader.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/shaders/FocusShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/FocusShader.js", "repo_url": "https://github.com/mrdoob/three.js" } ], "result_pointers_truncated": true, "returned": 50, "returned_truncated": true, "status": "success", "total": 52 }, "title": null, "content": null }This shared record contains a truncated response.
+7:57Get ExampleGenerated examplefloating origin world rebase shift all scene objects when camera exceeds threshold three.js precision
floating origin world rebase shift all scene objects when camera exceeds threshold three.js precision · javascript · strict
Three.js Floating-Origin World Rebase
import * as THREE from "three"; import { OrbitControls } from "three/addons/controls/OrbitControls.js"; /* * Workaround for large-coordinate precision loss: keep the camera and every * renderable object close to the local origin instead of rendering them at * their absolute world coordinates. */ class FloatingOrigin { constructor({ camera, controls, worldRoot, threshold = 1000, onRebase } = {}) { this.camera = camera; this.controls = controls; this.worldRoot = worldRoot; this.threshold = threshold; this.origin = new THREE.Vector3(); // Absolute coordinate represented by local (0, 0, 0). this.onRebase = onRebase; } update() { if (this.camera.position.length() <= this.threshold) return false; // Shift by the camera's current local position, keeping the camera near zero. const delta = this.camera.position.clone(); this.origin.add(delta); // Shift top-level world objects together. Nested meshes, bones, and lights // inherit the same translation without changing their local relationships. for (const object of this.worldRoot.children) { object.position.sub(delta); } this.camera.position.sub(delta); if (this.controls) { this.controls.target.sub(delta); this.controls.update(); } this.worldRoot.updateMatrixWorld(true); this.camera.updateMatrixWorld(true); this.onRebase?.(delta.clone(), this.origin.clone()); return true; } // Convert an absolute application-space position into the current local space. toLocal(absolutePosition) { return absolutePosition.clone().sub(this.origin); } // Convert a local render-space position back into application-space coordinates. toAbsolute(localPosition) { return localPosition.clone().add(this.origin); } } const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setSize(window.innerWidth, window.innerHeight); renderer.setPixelRatio(Math.min(window.devicePixelRatio, 2)); document.body.appendChild(renderer.domElement); document.body.style.margin = "0"; document.body.style.overflow = "hidden"; const scene = new THREE.Scene(); scene.background = new THREE.Color(0x202530); const camera = new THREE.PerspectiveCamera( 60, window.innerWidth / window.innerHeight, 0.1, 5000 ); const controls = new OrbitControls(camera, renderer.domElement); controls.enableDamping = true; // Every movable/renderable world object must be added under this single root. const worldRoot = new THREE.Group(); scene.add(worldRoot); worldRoot.add(new THREE.HemisphereLight(0xffffff, 0x334455, 2)); const sun = new THREE.DirectionalLight(0xffffff, 3); sun.position.set(20, 40, 10); worldRoot.add(sun); const grid = new THREE.GridHelper(200, 40, 0x6688aa, 0x334455); worldRoot.add(grid); const material = new THREE.MeshStandardMaterial({ color: 0x44aaff }); for (let i = 0; i < 20; i++) { const mesh = new THREE.Mesh( new THREE.BoxGeometry(10, 10, 10), material.clone() ); // Simulate objects initially located at large absolute coordinates. const absolutePosition = new THREE.Vector3( 1_000_000 + i * 30, 5, 1_000_000 ); // Store only local render coordinates; absolute coordinates belong to the app. mesh.position.copy(absolutePosition); worldRoot.add(mesh); } camera.position.set(1_000_000, 80, 1_000_120); controls.target.set(1_000_000, 0, 1_000_000); controls.update(); const floatingOrigin = new FloatingOrigin({ camera, controls, worldRoot, threshold: 10_000, onRebase(delta, absoluteOrigin) { // Shift external systems here too: physics bodies, navigation, audio, etc. console.debug("Rebased by", delta.toArray(), "new origin", absoluteOrigin.toArray()); }, }); function animate() { requestAnimationFrame(animate); controls.update(); floatingOrigin.update(); // Call before physics/rendering each frame. renderer.render(scene, camera); } window.addEventListener("resize", () => { camera.aspect = window.innerWidth / window.innerHeight; camera.updateProjectionMatrix(); renderer.setSize(window.innerWidth, window.innerHeight); }); animate();References
3- gkjohnson/three-gpu-pathtracerWebGLPathTracer: Automatically position model to avoid numeric precision problems
Directly matches the underlying precision/large-coordinate artifact problem in three.js path tracing, explicitly recommending handling numeric precision (move near origin / floating-point issues) which is central to implementing floating-origin world rebasing.
- mrdoob/three.jsSkinnedMesh: Implement skinning in a different coordinate space
Three.js issue discussion directly about floating-origin/precision problems when skinning far from the world origin, including the underlying cause (skinning in world space) and a suggested workaround (offset/transforming scene/character).
- Codemarchant/rexclawweb/src/services/avatar_renderer.js
Relates to a three.js VRM renderer that includes camera framing and comments about floating behavior, but it does not directly address floating-origin/rebasing threshold logic or world-to-local shifting as requested.
Request
Request payload
{ "query": "floating origin world rebase shift all scene objects when camera exceeds threshold three.js precision", "language": "javascript", "license_mode": "strict" }- gkjohnson/three-gpu-pathtracerWebGLPathTracer: Automatically position model to avoid numeric precision problems
+8:03Code GrepCode navigationthree“closestPointToSegment”
closestPointToSegment
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/math/**" } ], "pattern": "closestPointToSegment", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+8:09Code GrepCode navigationthree-mesh-bvh“closestPointToSegment”
closestPointToSegment
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/ExtendedTriangle.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 153, "file_path": "src/math/ExtendedTriangle.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/math/ExtendedTriangle.js#L141-L153", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 141 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "path_selectors": [ { "kind": "GLOB", "value": "src/math/ExtendedTriangle.js" } ], "pattern": "closestPointToSegment", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/ExtendedTriangle.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 153, "file_path": "src/math/ExtendedTriangle.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/math/ExtendedTriangle.js#L141-L153", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 141 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+8:11Get ExampleGenerated examplethree.js GLSL fresnel rim lighting toon material onBeforeCompile add rim color to outgoing light vViewPosition
three.js GLSL fresnel rim lighting toon material onBeforeCompile add rim color to outgoing light vViewPosition · javascript · strict
Three.js Toon Fresnel Rim Lighting with onBeforeCompile
import * as THREE from 'three'; import { OrbitControls } from 'three/addons/controls/OrbitControls.js'; const scene = new THREE.Scene(); scene.background = new THREE.Color(0x10131f); const camera = new THREE.PerspectiveCamera(45, innerWidth / innerHeight, 0.1, 100); camera.position.set(2.5, 1.8, 4); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setSize(innerWidth, innerHeight); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.outputColorSpace = THREE.SRGBColorSpace; document.body.appendChild(renderer.domElement); const controls = new OrbitControls(camera, renderer.domElement); controls.enableDamping = true; const material = new THREE.MeshToonMaterial({ color: 0x4b82d8, gradientMap: createToonGradientMap(), }); // Inject a stepped Fresnel rim contribution into Three.js's outgoing light. material.onBeforeCompile = (shader) => { shader.uniforms.uRimColor = { value: new THREE.Color(0xffd7a0) }; shader.uniforms.uRimPower = { value: 2.5 }; shader.uniforms.uRimStrength = { value: 1.2 }; shader.fragmentShader = shader.fragmentShader.replace( '#include <common>', `#include <common> uniform vec3 uRimColor; uniform float uRimPower; uniform float uRimStrength;` ); shader.fragmentShader = shader.fragmentShader.replace( '#include <output_fragment>', ` vec3 rimNormal = normalize(vNormal); vec3 viewDirection = normalize(-vViewPosition); float fresnel = 1.0 - max(dot(rimNormal, viewDirection), 0.0); // Quantize the Fresnel term for a graphic toon-style edge. float rim = smoothstep(0.55, 0.95, pow(fresnel, uRimPower)); outgoingLight += uRimColor * rim * uRimStrength; #include <output_fragment>` ); }; const mesh = new THREE.Mesh( new THREE.SphereGeometry(1, 64, 32), material ); scene.add(mesh); scene.add(new THREE.HemisphereLight(0x9bbcff, 0x202030, 2)); const keyLight = new THREE.DirectionalLight(0xffffff, 3); keyLight.position.set(3, 4, 3); scene.add(keyLight); function createToonGradientMap(steps = 4) { const data = new Uint8Array(steps); for (let i = 0; i < steps; i++) { data[i] = 40 + (i / (steps - 1)) * 215; } const texture = new THREE.DataTexture(data, steps, 1, THREE.RedFormat); texture.minFilter = THREE.NearestFilter; texture.magFilter = THREE.NearestFilter; texture.generateMipmaps = false; texture.needsUpdate = true; return texture; } function animate() { requestAnimationFrame(animate); mesh.rotation.y += 0.005; controls.update(); renderer.render(scene, camera); } addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); }); animate();References
2- ShawTim/endless-werewolfdocs/app.js
three.js toon-style rim lighting via MeshToonMaterial.onBeforeCompile injecting a discrete stepped fresnel rim using vViewPosition, matching the core Fresnel rim/onBeforeCompile technique (repository code is larger but directly demonstrates the shader edit).
- mihaipanait/lustre-chartssrc/materials/materials.js
Implements several toon/shader-augmentation presets for Three.js materials and uses onBeforeCompile shader injection (including custom toon/edge treatments), but the snippet shown doesn’t specifically cover fresnel rim light or vViewPosition/outgoingLight handling; still relevant as a reference for onBeforeCompile patterns.
Request
Request payload
{ "query": "three.js GLSL fresnel rim lighting toon material onBeforeCompile add rim color to outgoing light vViewPosition", "language": "javascript", "license_mode": "strict" }- ShawTim/endless-werewolfdocs/app.js
+8:16Code GrepCode navigationthree-mesh-bvh“peerDependencies”
peerDependencies
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "package.json" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 69, "file_path": "package.json", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/package.json#L57-L69", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 57 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "path_selectors": [ { "kind": "GLOB", "value": "package.json" } ], "pattern": "peerDependencies", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "package.json" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 69, "file_path": "package.json", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/package.json#L57-L69", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 57 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+8:32Code GrepCode navigationthree“skinning: object.isSkinnedMesh”
skinning: object.isSkinnedMesh
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.module.js", "src/renderers/webgl/WebGLPrograms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 67685, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L67673-L67685", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 67673 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7707, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L7695-L7707", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 7695 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 334, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L322-L334", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 322 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 3 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "skinning: object.isSkinnedMesh", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.module.js", "src/renderers/webgl/WebGLPrograms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 67685, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L67673-L67685", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 67673 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7707, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L7695-L7707", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 7695 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 334, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L322-L334", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 322 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 3 }, "title": null, "content": null }+8:36Code ReadCode navigationcall-me-sensei/toonlab
repo:https://github.com/call-me-sensei/toonlabResult summary
{ "end_line": 640, "indexing_status": "indexed", "language": "javascript", "line_count": 81, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 640, "file_path": "examples/urban-prop-shader/main.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/examples/urban-prop-shader/main.js#L560-L640", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 560 } ], "start_line": 560, "status": "success", "total_lines": 1663 }Request
Request payload
{ "end_line": 640, "file_path": "examples/urban-prop-shader/main.js", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 560, "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 640, "indexing_status": "indexed", "language": "javascript", "line_count": 81, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "48a93d193963a3173136c467740795e75bbe4fcf", "end_line": 640, "file_path": "examples/urban-prop-shader/main.js", "kind": "code", "permalink": "https://github.com/call-me-sensei/toonlab/blob/48a93d193963a3173136c467740795e75bbe4fcf/examples/urban-prop-shader/main.js#L560-L640", "repo_url": "https://github.com/call-me-sensei/toonlab", "start_line": 560 } ], "start_line": 560, "status": "success", "total_lines": 1663 }, "title": null, "content": null }+8:38Code GrepCode navigationthree“DetachedBindMode”
DetachedBindMode
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/constants.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 505, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L493-L505", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 493 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/constants.js" } ], "pattern": "DetachedBindMode", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/constants.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 505, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L493-L505", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 493 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+8:43PKG InfoPackage intelligencepkg:npm:three
pkg:npm:threeResult summary
{ "outcome": "result_returned", "packages": [ "npm:three" ], "status": "success" }Request
Request payload
{ "name": "three", "registry": "npm" }Response
Response payload
{ "summary": { "outcome": "result_returned", "packages": [ "npm:three" ], "status": "success" }, "title": null, "content": null }+8:47Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 40, "indexing_status": "indexed", "language": "javascript", "line_count": 40, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 40, "file_path": "examples/jsm/postprocessing/FXAAPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FXAAPass.js#L1-L40", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 40 }Request
Request payload
{ "end_line": 70, "file_path": "examples/jsm/postprocessing/FXAAPass.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 40, "indexing_status": "indexed", "language": "javascript", "line_count": 40, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 40, "file_path": "examples/jsm/postprocessing/FXAAPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FXAAPass.js#L1-L40", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 40 }, "title": null, "content": null }+8:51Code GrepCode navigationthree“class InstancedBufferGeometry”
class InstancedBufferGeometry
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/InstancedBufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 9, "file_path": "src/core/InstancedBufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InstancedBufferGeometry.js#L3-L9", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/core/InstancedBufferGeometry.js" } ], "pattern": "class InstancedBufferGeometry", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/InstancedBufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 9, "file_path": "src/core/InstancedBufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InstancedBufferGeometry.js#L3-L9", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+8:53Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 56, "indexing_status": "indexed", "language": "javascript", "line_count": 56, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 56, "file_path": "examples/jsm/shaders/VignetteShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/VignetteShader.js#L1-L56", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 56 }Request
Request payload
{ "end_line": 75, "file_path": "examples/jsm/shaders/VignetteShader.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 56, "indexing_status": "indexed", "language": "javascript", "line_count": 56, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 56, "file_path": "examples/jsm/shaders/VignetteShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/VignetteShader.js#L1-L56", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 56 }, "title": null, "content": null }+9:09Code GrepCode navigationthree“onBeforeCompile”
onBeforeCompile
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 537, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L527-L537", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 527 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 540, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L530-L540", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 530 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 541, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L531-L541", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 531 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 5, "context_lines_before": 5, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/materials/Material.js" } ], "pattern": "onBeforeCompile", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 537, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L527-L537", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 527 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 540, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L530-L540", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 530 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 541, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L531-L541", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 531 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 1 }, "title": null, "content": null }+9:13Get ExampleGenerated exampleboat wake trail ping pong render target decaying trail texture stamped quad three.js
boat wake trail ping pong render target decaying trail texture stamped quad three.js · javascript · strict
Three.js Ping-Pong Boat Wake Trail
// Requires Three.js to be available as the global THREE object. class WakeTrail { constructor(renderer, { width = 1024, height = 1024, decay = 0.965 } = {}) { this.renderer = renderer; this.width = width; this.height = height; this.decay = decay; const targetOptions = { minFilter: THREE.LinearFilter, magFilter: THREE.LinearFilter, format: THREE.RGBAFormat, type: THREE.HalfFloatType, depthBuffer: false, stencilBuffer: false, }; this.stampTarget = new THREE.WebGLRenderTarget(width, height, targetOptions); this.feedbackA = new THREE.WebGLRenderTarget(width, height, targetOptions); this.feedbackB = new THREE.WebGLRenderTarget(width, height, targetOptions); this.readTarget = this.feedbackA; this.writeTarget = this.feedbackB; this.camera = new THREE.OrthographicCamera(-1, 1, 1, -1, 0, 1); this.scene = new THREE.Scene(); this.fullscreen = new THREE.Mesh(new THREE.PlaneGeometry(2, 2)); this.scene.add(this.fullscreen); this.stampMaterial = new THREE.ShaderMaterial({ transparent: true, blending: THREE.AdditiveBlending, depthTest: false, depthWrite: false, uniforms: { color: { value: new THREE.Color(0.25, 0.75, 1.0) }, strength: { value: 0.8 }, }, vertexShader: ` varying vec2 vUv; void main() { vUv = uv; gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); } `, fragmentShader: ` varying vec2 vUv; uniform vec3 color; uniform float strength; void main() { vec2 p = vUv - 0.5; float edge = 1.0 - smoothstep(0.18, 0.5, length(p * vec2(1.0, 1.8))); float feather = smoothstep(0.0, 0.15, vUv.y) * smoothstep(1.0, 0.85, vUv.y); float alpha = edge * feather * strength; gl_FragColor = vec4(color * alpha, alpha); } `, }); this.stamp = new THREE.Mesh(new THREE.PlaneGeometry(1, 1), this.stampMaterial); this.stamp.visible = false; this.scene.add(this.stamp); this.feedbackMaterial = new THREE.ShaderMaterial({ depthTest: false, depthWrite: false, uniforms: { previous: { value: null }, stamp: { value: this.stampTarget.texture }, decay: { value: decay }, }, vertexShader: ` varying vec2 vUv; void main() { vUv = uv; gl_Position = vec4(position, 1.0); } `, fragmentShader: ` varying vec2 vUv; uniform sampler2D previous; uniform sampler2D stamp; uniform float decay; void main() { vec4 oldTrail = texture2D(previous, vUv) * decay; vec4 newStamp = texture2D(stamp, vUv); gl_FragColor = vec4(min(oldTrail.rgb + newStamp.rgb, 1.0), 1.0); } `, }); this.displayMaterial = new THREE.ShaderMaterial({ transparent: true, depthTest: false, depthWrite: false, blending: THREE.AdditiveBlending, uniforms: { texture: { value: null } }, vertexShader: ` varying vec2 vUv; void main() { vUv = uv; gl_Position = vec4(position, 1.0); } `, fragmentShader: ` varying vec2 vUv; uniform sampler2D texture; void main() { vec4 trail = texture2D(texture, vUv); gl_FragColor = vec4(trail.rgb, trail.r + trail.g + trail.b); } `, }); this.fullscreen.material = this.displayMaterial; } // x and y are normalized screen coordinates; heading is in radians. update({ x, y, heading = 0, speed = 0.01 }) { const renderer = this.renderer; // Clear the stamp buffer, then draw several quads behind the boat. renderer.setRenderTarget(this.stampTarget); renderer.clearColor(); renderer.clear(true, false, false); this.fullscreen.material = this.stampMaterial; this.stamp.visible = true; const wakeLength = Math.min(0.32, 0.08 + speed * 8.0); const count = 7; for (let i = 0; i < count; i++) { const t = i / count; const distance = t * wakeLength; const spread = (t - 0.5) * 0.018; this.stamp.position.set( (x - Math.cos(heading) * distance + Math.cos(heading + Math.PI / 2) * spread) * 2 - 1, (y - Math.sin(heading) * distance + Math.sin(heading + Math.PI / 2) * spread) * 2 - 1, 0, ); this.stamp.rotation.z = heading; this.stamp.scale.set(0.045 + t * 0.08, 0.018 + t * 0.025, 1); this.stampMaterial.uniforms.strength.value = (1 - t) * 0.7; renderer.render(this.scene, this.camera); } this.stamp.visible = false; // Feedback pass: previous trail fades while this frame's stamps are added. this.feedbackMaterial.uniforms.previous.value = this.readTarget.texture; this.fullscreen.material = this.feedbackMaterial; renderer.setRenderTarget(this.writeTarget); renderer.render(this.scene, this.camera); [this.readTarget, this.writeTarget] = [this.writeTarget, this.readTarget]; // Composite the accumulated trail over the normal scene. this.displayMaterial.uniforms.texture.value = this.readTarget.texture; this.fullscreen.material = this.displayMaterial; renderer.setRenderTarget(null); renderer.render(this.scene, this.camera); } setSize(width, height) { this.width = width; this.height = height; this.stampTarget.setSize(width, height); this.feedbackA.setSize(width, height); this.feedbackB.setSize(width, height); } dispose() { this.stampTarget.dispose(); this.feedbackA.dispose(); this.feedbackB.dispose(); this.stamp.geometry.dispose(); this.fullscreen.geometry.dispose(); this.stampMaterial.dispose(); this.feedbackMaterial.dispose(); this.displayMaterial.dispose(); } } // Example usage inside an existing Three.js animation loop: const wakeTrail = new WakeTrail(renderer, { decay: 0.97 }); function animate(time) { requestAnimationFrame(animate); const t = time * 0.001; const x = 0.5 + Math.sin(t * 0.7) * 0.25; const y = 0.5 + Math.cos(t * 0.9) * 0.18; const heading = Math.atan2(-Math.sin(t * 0.9), Math.cos(t * 0.7)); renderer.setRenderTarget(null); renderer.render(scene, camera); wakeTrail.update({ x, y, heading, speed: 0.012 }); } animate(0);References
3- BrunoVgs/bv-secretsweb/static/js/orbs.js
Direct three.js WebGL ping-pong feedback render-target trail implementation in JavaScript, including accumulating a previous frame with a decay factor and a final compositing pass using shader uniforms/channels.
- Squid-Nayth/ps2-hommagepublic/js/three-orbs.js
JavaScript implementation of three.js WebGLRenderTarget ping-pong feedback to create a decaying trail/accumulation effect, with the core ping-pong render-target loop and shader-based feedback present (some differences from the exact “stamped quad” detail).
- tdimino/claude-code-minoanskills/design-media/threejs-particle-canvas/assets/phosphor-vigil.js
Direct Three.js implementation of a ping-pong WebGLRenderTarget feedback trail plus additional bloom/CRT composite; includes fullscreen triangle quad-style rendering and decay/feedback controls via shader uniforms.
Request
Request payload
{ "query": "boat wake trail ping pong render target decaying trail texture stamped quad three.js", "language": "javascript", "license_mode": "strict" }- BrunoVgs/bv-secretsweb/static/js/orbs.js
+9:13Code GrepCode navigationthree“#define texture2D texture”
#define texture2D texture
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 821, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L801-L821", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 801 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 829, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L809-L829", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 809 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLProgram.js" } ], "pattern": "#define texture2D texture", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 821, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L801-L821", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 801 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 829, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L809-L829", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 809 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+9:41Code GrepCode navigationsimplex-noise“export function createNoise”
export function createNoise
pkg:npm:simplex-noise@4.0.3Result summary
{ "files_too_large_skipped": 0, "indexing_ref": "947aa4ba-14a6-40cd-b190-39d79789a9c4", "next_cursor_present": false, "outcome": "deferred", "returned_matches": 0, "status": "success", "target_pointers": [ { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "git_ref": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "kind": "code_target", "package_name": "simplex-noise", "registry": "npm", "repo_url": "https://github.com/jwagner/simplex-noise.js", "role": "resolved_requested", "version": "4.0.3" } ], "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "simplex-noise", "pattern": "export function createNoise", "pattern_type": "LITERAL", "registry": "npm", "version": "4.0.3", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "indexing_ref": "947aa4ba-14a6-40cd-b190-39d79789a9c4", "next_cursor_present": false, "outcome": "deferred", "returned_matches": 0, "status": "success", "target_pointers": [ { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "git_ref": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "kind": "code_target", "package_name": "simplex-noise", "registry": "npm", "repo_url": "https://github.com/jwagner/simplex-noise.js", "role": "resolved_requested", "version": "4.0.3" } ], "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+9:51Code GrepCode navigationthree“outputColorSpace”
outputColorSpace
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/common/RenderPipeline.js", "src/renderers/common/RenderPipeline.js", "src/renderers/common/RenderPipeline.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 306, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L302-L306", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 302 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2293, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2289-L2293", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2289 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2293, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2289-L2293", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2289 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2344, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2340-L2344", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2340 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2398, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2394-L2398", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2394 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3600, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3596-L3600", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3596 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3602, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3598-L3602", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3598 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3606, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3602-L3606", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3602 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3608, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3604-L3608", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3604 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 113, "file_path": "src/renderers/common/RenderPipeline.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/RenderPipeline.js#L109-L113", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 109 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 113, "file_path": "src/renderers/common/RenderPipeline.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/RenderPipeline.js#L109-L113", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 109 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 132, "file_path": "src/renderers/common/RenderPipeline.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/RenderPipeline.js#L128-L132", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 128 } ], "returned_matches": 12, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 12, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 2, "context_lines_before": 2, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 12, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers" } ], "pattern": "outputColorSpace", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/common/RenderPipeline.js", "src/renderers/common/RenderPipeline.js", "src/renderers/common/RenderPipeline.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 306, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L302-L306", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 302 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2293, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2289-L2293", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2289 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2293, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2289-L2293", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2289 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2344, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2340-L2344", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2340 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2398, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2394-L2398", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2394 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3600, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3596-L3600", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3596 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3602, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3598-L3602", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3598 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3606, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3602-L3606", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3602 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3608, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3604-L3608", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3604 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 113, "file_path": "src/renderers/common/RenderPipeline.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/RenderPipeline.js#L109-L113", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 109 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 113, "file_path": "src/renderers/common/RenderPipeline.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/RenderPipeline.js#L109-L113", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 109 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 132, "file_path": "src/renderers/common/RenderPipeline.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/RenderPipeline.js#L128-L132", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 128 } ], "returned_matches": 12, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 12, "unique_files_matched": 2 }, "title": null, "content": null }+9:58Code GrepCode navigationthree“this.setAnimationLoop”
this.setAnimationLoop
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1584, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1578-L1584", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1578 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "this.setAnimationLoop", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1584, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1578-L1584", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1578 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+10:02Get ExampleGenerated examplethree.js pooled InstancedMesh particle effects manager sparks smoke impact burst
three.js pooled InstancedMesh particle effects manager sparks smoke impact burst · javascript · strict
Three.js InstancedMesh Particle Effects Manager
import * as THREE from 'three'; /** * A pooled, allocation-free particle manager using one InstancedMesh per effect. * Add the manager.group to a scene and call update(deltaSeconds) every frame. */ export class ParticleEffectsManager { constructor({ sparkCapacity = 512, smokeCapacity = 256, impactCapacity = 128, } = {}) { this.group = new THREE.Group(); this.group.name = 'ParticleEffects'; this.effects = new Map(); this._createPool('spark', sparkCapacity, { geometry: new THREE.IcosahedronGeometry(0.045, 0), material: new THREE.MeshBasicMaterial({ color: 0xffaa33, transparent: true, opacity: 1, depthWrite: false, blending: THREE.AdditiveBlending, }), update: updateSpark, }); this._createPool('smoke', smokeCapacity, { geometry: new THREE.PlaneGeometry(1, 1), material: new THREE.MeshBasicMaterial({ color: 0x777777, transparent: true, opacity: 0.55, depthWrite: false, side: THREE.DoubleSide, }), update: updateSmoke, }); this._createPool('impact', impactCapacity, { geometry: new THREE.SphereGeometry(0.12, 8, 6), material: new THREE.MeshBasicMaterial({ color: 0xff5522, transparent: true, opacity: 1, depthWrite: false, blending: THREE.AdditiveBlending, }), update: updateImpact, }); this._dummy = new THREE.Object3D(); } _createPool(type, capacity, { geometry, material, update }) { const mesh = new THREE.InstancedMesh(geometry, material, capacity); mesh.instanceMatrix.setUsage(THREE.DynamicDrawUsage); mesh.frustumCulled = false; mesh.count = capacity; this.group.add(mesh); const particles = Array.from({ length: capacity }, () => ({ active: false, age: 0, life: 0, position: new THREE.Vector3(), velocity: new THREE.Vector3(), scale: 1, rotation: 0, spin: 0, color: new THREE.Color(1, 1, 1), })); this.effects.set(type, { mesh, particles, update }); } _acquire(type) { const pool = this.effects.get(type); if (!pool) throw new Error(`Unknown particle effect: ${type}`); const particle = pool.particles.find((item) => !item.active); if (!particle) return null; // Pool is full; drop this effect gracefully. particle.active = true; particle.age = 0; return particle; } spawnSpark(position, options = {}) { const particle = this._acquire('spark'); if (!particle) return; const direction = options.direction?.clone() ?? randomDirection(); particle.life = options.life ?? THREE.MathUtils.randFloat(0.2, 0.45); particle.position.copy(position); particle.velocity.copy(direction).normalize().multiplyScalar( options.speed ?? THREE.MathUtils.randFloat(3, 8), ); particle.scale = options.scale ?? THREE.MathUtils.randFloat(0.7, 1.5); particle.spin = THREE.MathUtils.randFloatSpread(12); particle.color.set(options.color ?? 0xffaa33); } spawnSmoke(position, options = {}) { const particle = this._acquire('smoke'); if (!particle) return; particle.life = options.life ?? THREE.MathUtils.randFloat(0.8, 1.5); particle.position.copy(position); particle.velocity.set( THREE.MathUtils.randFloatSpread(0.35), options.riseSpeed ?? THREE.MathUtils.randFloat(0.4, 1.2), THREE.MathUtils.randFloatSpread(0.35), ); particle.scale = options.scale ?? THREE.MathUtils.randFloat(0.25, 0.5); particle.spin = THREE.MathUtils.randFloatSpread(2); particle.color.set(options.color ?? 0x777777); } spawnImpactBurst(position, options = {}) { const count = options.count ?? 24; for (let i = 0; i < count; i++) { this.spawnSpark(position, { direction: randomDirection(), speed: THREE.MathUtils.randFloat(3, 9), life: THREE.MathUtils.randFloat(0.2, 0.5), color: options.sparkColor ?? 0xff7722, }); } for (let i = 0; i < Math.ceil(count / 8); i++) { this.spawnSmoke(position, { life: THREE.MathUtils.randFloat(0.7, 1.3), scale: THREE.MathUtils.randFloat(0.3, 0.65), color: options.smokeColor ?? 0x666666, }); } } update(deltaSeconds) { const dt = Math.min(deltaSeconds, 0.05); for (const pool of this.effects.values()) { for (const particle of pool.particles) { if (!particle.active) continue; particle.age += dt; if (particle.age >= particle.life) { particle.active = false; setHiddenInstance(pool.mesh, particle); continue; } pool.update(particle, dt); const normalizedAge = particle.age / particle.life; const visibleScale = particle.scale * (1 - normalizedAge); this._dummy.position.copy(particle.position); this._dummy.rotation.set(0, 0, particle.rotation); this._dummy.scale.setScalar(Math.max(visibleScale, 0.0001)); this._dummy.updateMatrix(); const index = pool.particles.indexOf(particle); pool.mesh.setMatrixAt(index, this._dummy.matrix); if (pool.mesh.instanceColor) pool.mesh.setColorAt(index, particle.color); } pool.mesh.instanceMatrix.needsUpdate = true; if (pool.mesh.instanceColor) pool.mesh.instanceColor.needsUpdate = true; } } dispose() { for (const { mesh } of this.effects.values()) { mesh.geometry.dispose(); mesh.material.dispose(); this.group.remove(mesh); } this.effects.clear(); } } function updateSpark(particle, dt) { particle.velocity.y -= 9.8 * dt; particle.position.addScaledVector(particle.velocity, dt); particle.rotation += particle.spin * dt; } function updateSmoke(particle, dt) { particle.position.addScaledVector(particle.velocity, dt); particle.scale *= 1 + dt * 0.9; particle.rotation += particle.spin * dt; } function updateImpact(particle, dt) { particle.position.addScaledVector(particle.velocity, dt); particle.velocity.multiplyScalar(Math.max(0, 1 - dt * 5)); particle.rotation += particle.spin * dt; } function setHiddenInstance(mesh, particle) { const index = mesh.userData.particleIndex; // The index is assigned lazily by update() below when needed. if (index !== undefined) { const dummy = new THREE.Object3D(); dummy.scale.setScalar(0.0001); dummy.updateMatrix(); mesh.setMatrixAt(index, dummy.matrix); } } function randomDirection() { return new THREE.Vector3( THREE.MathUtils.randFloatSpread(2), THREE.MathUtils.randFloat(0.2, 1.2), THREE.MathUtils.randFloatSpread(2), ).normalize(); } // Example usage: // const effects = new ParticleEffectsManager(); // scene.add(effects.group); // effects.spawnImpactBurst(new THREE.Vector3(0, 1, 0)); // renderer.setAnimationLoop(() => { // effects.update(clock.getDelta()); // renderer.render(scene, camera); // });References
4- ali-albdaer/Project2026solar_system_sim/full_gen/gens/gen35/ARCHITECTURE.js
Mentions three.js and an InstancedMesh-based performance approach (e.g., asteroid belt) but it’s generic simulation architecture rather than a concrete pooled particle-effects manager for sparks/smoke/impact bursts.
- tentone/nunuStudiodocs/docs/api.js
three.js-related API documentation for a JS 3D engine that includes InstancedMesh and particle/emitter concepts; useful background for building pooled particle effects, though it’s not a direct three.js InstancedMesh particle-effects manager implementation.
- joshtol/emotive-enginesrc/3d/ThreeRenderer.js
Strong Three.js renderer implementation that includes a particle effects pipeline (particle atmospherics manager, separate particle bloom, and instanced-element comments about velocity blur), which is directly relevant to building pooled spark/smoke/impact burst particle systems with InstancedMesh-like GPU batching; not narrowly focused on an explicit “InstancedMesh particle pooling manager” API.
- nocoldiz/hypernet-explorer-pluginsjs/plugins/Vehicle/CamperDrivingSystem.js
Includes a custom Three.js particle system (rain/snow) with buffered geometry and per-frame updates/cleanup, which is relevant to managing particle effects pooling/lifecycle, but it does not use InstancedMesh for sparks/smoke/impact bursts specifically (uses PointsMaterial instead).
Request
Request payload
{ "query": "three.js pooled InstancedMesh particle effects manager sparks smoke impact burst", "language": "javascript", "license_mode": "strict" }- ali-albdaer/Project2026solar_system_sim/full_gen/gens/gen35/ARCHITECTURE.js
+10:19Code GrepCode navigationthree“attribute vec3 normal”
attribute vec3 normal
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 632, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L616-L632", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 616 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLProgram.js" } ], "pattern": "attribute vec3 normal", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 632, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L616-L632", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 616 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+10:25Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 19, "indexing_status": "indexed", "language": "javascript", "line_count": 19, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 19, "file_path": "src/renderers/shaders/ShaderChunk/project_vertex.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/project_vertex.glsl.js#L1-L19", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 19 }Request
Request payload
{ "end_line": 40, "file_path": "src/renderers/shaders/ShaderChunk/project_vertex.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 19, "indexing_status": "indexed", "language": "javascript", "line_count": 19, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 19, "file_path": "src/renderers/shaders/ShaderChunk/project_vertex.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/project_vertex.glsl.js#L1-L19", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 19 }, "title": null, "content": null }+10:29Code GrepCode navigationthree“uniform mat3 normalMatrix”
uniform mat3 normalMatrix
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 606, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L596-L606", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 596 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 5, "context_lines_before": 5, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLProgram.js" } ], "pattern": "uniform mat3 normalMatrix", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 606, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L596-L606", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 596 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+10:43Code GrepCode navigationthree“enabled: true”
enabled: true
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/ColorManagement.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 31, "file_path": "src/math/ColorManagement.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/ColorManagement.js#L11-L31", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 11 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/math/ColorManagement.js" } ], "pattern": "enabled: true", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/ColorManagement.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 31, "file_path": "src/math/ColorManagement.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/ColorManagement.js#L11-L31", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 11 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+10:44Code GrepCode navigationsimplex-noise“export function createNoise”
export function createNoise
pkg:npm:simplex-noise@4.0.3Result summary
{ "files_too_large_skipped": 0, "indexing_ref": "947aa4ba-14a6-40cd-b190-39d79789a9c4", "next_cursor_present": false, "outcome": "deferred", "returned_matches": 0, "status": "success", "target_pointers": [ { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "git_ref": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "kind": "code_target", "package_name": "simplex-noise", "registry": "npm", "repo_url": "https://github.com/jwagner/simplex-noise.js", "role": "resolved_requested", "version": "4.0.3" } ], "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "simplex-noise", "pattern": "export function createNoise", "pattern_type": "LITERAL", "registry": "npm", "version": "4.0.3", "wait_timeout_ms": 60000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "indexing_ref": "947aa4ba-14a6-40cd-b190-39d79789a9c4", "next_cursor_present": false, "outcome": "deferred", "returned_matches": 0, "status": "success", "target_pointers": [ { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "git_ref": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "kind": "code_target", "package_name": "simplex-noise", "registry": "npm", "repo_url": "https://github.com/jwagner/simplex-noise.js", "role": "resolved_requested", "version": "4.0.3" } ], "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+10:55Get ExampleGenerated exampleinstanced grass wind sway vertex shader three.js InstancedMesh distance fade
instanced grass wind sway vertex shader three.js InstancedMesh distance fade · javascript · strict
Three.js Instanced Grass with Wind Sway and Distance Fade
import * as THREE from 'three'; const scene = new THREE.Scene(); scene.background = new THREE.Color(0x9cc9e8); scene.fog = new THREE.Fog(0x9cc9e8, 35, 110); const camera = new THREE.PerspectiveCamera(55, innerWidth / innerHeight, 0.1, 200); camera.position.set(0, 8, 15); camera.lookAt(0, 0, 0); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.setSize(innerWidth, innerHeight); document.body.style.margin = '0'; document.body.appendChild(renderer.domElement); scene.add(new THREE.HemisphereLight(0xdff4ff, 0x536b3c, 2)); const sun = new THREE.DirectionalLight(0xffffff, 2.5); sun.position.set(20, 30, 10); scene.add(sun); function createGrassBladeGeometry() { const rows = 6; const positions = []; const uvs = []; const indices = []; for (let row = 0; row < rows; row++) { const h = row / (rows - 1); const width = 0.11 * (1 - h * 0.9); const y = h; const bend = h * h * 0.18; positions.push(-width, y, bend, width, y, bend); uvs.push(0, h, 1, h); } for (let row = 0; row < rows - 1; row++) { const a = row * 2; indices.push(a, a + 1, a + 3, a, a + 3, a + 2); } const geometry = new THREE.BufferGeometry(); geometry.setAttribute('position', new THREE.Float32BufferAttribute(positions, 3)); geometry.setAttribute('uv', new THREE.Float32BufferAttribute(uvs, 2)); geometry.setIndex(indices); geometry.computeVertexNormals(); return geometry; } function createGrassMaterial() { return new THREE.ShaderMaterial({ uniforms: { uTime: { value: 0 }, uWindDirection: { value: new THREE.Vector2(0.85, 0.5).normalize() }, uWindStrength: { value: 0.42 }, uFadeStart: { value: 30.0 }, uFadeEnd: { value: 75.0 } }, vertexColors: true, side: THREE.DoubleSide, transparent: true, depthWrite: false, vertexShader: /* glsl */ ` attribute float aPhase; varying vec3 vColor; varying float vDistance; varying float vHeight; uniform float uTime; uniform vec2 uWindDirection; uniform float uWindStrength; void main() { float height = clamp(position.y, 0.0, 1.0); float anchored = height * height; vec3 localPosition = position; vec3 instanceOrigin = (modelMatrix * instanceMatrix * vec4(0.0, 0.0, 0.0, 1.0)).xyz; float broadWave = sin( dot(instanceOrigin.xz, uWindDirection) * 0.16 - uTime * 1.4 + aPhase ); float detailWave = cos( dot(instanceOrigin.xz, vec2(-uWindDirection.y, uWindDirection.x)) * 0.31 - uTime * 2.1 + aPhase * 1.7 ); float gust = broadWave * 0.75 + detailWave * 0.25; vec2 displacement = uWindDirection * gust * uWindStrength * anchored; displacement += vec2(detailWave, broadWave) * 0.035 * anchored; localPosition.xz += displacement; localPosition.y -= dot(displacement, displacement) * 0.35; vec4 worldPosition = modelMatrix * instanceMatrix * vec4(localPosition, 1.0); vDistance = distance(worldPosition.xyz, cameraPosition); vColor = instanceColor; vHeight = height; gl_Position = projectionMatrix * viewMatrix * worldPosition; } `, fragmentShader: /* glsl */ ` varying vec3 vColor; varying float vDistance; varying float vHeight; uniform float uFadeStart; uniform float uFadeEnd; void main() { // Smoothly remove distant blades instead of abruptly hiding whole tiles. float distanceFade = 1.0 - smoothstep(uFadeStart, uFadeEnd, vDistance); float rootShade = mix(0.58, 1.0, vHeight); float alpha = distanceFade * smoothstep(0.02, 0.12, vHeight); if (alpha < 0.01) discard; gl_FragColor = vec4(vColor * rootShade, alpha); } ` }); } function createGrassField(count = 12000, radius = 42) { const geometry = createGrassBladeGeometry(); const material = createGrassMaterial(); const grass = new THREE.InstancedMesh(geometry, material, count); grass.frustumCulled = true; grass.castShadow = false; grass.receiveShadow = true; const dummy = new THREE.Object3D(); const color = new THREE.Color(); const phases = new Float32Array(count); const colors = new Float32Array(count * 3); for (let i = 0; i < count; i++) { const angle = Math.random() * Math.PI * 2; const distance = Math.sqrt(Math.random()) * radius; const x = Math.cos(angle) * distance; const z = Math.sin(angle) * distance; const scale = 0.55 + Math.random() * 0.9; dummy.position.set(x, 0, z); dummy.rotation.y = Math.random() * Math.PI * 2; dummy.scale.set(scale, scale * (0.8 + Math.random() * 0.7), scale); dummy.updateMatrix(); grass.setMatrixAt(i, dummy.matrix); phases[i] = Math.random() * Math.PI * 2; color.setHSL(0.25 + Math.random() * 0.06, 0.55, 0.28 + Math.random() * 0.18); colors[i * 3] = color.r; colors[i * 3 + 1] = color.g; colors[i * 3 + 2] = color.b; } geometry.setAttribute('aPhase', new THREE.InstancedBufferAttribute(phases, 1)); grass.instanceColor = new THREE.InstancedBufferAttribute(colors, 3); grass.instanceMatrix.needsUpdate = true; grass.instanceColor.needsUpdate = true; return grass; } const ground = new THREE.Mesh( new THREE.PlaneGeometry(110, 110), new THREE.MeshStandardMaterial({ color: 0x496b38, roughness: 1 }) ); ground.rotation.x = -Math.PI / 2; scene.add(ground); const grass = createGrassField(); scene.add(grass); const clock = new THREE.Clock(); function animate() { requestAnimationFrame(animate); grass.material.uniforms.uTime.value = clock.getElapsedTime(); renderer.render(scene, camera); } animate(); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); });References
4- arumes31/mon-captchasrc/terrain.js
This JavaScript Three.js project includes wind/sway animation logic in a large InstancedMesh-based environment (anchors include "wind"/"sway" and shader usage), but the snippet shown doesn’t clearly demonstrate the specific vertex-shader implementation details for instanced grass wind nor a distance-fade mechanism.
- ocftw/ssddocs/games/main.js
Three.js InstancedMesh-based grass/foliage uses custom vertex shader wind sway (uTime/uWind) and GPU bending, with additional interaction (grass push) implemented in JavaScript. However, the query’s specific “distance fade” term/logic for InstancedMesh grass isn’t clearly present in the shown snippet.
- craftmygame/little-citylittle-taipei/main.js
Contains Three.js InstancedMesh vegetation with custom GLSL vertex shader wind sway (uTime, sin/cos in vertexShader) in JavaScript; however it doesn’t clearly implement distance fade logic in the same InstancedMesh shader, so it’s only a partial match to the full “wind + distance fade” query.
- Drommedhar/novalist-officialapp/src/renderer/public/map/map3d.js
Three.js grass via InstancedMesh with a wind sway implemented in the (node-based) vertex shader, including per-instance attributes (grassRoot/phase/tint). It’s close to the requested “instanced grass wind sway vertex shader,” but the query’s “distance fade” aspect isn’t clearly implemented in the shader (fade seems handled via tile culling/visibility rather than a vertex distance-fade).
Request
Request payload
{ "query": "instanced grass wind sway vertex shader three.js InstancedMesh distance fade", "language": "javascript", "license_mode": "strict" }- arumes31/mon-captchasrc/terrain.js
+11:38Code GrepCode navigationthree“USE_INSTANCING_COLOR”
USE_INSTANCING_COLOR
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 492, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L480-L492", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 480 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 617, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L605-L617", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 605 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/renderers/webgl/WebGLProgram.js" } ], "pattern": "USE_INSTANCING_COLOR", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 492, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L480-L492", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 480 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 617, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L605-L617", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 605 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+11:44Get ExampleGenerated examplethree.js ShaderMaterial instanced attributes per instance alpha billboard quad vertex shader
three.js ShaderMaterial instanced attributes per instance alpha billboard quad vertex shader · javascript · strict
Three.js Instanced Billboard Quads with Per-Instance Alpha
import * as THREE from 'three'; const scene = new THREE.Scene(); const camera = new THREE.PerspectiveCamera(60, innerWidth / innerHeight, 0.1, 100); camera.position.z = 8; const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setSize(innerWidth, innerHeight); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); document.body.appendChild(renderer.domElement); const vertexShader = ` precision highp float; attribute vec3 instancePosition; attribute float instanceSize; attribute float instanceAlpha; attribute vec3 instanceColor; varying vec2 vUv; varying float vAlpha; varying vec3 vColor; void main() { vUv = position.xy * 0.5 + 0.5; vAlpha = instanceAlpha; vColor = instanceColor; // Extract camera-right and camera-up vectors from the view matrix. vec3 cameraRight = vec3(viewMatrix[0][0], viewMatrix[1][0], viewMatrix[2][0]); vec3 cameraUp = vec3(viewMatrix[0][1], viewMatrix[1][1], viewMatrix[2][1]); vec3 worldPosition = instancePosition + cameraRight * position.x * instanceSize + cameraUp * position.y * instanceSize; gl_Position = projectionMatrix * viewMatrix * vec4(worldPosition, 1.0); } `; const fragmentShader = ` precision highp float; varying vec2 vUv; varying float vAlpha; varying vec3 vColor; void main() { vec2 centered = vUv - 0.5; float distanceSquared = dot(centered, centered) * 4.0; float roundAlpha = 1.0 - smoothstep(0.75, 1.0, distanceSquared); float alpha = roundAlpha * vAlpha; if (alpha < 0.01) discard; gl_FragColor = vec4(vColor, alpha); } `; const instanceCount = 2000; const geometry = new THREE.InstancedBufferGeometry(); // One unit quad; each instance is positioned and scaled in the vertex shader. geometry.setAttribute( 'position', new THREE.Float32BufferAttribute([ -1, -1, 0, 1, -1, 0, 1, 1, 0, -1, 1, 0 ], 3) ); geometry.setIndex([0, 1, 2, 0, 2, 3]); const positions = new Float32Array(instanceCount * 3); const sizes = new Float32Array(instanceCount); const alphas = new Float32Array(instanceCount); const colors = new Float32Array(instanceCount * 3); for (let i = 0; i < instanceCount; i++) { const i3 = i * 3; positions[i3] = (Math.random() - 0.5) * 12; positions[i3 + 1] = (Math.random() - 0.5) * 7; positions[i3 + 2] = (Math.random() - 0.5) * 5; sizes[i] = 0.03 + Math.random() * 0.12; alphas[i] = 0.2 + Math.random() * 0.8; const color = new THREE.Color().setHSL(0.55 + Math.random() * 0.2, 0.8, 0.6); colors[i3] = color.r; colors[i3 + 1] = color.g; colors[i3 + 2] = color.b; } geometry.setAttribute('instancePosition', new THREE.InstancedBufferAttribute(positions, 3)); geometry.setAttribute('instanceSize', new THREE.InstancedBufferAttribute(sizes, 1)); geometry.setAttribute('instanceAlpha', new THREE.InstancedBufferAttribute(alphas, 1)); geometry.setAttribute('instanceColor', new THREE.InstancedBufferAttribute(colors, 3)); geometry.instanceCount = instanceCount; geometry.frustumCulled = false; const material = new THREE.ShaderMaterial({ vertexShader, fragmentShader, transparent: true, depthWrite: false, blending: THREE.AdditiveBlending }); const billboards = new THREE.Mesh(geometry, material); scene.add(billboards); function animate() { requestAnimationFrame(animate); billboards.rotation.y += 0.001; renderer.render(scene, camera); } animate(); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); });References
3- enjalot/latent-scopeweb/src/components/Explore/Scatter3D.jsx
Direct three.js implementation using THREE.ShaderMaterial with InstancedBufferGeometry/instanced attributes (iPos/iColor/iId/iCluster) to render instanced billboard-like quads, including per-instance alpha via a varying/energy-preserving alpha computation in the shaders.
- nikonikoCW/Meteor3DEditorpackages/core/src/RainManager.js
Good match to three.js ShaderMaterial + instanced attributes driving per-instance variation, with a vertex-shader billboarded quad using custom instance data (aProgress/aSpeed). Missing explicit per-instance alpha billboard behavior from the query, but the core instanced+billboard shader pattern is present.
- nikonikoCW/Meteor3DEditorpackages/core/src/SnowManager.js
Uses three.js ShaderMaterial with InstancedBufferAttribute-style per-instance attributes (speed/offset/scale) and includes a billboard-like quad positioning in the vertex shader; closest available match for instanced billboard behavior with per-instance shader inputs (not explicitly per-instance alpha).
Request
Request payload
{ "query": "three.js ShaderMaterial instanced attributes per instance alpha billboard quad vertex shader", "language": "javascript", "license_mode": "strict" }- enjalot/latent-scopeweb/src/components/Explore/Scatter3D.jsx
+11:46Code GrepCode navigationthree“"./examples/jsm/”
"./examples/jsm/
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "package.json", "package.json", "package.json", "package.json" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 18, "file_path": "package.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/package.json#L10-L18", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 10 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 18, "file_path": "package.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/package.json#L10-L18", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 10 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 19, "file_path": "package.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/package.json#L11-L19", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 11 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 20, "file_path": "package.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/package.json#L12-L20", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 12 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "package.json" } ], "pattern": "\"./examples/jsm/", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "package.json", "package.json", "package.json", "package.json" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 18, "file_path": "package.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/package.json#L10-L18", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 10 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 18, "file_path": "package.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/package.json#L10-L18", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 10 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 19, "file_path": "package.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/package.json#L11-L19", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 11 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 20, "file_path": "package.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/package.json#L12-L20", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 12 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+11:57Get ExampleGenerated exampleWeb Audio API procedural music synthesizer ADSR envelope oscillator filter step sequencer lookahead scheduler
Web Audio API procedural music synthesizer ADSR envelope oscillator filter step sequencer lookahead scheduler · javascript · strict
Web Audio API ADSR Step Sequencer with Lookahead Scheduling
// Save as sequencer.js and load with: <script type="module" src="sequencer.js"></script> const LOOKAHEAD_MS = 25; const SCHEDULE_AHEAD = 0.1; const BPM = 112; const STEP_SECONDS = 60 / BPM / 2; // eighth-note grid const state = { context: null, master: null, timer: null, nextStepTime: 0, step: 0, running: false, }; const pattern = [ { note: 261.63, gate: 0.85 }, // C4 null, { note: 329.63, gate: 0.65 }, // E4 null, { note: 392.00, gate: 0.80 }, // G4 { note: 329.63, gate: 0.55 }, { note: 293.66, gate: 0.70 }, // D4 null, { note: 261.63, gate: 0.85 }, null, { note: 349.23, gate: 0.65 }, // F4 null, { note: 440.00, gate: 0.80 }, // A4 { note: 392.00, gate: 0.55 }, { note: 329.63, gate: 0.70 }, null, ]; function createInterface() { const start = document.createElement('button'); start.textContent = 'Start'; start.style.cssText = 'font:16px sans-serif;padding:8px 16px'; const status = document.createElement('output'); status.textContent = ' stopped'; status.style.cssText = 'font:16px sans-serif;margin-left:10px'; start.addEventListener('click', async () => { if (!state.context) await createAudioGraph(); if (state.running) { stop(); start.textContent = 'Start'; status.textContent = ' stopped'; } else { await state.context.resume(); startSequencer(); start.textContent = 'Stop'; status.textContent = ' playing'; } }); document.body.append(start, status); } async function createAudioGraph() { const context = new AudioContext(); const master = context.createGain(); master.gain.value = 0.18; master.connect(context.destination); state.context = context; state.master = master; } function startSequencer() { state.running = true; state.step = 0; state.nextStepTime = state.context.currentTime + 0.05; scheduler(); state.timer = setInterval(scheduler, LOOKAHEAD_MS); } function scheduler() { if (!state.running) return; const now = state.context.currentTime; while (state.nextStepTime < now + SCHEDULE_AHEAD) { scheduleStep(state.step, state.nextStepTime); state.nextStepTime += STEP_SECONDS; state.step = (state.step + 1) % pattern.length; } } function scheduleStep(index, time) { const event = pattern[index]; if (!event) return; // The note length is scheduled on the audio clock, not the wall clock. const duration = STEP_SECONDS * event.gate; createVoice(event.note, time, duration); } function createVoice(frequency, startTime, duration) { const context = state.context; const oscillator = context.createOscillator(); const filter = context.createBiquadFilter(); const envelope = context.createGain(); oscillator.type = 'sawtooth'; oscillator.frequency.setValueAtTime(frequency, startTime); // A gentle low-pass sweep gives each note a changing timbre. filter.type = 'lowpass'; filter.Q.setValueAtTime(5, startTime); filter.frequency.setValueAtTime(700, startTime); filter.frequency.linearRampToValueAtTime(2400, startTime + 0.08); filter.frequency.exponentialRampToValueAtTime(900, startTime + duration); // ADSR envelope: attack, decay, sustain, release. const attack = 0.012; const decay = 0.12; const release = 0.18; const sustain = 0.34; const peak = 0.16; const releaseStart = startTime + duration; envelope.gain.setValueAtTime(0.0001, startTime); envelope.gain.linearRampToValueAtTime(peak, startTime + attack); envelope.gain.exponentialRampToValueAtTime( peak * sustain, startTime + attack + decay, ); envelope.gain.setValueAtTime(peak * sustain, releaseStart); envelope.gain.exponentialRampToValueAtTime( 0.0001, releaseStart + release, ); oscillator.connect(filter).connect(envelope).connect(state.master); oscillator.start(startTime); oscillator.stop(releaseStart + release + 0.02); // Release node references after the voice finishes. oscillator.addEventListener('ended', () => { oscillator.disconnect(); filter.disconnect(); envelope.disconnect(); }); } function stop() { state.running = false; clearInterval(state.timer); state.timer = null; } createInterface();References
1- jeromeetienne/binaural_musicAdd musical layers to the synthesis engine
Relevant to a JavaScript Web Audio API procedural synthesizer for binaural/step-sequencer-style scheduling: it discusses layered synthesis, lookahead scheduling, and audio graph design constraints (though it’s an issue discussion rather than concrete code).
Request
Request payload
{ "query": "Web Audio API procedural music synthesizer ADSR envelope oscillator filter step sequencer lookahead scheduler", "language": "javascript", "license_mode": "strict" }- jeromeetienne/binaural_musicAdd musical layers to the synthesis engine
+12:45Get ExampleGenerated exampleWeb Audio ConvolverNode synthetic impulse response reverb crossfading adaptive music layers gain ramps
Web Audio ConvolverNode synthetic impulse response reverb crossfading adaptive music layers gain ramps · javascript · strict
Synthetic Convolver Reverb and Adaptive Music Crossfades
// Browser Web Audio example: synthetic impulse-response reverb crossfading // plus adaptive music layers controlled with scheduled gain ramps. const button = document.createElement('button'); button.textContent = 'Start adaptive audio'; button.style.cssText = 'position:fixed;top:1rem;left:1rem;padding:.7rem 1rem;font:16px sans-serif'; document.body.appendChild(button); let audio; function clamp(value, min = 0, max = 1) { return Math.max(min, Math.min(max, value)); } function rampGain(param, value, duration, now) { param.cancelScheduledValues(now); param.setValueAtTime(param.value, now); param.linearRampToValueAtTime(value, now + duration); } function createSyntheticImpulseResponse(context, { duration = 2.8, decay = 3.5, brightness = 0.7, reverse = false } = {}) { const length = Math.floor(context.sampleRate * duration); const impulse = context.createBuffer(2, length, context.sampleRate); for (let channel = 0; channel < impulse.numberOfChannels; channel++) { const data = impulse.getChannelData(channel); for (let i = 0; i < length; i++) { const t = i / context.sampleRate; const normalized = reverse ? 1 - t / duration : t / duration; const envelope = Math.pow(Math.max(0, normalized), decay); const earlyReflection = i === Math.floor(context.sampleRate * (0.017 + channel * 0.003)) ? 0.8 : 0; const highFrequencyLoss = 1 - brightness * t / duration; const noise = Math.random() * 2 - 1; data[i] = (noise * envelope * highFrequencyLoss * 0.7) + earlyReflection; } } return impulse; } function createCrossfadingReverb(context, destination) { const input = context.createGain(); const dry = context.createGain(); const wet = context.createGain(); const convolvers = [context.createConvolver(), context.createConvolver()]; const wetGains = [context.createGain(), context.createGain()]; let active = 0; input.connect(dry); dry.connect(destination); input.connect(convolvers[0]); input.connect(convolvers[1]); convolvers[0].connect(wetGains[0]); convolvers[1].connect(wetGains[1]); wetGains[0].connect(wet); wetGains[1].connect(wet); wet.connect(destination); dry.gain.value = 0.72; wet.gain.value = 0.42; wetGains[0].gain.value = 1; wetGains[1].gain.value = 0; function setImpulse(buffer, crossfadeSeconds = 1.5) { const next = 1 - active; convolvers[next].buffer = buffer; const now = context.currentTime; const end = now + crossfadeSeconds; wetGains[next].gain.cancelScheduledValues(now); wetGains[active].gain.cancelScheduledValues(now); wetGains[next].gain.setValueAtTime(0, now); wetGains[active].gain.setValueAtTime(wetGains[active].gain.value, now); wetGains[next].gain.linearRampToValueAtTime(1, end); wetGains[active].gain.linearRampToValueAtTime(0, end); window.setTimeout(() => { active = next; }, crossfadeSeconds * 1000); } setImpulse(createSyntheticImpulseResponse(context, { duration: 2.2, decay: 3.8, brightness: 0.8 }), 0); return { input, setImpulse }; } function createAdaptiveMusic(context, destination) { const musicBus = context.createGain(); musicBus.gain.value = 0.32; musicBus.connect(destination); const layers = [ { name: 'pad', frequency: 110, gain: 0.18, oscillatorType: 'sine' }, { name: 'pulse', frequency: 220, gain: 0.0, oscillatorType: 'triangle' }, { name: 'lead', frequency: 330, gain: 0.0, oscillatorType: 'sawtooth' } ]; for (const layer of layers) { const oscillator = context.createOscillator(); const gain = context.createGain(); const filter = context.createBiquadFilter(); oscillator.type = layer.oscillatorType; oscillator.frequency.value = layer.frequency; filter.type = 'lowpass'; filter.frequency.value = layer.name === 'pad' ? 900 : 1800; gain.gain.value = layer.gain; oscillator.connect(filter); filter.connect(gain); gain.connect(musicBus); oscillator.start(); layer.oscillator = oscillator; layer.gainNode = gain; } function setIntensity(intensity, duration = 1.25) { intensity = clamp(intensity); const now = context.currentTime; // Each layer follows the same musical state but has a different role. const targets = [ 0.18, 0.04 + intensity * 0.16, intensity * 0.12 ]; layers.forEach((layer, index) => { rampGain(layer.gainNode.gain, targets[index], duration, now); }); } function stop() { const now = context.currentTime; layers.forEach(layer => { rampGain(layer.gainNode.gain, 0, 0.5, now); layer.oscillator.stop(now + 0.55); }); } return { musicBus, setIntensity, stop }; } async function startAudio() { if (audio) return; const context = new AudioContext(); await context.resume(); const master = context.createGain(); const compressor = context.createDynamicsCompressor(); master.gain.value = 0.7; master.connect(compressor); compressor.connect(context.destination); const reverb = createCrossfadingReverb(context, master); const music = createAdaptiveMusic(context, reverb.input); audio = { context, master, reverb, music }; button.textContent = 'Change mood / reverb'; let intense = false; button.addEventListener('click', () => { intense = !intense; music.setIntensity(intense ? 1 : 0.15, 2); reverb.setImpulse(createSyntheticImpulseResponse(context, intense ? { duration: 3.6, decay: 2.2, brightness: 0.45 } : { duration: 1.7, decay: 5.0, brightness: 0.9, reverse: true }), 2); button.textContent = intense ? 'Return to calm mood' : 'Increase intensity'; }, { once: true }); // Demonstrate a later adaptive state transition without recreating nodes. window.setTimeout(() => { if (audio) music.setIntensity(0.65, 3); }, 8000); } button.addEventListener('click', startAudio, { once: true });References
3- IDMNYU/DM-GY6063A-Creative-Codingweek_06/libraries/p5.sound.js
Contains p5.sound Web Audio reverb implementation with ConvolverNode (p5.Convolver) and gain/amp ramping patterns (e.g., Reverb/Delay amp), which is directly relevant to convolver-based synthetic impulse response reverb, though it doesn’t explicitly show crossfading of impulse responses or adaptive music layer crossfades.
- markjspivey-xwisee/planet-edenjs/engine/audio.js
Implements an adaptive music system in plain Web Audio (layering, volume/mix buses, and timed transitions/crossfade via musicTransitionTime), but it does not reference ConvolverNode or impulse-response reverb crossfading; it’s relevant for the adaptive music crossfade/gain-ramp part only.
- IDMNYU/DM-GY6063A-Creative-Codingweek_11/libraries/p5.sound.js
Includes Web Audio reverb via ConvolverNode in a JavaScript audio effects library (p5.sound), and contains related gain/amp ramping patterns (e.g., Delay/Reverb amp), which is useful for implementing reverb crossfades though it may not cover synthetic impulse crossfade/adaptive-layer specifics.
Request
Request payload
{ "query": "Web Audio ConvolverNode synthetic impulse response reverb crossfading adaptive music layers gain ramps", "language": "javascript", "license_mode": "strict" }- IDMNYU/DM-GY6063A-Creative-Codingweek_06/libraries/p5.sound.js
+13:23Get ExampleGenerated exampleHTML DOM overlay HUD on top of three.js canvas pointer-events none typewriter dialogue box
HTML DOM overlay HUD on top of three.js canvas pointer-events none typewriter dialogue box · javascript · strict
Three.js Canvas with Non-Blocking Typewriter HUD
// Add this after creating your Three.js renderer, scene, and camera. // Example: const renderer = new THREE.WebGLRenderer({ antialias: true }); const canvas = renderer.domElement; canvas.style.display = 'block'; canvas.style.width = '100%'; canvas.style.height = '100%'; // The HUD covers the canvas visually but does not intercept game input. const hud = document.createElement('div'); hud.className = 'game-hud'; hud.innerHTML = ` <section class="dialogue-box" aria-live="polite"> <div class="dialogue-name"></div> <p class="dialogue-text"></p> </section> `; document.body.appendChild(hud); const style = document.createElement('style'); style.textContent = ` html, body { width: 100%; height: 100%; margin: 0; overflow: hidden; } .game-hud { position: fixed; inset: 0; z-index: 10; display: flex; align-items: flex-end; justify-content: center; padding: clamp(16px, 5vw, 56px); box-sizing: border-box; pointer-events: none; font-family: system-ui, sans-serif; } .dialogue-box { width: min(720px, 100%); min-height: 96px; padding: 18px 22px; box-sizing: border-box; color: white; background: rgb(12 18 32 / 88%); border: 2px solid rgb(120 210 255 / 75%); border-radius: 12px; box-shadow: 0 8px 30px rgb(0 0 0 / 35%); pointer-events: none; } .dialogue-name { margin-bottom: 8px; color: #7edcff; font-weight: 700; } .dialogue-text { margin: 0; line-height: 1.5; white-space: pre-wrap; } .dialogue-text::after { content: '▋'; margin-left: 3px; animation: blink 800ms steps(1) infinite; } @keyframes blink { 50% { opacity: 0; } } @media (max-width: 600px) { .game-hud { padding: 16px; } .dialogue-box { padding: 14px 16px; } } `; document.head.appendChild(style); const nameElement = hud.querySelector('.dialogue-name'); const textElement = hud.querySelector('.dialogue-text'); let typewriterTimer = null; let typewriterResolve = null; function typeDialogue({ speaker, text, speed = 32 }) { clearInterval(typewriterTimer); typewriterResolve?.(); nameElement.textContent = speaker; textElement.textContent = ''; let characterIndex = 0; return new Promise((resolve) => { typewriterResolve = resolve; typewriterTimer = setInterval(() => { textElement.textContent += text[characterIndex++]; if (characterIndex >= text.length) { clearInterval(typewriterTimer); typewriterTimer = null; typewriterResolve = null; resolve(); } }, speed); }); } function hideDialogue() { clearInterval(typewriterTimer); typewriterTimer = null; nameElement.textContent = ''; textElement.textContent = ''; } // Demonstration. The canvas remains fully usable because the HUD has // pointer-events: none, so clicks, dragging, and touch reach Three.js. (async () => { await typeDialogue({ speaker: 'Captain Skipper', text: 'Welcome aboard. The ferry leaves when the lantern turns blue.', }); await new Promise((resolve) => setTimeout(resolve, 1800)); hideDialogue(); })(); // Keep your normal Three.js render loop unchanged. function animate() { requestAnimationFrame(animate); renderer.render(scene, camera); } animate();References
1- Tanner253/ClubPenguwhitepaper/src/data/changelogData.js
Mentions “typewriter/dialogue” and “overlay” in a Three.js-style game HUD context, but it’s a changelog data file and doesn’t provide a concrete HTML/CSS/DOM implementation for `pointer-events: none` or a canvas DOM overlay typewriter solution.
Request
Request payload
{ "query": "HTML DOM overlay HUD on top of three.js canvas pointer-events none typewriter dialogue box", "language": "javascript", "license_mode": "strict" }- Tanner253/ClubPenguwhitepaper/src/data/changelogData.js
+13:52Get ExampleGenerated examplelocalStorage game save system versioned schema migration JSON serialize slots try catch quota
localStorage game save system versioned schema migration JSON serialize slots try catch quota · javascript · strict
Versioned localStorage Game Save System with Slot Migration
const SAVE_VERSION = 2; const SAVE_KEY_PREFIX = 'game-save-slot:'; const SETTINGS_KEY = 'game-settings'; const SLOT_COUNT = 3; const DEFAULT_SETTINGS = { sound: true, difficulty: 'normal', }; /** * A small, versioned save system with JSON serialization, migrations, * multiple slots, settings persistence, and safe localStorage access. */ class SaveSystem { static save(slot, state) { this.assertSlot(slot); const payload = { version: SAVE_VERSION, savedAt: new Date().toISOString(), state, }; try { localStorage.setItem( `${SAVE_KEY_PREFIX}${slot}`, JSON.stringify(payload), ); return true; } catch (error) { // Includes quota errors and environments where storage is unavailable. console.error('Could not save game:', error); return false; } } static load(slot) { this.assertSlot(slot); try { const raw = localStorage.getItem(`${SAVE_KEY_PREFIX}${slot}`); if (raw === null) return null; const payload = JSON.parse(raw); const migrated = this.migrate(payload); // Persist a migrated payload so future loads need no migration work. if (migrated.version !== payload.version) { localStorage.setItem( `${SAVE_KEY_PREFIX}${slot}`, JSON.stringify(migrated), ); } return migrated.state; } catch (error) { console.warn(`Could not load slot ${slot}; treating it as empty.`, error); return null; } } static delete(slot) { this.assertSlot(slot); try { localStorage.removeItem(`${SAVE_KEY_PREFIX}${slot}`); } catch (error) { console.warn('Could not delete game save:', error); } } static listSlots() { return Array.from({ length: SLOT_COUNT }, (_, slot) => this.load(slot)); } static saveSettings(settings) { try { localStorage.setItem( SETTINGS_KEY, JSON.stringify({ ...DEFAULT_SETTINGS, ...settings }), ); return true; } catch (error) { console.warn('Could not save settings:', error); return false; } } static loadSettings() { try { const raw = localStorage.getItem(SETTINGS_KEY); return raw ? { ...DEFAULT_SETTINGS, ...JSON.parse(raw) } : { ...DEFAULT_SETTINGS }; } catch (error) { return { ...DEFAULT_SETTINGS }; } } static migrate(payload) { if (!payload || typeof payload !== 'object') { throw new Error('Invalid save payload'); } let migrated = structuredClone(payload); const version = Number(migrated.version ?? 1); if (version === 1) { // v1 stored coins as gold and had no player level. migrated.state.coins = migrated.state.coins ?? migrated.state.gold ?? 0; delete migrated.state.gold; migrated.state.level ??= 1; migrated.version = 2; } if (migrated.version !== SAVE_VERSION) { throw new Error(`Unsupported save version: ${migrated.version}`); } return migrated; } static assertSlot(slot) { if (!Number.isInteger(slot) || slot < 0 || slot >= SLOT_COUNT) { throw new RangeError(`Slot must be an integer from 0 to ${SLOT_COUNT - 1}`); } } } // Example usage: const gameState = { player: { name: 'Ada', level: 4 }, coins: 125, inventory: ['potion'], }; SaveSystem.save(0, gameState); const loadedState = SaveSystem.load(0); console.log(loadedState); console.log(SaveSystem.listSlots()); SaveSystem.saveSettings({ difficulty: 'hard' }); console.log(SaveSystem.loadSettings());References
1- Obrelix/THEY-DON-T-WANT-YOU-TO-PLAY-THISjs/saveSystem.js
Direct JavaScript implementation of a versioned localStorage save system: JSON.stringify/JSON.parse, slot-based save/load/delete, SAVE_VERSION checks, try/catch for quota/restricted environments, and settings persistence—strong match to the requested pattern.
Request
Request payload
{ "query": "localStorage game save system versioned schema migration JSON serialize slots try catch quota", "language": "javascript", "license_mode": "strict" }- Obrelix/THEY-DON-T-WANT-YOU-TO-PLAY-THISjs/saveSystem.js
+14:33Get ExampleGenerated examplethree.js heightmap terrain mesh from noise island falloff biome color by height and slope
three.js heightmap terrain mesh from noise island falloff biome color by height and slope · javascript · strict
Three.js Procedural Island Terrain with Biome and Slope Colors
import * as THREE from 'three'; // Import Three.js from your project dependency, for example: npm install three const scene = new THREE.Scene(); scene.background = new THREE.Color(0x9bc7e8); scene.fog = new THREE.Fog(0x9bc7e8, 180, 420); const camera = new THREE.PerspectiveCamera(55, innerWidth / innerHeight, 0.1, 600); camera.position.set(105, 110, 145); camera.lookAt(0, 12, 0); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setSize(innerWidth, innerHeight); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.shadowMap.enabled = true; document.body.appendChild(renderer.domElement); scene.add(new THREE.HemisphereLight(0xbfe3ff, 0x45613d, 2.0)); const sun = new THREE.DirectionalLight(0xffffff, 3.2); sun.position.set(-80, 150, 70); sun.castShadow = true; sun.shadow.mapSize.set(2048, 2048); scene.add(sun); // Deterministic value noise and fractal Brownian motion. function hash2(x, z, seed = 1337) { const n = Math.sin(x * 127.1 + z * 311.7 + seed * 74.7) * 43758.5453; return n - Math.floor(n); } function smooth(t) { return t * t * (3 - 2 * t); } function valueNoise(x, z, seed) { const x0 = Math.floor(x); const z0 = Math.floor(z); const tx = smooth(x - x0); const tz = smooth(z - z0); const a = hash2(x0, z0, seed); const b = hash2(x0 + 1, z0, seed); const c = hash2(x0, z0 + 1, seed); const d = hash2(x0 + 1, z0 + 1, seed); return THREE.MathUtils.lerp( THREE.MathUtils.lerp(a, b, tx), THREE.MathUtils.lerp(c, d, tx), tz ); } function fbm(x, z, octaves = 5) { let value = 0; let amplitude = 0.5; let frequency = 1; let totalAmplitude = 0; for (let i = 0; i < octaves; i++) { value += valueNoise(x * frequency, z * frequency, 42 + i * 97) * amplitude; totalAmplitude += amplitude; amplitude *= 0.5; frequency *= 2; } return value / totalAmplitude; } const SIZE = 240; const RESOLUTION = 180; const SEA_LEVEL = 0.18; const heights = new Float32Array((RESOLUTION + 1) ** 2); function gridIndex(x, z) { return z * (RESOLUTION + 1) + x; } function islandHeight(x, z) { const distance = Math.hypot(x, z) / (SIZE * 0.5); // Circular island mask: terrain fades smoothly into the ocean. const islandMask = 1 - THREE.MathUtils.smoothstep(distance, 0.58, 1.0); const broad = fbm(x * 0.009, z * 0.009, 5); const detail = fbm(x * 0.035 + 100, z * 0.035 + 100, 4); const ridge = 1 - Math.abs(fbm(x * 0.018 - 50, z * 0.018 + 50, 4) * 2 - 1); let height = 0.05; height += broad * 0.42; height += detail * 0.06; height += Math.pow(ridge, 3) * 0.28; height *= islandMask; // Flatten the shoreline slightly so beaches form around the island. return THREE.MathUtils.lerp(SEA_LEVEL - 0.06, height, islandMask); } for (let z = 0; z <= RESOLUTION; z++) { for (let x = 0; x <= RESOLUTION; x++) { const worldX = (x / RESOLUTION - 0.5) * SIZE; const worldZ = (z / RESOLUTION - 0.5) * SIZE; heights[gridIndex(x, z)] = islandHeight(worldX, worldZ); } } const vertexCount = (RESOLUTION + 1) ** 2; const positions = new Float32Array(vertexCount * 3); const colors = new Float32Array(vertexCount * 3); const indices = []; const sand = new THREE.Color(0xd9c27a); const grass = new THREE.Color(0x4f963f); const forest = new THREE.Color(0x286634); const rock = new THREE.Color(0x77746b); const snow = new THREE.Color(0xf1f4f2); const color = new THREE.Color(); const temporary = new THREE.Color(); for (let z = 0; z <= RESOLUTION; z++) { for (let x = 0; x <= RESOLUTION; x++) { const i = gridIndex(x, z); const px = (x / RESOLUTION - 0.5) * SIZE; const pz = (z / RESOLUTION - 0.5) * SIZE; const height = heights[i]; positions[i * 3] = px; positions[i * 3 + 1] = height * 90; positions[i * 3 + 2] = pz; const left = heights[gridIndex(Math.max(0, x - 1), z)]; const right = heights[gridIndex(Math.min(RESOLUTION, x + 1), z)]; const down = heights[gridIndex(x, Math.max(0, z - 1))]; const up = heights[gridIndex(x, Math.min(RESOLUTION, z + 1))]; const cellSize = SIZE / RESOLUTION; const slope = Math.hypot((right - left) * 90, (up - down) * 90) / (2 * cellSize); // Blend base biome colors by elevation. if (height < SEA_LEVEL + 0.035) { color.copy(sand); } else if (height < 0.42) { color.copy(grass); temporary.copy(sand); color.lerp(temporary, 1 - (height - 0.18) / 0.24); } else if (height < 0.68) { color.copy(forest); temporary.copy(grass); color.lerp(temporary, 1 - (height - 0.42) / 0.26); } else { color.copy(rock); temporary.copy(snow); color.lerp(temporary, THREE.MathUtils.smoothstep(height, 0.78, 0.95)); } // Steep faces expose rock, regardless of their base biome. if (slope > 0.7) { temporary.copy(rock); color.lerp(temporary, THREE.MathUtils.clamp((slope - 0.7) / 1.4, 0, 0.9)); } colors[i * 3] = color.r; colors[i * 3 + 1] = color.g; colors[i * 3 + 2] = color.b; } } for (let z = 0; z < RESOLUTION; z++) { for (let x = 0; x < RESOLUTION; x++) { const a = gridIndex(x, z); const b = gridIndex(x + 1, z); const c = gridIndex(x, z + 1); const d = gridIndex(x + 1, z + 1); indices.push(a, c, b, b, c, d); } } const terrainGeometry = new THREE.BufferGeometry(); terrainGeometry.setAttribute('position', new THREE.BufferAttribute(positions, 3)); terrainGeometry.setAttribute('color', new THREE.BufferAttribute(colors, 3)); terrainGeometry.setIndex(indices); terrainGeometry.computeVertexNormals(); const terrain = new THREE.Mesh( terrainGeometry, new THREE.MeshStandardMaterial({ vertexColors: true, roughness: 0.95, metalness: 0 }) ); terrain.castShadow = true; terrain.receiveShadow = true; scene.add(terrain); const water = new THREE.Mesh( new THREE.PlaneGeometry(SIZE * 1.4, SIZE * 1.4), new THREE.MeshPhongMaterial({ color: 0x287fa0, transparent: true, opacity: 0.62, shininess: 100 }) ); water.rotation.x = -Math.PI / 2; water.position.y = SEA_LEVEL * 90; water.receiveShadow = true; scene.add(water); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); }); function animate() { requestAnimationFrame(animate); renderer.render(scene, camera); } animate();References
3- hlsvortex/HLS_WebGPUPluginssrc/systems/TerrainSystem.js
Strong match: a JavaScript/Three.js terrain system using GPU-driven heightmap data with island/mesh concepts, computes slope-based normals and uses biome data for fragment coloring. While it’s WebGPU+TSL-specific and not a plain CPU heightmap example, it directly covers heightmap/terrain mesh/noise+island/falloff, slope, and biome-driven color.
- ryanmangiapane/whispering-villagesrc/nature/terrain.js
Direct Three.js JavaScript implementation of procedural heightmap terrain using noise (including erosion/continental/detail), chunked mesh generation, biome-driven coloration, and explicit slope-based rock/snow color blending—matches the query terms (heightmap/mesh/noise/biome/slope/color) closely in one file.
- abhisek2004/62Days-CodeSprint-WebDev-ChallengeProject/HTML,CSS,JS/Client-Side WebGL 3D Terrain & Heightmap Shader Generator/terrain-generator.js
JavaScript/Three.js terrain generator code with procedural noise (heightmap), falloff/biome-like color interpolation by height, slope-based rock blending, and custom shaders for terrain mesh visualization—matches the requested “noise + island/falloff + biome color by height and slope” pattern.
Request
Request payload
{ "query": "three.js heightmap terrain mesh from noise island falloff biome color by height and slope", "language": "javascript", "license_mode": "strict" }- hlsvortex/HLS_WebGPUPluginssrc/systems/TerrainSystem.js
+15:36Get ExampleGenerated exampleseeded PRNG mulberry32 plus 2D simplex noise implementation in plain javascript
seeded PRNG mulberry32 plus 2D simplex noise implementation in plain javascript · javascript · strict
Seeded Mulberry32 PRNG with 2D Simplex Noise
'use strict'; /** Deterministic Mulberry32 PRNG. Returns floats in [0, 1). */ function mulberry32(seed) { let state = seed >>> 0; return function random() { state = (state + 0x6d2b79f5) | 0; let t = Math.imul(state ^ (state >>> 15), state | 1); t = (t + Math.imul(t ^ (t >>> 7), t | 61)) ^ t; return ((t ^ (t >>> 14)) >>> 0) / 4294967296; }; } const F2 = 0.5 * (Math.sqrt(3) - 1); const G2 = (3 - Math.sqrt(3)) / 6; // Twelve evenly distributed 2D gradient directions. const GRADIENTS = [ [1, 1], [-1, 1], [1, -1], [-1, -1], [1, 0], [-1, 0], [0, 1], [0, -1], [1, 1], [-1, 1], [1, -1], [-1, -1], ]; class SimplexNoise2D { constructor(seed = 0) { const random = mulberry32(seed); const permutation = new Uint8Array(256); for (let i = 0; i < permutation.length; i++) { permutation[i] = i; } // Seeded Fisher-Yates shuffle. for (let i = 255; i > 0; i--) { const j = Math.floor(random() * (i + 1)); [permutation[i], permutation[j]] = [permutation[j], permutation[i]]; } this.perm = new Uint8Array(512); this.permMod12 = new Uint8Array(512); for (let i = 0; i < 512; i++) { this.perm[i] = permutation[i & 255]; this.permMod12[i] = this.perm[i] % 12; } } /** Returns coherent noise approximately in [-1, 1]. */ noise(x, y) { const { perm, permMod12 } = this; const skew = (x + y) * F2; const i = Math.floor(x + skew); const j = Math.floor(y + skew); const unskew = (i + j) * G2; const x0 = x - (i - unskew); const y0 = y - (j - unskew); const i1 = x0 > y0 ? 1 : 0; const j1 = x0 > y0 ? 0 : 1; const x1 = x0 - i1 + G2; const y1 = y0 - j1 + G2; const x2 = x0 - 1 + 2 * G2; const y2 = y0 - 1 + 2 * G2; const ii = i & 255; const jj = j & 255; let contribution0 = 0; let contribution1 = 0; let contribution2 = 0; let t = 0.5 - x0 * x0 - y0 * y0; if (t > 0) { const gradient = GRADIENTS[permMod12[ii + perm[jj]]]; t *= t; contribution0 = t * t * (gradient[0] * x0 + gradient[1] * y0); } t = 0.5 - x1 * x1 - y1 * y1; if (t > 0) { const gradient = GRADIENTS[ permMod12[ii + i1 + perm[jj + j1]] ]; t *= t; contribution1 = t * t * (gradient[0] * x1 + gradient[1] * y1); } t = 0.5 - x2 * x2 - y2 * y2; if (t > 0) { const gradient = GRADIENTS[ permMod12[ii + 1 + perm[jj + 1]] ]; t *= t; contribution2 = t * t * (gradient[0] * x2 + gradient[1] * y2); } return 70 * (contribution0 + contribution1 + contribution2); } /** Fractal Brownian motion using multiple noise octaves. */ fbm(x, y, octaves = 4, lacunarity = 2, gain = 0.5) { let amplitude = 1; let frequency = 1; let sum = 0; let normalization = 0; for (let octave = 0; octave < octaves; octave++) { sum += amplitude * this.noise(x * frequency, y * frequency); normalization += amplitude; amplitude *= gain; frequency *= lacunarity; } return sum / normalization; } } // Example: identical seeds produce identical noise values. const noiseA = new SimplexNoise2D(12345); const noiseB = new SimplexNoise2D(12345); const x = 2.5; const y = -1.25; console.log(noiseA.noise(x, y)); console.log(noiseB.noise(x, y)); // Same value as the previous line. console.log(noiseA.fbm(x, y, 5));References
3- kaolti/monolith-terrainsrc/noise.js
Contains both seeded PRNG mulberry32 and a seeded Simplex 2D implementation plus fbm/ridged helpers in plain JavaScript, matching the query closely.
- souramoo/partysrc/client3d/noise.js
Implements mulberry32 seeding and a seeded SimplexNoise class with a 2D simplex noise method (and fbm helpers); 3D support and extra hashing are fine extras.
- YadavAkhileshh/OpenPlaygroundprojects/lindenarboretum/js/math/noise.js
JavaScript implementation that includes a seeded Mulberry32 PRNG plus coherent 3D noise with explicit 2D/1D wrappers (noise2D/ noise1D), which is directly usable to build a 2D simplex/value-noise style sampler; the snippet explicitly matches mulberry32 and 2D noise requirements though the core noise is Perlin-like value/gradient noise rather than simplex.
Request
Request payload
{ "query": "seeded PRNG mulberry32 plus 2D simplex noise implementation in plain javascript", "language": "javascript", "license_mode": "strict" }- kaolti/monolith-terrainsrc/noise.js
+15:39Code GrepCode navigationthree“addUpdateRange”
addUpdateRange
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferAttribute.js", "src/core/BufferAttribute.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 119, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L111-L119", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 111 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 185, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L177-L185", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 177 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/core/BufferAttribute.js" } ], "pattern": "addUpdateRange", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferAttribute.js", "src/core/BufferAttribute.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 119, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L111-L119", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 111 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 185, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L177-L185", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 177 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+15:42Code GrepCode navigationthree“instanceCount”
instanceCount
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/InstancedBufferGeometry.js", "src/core/InstancedBufferGeometry.js", "src/core/InstancedBufferGeometry.js", "src/core/InstancedBufferGeometry.js", "src/core/InstancedBufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 35, "file_path": "src/core/InstancedBufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InstancedBufferGeometry.js#L29-L35", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 29 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 43, "file_path": "src/core/InstancedBufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InstancedBufferGeometry.js#L37-L43", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 43, "file_path": "src/core/InstancedBufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InstancedBufferGeometry.js#L37-L43", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 53, "file_path": "src/core/InstancedBufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InstancedBufferGeometry.js#L47-L53", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 47 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 53, "file_path": "src/core/InstancedBufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InstancedBufferGeometry.js#L47-L53", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 47 } ], "returned_matches": 5, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 5, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/core/InstancedBufferGeometry.js" } ], "pattern": "instanceCount", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/InstancedBufferGeometry.js", "src/core/InstancedBufferGeometry.js", "src/core/InstancedBufferGeometry.js", "src/core/InstancedBufferGeometry.js", "src/core/InstancedBufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 35, "file_path": "src/core/InstancedBufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InstancedBufferGeometry.js#L29-L35", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 29 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 43, "file_path": "src/core/InstancedBufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InstancedBufferGeometry.js#L37-L43", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 43, "file_path": "src/core/InstancedBufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InstancedBufferGeometry.js#L37-L43", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 53, "file_path": "src/core/InstancedBufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InstancedBufferGeometry.js#L47-L53", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 47 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 53, "file_path": "src/core/InstancedBufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InstancedBufferGeometry.js#L47-L53", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 47 } ], "returned_matches": 5, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 5, "unique_files_matched": 1 }, "title": null, "content": null }+15:52Code GrepCode navigationthree“clearUpdateRanges”
clearUpdateRanges
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferAttribute.js", "src/core/InterleavedBuffer.js", "src/nodes/accessors/BufferNode.js", "src/nodes/accessors/Instance.js", "src/nodes/accessors/Instance.js", "src/renderers/common/Bindings.js", "src/renderers/common/Buffer.js", "src/renderers/common/UniformsGroup.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 193, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L187-L193", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 187 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 139, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L133-L139", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 133 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 87, "file_path": "src/nodes/accessors/BufferNode.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/nodes/accessors/BufferNode.js#L81-L87", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 81 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 185, "file_path": "src/nodes/accessors/Instance.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/nodes/accessors/Instance.js#L179-L185", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 179 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 198, "file_path": "src/nodes/accessors/Instance.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/nodes/accessors/Instance.js#L192-L198", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 192 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 450, "file_path": "src/renderers/common/Bindings.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/Bindings.js#L444-L450", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 444 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 86, "file_path": "src/renderers/common/Buffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/Buffer.js#L80-L86", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 80 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 63, "file_path": "src/renderers/common/UniformsGroup.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/UniformsGroup.js#L57-L63", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 57 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 7 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 8, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src" } ], "pattern": "clearUpdateRanges", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferAttribute.js", "src/core/InterleavedBuffer.js", "src/nodes/accessors/BufferNode.js", "src/nodes/accessors/Instance.js", "src/nodes/accessors/Instance.js", "src/renderers/common/Bindings.js", "src/renderers/common/Buffer.js", "src/renderers/common/UniformsGroup.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 193, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L187-L193", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 187 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 139, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L133-L139", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 133 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 87, "file_path": "src/nodes/accessors/BufferNode.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/nodes/accessors/BufferNode.js#L81-L87", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 81 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 185, "file_path": "src/nodes/accessors/Instance.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/nodes/accessors/Instance.js#L179-L185", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 179 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 198, "file_path": "src/nodes/accessors/Instance.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/nodes/accessors/Instance.js#L192-L198", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 192 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 450, "file_path": "src/renderers/common/Bindings.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/Bindings.js#L444-L450", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 444 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 86, "file_path": "src/renderers/common/Buffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/Buffer.js#L80-L86", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 80 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 63, "file_path": "src/renderers/common/UniformsGroup.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/UniformsGroup.js#L57-L63", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 57 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 7 }, "title": null, "content": null }+16:06Code GrepCode navigationthree“updateRanges”
updateRanges
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 89, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L77-L89", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 77 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 89, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L77-L89", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 77 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 93, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L81-L93", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 81 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 109, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L97-L109", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 97 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 112, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L100-L112", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 100 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 118, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L106-L118", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 106 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L108-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 108 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 121, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L109-L121", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 109 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 8, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/webgl/WebGLAttributes.js" } ], "pattern": "updateRanges", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 89, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L77-L89", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 77 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 89, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L77-L89", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 77 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 93, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L81-L93", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 81 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 109, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L97-L109", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 97 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 112, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L100-L112", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 100 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 118, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L106-L118", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 106 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L108-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 108 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 121, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L109-L121", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 109 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 1 }, "title": null, "content": null }+16:07Code GrepCode navigationsimplex-noise“createNoise2D”
createNoise2D
pkg:npm:simplex-noise@4.0.3Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "README.md", "README.md", "README.md", "README.md", "README.md", "README.md", "README.md", "README.md", "README.md", "README.md", "simplex-noise.ts" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 40, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L24-L40", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 24 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 47, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L31-L47", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 31 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 54, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L38-L54", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 38 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 88, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L72-L88", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 72 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 116, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L100-L116", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 100 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 117, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L101-L117", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 101 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 129, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L113-L129", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 113 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 131, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L115-L131", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 115 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 139, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L123-L139", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 123 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 146, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L130-L146", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 130 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 119, "file_path": "simplex-noise.ts", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/simplex-noise.ts#L103-L119", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 103 } ], "returned_matches": 11, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 11, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "simplex-noise", "path_selectors": [ { "kind": "GLOB", "value": "simplex-noise.ts" }, { "kind": "GLOB", "value": "README.md" } ], "pattern": "createNoise2D", "pattern_type": "LITERAL", "registry": "npm", "version": "4.0.3", "wait_timeout_ms": 60000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "README.md", "README.md", "README.md", "README.md", "README.md", "README.md", "README.md", "README.md", "README.md", "README.md", "simplex-noise.ts" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 40, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L24-L40", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 24 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 47, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L31-L47", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 31 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 54, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L38-L54", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 38 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 88, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L72-L88", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 72 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 116, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L100-L116", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 100 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 117, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L101-L117", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 101 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 129, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L113-L129", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 113 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 131, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L115-L131", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 115 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 139, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L123-L139", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 123 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 146, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/README.md#L130-L146", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 130 }, { "commit_sha": "6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e", "end_line": 119, "file_path": "simplex-noise.ts", "kind": "code", "permalink": "https://github.com/jwagner/simplex-noise.js/blob/6bfff874f5f0efed6375a9bf27fbd39b3cec6b4e/simplex-noise.ts#L103-L119", "repo_url": "https://github.com/jwagner/simplex-noise.js", "start_line": 103 } ], "returned_matches": 11, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 11, "unique_files_matched": 2 }, "title": null, "content": null }+16:14Code GrepCode navigationthree“constructor( points, segments”
constructor( points, segments
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/geometries/LatheGeometry.js" } ], "pattern": "constructor( points, segments", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+16:18Code GrepCode navigationthree“constructor(”
constructor(
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/geometries/LatheGeometry.js", "src/geometries/TubeGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 46, "file_path": "src/geometries/LatheGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/LatheGeometry.js#L26-L46", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 26 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 55, "file_path": "src/geometries/TubeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/TubeGeometry.js#L35-L55", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 35 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/geometries/LatheGeometry.js" }, { "kind": "GLOB", "value": "src/geometries/TubeGeometry.js" } ], "pattern": "constructor(", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/geometries/LatheGeometry.js", "src/geometries/TubeGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 46, "file_path": "src/geometries/LatheGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/LatheGeometry.js#L26-L46", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 26 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 55, "file_path": "src/geometries/TubeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/TubeGeometry.js#L35-L55", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 35 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }, "title": null, "content": null }+16:25Code GrepCode navigationthree“setNodeSource”
setNodeSource
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/audio/Audio.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 248, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L228-L248", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 228 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/audio/Audio.js" } ], "pattern": "setNodeSource", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/audio/Audio.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 248, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L228-L248", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 228 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+16:27Code GrepCode navigationthree“#version 300 es”
#version 300 es
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 811, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L799-L811", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 799 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/renderers/webgl/WebGLProgram.js" } ], "pattern": "#version 300 es", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 811, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L799-L811", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 799 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+19:20Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 87, "indexing_status": "indexed", "language": "javascript", "line_count": 87, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 87, "file_path": "src/textures/DataTexture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/DataTexture.js#L1-L87", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 87 }Request
Request payload
{ "end_line": 90, "file_path": "src/textures/DataTexture.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 87, "indexing_status": "indexed", "language": "javascript", "line_count": 87, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 87, "file_path": "src/textures/DataTexture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/DataTexture.js#L1-L87", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 87 }, "title": null, "content": null }+19:26Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 60, "indexing_status": "indexed", "language": "javascript", "line_count": 60, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60, "file_path": "src/math/ColorManagement.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/ColorManagement.js#L1-L60", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 215 }Request
Request payload
{ "end_line": 60, "file_path": "src/math/ColorManagement.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 60, "indexing_status": "indexed", "language": "javascript", "line_count": 60, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60, "file_path": "src/math/ColorManagement.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/ColorManagement.js#L1-L60", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 215 }, "title": null, "content": null }+19:33Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 11, "indexing_status": "indexed", "language": "javascript", "line_count": 11, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 11, "file_path": "src/renderers/shaders/ShaderChunk/opaque_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/opaque_fragment.glsl.js#L1-L11", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 11 }Request
Request payload
{ "end_line": 150, "file_path": "src/renderers/shaders/ShaderChunk/opaque_fragment.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 11, "indexing_status": "indexed", "language": "javascript", "line_count": 11, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 11, "file_path": "src/renderers/shaders/ShaderChunk/opaque_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/opaque_fragment.glsl.js#L1-L11", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 11 }, "title": null, "content": null }+19:36Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 19, "indexing_status": "indexed", "language": "javascript", "line_count": 19, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 19, "file_path": "src/renderers/shaders/ShaderChunk/project_vertex.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/project_vertex.glsl.js#L1-L19", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 19 }Request
Request payload
{ "end_line": 150, "file_path": "src/renderers/shaders/ShaderChunk/project_vertex.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 19, "indexing_status": "indexed", "language": "javascript", "line_count": 19, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 19, "file_path": "src/renderers/shaders/ShaderChunk/project_vertex.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/project_vertex.glsl.js#L1-L19", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 19 }, "title": null, "content": null }+19:36Code GrepCode navigationthree“RedFormat|NoColorSpace|SRGBColorSpace |ClampToEdgeWrapping|UnsignedByteType|RGBAFormat”
RedFormat|NoColorSpace|SRGBColorSpace |ClampToEdgeWrapping|UnsignedByteType|RGBAFormat
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/constants.js", "src/constants.js", "src/constants.js", "src/constants.js", "src/constants.js", "src/constants.js", "src/constants.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 563, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L563-L563", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 563 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 642, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L642-L642", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 642 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 762, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L762-L762", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 762 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 787, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L787-L787", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 787 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1300, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L1300-L1300", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1300 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1308, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L1308-L1308", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1308 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1316, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L1316-L1316", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1316 } ], "returned_matches": 7, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 7, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 0, "context_lines_before": 0, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/constants.js" } ], "pattern": "RedFormat|NoColorSpace|SRGBColorSpace |ClampToEdgeWrapping|UnsignedByteType|RGBAFormat", "pattern_type": "REGEX", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/constants.js", "src/constants.js", "src/constants.js", "src/constants.js", "src/constants.js", "src/constants.js", "src/constants.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 563, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L563-L563", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 563 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 642, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L642-L642", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 642 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 762, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L762-L762", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 762 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 787, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L787-L787", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 787 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1300, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L1300-L1300", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1300 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1308, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L1308-L1308", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1308 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1316, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L1316-L1316", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1316 } ], "returned_matches": 7, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 7, "unique_files_matched": 1 }, "title": null, "content": null }+19:39Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 19, "indexing_status": "indexed", "language": "javascript", "line_count": 19, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 19, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_end.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_fragment_end.glsl.js#L1-L19", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 19 }Request
Request payload
{ "end_line": 150, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_end.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 19, "indexing_status": "indexed", "language": "javascript", "line_count": 19, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 19, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_end.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_fragment_end.glsl.js#L1-L19", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 19 }, "title": null, "content": null }+19:40Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 45, "indexing_status": "indexed", "language": "javascript", "line_count": 45, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 45, "file_path": "src/textures/CanvasTexture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/CanvasTexture.js#L1-L45", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 45 }Request
Request payload
{ "end_line": 60, "file_path": "src/textures/CanvasTexture.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 45, "indexing_status": "indexed", "language": "javascript", "line_count": 45, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 45, "file_path": "src/textures/CanvasTexture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/CanvasTexture.js#L1-L45", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 45 }, "title": null, "content": null }+19:42Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 224, "indexing_status": "indexed", "language": "javascript", "line_count": 50, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 224, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L175-L224", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 175 } ], "start_line": 175, "status": "success", "total_lines": 224 }Request
Request payload
{ "end_line": 230, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "package_name": "three", "registry": "npm", "start_line": 175, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 224, "indexing_status": "indexed", "language": "javascript", "line_count": 50, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 224, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L175-L224", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 175 } ], "start_line": 175, "status": "success", "total_lines": 224 }, "title": null, "content": null }+19:49Code FilesCode navigationthreeexamples/jsm/postprocessing/
pkg:npm:three@0.185.1Result summary
{ "code_index_state": "current", "files": [ "examples/jsm/postprocessing/AfterimagePass.js", "examples/jsm/postprocessing/BloomPass.js", "examples/jsm/postprocessing/BokehPass.js", "examples/jsm/postprocessing/ClearPass.js", "examples/jsm/postprocessing/CubeTexturePass.js", "examples/jsm/postprocessing/DotScreenPass.js", "examples/jsm/postprocessing/EffectComposer.js", "examples/jsm/postprocessing/FXAAPass.js", "examples/jsm/postprocessing/FilmPass.js", "examples/jsm/postprocessing/GTAOPass.js", "examples/jsm/postprocessing/GlitchPass.js", "examples/jsm/postprocessing/HalftonePass.js", "examples/jsm/postprocessing/LUTPass.js", "examples/jsm/postprocessing/MaskPass.js", "examples/jsm/postprocessing/OutlinePass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/Pass.js", "examples/jsm/postprocessing/RenderPass.js", "examples/jsm/postprocessing/RenderPixelatedPass.js", "examples/jsm/postprocessing/RenderTransitionPass.js" ], "has_more": false, "indexing_status": "indexed", "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/AfterimagePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/AfterimagePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/BloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BloomPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/BokehPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BokehPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/ClearPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/ClearPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/CubeTexturePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/CubeTexturePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/DotScreenPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/DotScreenPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/FXAAPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FXAAPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/FilmPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FilmPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/GTAOPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/GTAOPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/GlitchPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/GlitchPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/HalftonePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/HalftonePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/LUTPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/LUTPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/MaskPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/MaskPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/OutlinePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutlinePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/Pass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/Pass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/RenderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/RenderPixelatedPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderPixelatedPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/RenderTransitionPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderTransitionPass.js", "repo_url": "https://github.com/mrdoob/three.js" } ], "result_pointers_truncated": true, "returned": 30, "status": "success", "total": 30 }Request
Request payload
{ "exclude_doc_files": false, "exclude_test_files": false, "include_hidden": false, "limit": 200, "offset": 0, "package_name": "three", "path_prefix": "examples/jsm/postprocessing/", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }ResponseTruncated
Response payload
{ "summary": { "code_index_state": "current", "files": [ "examples/jsm/postprocessing/AfterimagePass.js", "examples/jsm/postprocessing/BloomPass.js", "examples/jsm/postprocessing/BokehPass.js", "examples/jsm/postprocessing/ClearPass.js", "examples/jsm/postprocessing/CubeTexturePass.js", "examples/jsm/postprocessing/DotScreenPass.js", "examples/jsm/postprocessing/EffectComposer.js", "examples/jsm/postprocessing/FXAAPass.js", "examples/jsm/postprocessing/FilmPass.js", "examples/jsm/postprocessing/GTAOPass.js", "examples/jsm/postprocessing/GlitchPass.js", "examples/jsm/postprocessing/HalftonePass.js", "examples/jsm/postprocessing/LUTPass.js", "examples/jsm/postprocessing/MaskPass.js", "examples/jsm/postprocessing/OutlinePass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/Pass.js", "examples/jsm/postprocessing/RenderPass.js", "examples/jsm/postprocessing/RenderPixelatedPass.js", "examples/jsm/postprocessing/RenderTransitionPass.js" ], "has_more": false, "indexing_status": "indexed", "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/AfterimagePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/AfterimagePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/BloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BloomPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/BokehPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BokehPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/ClearPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/ClearPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/CubeTexturePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/CubeTexturePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/DotScreenPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/DotScreenPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/FXAAPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FXAAPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/FilmPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FilmPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/GTAOPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/GTAOPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/GlitchPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/GlitchPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/HalftonePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/HalftonePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/LUTPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/LUTPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/MaskPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/MaskPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/OutlinePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutlinePass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/Pass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/Pass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/RenderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/RenderPixelatedPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderPixelatedPass.js", "repo_url": "https://github.com/mrdoob/three.js" }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "file_path": "examples/jsm/postprocessing/RenderTransitionPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderTransitionPass.js", "repo_url": "https://github.com/mrdoob/three.js" } ], "result_pointers_truncated": true, "returned": 30, "status": "success", "total": 30 }, "title": null, "content": null }This shared record contains a truncated response.
+19:49Code GrepCode navigationthree“setHex\(|setRGB\(|getHexString|copyLinearToSRGB|lerpColors|SRGBToLinear”
setHex\(|setRGB\(|getHexString|copyLinearToSRGB|lerpColors|SRGBToLinear
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 8, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L1-L8", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 59, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L47-L59", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 47 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 64, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L52-L64", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 52 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 67, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L55-L67", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 55 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 169, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L157-L169", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 157 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 179, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L167-L179", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 167 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 210, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L198-L210", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 198 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 233, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L221-L233", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 221 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 328, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L316-L328", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 316 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 343, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L331-L343", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 331 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 390, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L378-L390", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 378 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 400, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L388-L400", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 388 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 439, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L427-L439", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 427 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 486, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L474-L486", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 474 } ], "returned_matches": 14, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 14, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 14, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/math/Color.js" } ], "pattern": "setHex\\(|setRGB\\(|getHexString|copyLinearToSRGB|lerpColors|SRGBToLinear", "pattern_type": "REGEX", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js", "src/math/Color.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 8, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L1-L8", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 59, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L47-L59", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 47 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 64, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L52-L64", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 52 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 67, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L55-L67", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 55 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 169, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L157-L169", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 157 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 179, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L167-L179", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 167 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 210, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L198-L210", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 198 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 233, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L221-L233", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 221 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 328, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L316-L328", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 316 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 343, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L331-L343", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 331 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 390, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L378-L390", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 378 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 400, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L388-L400", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 388 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 439, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L427-L439", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 427 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 486, "file_path": "src/math/Color.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Color.js#L474-L486", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 474 } ], "returned_matches": 14, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 14, "unique_files_matched": 1 }, "title": null, "content": null }+19:51Code GrepCode navigationthree“colorSpace = NoColorSpace|this.colorSpace”
colorSpace = NoColorSpace|this.colorSpace
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/textures/Texture.js", "src/textures/Texture.js", "src/textures/Texture.js", "src/textures/Texture.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 51, "file_path": "src/textures/Texture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/Texture.js#L45-L51", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 45 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 302, "file_path": "src/textures/Texture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/Texture.js#L296-L302", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 296 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 512, "file_path": "src/textures/Texture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/Texture.js#L506-L512", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 506 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 618, "file_path": "src/textures/Texture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/Texture.js#L612-L618", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 612 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/textures/Texture.js" } ], "pattern": "colorSpace = NoColorSpace|this.colorSpace", "pattern_type": "REGEX", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/textures/Texture.js", "src/textures/Texture.js", "src/textures/Texture.js", "src/textures/Texture.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 51, "file_path": "src/textures/Texture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/Texture.js#L45-L51", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 45 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 302, "file_path": "src/textures/Texture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/Texture.js#L296-L302", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 296 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 512, "file_path": "src/textures/Texture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/Texture.js#L506-L512", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 506 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 618, "file_path": "src/textures/Texture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/Texture.js#L612-L618", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 612 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+19:51Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 130, "indexing_status": "indexed", "language": "javascript", "line_count": 91, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 130, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js#L40-L130", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 } ], "start_line": 40, "status": "success", "total_lines": 365 }Request
Request payload
{ "end_line": 130, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "package_name": "three", "registry": "npm", "start_line": 40, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 130, "indexing_status": "indexed", "language": "javascript", "line_count": 91, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 130, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js#L40-L130", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 } ], "start_line": 40, "status": "success", "total_lines": 365 }, "title": null, "content": null }+19:54Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 30, "indexing_status": "indexed", "language": "javascript", "line_count": 30, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js#L1-L30", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 213 }Request
Request payload
{ "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 30, "indexing_status": "indexed", "language": "javascript", "line_count": 30, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js#L1-L30", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 213 }, "title": null, "content": null }+19:56Code GrepCode navigationthree“vViewPosition”
vViewPosition
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "src/renderers/shaders/ShaderChunk/normal_fragment_maps.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 16, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js#L16-L16", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 16 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 18, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js#L18-L18", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 18 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2, "file_path": "src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js#L2-L2", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2, "file_path": "src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js#L2-L2", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2, "file_path": "src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js#L2-L2", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6, "file_path": "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js#L6-L6", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js#L7-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 7 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js#L30-L30", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 30 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 59, "file_path": "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js#L59-L59", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 59 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37, "file_path": "src/renderers/shaders/ShaderChunk/normal_fragment_maps.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/normal_fragment_maps.glsl.js#L37-L37", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 } ], "returned_matches": 10, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 10, "unique_files_matched": 6 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 0, "context_lines_before": 0, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 40, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/shaders/ShaderChunk/" } ], "pattern": "vViewPosition", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "src/renderers/shaders/ShaderChunk/normal_fragment_maps.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 16, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js#L16-L16", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 16 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 18, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js#L18-L18", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 18 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2, "file_path": "src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js#L2-L2", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2, "file_path": "src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js#L2-L2", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2, "file_path": "src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js#L2-L2", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6, "file_path": "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js#L6-L6", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js#L7-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 7 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js#L30-L30", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 30 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 59, "file_path": "src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js#L59-L59", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 59 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37, "file_path": "src/renderers/shaders/ShaderChunk/normal_fragment_maps.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/normal_fragment_maps.glsl.js#L37-L37", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 } ], "returned_matches": 10, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 10, "unique_files_matched": 6 }, "title": null, "content": null }+19:58Code GrepCode navigationthree“saturate”
saturate
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/common.glsl.js", "src/renderers/shaders/ShaderChunk/common.glsl.js", "src/renderers/shaders/ShaderChunk/common.glsl.js", "src/renderers/shaders/ShaderChunk/common.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 9, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L9-L9", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 9 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 10, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L10-L10", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 10 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 11, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L11-L11", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 11 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 13, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L13-L13", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 13 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 0, "context_lines_before": 0, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 10, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/shaders/ShaderChunk/common.glsl.js" } ], "pattern": "saturate", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/common.glsl.js", "src/renderers/shaders/ShaderChunk/common.glsl.js", "src/renderers/shaders/ShaderChunk/common.glsl.js", "src/renderers/shaders/ShaderChunk/common.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 9, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L9-L9", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 9 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 10, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L10-L10", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 10 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 11, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L11-L11", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 11 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 13, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L13-L13", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 13 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+20:00Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 40, "indexing_status": "indexed", "language": "javascript", "line_count": 40, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 40, "file_path": "examples/jsm/postprocessing/FXAAPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FXAAPass.js#L1-L40", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 40 }Request
Request payload
{ "end_line": 60, "file_path": "examples/jsm/postprocessing/FXAAPass.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 40, "indexing_status": "indexed", "language": "javascript", "line_count": 40, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 40, "file_path": "examples/jsm/postprocessing/FXAAPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FXAAPass.js#L1-L40", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 40 }, "title": null, "content": null }+20:01Code GrepCode navigationthree“customProgramCacheKey”
customProgramCacheKey
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/materials/Material.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 549, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L537-L549", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 537 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 10, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/materials/Material.js" } ], "pattern": "customProgramCacheKey", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/materials/Material.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 549, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L537-L549", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 537 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+20:11Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 130, "indexing_status": "indexed", "language": "javascript", "line_count": 130, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 130, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L1-L130", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 148 }Request
Request payload
{ "end_line": 130, "file_path": "examples/jsm/postprocessing/OutputPass.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 130, "indexing_status": "indexed", "language": "javascript", "line_count": 130, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 130, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L1-L130", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 148 }, "title": null, "content": null }+20:13Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 175, "indexing_status": "indexed", "language": "javascript", "line_count": 70, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 175, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L106-L175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 106 } ], "start_line": 106, "status": "success", "total_lines": 224 }Request
Request payload
{ "end_line": 175, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "package_name": "three", "registry": "npm", "start_line": 106, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 175, "indexing_status": "indexed", "language": "javascript", "line_count": 70, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 175, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L106-L175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 106 } ], "start_line": 106, "status": "success", "total_lines": 224 }, "title": null, "content": null }+20:19Code GrepCode navigationthree“onBeforeCompile”
onBeforeCompile
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 542, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L522-L542", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 522 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 545, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L525-L545", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 525 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 546, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L526-L546", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 526 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 555, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L535-L555", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 535 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/materials/Material.js" } ], "pattern": "onBeforeCompile", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 542, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L522-L542", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 522 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 545, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L525-L545", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 525 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 546, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L526-L546", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 526 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 555, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L535-L555", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 535 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+20:20Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 135, "indexing_status": "indexed", "language": "javascript", "line_count": 111, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 135, "file_path": "examples/jsm/postprocessing/ShaderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/ShaderPass.js#L25-L135", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 25 } ], "start_line": 25, "status": "success", "total_lines": 135 }Request
Request payload
{ "end_line": 140, "file_path": "examples/jsm/postprocessing/ShaderPass.js", "package_name": "three", "registry": "npm", "start_line": 25, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 135, "indexing_status": "indexed", "language": "javascript", "line_count": 111, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 135, "file_path": "examples/jsm/postprocessing/ShaderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/ShaderPass.js#L25-L135", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 25 } ], "start_line": 25, "status": "success", "total_lines": 135 }, "title": null, "content": null }+20:23Code GrepCode navigationthree“diffuseColor”
diffuseColor
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 10, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L4-L10", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 4 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 608, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L602-L608", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 602 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 613, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L607-L613", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 607 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js" } ], "pattern": "diffuseColor", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 10, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L4-L10", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 4 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 608, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L602-L608", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 602 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 613, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L607-L613", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 607 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }, "title": null, "content": null }+20:29Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 130, "indexing_status": "indexed", "language": "javascript", "line_count": 95, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 130, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L36-L130", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 36 } ], "start_line": 36, "status": "success", "total_lines": 524 }Request
Request payload
{ "end_line": 130, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "package_name": "three", "registry": "npm", "start_line": 36, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 130, "indexing_status": "indexed", "language": "javascript", "line_count": 95, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 130, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L36-L130", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 36 } ], "start_line": 36, "status": "success", "total_lines": 524 }, "title": null, "content": null }+20:31Code GrepCode navigationthree“colorSpace”
colorSpace
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "examples/jsm/postprocessing/EffectComposer.js" } ], "pattern": "colorSpace", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+20:35Code GrepCode navigationthree“workingColorSpace : _this.outputColorSpace”
workingColorSpace : _this.outputColorSpace
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/" } ], "pattern": "workingColorSpace : _this.outputColorSpace", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+20:37Code GrepCode navigationthree“BRDF_Lambert”
BRDF_Lambert
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/shaders/ShaderChunk/bsdfs.glsl.js" } ], "pattern": "BRDF_Lambert", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+20:37Code GrepCode navigationthree“slerpQuaternions”
slerpQuaternions
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Quaternion.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 787, "file_path": "src/math/Quaternion.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Quaternion.js#L775-L787", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 775 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/math" } ], "pattern": "slerpQuaternions", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Quaternion.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 787, "file_path": "src/math/Quaternion.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Quaternion.js#L775-L787", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 775 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+20:39Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 80, "indexing_status": "indexed", "language": "javascript", "line_count": 56, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 80, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L25-L80", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 25 } ], "start_line": 25, "status": "success", "total_lines": 405 }Request
Request payload
{ "end_line": 80, "file_path": "src/core/RenderTarget.js", "package_name": "three", "registry": "npm", "start_line": 25, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 80, "indexing_status": "indexed", "language": "javascript", "line_count": 56, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 80, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L25-L80", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 25 } ], "start_line": 25, "status": "success", "total_lines": 405 }, "title": null, "content": null }+20:41Code GrepCode navigationthree“depthTexture”
depthTexture
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 39, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L31-L39", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 31 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 44, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L36-L44", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 36 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L58-L66", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 58 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 71, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L63-L71", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 63 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 187, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L179-L187", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 179 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 188, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L180-L188", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 180 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 188, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L180-L188", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 180 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 216, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L208-L216", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 208 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 216, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L208-L216", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 208 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 269, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L261-L269", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 261 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 271, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L263-L271", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 263 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 271, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L263-L271", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 263 } ], "returned_matches": 12, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 12, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 12, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/RenderTarget.js" } ], "pattern": "depthTexture", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 39, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L31-L39", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 31 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 44, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L36-L44", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 36 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L58-L66", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 58 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 71, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L63-L71", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 63 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 187, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L179-L187", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 179 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 188, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L180-L188", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 180 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 188, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L180-L188", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 180 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 216, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L208-L216", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 208 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 216, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L208-L216", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 208 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 269, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L261-L269", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 261 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 271, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L263-L271", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 263 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 271, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L263-L271", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 263 } ], "returned_matches": 12, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 12, "unique_files_matched": 1 }, "title": null, "content": null }+20:42Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 104, "indexing_status": "indexed", "language": "javascript", "line_count": 104, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 104, "file_path": "src/textures/DepthTexture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/DepthTexture.js#L1-L104", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 104 }Request
Request payload
{ "end_line": 120, "file_path": "src/textures/DepthTexture.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 104, "indexing_status": "indexed", "language": "javascript", "line_count": 104, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 104, "file_path": "src/textures/DepthTexture.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/textures/DepthTexture.js#L1-L104", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 104 }, "title": null, "content": null }+20:45Code GrepCode navigationthree“_onChangeCallback”
_onChangeCallback
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/Object3D.js" } ], "pattern": "_onChangeCallback", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+20:47Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 120, "indexing_status": "indexed", "language": "javascript", "line_count": 120, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "src/geometries/LatheGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/LatheGeometry.js#L1-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 230 }Request
Request payload
{ "end_line": 120, "file_path": "src/geometries/LatheGeometry.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 120, "indexing_status": "indexed", "language": "javascript", "line_count": 120, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "src/geometries/LatheGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/LatheGeometry.js#L1-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 230 }, "title": null, "content": null }+20:48Code GrepCode navigationthree“setFromEuler”
setFromEuler
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Quaternion.js", "src/math/Quaternion.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 311, "file_path": "src/math/Quaternion.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Quaternion.js#L291-L311", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 291 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 375, "file_path": "src/math/Quaternion.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Quaternion.js#L355-L375", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 355 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 2, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/math/Quaternion.js" } ], "pattern": "setFromEuler", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Quaternion.js", "src/math/Quaternion.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 311, "file_path": "src/math/Quaternion.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Quaternion.js#L291-L311", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 291 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 375, "file_path": "src/math/Quaternion.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Quaternion.js#L355-L375", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 355 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+20:49Code GrepCode navigationthree“_currentRenderTarget === null”
_currentRenderTarget === null
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 362, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L350-L362", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 350 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1637, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1625-L1637", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1625 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2348, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2336-L2348", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2336 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2361, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2349-L2361", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2349 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "_currentRenderTarget === null", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 362, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L350-L362", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 350 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1637, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1625-L1637", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1625 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2348, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2336-L2348", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2336 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2361, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2349-L2361", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2349 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+20:51Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 100, "indexing_status": "indexed", "language": "javascript", "line_count": 81, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L20-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 20 } ], "start_line": 20, "status": "success", "total_lines": 405 }Request
Request payload
{ "end_line": 100, "file_path": "src/core/RenderTarget.js", "package_name": "three", "registry": "npm", "start_line": 20, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 100, "indexing_status": "indexed", "language": "javascript", "line_count": 81, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L20-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 20 } ], "start_line": 20, "status": "success", "total_lines": 405 }, "title": null, "content": null }+20:52Code GrepCode navigationthree“vec3 BRDF_Lambert”
vec3 BRDF_Lambert
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/common.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 106, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L100-L106", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 100 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/shaders/" } ], "pattern": "vec3 BRDF_Lambert", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/common.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 106, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L100-L106", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 100 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+20:58Get ExampleGenerated exampleThree.js stylized sky dome ShaderMaterial BackSide gradient with sun disc and FBM value noise scrolling cloud layers
Three.js stylized sky dome ShaderMaterial BackSide gradient with sun disc and FBM value noise scrolling cloud layers · javascript · strict
Three.js Stylized Sky Dome with FBM Clouds and Sun Disc
import * as THREE from 'three'; const scene = new THREE.Scene(); const camera = new THREE.PerspectiveCamera(60, innerWidth / innerHeight, 0.1, 2000); camera.position.set(0, 0, 0); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.setSize(innerWidth, innerHeight); document.body.style.margin = '0'; document.body.appendChild(renderer.domElement); const skyUniforms = { uTime: { value: 0 }, uSunDirection: { value: new THREE.Vector3(0.35, 0.45, -0.82).normalize() }, uTopColor: { value: new THREE.Color('#26558a') }, uHorizonColor: { value: new THREE.Color('#f2a66f') }, uCloudColor: { value: new THREE.Color('#f3e4d2') }, uCloudShadow: { value: new THREE.Color('#6e7890') }, uSunColor: { value: new THREE.Color('#fff2b0') }, }; const skyMaterial = new THREE.ShaderMaterial({ side: THREE.BackSide, depthWrite: false, fog: false, uniforms: skyUniforms, vertexShader: /* glsl */ ` varying vec3 vDirection; void main() { vDirection = normalize(position); gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); } `, fragmentShader: /* glsl */ ` varying vec3 vDirection; uniform float uTime; uniform vec3 uSunDirection; uniform vec3 uTopColor; uniform vec3 uHorizonColor; uniform vec3 uCloudColor; uniform vec3 uCloudShadow; uniform vec3 uSunColor; // 2D value noise with smooth interpolation. float hash(vec2 p) { p = fract(p * vec2(127.1, 311.7)); p += dot(p, p + SOME_NON_CONSTANT); return fract(p.x * p.y * 43758.5453); } float valueNoise(vec2 p) { vec2 cell = floor(p); vec2 local = fract(p); local = local * local * (3.0 - 2.0 * local); float a = hash(cell); float b = hash(cell + vec2(1.0, 0.0)); float c = hash(cell + vec2(0.0, 1.0)); float d = hash(cell + vec2(1.0, 1.0)); return mix(mix(a, b, local.x), mix(c, d, local.x), local.y); } float fbm(vec2 p) { float total = 0.0; float amplitude = 0.5; for (int i = 0; i < 5; i++) { total += valueNoise(p) * amplitude; p = p * 2.03 + vec2(17.1, 9.2); amplitude *= 0.5; } return total; } void main() { vec3 direction = normalize(vDirection); float height = clamp(direction.y * 0.5 + 0.5, 0.0, 1.0); // Warm the horizon while keeping the zenith cool and saturated. vec3 sky = mix(uHorizonColor, uTopColor, smoothstep(0.0, 0.82, height)); sky = mix(sky, uHorizonColor, pow(1.0 - height, 3.0) * 0.25); // Project the clouds onto the upper hemisphere. The two layers scroll // at different speeds to create broad shapes and smaller detail. vec2 cloudUv = direction.xz / max(direction.y + 0.35, 0.35); vec2 slowUv = cloudUv * 1.35 + vec2(uTime * 0.008, uTime * 0.003); vec2 fastUv = cloudUv * 3.8 + vec2(-uTime * 0.018, uTime * 0.011); float broad = fbm(slowUv); float detail = fbm(fastUv); float cloudNoise = broad * 0.78 + detail * 0.22; float cloudMask = smoothstep(0.52, 0.70, cloudNoise); cloudMask *= smoothstep(0.02, 0.22, direction.y); cloudMask *= 1.0 - smoothstep(0.72, 1.0, direction.y) * 0.35; // Approximate cloud lighting from the sun-facing direction. float sunLight = max(dot(direction, uSunDirection), 0.0); vec3 cloudLit = mix(uCloudShadow, uCloudColor, 0.35 + sunLight * 0.65); sky = mix(sky, cloudLit, cloudMask * 0.82); // Soft sun disc plus a subtle atmospheric glow. float sunAngle = dot(direction, uSunDirection); float sunDisc = smoothstep(0.9992, 0.9998, sunAngle); float sunGlow = pow(max(sunAngle, 0.0), 48.0) * 0.22; sky += uSunColor * (sunDisc * 1.8 + sunGlow); // Fade the dome toward the horizon for a softer stylized silhouette. sky = mix(sky, uHorizonColor, smoothstep(-0.08, 0.04, direction.y) * 0.2); gl_FragColor = vec4(sky, 1.0); } `, }); // Replace the symbolic hash constant with a valid GLSL constant while keeping // the shader source easy to read above. skyMaterial.fragmentShader = skyMaterial.fragmentShader.replace( 'SOME_NON_CONSTANT', '34.345' ); const sky = new THREE.Mesh( new THREE.SphereGeometry(800, 64, 32), skyMaterial ); sky.frustumCulled = false; sky.renderOrder = -100; scene.add(sky); const clock = new THREE.Clock(); function animate() { requestAnimationFrame(animate); sky.position.copy(camera.position); skyUniforms.uTime.value = clock.getElapsedTime(); renderer.render(scene, camera); } animate(); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); });References
1- jamescockburn47/moorsteadsrc/sky.js
Strong match: a Three.js sky dome implemented with ShaderMaterial (BackSide) using procedural FBM noise for clouds, gradient sky coloring, and sun/moon disc sprites in JavaScript.
Request
Request payload
{ "query": "Three.js stylized sky dome ShaderMaterial BackSide gradient with sun disc and FBM value noise scrolling cloud layers", "language": "javascript", "license_mode": "strict" }- jamescockburn47/moorsteadsrc/sky.js
+20:58Code GrepCode navigationthree“setSize( width, height, depth = 1 )”
setSize( width, height, depth = 1 )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/RenderTarget.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 305, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L285-L305", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 285 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 2, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/RenderTarget.js" } ], "pattern": "setSize( width, height, depth = 1 )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/RenderTarget.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 305, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L285-L305", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 285 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+20:58Code GrepCode navigationthree“onRotationChange”
onRotationChange
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js", "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 153, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L137-L153", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 137 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 165, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L149-L165", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 149 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/Object3D.js" } ], "pattern": "onRotationChange", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js", "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 153, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L137-L153", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 137 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 165, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L149-L165", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 149 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+20:59Get ExampleGenerated examplethree.js WebGLRenderTarget with DepthTexture attachment plus MeshNormalMaterial overrideMaterial prepass for screen-space depth-normal edge detection outline post-process
three.js WebGLRenderTarget with DepthTexture attachment plus MeshNormalMaterial overrideMaterial prepass for screen-space depth-normal edge detection outline post-process · javascript · strict
Three.js Depth-Normal Outline Post-Processing Pass
import * as THREE from "three"; import { EffectComposer } from "three/examples/jsm/postprocessing/EffectComposer.js"; import { RenderPass } from "three/examples/jsm/postprocessing/RenderPass.js"; import { Pass, FullScreenQuad } from "three/examples/jsm/postprocessing/Pass.js"; class DepthNormalOutlinePass extends Pass { constructor(scene, camera, width, height) { super(); this.scene = scene; this.camera = camera; this.resolution = new THREE.Vector2(width, height); this.normalMaterial = new THREE.MeshNormalMaterial(); // Stores view-space normals rendered with the override material. this.normalTarget = new THREE.WebGLRenderTarget(width, height, { minFilter: THREE.NearestFilter, magFilter: THREE.NearestFilter, format: THREE.RGBAFormat, type: THREE.HalfFloatType, depthBuffer: true, stencilBuffer: false, }); this.fsQuad = new FullScreenQuad(this.createMaterial()); } createMaterial() { return new THREE.ShaderMaterial({ uniforms: { sceneTexture: { value: null }, depthTexture: { value: null }, normalTexture: { value: null }, resolution: { value: new THREE.Vector2(this.resolution.x, this.resolution.y), }, cameraNear: { value: this.camera.near }, cameraFar: { value: this.camera.far }, outlineColor: { value: new THREE.Color(0x111111) }, depthThreshold: { value: 0.015 }, normalThreshold: { value: 0.18 }, thickness: { value: 1.0 }, }, vertexShader: /* glsl */ ` varying vec2 vUv; void main() { vUv = uv; gl_Position = vec4(position.xy, 0.0, 1.0); } `, fragmentShader: /* glsl */ ` #include <packing> uniform sampler2D sceneTexture; uniform sampler2D depthTexture; uniform sampler2D normalTexture; uniform vec2 resolution; uniform float cameraNear; uniform float cameraFar; uniform vec3 outlineColor; uniform float depthThreshold; uniform float normalThreshold; uniform float thickness; varying vec2 vUv; float linearDepth(vec2 uv) { float depth = texture2D(depthTexture, uv).x; float viewZ = perspectiveDepthToViewZ(depth, cameraNear, cameraFar); return -viewZ; } vec3 normalAt(vec2 uv) { // MeshNormalMaterial stores normals in the 0..1 range. return texture2D(normalTexture, uv).xyz * 2.0 - 1.0; } void main() { vec4 sceneColor = texture2D(sceneTexture, vUv); vec2 texel = thickness / resolution; float centerDepth = linearDepth(vUv); vec3 centerNormal = normalAt(vUv); float depthEdge = 0.0; float normalEdge = 0.0; for (int x = -1; x <= 1; x++) { for (int y = -1; y <= 1; y++) { if (x == 0 && y == 0) continue; vec2 sampleUv = vUv + vec2(float(x), float(y)) * texel; depthEdge = max(depthEdge, abs(centerDepth - linearDepth(sampleUv))); normalEdge = max(normalEdge, length(centerNormal - normalAt(sampleUv))); } } float depthMask = smoothstep( depthThreshold, depthThreshold * 2.0, depthEdge ); float normalMask = smoothstep( normalThreshold, normalThreshold * 2.0, normalEdge ); float outline = max(depthMask, normalMask); gl_FragColor = vec4( mix(sceneColor.rgb, outlineColor, outline), sceneColor.a ); } `, }); } setSize(width, height) { this.resolution.set(width, height); this.normalTarget.setSize(width, height); this.fsQuad.material.uniforms.resolution.value.set(width, height); } render(renderer, writeBuffer, readBuffer) { const previousOverride = this.scene.overrideMaterial; // Prepass: render the entire scene into a normal texture. renderer.setRenderTarget(this.normalTarget); renderer.clear(); this.scene.overrideMaterial = this.normalMaterial; renderer.render(this.scene, this.camera); this.scene.overrideMaterial = previousOverride; const uniforms = this.fsQuad.material.uniforms; uniforms.sceneTexture.value = readBuffer.texture; uniforms.depthTexture.value = readBuffer.depthTexture; uniforms.normalTexture.value = this.normalTarget.texture; renderer.setRenderTarget(this.renderToScreen ? null : writeBuffer); this.fsQuad.render(renderer); } dispose() { this.normalTarget.dispose(); this.normalMaterial.dispose(); this.fsQuad.dispose(); } } // Example setup. The RenderPass must render into a target with a depth texture. const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setSize(window.innerWidth, window.innerHeight); document.body.appendChild(renderer.domElement); const scene = new THREE.Scene(); scene.background = new THREE.Color(0x20242a); const camera = new THREE.PerspectiveCamera( 60, window.innerWidth / window.innerHeight, 0.1, 100 ); camera.position.set(3, 2, 5); camera.lookAt(0, 0, 0); scene.add(new THREE.HemisphereLight(0xffffff, 0x444444, 2)); const mesh = new THREE.Mesh( new THREE.TorusKnotGeometry(1, 0.32, 128, 32), new THREE.MeshStandardMaterial({ color: 0x4da3ff, roughness: 0.35 }) ); scene.add(mesh); const width = window.innerWidth; const height = window.innerHeight; const renderTarget = new THREE.WebGLRenderTarget(width, height, { minFilter: THREE.LinearFilter, magFilter: THREE.LinearFilter, format: THREE.RGBAFormat, depthBuffer: true, stencilBuffer: false, }); renderTarget.depthTexture = new THREE.DepthTexture(width, height); renderTarget.depthTexture.format = THREE.DepthFormat; renderTarget.depthTexture.type = THREE.UnsignedIntType; const composer = new EffectComposer(renderer, renderTarget); composer.addPass(new RenderPass(scene, camera)); const outlinePass = new DepthNormalOutlinePass(scene, camera, width, height); outlinePass.renderToScreen = true; outlinePass.fsQuad.material.uniforms.outlineColor.value.set(0x111111); composer.addPass(outlinePass); function animate() { requestAnimationFrame(animate); mesh.rotation.y += 0.01; composer.render(); } animate(); window.addEventListener("resize", () => { const w = window.innerWidth; const h = window.innerHeight; renderer.setSize(w, h); camera.aspect = w / h; camera.updateProjectionMatrix(); composer.setSize(w, h); outlinePass.setSize(w, h); });References
4- shanzi/sketch-renderingbundle.js
Implements a Three.js sketch-style post-process using WebGLRenderTarget textures for depth/normal and an overrideMaterial prepass (MeshDepthMaterial/MeshNormalMaterial), then a screen-space edge/outline shader consuming those textures; some details rely on older three.js APIs but the core depth-normal outline pipeline matches the query.
- OmarShehata/webgl-outlinesvertex-welder/src/CustomOutlinePass.js
Three.js post-processing outline pass implementation that matches the query’s core pieces: render-to-texture using WebGLRenderTarget, capturing depth from readBuffer.depthTexture, and using an overrideMaterial prepass (surfaceIdOverrideMaterial/normal) for screen-space depth/normal-style edge detection.
- OmarShehata/webgl-outlinesthreejs-outlines-minimal/src/CustomOutlinePass.js
Three.js outline post-process pass very similar to the query: WebGLRenderTarget texture buffers, depthTexture sampling, and overrideMaterial re-render for surface/normal-style data, though it’s a more minimal variant with less configurability/debugging than Result 3.
- OmarShehata/webgl-outlinesthreejs/src/CustomOutlinePass.js
Most complete three.js implementation for depth+normal/surfaceId edge detection outlines: WebGLRenderTarget plus sampling readBuffer.depthTexture and a MeshNormalMaterial/overrideMaterial prepass, with additional handling for normals vs surface IDs and debug visualization in the same pass.
Request
Request payload
{ "query": "three.js WebGLRenderTarget with DepthTexture attachment plus MeshNormalMaterial overrideMaterial prepass for screen-space depth-normal edge detection outline post-process", "language": "javascript", "license_mode": "strict" }- shanzi/sketch-renderingbundle.js
+21:01Code GrepCode navigationthree“function mergeGeometries”
function mergeGeometries
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 143, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L123-L143", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 123 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "function mergeGeometries", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 143, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L123-L143", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 123 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+21:03Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 110, "indexing_status": "indexed", "language": "javascript", "line_count": 110, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "src/geometries/ExtrudeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/ExtrudeGeometry.js#L1-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 910 }Request
Request payload
{ "end_line": 110, "file_path": "src/geometries/ExtrudeGeometry.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 110, "indexing_status": "indexed", "language": "javascript", "line_count": 110, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "src/geometries/ExtrudeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/ExtrudeGeometry.js#L1-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 910 }, "title": null, "content": null }+21:03Code GrepCode navigationthree-mesh-bvh“closestPointToSegment”
closestPointToSegment
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "API.md", "API.md", "CHANGELOG.md", "example/characterMovement.js", "example/objectbvh_characterMovement.js", "src/index.d.ts", "src/math/ExtendedTriangle.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 1017, "file_path": "API.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/API.md#L1005-L1017", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 1005 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 1020, "file_path": "API.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/API.md#L1008-L1020", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 1008 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 499, "file_path": "CHANGELOG.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/CHANGELOG.md#L487-L499", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 487 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 385, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L373-L385", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 373 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 401, "file_path": "example/objectbvh_characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/objectbvh_characterMovement.js#L389-L401", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 389 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 434, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L422-L434", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 422 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 153, "file_path": "src/math/ExtendedTriangle.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/math/ExtendedTriangle.js#L141-L153", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 141 } ], "returned_matches": 7, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 7, "unique_files_matched": 6 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 20, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "pattern": "closestPointToSegment", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "API.md", "API.md", "CHANGELOG.md", "example/characterMovement.js", "example/objectbvh_characterMovement.js", "src/index.d.ts", "src/math/ExtendedTriangle.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 1017, "file_path": "API.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/API.md#L1005-L1017", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 1005 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 1020, "file_path": "API.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/API.md#L1008-L1020", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 1008 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 499, "file_path": "CHANGELOG.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/CHANGELOG.md#L487-L499", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 487 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 385, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L373-L385", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 373 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 401, "file_path": "example/objectbvh_characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/objectbvh_characterMovement.js#L389-L401", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 389 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 434, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L422-L434", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 422 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 153, "file_path": "src/math/ExtendedTriangle.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/math/ExtendedTriangle.js#L141-L153", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 141 } ], "returned_matches": 7, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 7, "unique_files_matched": 6 }, "title": null, "content": null }+21:09Code ReadCode navigationthree-mesh-bvh
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "end_line": 460, "indexing_status": "indexed", "language": "javascript", "line_count": 131, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 460, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L330-L460", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 330 } ], "start_line": 330, "status": "success", "total_lines": 479 }Request
Request payload
{ "end_line": 460, "file_path": "example/characterMovement.js", "package_name": "three-mesh-bvh", "registry": "npm", "start_line": 330, "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 460, "indexing_status": "indexed", "language": "javascript", "line_count": 131, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 460, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L330-L460", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 330 } ], "start_line": 330, "status": "success", "total_lines": 479 }, "title": null, "content": null }+21:10Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 41, "indexing_status": "indexed", "language": "javascript", "line_count": 41, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 41, "file_path": "src/objects/Bone.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Bone.js#L1-L41", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 41 }Request
Request payload
{ "end_line": 150, "file_path": "src/objects/Bone.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 41, "indexing_status": "indexed", "language": "javascript", "line_count": 41, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 41, "file_path": "src/objects/Bone.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Bone.js#L1-L41", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 41 }, "title": null, "content": null }+21:18Code ReadCode navigationthree-mesh-bvh
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "end_line": 27, "indexing_status": "indexed", "language": "javascript", "line_count": 27, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 27, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L1-L27", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 27 }Request
Request payload
{ "end_line": 150, "file_path": "src/index.js", "package_name": "three-mesh-bvh", "registry": "npm", "start_line": 1, "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 27, "indexing_status": "indexed", "language": "javascript", "line_count": 27, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 27, "file_path": "src/index.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.js#L1-L27", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 27 }, "title": null, "content": null }+21:18Code GrepCode navigationthree“DEFAULT_ORDER”
DEFAULT_ORDER
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Euler.js", "src/math/Euler.js", "src/math/Euler.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 39, "file_path": "src/math/Euler.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Euler.js#L27-L39", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 27 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 41, "file_path": "src/math/Euler.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Euler.js#L29-L41", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 29 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 450, "file_path": "src/math/Euler.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Euler.js#L441-L450", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 441 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/math/Euler.js" } ], "pattern": "DEFAULT_ORDER", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Euler.js", "src/math/Euler.js", "src/math/Euler.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 39, "file_path": "src/math/Euler.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Euler.js#L27-L39", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 27 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 41, "file_path": "src/math/Euler.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Euler.js#L29-L41", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 29 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 450, "file_path": "src/math/Euler.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Euler.js#L441-L450", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 441 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }, "title": null, "content": null }+21:19Code GrepCode navigationthree“updateMatrixWorld( force )”
updateMatrixWorld( force )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js", "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1175, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1155-L1175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1155 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1209, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1189-L1209", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1189 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/Object3D.js" } ], "pattern": "updateMatrixWorld( force )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js", "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1175, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1155-L1175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1155 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1209, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1189-L1209", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1189 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+21:19Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 786, "indexing_status": "indexed", "language": "javascript", "line_count": 87, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 786, "file_path": "src/math/Quaternion.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Quaternion.js#L700-L786", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 700 } ], "start_line": 700, "status": "success", "total_lines": 918 }Request
Request payload
{ "end_line": 786, "file_path": "src/math/Quaternion.js", "package_name": "three", "registry": "npm", "start_line": 700, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 786, "indexing_status": "indexed", "language": "javascript", "line_count": 87, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 786, "file_path": "src/math/Quaternion.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Quaternion.js#L700-L786", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 700 } ], "start_line": 700, "status": "success", "total_lines": 918 }, "title": null, "content": null }+21:24Code GrepCode navigationthree-mesh-bvh“export function”
export function
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/utils/ExtensionUtilities.js", "src/utils/ExtensionUtilities.js", "src/utils/ExtensionUtilities.js", "src/utils/ExtensionUtilities.js", "src/utils/ExtensionUtilities.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 40, "file_path": "src/utils/ExtensionUtilities.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/utils/ExtensionUtilities.js#L34-L40", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 34 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 179, "file_path": "src/utils/ExtensionUtilities.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/utils/ExtensionUtilities.js#L173-L179", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 173 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 197, "file_path": "src/utils/ExtensionUtilities.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/utils/ExtensionUtilities.js#L191-L197", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 191 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 219, "file_path": "src/utils/ExtensionUtilities.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/utils/ExtensionUtilities.js#L213-L219", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 213 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 286, "file_path": "src/utils/ExtensionUtilities.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/utils/ExtensionUtilities.js#L280-L286", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 280 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "path_selectors": [ { "kind": "EXACT", "value": "src/utils/ExtensionUtilities.js" } ], "pattern": "export function", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/utils/ExtensionUtilities.js", "src/utils/ExtensionUtilities.js", "src/utils/ExtensionUtilities.js", "src/utils/ExtensionUtilities.js", "src/utils/ExtensionUtilities.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 40, "file_path": "src/utils/ExtensionUtilities.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/utils/ExtensionUtilities.js#L34-L40", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 34 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 179, "file_path": "src/utils/ExtensionUtilities.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/utils/ExtensionUtilities.js#L173-L179", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 173 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 197, "file_path": "src/utils/ExtensionUtilities.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/utils/ExtensionUtilities.js#L191-L197", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 191 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 219, "file_path": "src/utils/ExtensionUtilities.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/utils/ExtensionUtilities.js#L213-L219", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 213 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 286, "file_path": "src/utils/ExtensionUtilities.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/utils/ExtensionUtilities.js#L280-L286", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 280 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }, "title": null, "content": null }+21:27Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 1265, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1265, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1205-L1265", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1205 } ], "start_line": 1205, "status": "success", "total_lines": 1677 }Request
Request payload
{ "end_line": 1265, "file_path": "src/core/Object3D.js", "package_name": "three", "registry": "npm", "start_line": 1205, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 1265, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1265, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1205-L1265", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1205 } ], "start_line": 1205, "status": "success", "total_lines": 1677 }, "title": null, "content": null }+21:28Code GrepCode navigationthree“setPixelRatio”
setPixelRatio
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/postprocessing/EffectComposer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 352, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js#L332-L352", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 332 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "examples/jsm/postprocessing/EffectComposer.js" } ], "pattern": "setPixelRatio", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/postprocessing/EffectComposer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 352, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js#L332-L352", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 332 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+21:30Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 365, "indexing_status": "indexed", "language": "javascript", "line_count": 76, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 365, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js#L290-L365", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 290 } ], "start_line": 290, "status": "success", "total_lines": 365 }Request
Request payload
{ "end_line": 365, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "package_name": "three", "registry": "npm", "start_line": 290, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 365, "indexing_status": "indexed", "language": "javascript", "line_count": 76, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 365, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js#L290-L365", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 290 } ], "start_line": 290, "status": "success", "total_lines": 365 }, "title": null, "content": null }+21:31Code GrepCode navigationthree-mesh-bvh{"errors":[{"code":"GREP_FAILED","message":"Reader memory reservation of 536870912 bytes cannot fit with 1073741824 occupied bytes within the 1073741824-byte budget. Unexpected backend error; retry, and report if it persists."}],"next_cursor_present":false,"status":"error"}
raycastFirst
Result summary
{ "errors": [ { "code": "GREP_FAILED", "message": "Reader memory reservation of 536870912 bytes cannot fit with 1073741824 occupied bytes within the 1073741824-byte budget. Unexpected backend error; retry, and report if it persists." } ], "next_cursor_present": false, "status": "error" }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "path_selectors": [ { "kind": "EXACT", "value": "src/index.d.ts" } ], "pattern": "raycastFirst", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "errors": [ { "code": "GREP_FAILED", "message": "Reader memory reservation of 536870912 bytes cannot fit with 1073741824 occupied bytes within the 1073741824-byte budget. Unexpected backend error; retry, and report if it persists." } ], "next_cursor_present": false, "status": "error" }, "title": null, "content": null }+21:38Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 80, "indexing_status": "indexed", "language": "javascript", "line_count": 53, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 80, "file_path": "src/geometries/TubeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/TubeGeometry.js#L28-L80", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 } ], "start_line": 28, "status": "success", "total_lines": 253 }Request
Request payload
{ "end_line": 80, "file_path": "src/geometries/TubeGeometry.js", "package_name": "three", "registry": "npm", "start_line": 28, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 80, "indexing_status": "indexed", "language": "javascript", "line_count": 53, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 80, "file_path": "src/geometries/TubeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/TubeGeometry.js#L28-L80", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 } ], "start_line": 28, "status": "success", "total_lines": 253 }, "title": null, "content": null }+21:38Code GrepCode navigationthree-mesh-bvh“shapecast(”
shapecast(
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BVH.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 352, "file_path": "src/core/BVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/BVH.js#L332-L352", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 332 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "path_selectors": [ { "kind": "EXACT", "value": "src/core/BVH.js" } ], "pattern": "shapecast(", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BVH.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 352, "file_path": "src/core/BVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/BVH.js#L332-L352", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 332 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+21:40Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 90, "indexing_status": "indexed", "language": "javascript", "line_count": 90, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 90, "file_path": "src/extras/curves/SplineCurve.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/extras/curves/SplineCurve.js#L1-L90", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 145 }Request
Request payload
{ "end_line": 90, "file_path": "src/extras/curves/SplineCurve.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 90, "indexing_status": "indexed", "language": "javascript", "line_count": 90, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 90, "file_path": "src/extras/curves/SplineCurve.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/extras/curves/SplineCurve.js#L1-L90", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 145 }, "title": null, "content": null }+21:41Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 340, "indexing_status": "indexed", "language": "javascript", "line_count": 46, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 340, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L295-L340", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 295 } ], "start_line": 295, "status": "success", "total_lines": 405 }Request
Request payload
{ "end_line": 340, "file_path": "src/core/RenderTarget.js", "package_name": "three", "registry": "npm", "start_line": 295, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 340, "indexing_status": "indexed", "language": "javascript", "line_count": 46, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 340, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L295-L340", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 295 } ], "start_line": 295, "status": "success", "total_lines": 405 }, "title": null, "content": null }+21:44Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 120, "indexing_status": "indexed", "language": "javascript", "line_count": 93, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "examples/jsm/postprocessing/ShaderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/ShaderPass.js#L28-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 } ], "start_line": 28, "status": "success", "total_lines": 135 }Request
Request payload
{ "end_line": 120, "file_path": "examples/jsm/postprocessing/ShaderPass.js", "package_name": "three", "registry": "npm", "start_line": 28, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 120, "indexing_status": "indexed", "language": "javascript", "line_count": 93, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "examples/jsm/postprocessing/ShaderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/ShaderPass.js#L28-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 } ], "start_line": 28, "status": "success", "total_lines": 135 }, "title": null, "content": null }+21:45Code GrepCode navigationthree-mesh-bvh“intersectsTriangle”
intersectsTriangle
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 44, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L28-L44", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 28 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 53, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L37-L53", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 37 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 628, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L612-L628", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 612 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 628, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L612-L628", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 612 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 639, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L623-L639", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 623 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 666, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L650-L666", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 650 } ], "returned_matches": 6, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 6, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "path_selectors": [ { "kind": "EXACT", "value": "src/core/MeshBVH.js" } ], "pattern": "intersectsTriangle", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 44, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L28-L44", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 28 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 53, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L37-L53", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 37 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 628, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L612-L628", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 612 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 628, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L612-L628", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 612 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 639, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L623-L639", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 623 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 666, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L650-L666", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 650 } ], "returned_matches": 6, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 6, "unique_files_matched": 1 }, "title": null, "content": null }+21:46Code GrepCode navigationthree-mesh-bvh“raycastFirst”
raycastFirst
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 24, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L4-L24", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 4 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 24, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L4-L24", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 4 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 31, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L11-L31", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 11 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 31, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L11-L31", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 11 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "path_selectors": [ { "kind": "EXACT", "value": "src/core/MeshBVH.js" } ], "pattern": "raycastFirst", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 24, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L4-L24", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 4 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 24, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L4-L24", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 4 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 31, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L11-L31", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 11 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 31, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L11-L31", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 11 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+21:53Code GrepCode navigationthree-mesh-bvh“raycastFirst( ray”
raycastFirst( ray
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "README.md", "example/sdfGeneration.js", "example/voxelize.js", "src/core/MeshBVH.js", "src/index.d.ts", "test/Utils.geometryUtils.test.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 209, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/README.md#L193-L209", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 193 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 285, "file_path": "example/sdfGeneration.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/sdfGeneration.js#L269-L285", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 269 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 292, "file_path": "example/voxelize.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/voxelize.js#L276-L292", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 276 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 566, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L550-L566", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 550 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 161, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L145-L161", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 145 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 54, "file_path": "test/Utils.geometryUtils.test.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/test/Utils.geometryUtils.test.js#L38-L54", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 38 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 6 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "pattern": "raycastFirst( ray", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "README.md", "example/sdfGeneration.js", "example/voxelize.js", "src/core/MeshBVH.js", "src/index.d.ts", "test/Utils.geometryUtils.test.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 209, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/README.md#L193-L209", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 193 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 285, "file_path": "example/sdfGeneration.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/sdfGeneration.js#L269-L285", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 269 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 292, "file_path": "example/voxelize.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/voxelize.js#L276-L292", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 276 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 566, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L550-L566", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 550 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 161, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L145-L161", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 145 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 54, "file_path": "test/Utils.geometryUtils.test.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/test/Utils.geometryUtils.test.js#L38-L54", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 38 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 6 }, "title": null, "content": null }+21:59Code GrepCode navigationthree“function setupDepthTexture”
function setupDepthTexture
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLTextures.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1765, "file_path": "src/renderers/webgl/WebGLTextures.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLTextures.js#L1745-L1765", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1745 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 2, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLTextures.js" } ], "pattern": "function setupDepthTexture", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLTextures.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1765, "file_path": "src/renderers/webgl/WebGLTextures.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLTextures.js#L1745-L1765", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1745 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+22:02Code GrepCode navigationthree{"errors":[{"code":"GREP_FAILED","message":"Reader memory reservation of 536870912 bytes cannot fit with 1073741824 occupied bytes within the 1073741824-byte budget. Unexpected backend error; retry, and report if it persists."}],"next_cursor_present":false,"status":"error"}
updateProjectionMatrix()
Result summary
{ "errors": [ { "code": "GREP_FAILED", "message": "Reader memory reservation of 536870912 bytes cannot fit with 1073741824 occupied bytes within the 1073741824-byte budget. Unexpected backend error; retry, and report if it persists." } ], "next_cursor_present": false, "status": "error" }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/cameras/PerspectiveCamera.js" } ], "pattern": "updateProjectionMatrix()", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "errors": [ { "code": "GREP_FAILED", "message": "Reader memory reservation of 536870912 bytes cannot fit with 1073741824 occupied bytes within the 1073741824-byte budget. Unexpected backend error; retry, and report if it persists." } ], "next_cursor_present": false, "status": "error" }, "title": null, "content": null }+22:06Code GrepCode navigationthree“getWorldPosition”
getWorldPosition
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1004, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L988-L1004", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 988 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/Object3D.js" } ], "pattern": "getWorldPosition", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1004, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L988-L1004", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 988 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+22:11Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 300, "indexing_status": "indexed", "language": "javascript", "line_count": 71, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 300, "file_path": "src/cameras/PerspectiveCamera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/PerspectiveCamera.js#L230-L300", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 230 } ], "start_line": 230, "status": "success", "total_lines": 407 }Request
Request payload
{ "end_line": 300, "file_path": "src/cameras/PerspectiveCamera.js", "package_name": "three", "registry": "npm", "start_line": 230, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 300, "indexing_status": "indexed", "language": "javascript", "line_count": 71, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 300, "file_path": "src/cameras/PerspectiveCamera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/PerspectiveCamera.js#L230-L300", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 230 } ], "start_line": 230, "status": "success", "total_lines": 407 }, "title": null, "content": null }+22:12Get ExampleGenerated examplethree.js third-person follow camera with terrain/wall collision using raycast, spring smoothing, look-ahead and camera occlusion pull-in
three.js third-person follow camera with terrain/wall collision using raycast, spring smoothing, look-ahead and camera occlusion pull-in · javascript · strict
Three.js Third-Person Follow Camera with Raycast Occlusion
import * as THREE from 'three'; const WORLD_UP = new THREE.Vector3(0, 1, 0); function damp(current, target, smoothing, delta) { const factor = 1 - Math.exp(-smoothing * delta); return current + (target - current) * factor; } class SpringVector3 { constructor(position = new THREE.Vector3(), frequency = 7, damping = 1) { this.position = position.clone(); this.velocity = new THREE.Vector3(); this.frequency = frequency; this.damping = damping; } update(target, delta) { // Semi-implicit spring integration is stable for normal frame times. const maxDelta = 1 / 30; let remaining = Math.min(delta, maxDelta); const step = 1 / 120; while (remaining > 0) { const dt = Math.min(step, remaining); const angularFrequency = this.frequency * Math.PI * 2; const acceleration = target.clone() .sub(this.position) .multiplyScalar(angularFrequency * angularFrequency) .addScaledVector( this.velocity, -2 * this.damping * angularFrequency ); this.velocity.addScaledVector(acceleration, dt); this.position.addScaledVector(this.velocity, dt); remaining -= dt; } return this.position; } } export class ThirdPersonCamera { constructor(camera, options = {}) { this.camera = camera; this.colliders = options.colliders ?? []; this.terrain = options.terrain ?? []; this.distance = options.distance ?? 6; this.height = options.height ?? 2.2; this.lookHeight = options.lookHeight ?? 1.35; this.lookAhead = options.lookAhead ?? 2.5; this.collisionPadding = options.collisionPadding ?? 0.3; this.minimumDistance = options.minimumDistance ?? 1.1; this.terrainPadding = options.terrainPadding ?? 0.25; this.positionSpring = new SpringVector3(undefined, 6, 1); this.currentLook = new THREE.Vector3(); this.initialized = false; this.raycaster = new THREE.Raycaster(); this.raycaster.firstHitOnly = true; this._pivot = new THREE.Vector3(); this._lookTarget = new THREE.Vector3(); this._desiredPosition = new THREE.Vector3(); this._direction = new THREE.Vector3(); this._right = new THREE.Vector3(); this._velocity = new THREE.Vector3(); this._forward = new THREE.Vector3(); this._hitNormal = new THREE.Vector3(); this._upRayOrigin = new THREE.Vector3(); } update(player, delta) { const dt = Math.min(Math.max(delta, 0), 0.1); player.getWorldPosition(this._pivot); this._pivot.y += this.lookHeight; // Prefer actual movement direction, then fall back to the player's facing. this._velocity.set(0, 0, 0); if (player.userData.velocity instanceof THREE.Vector3) { this._velocity.copy(player.userData.velocity); } this._forward.set(0, 0, -1).applyQuaternion(player.quaternion); this._forward.y = 0; if (this._velocity.lengthSq() > 0.01) { this._forward.lerp( this._velocity.clone().setY(0).normalize(), 0.35 ).normalize(); } else if (this._forward.lengthSq() < 0.001) { this._forward.set(0, 0, -1); } else { this._forward.normalize(); } // Look ahead along the travel direction to make turns feel less reactive. const speed = Math.min(this._velocity.length(), 12); this._lookTarget.copy(this._pivot).addScaledVector( this._forward, this.lookAhead * (0.35 + speed / 12) ); const yaw = player.rotation.y; this._direction.set(Math.sin(yaw), 0, Math.cos(yaw)).normalize(); this._desiredPosition.copy(this._pivot) .addScaledVector(this._direction, this.distance) .addScaledVector(WORLD_UP, this.height - this.lookHeight); this._resolveWallOcclusion(this._pivot, this._desiredPosition); this._resolveTerrain(this._desiredPosition); if (!this.initialized) { this.positionSpring.position.copy(this._desiredPosition); this.currentLook.copy(this._lookTarget); this.initialized = true; } else { this.positionSpring.update(this._desiredPosition, dt); this.currentLook.lerp(this._lookTarget, 1 - Math.exp(-8 * dt)); } this.camera.position.copy(this.positionSpring.position); this.camera.lookAt(this.currentLook); } _resolveWallOcclusion(origin, desired) { this._direction.copy(desired).sub(origin); const requestedDistance = this._direction.length(); if (requestedDistance < 0.001) return; this._direction.normalize(); // Cast the center ray plus two shoulder rays so thin walls are less likely // to slip through when the camera is close to an edge. this._right.crossVectors(this._direction, WORLD_UP).normalize(); let nearest = requestedDistance; const offsets = [0, 0.22, -0.22]; for (const offset of offsets) { const rayOrigin = this._pivot.clone().addScaledVector(this._right, offset); this.raycaster.set(rayOrigin, this._direction); this.raycaster.near = 0.05; this.raycaster.far = requestedDistance; const hits = this.raycaster.intersectObjects(this.colliders, true); if (hits.length > 0) { nearest = Math.min(nearest, hits[0].distance - this.collisionPadding); } } const safeDistance = THREE.MathUtils.clamp( nearest, this.minimumDistance, requestedDistance ); desired.copy(origin).addScaledVector(this._direction, safeDistance); } _resolveTerrain(position) { // Keep the camera above hills and uneven ground after wall pull-in. this._upRayOrigin.copy(position).addScaledVector(WORLD_UP, 20); this.raycaster.set(this._upRayOrigin, WORLD_UP.clone().negate()); this.raycaster.near = 0; this.raycaster.far = 40; const hits = this.raycaster.intersectObjects(this.terrain, true); if (hits.length === 0) return; const minimumY = hits[0].point.y + this.terrainPadding; if (position.y < minimumY) position.y = minimumY; } } // Example setup: const camera = new THREE.PerspectiveCamera(60, innerWidth / innerHeight, 0.1, 500); const player = new THREE.Object3D(); player.userData.velocity = new THREE.Vector3(); const walls = [/* meshes used as wall colliders */]; const terrain = [/* terrain meshes */]; const followCamera = new ThirdPersonCamera(camera, { colliders: walls, terrain, distance: 7, height: 2.6, lookHeight: 1.4, lookAhead: 3, collisionPadding: 0.35 }); const clock = new THREE.Clock(); function animate() { requestAnimationFrame(animate); const delta = clock.getDelta(); // Update player.userData.velocity and player transform before the camera. followCamera.update(player, delta); renderer.render(scene, camera); } // `scene` and `renderer` are assumed to be your existing Three.js scene setup. animate();References
2- rahil-algobear/SpeedRacersrc/game/CameraRig.js
Implements a three.js third-person-style camera rig with spring-based smoothing and look-ahead (“Eyes lead the car”); however, the provided match evidence doesn’t clearly demonstrate terrain/wall collision occlusion via raycasting/pull-in.
- craftmygame/little-citylittle-taipei/main.js
Contains a substantial Three.js third-person-style runner with a custom camera/terrain system and procedural ground/obstacle generation, using raycast-adjacent scene collision concepts; however it’s not clearly focused on camera occlusion pull-in, wall collision via Raycaster, or springy smoothing/look-ahead as stated in the query.
Request
Request payload
{ "query": "three.js third-person follow camera with terrain/wall collision using raycast, spring smoothing, look-ahead and camera occlusion pull-in", "language": "javascript", "license_mode": "strict" }- rahil-algobear/SpeedRacersrc/game/CameraRig.js
+22:12Code GrepCode navigationthree-mesh-bvh“closestPointToSegment”
closestPointToSegment
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "API.md", "API.md", "CHANGELOG.md", "example/characterMovement.js", "example/objectbvh_characterMovement.js", "src/index.d.ts", "src/math/ExtendedTriangle.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 1015, "file_path": "API.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/API.md#L1007-L1015", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 1007 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 1018, "file_path": "API.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/API.md#L1010-L1018", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 1010 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 497, "file_path": "CHANGELOG.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/CHANGELOG.md#L489-L497", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 489 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 383, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L375-L383", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 375 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 399, "file_path": "example/objectbvh_characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/objectbvh_characterMovement.js#L391-L399", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 391 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 432, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L424-L432", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 424 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 151, "file_path": "src/math/ExtendedTriangle.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/math/ExtendedTriangle.js#L143-L151", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 143 } ], "returned_matches": 7, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 7, "unique_files_matched": 6 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 20, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "pattern": "closestPointToSegment", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "API.md", "API.md", "CHANGELOG.md", "example/characterMovement.js", "example/objectbvh_characterMovement.js", "src/index.d.ts", "src/math/ExtendedTriangle.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 1015, "file_path": "API.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/API.md#L1007-L1015", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 1007 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 1018, "file_path": "API.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/API.md#L1010-L1018", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 1010 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 497, "file_path": "CHANGELOG.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/CHANGELOG.md#L489-L497", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 489 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 383, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L375-L383", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 375 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 399, "file_path": "example/objectbvh_characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/objectbvh_characterMovement.js#L391-L399", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 391 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 432, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L424-L432", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 424 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 151, "file_path": "src/math/ExtendedTriangle.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/math/ExtendedTriangle.js#L143-L151", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 143 } ], "returned_matches": 7, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 7, "unique_files_matched": 6 }, "title": null, "content": null }+22:13Get ExampleGenerated exampleprocedural stylized low-poly character built from LatheGeometry and ExtrudeGeometry shapes with Bone joint hierarchy three.js
procedural stylized low-poly character built from LatheGeometry and ExtrudeGeometry shapes with Bone joint hierarchy three.js · javascript · strict
Procedural Low-Poly Character with Lathe and Extrude Geometry
import * as THREE from "three"; import { OrbitControls } from "three/addons/controls/OrbitControls.js"; const scene = new THREE.Scene(); scene.background = new THREE.Color(0x202735); const camera = new THREE.PerspectiveCamera(35, innerWidth / innerHeight, 0.1, 100); camera.position.set(5, 3.5, 7); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.setSize(innerWidth, innerHeight); renderer.shadowMap.enabled = true; document.body.appendChild(renderer.domElement); const controls = new OrbitControls(camera, renderer.domElement); controls.target.set(0, 1.8, 0); controls.enableDamping = true; scene.add(new THREE.HemisphereLight(0xbfd8ff, 0x263044, 2.2)); const keyLight = new THREE.DirectionalLight(0xffffff, 3); keyLight.position.set(4, 7, 5); keyLight.castShadow = true; scene.add(keyLight); const materials = { skin: new THREE.MeshStandardMaterial({ color: 0xf0ae82, roughness: 0.9, flatShading: true }), shirt: new THREE.MeshStandardMaterial({ color: 0x3978d4, roughness: 0.85, flatShading: true }), pants: new THREE.MeshStandardMaterial({ color: 0x28334e, roughness: 0.9, flatShading: true }), shoe: new THREE.MeshStandardMaterial({ color: 0x191b24, roughness: 0.75, flatShading: true }), accent: new THREE.MeshStandardMaterial({ color: 0xffc857, roughness: 0.8, flatShading: true }) }; function mesh(geometry, material, name) { const object = new THREE.Mesh(geometry, material); object.name = name; object.castShadow = true; object.receiveShadow = true; return object; } function lathe(points, material, name, segments = 8) { const profile = points.map(([radius, y]) => new THREE.Vector2(radius, y)); return mesh(new THREE.LatheGeometry(profile, segments), material, name); } function extrudedPolygon(points, depth, material, name) { const shape = new THREE.Shape(); shape.moveTo(points[0][0], points[0][1]); for (let i = 1; i < points.length; i++) shape.lineTo(points[i][0], points[i][1]); shape.closePath(); const geometry = new THREE.ExtrudeGeometry(shape, { depth, bevelEnabled: true, bevelSegments: 1, bevelSize: 0.025, bevelThickness: 0.025 }); geometry.center(); return mesh(geometry, material, name); } function limb(length, radius, material, name) { const group = new THREE.Group(); group.name = name; const geometry = new THREE.CylinderGeometry(radius * 0.9, radius, length, 6); const part = mesh(geometry, material, `${name}-segment`); part.position.y = -length / 2; group.add(part); return group; } // Named Bone hierarchy: pelvis -> spine -> chest -> neck -> head, // with arms and legs branching from chest and pelvis. function createSkeleton() { const root = new THREE.Group(); root.name = "character-root"; const pelvis = new THREE.Bone(); pelvis.name = "pelvis"; pelvis.position.y = 1.05; root.add(pelvis); const spine = new THREE.Bone(); spine.name = "spine"; spine.position.y = 0.42; pelvis.add(spine); const chest = new THREE.Bone(); chest.name = "chest"; chest.position.y = 0.42; spine.add(chest); const neck = new THREE.Bone(); neck.name = "neck"; neck.position.y = 0.55; chest.add(neck); const head = new THREE.Bone(); head.name = "head"; head.position.y = 0.22; neck.add(head); for (const side of [-1, 1]) { const label = side < 0 ? "left" : "right"; const shoulder = new THREE.Bone(); shoulder.name = `${label}-shoulder`; shoulder.position.set(side * 0.48, 0.28, 0); chest.add(shoulder); const elbow = new THREE.Bone(); elbow.name = `${label}-elbow`; elbow.position.set(side * 0.48, -0.46, 0); shoulder.add(elbow); const hand = new THREE.Bone(); hand.name = `${label}-hand`; hand.position.set(side * 0.02, -0.42, 0); elbow.add(hand); const hip = new THREE.Bone(); hip.name = `${label}-hip`; hip.position.set(side * 0.22, -0.08, 0); pelvis.add(hip); const knee = new THREE.Bone(); knee.name = `${label}-knee`; knee.position.y = -0.58; hip.add(knee); const ankle = new THREE.Bone(); ankle.name = `${label}-ankle`; ankle.position.y = -0.58; knee.add(ankle); } return { root, bones: { pelvis, spine, chest, neck, head } }; } function buildCharacter() { const { root, bones } = createSkeleton(); const bone = name => root.getObjectByName(name); // Low-poly torso built by rotating a 2D profile around the Y axis. bones.spine.add(lathe([ [0.42, -0.45], [0.56, -0.3], [0.62, 0.22], [0.48, 0.52], [0.3, 0.62] ], materials.shirt, "lathed-torso", 8)); bones.head.add(lathe([ [0.18, -0.27], [0.34, -0.16], [0.4, 0.08], [0.31, 0.37], [0.12, 0.43] ], materials.skin, "lathed-head", 8)); const nose = extrudedPolygon([ [-0.08, 0], [0.13, 0.04], [0.08, -0.08], [-0.08, -0.06] ], 0.12, materials.skin, "extruded-nose"); nose.position.set(0, 0.08, 0.37); bones.head.add(nose); const badge = extrudedPolygon([ [-0.18, -0.18], [0.18, -0.18], [0.18, 0.18], [-0.18, 0.18] ], 0.035, materials.accent, "extruded-badge"); badge.position.set(0, 0.08, 0.59); bones.spine.add(badge); for (const side of [-1, 1]) { const label = side < 0 ? "left" : "right"; const shoulder = bone(`${label}-shoulder`); const elbow = bone(`${label}-elbow`); const hand = bone(`${label}-hand`); const hip = bone(`${label}-hip`); const knee = bone(`${label}-knee`); const ankle = bone(`${label}-ankle`); shoulder.add(limb(0.48, 0.13, materials.shirt, `${label}-upper-arm`)); elbow.add(limb(0.42, 0.105, materials.skin, `${label}-forearm`)); hand.add(lathe([[0.1, -0.12], [0.13, 0], [0.1, 0.13]], materials.skin, `${label}-hand-mesh`, 6)); hip.add(limb(0.58, 0.19, materials.pants, `${label}-thigh`)); knee.add(limb(0.55, 0.14, materials.skin, `${label}-shin`)); const shoe = extrudedPolygon([ [-0.2, -0.12], [0.25, -0.12], [0.3, 0.02], [0.12, 0.16], [-0.2, 0.12] ], 0.24, materials.shoe, `${label}-shoe`); shoe.rotation.x = Math.PI / 2; shoe.position.set(side * 0.05, -0.08, 0.1); ankle.add(shoe); } // SkeletonHelper makes the joint hierarchy visible while developing. root.add(new THREE.SkeletonHelper(root)); return root; } const character = buildCharacter(); character.position.y = 0.15; scene.add(character); const floor = new THREE.Mesh( new THREE.CircleGeometry(8, 32), new THREE.MeshStandardMaterial({ color: 0x30394d, roughness: 1 }) ); floor.rotation.x = -Math.PI / 2; floor.receiveShadow = true; scene.add(floor); const clock = new THREE.Clock(); function animate() { requestAnimationFrame(animate); const t = clock.getElapsedTime(); const leftShoulder = character.getObjectByName("left-shoulder"); const rightShoulder = character.getObjectByName("right-shoulder"); const leftHip = character.getObjectByName("left-hip"); const rightHip = character.getObjectByName("right-hip"); const chest = character.getObjectByName("chest"); // Simple procedural walk cycle driven directly by the named bones. leftShoulder.rotation.z = Math.sin(t * 5) * 0.35; rightShoulder.rotation.z = -Math.sin(t * 5) * 0.35; leftHip.rotation.z = -Math.sin(t * 5) * 0.25; rightHip.rotation.z = Math.sin(t * 5) * 0.25; chest.rotation.y = Math.sin(t * 2.5) * 0.06; controls.update(); renderer.render(scene, camera); } animate(); addEventListener("resize", () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); });References
3- tengge1/ShadowEditorweb/assets/js/tern-threejs/threejs.js
Matches three.js geometry APIs (ExtrudeGeometry, LatheGeometry) and references “character” in a JavaScript codebase, but it appears to be a tern/three.js type definition bundle rather than a concrete procedural low-poly rigged character with a bone hierarchy.
- alixpham/alixpham.github.ioflagster/js/player3d.js
Implements a procedural, named bone hierarchy and animation system using Three.js AnimationMixer with quaternion keyframe tracks for rigged character motion; close match to three.js bone joint hierarchy aspect, though it doesn’t specifically show LatheGeometry/ExtrudeGeometry low-poly construction.
- Hash-7777/HashCortXsrc/modes/forge/mode.js
Contains concrete three.js procedural geometry generation using LatheGeometry and ExtrudeGeometry plus a larger scene/mesh pipeline, but it does not address a bone/joint hierarchy for a procedural low-poly character as requested—so it’s only a partial match to the geometry portion.
Request
Request payload
{ "query": "procedural stylized low-poly character built from LatheGeometry and ExtrudeGeometry shapes with Bone joint hierarchy three.js", "language": "javascript", "license_mode": "strict" }- tengge1/ShadowEditorweb/assets/js/tern-threejs/threejs.js
+22:17Code GrepCode navigationthree“closestPointToPoint”
closestPointToPoint
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Line3.js", "src/math/Line3.js", "src/math/Line3.js", "src/math/Ray.js", "src/math/Triangle.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 145, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L133-L145", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 133 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 176, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L164-L176", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 164 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 178, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L166-L178", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 166 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 129, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L117-L129", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 117 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 450, "file_path": "src/math/Triangle.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Triangle.js#L438-L450", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 438 } ], "returned_matches": 5, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 5, "unique_files_matched": 3 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 14, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/math/" } ], "pattern": "closestPointToPoint", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Line3.js", "src/math/Line3.js", "src/math/Line3.js", "src/math/Ray.js", "src/math/Triangle.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 145, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L133-L145", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 133 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 176, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L164-L176", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 164 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 178, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L166-L178", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 166 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 129, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L117-L129", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 117 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 450, "file_path": "src/math/Triangle.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Triangle.js#L438-L450", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 438 } ], "returned_matches": 5, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 5, "unique_files_matched": 3 }, "title": null, "content": null }+22:28Code ReadCode navigationthree-mesh-bvh
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "end_line": 240, "indexing_status": "indexed", "language": "javascript", "line_count": 101, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 240, "file_path": "src/math/ExtendedTriangle.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/math/ExtendedTriangle.js#L140-L240", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 140 } ], "start_line": 140, "status": "success", "total_lines": 868 }Request
Request payload
{ "end_line": 240, "file_path": "src/math/ExtendedTriangle.js", "package_name": "three-mesh-bvh", "registry": "npm", "start_line": 140, "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 240, "indexing_status": "indexed", "language": "javascript", "line_count": 101, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 240, "file_path": "src/math/ExtendedTriangle.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/math/ExtendedTriangle.js#L140-L240", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 140 } ], "start_line": 140, "status": "success", "total_lines": 868 }, "title": null, "content": null }+22:28Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 240, "indexing_status": "indexed", "language": "javascript", "line_count": 91, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 240, "file_path": "src/math/Sphere.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Sphere.js#L150-L240", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 150 } ], "start_line": 150, "status": "success", "total_lines": 420 }Request
Request payload
{ "end_line": 240, "file_path": "src/math/Sphere.js", "package_name": "three", "registry": "npm", "start_line": 150, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 240, "indexing_status": "indexed", "language": "javascript", "line_count": 91, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 240, "file_path": "src/math/Sphere.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Sphere.js#L150-L240", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 150 } ], "start_line": 150, "status": "success", "total_lines": 420 }, "title": null, "content": null }+22:39Code GrepCode navigationthree“^\t(intersectSphere|intersectsSphere|intersectsBox|distanceSqToPoint|set|delta|distanceSq|at)\(”
^\t(intersectSphere|intersectsSphere|intersectsBox|distanceSqToPoint|set|delta|distanceSq|at)\(
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Box3.js", "src/math/Box3.js", "src/math/Box3.js", "src/math/Line3.js", "src/math/Line3.js", "src/math/Line3.js", "src/math/Line3.js", "src/math/Ray.js", "src/math/Ray.js", "src/math/Ray.js", "src/math/Ray.js", "src/math/Ray.js", "src/math/Ray.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 52, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L46-L52", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 46 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 445, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L439-L445", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 439 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 460, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L454-L460", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 454 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 52, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L46-L52", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 46 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 94, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L88-L94", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 88 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 105, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L99-L105", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 99 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 129, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L123-L129", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 123 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 54, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L48-L54", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 48 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 85, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L79-L85", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 79 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 160, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L154-L160", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 154 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 314, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L308-L314", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 308 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 350, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L344-L350", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 344 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 526, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L520-L526", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 520 } ], "returned_matches": 13, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 13, "unique_files_matched": 3 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 30, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/math/Ray.js" }, { "kind": "GLOB", "value": "src/math/Line3.js" }, { "kind": "GLOB", "value": "src/math/Box3.js" } ], "pattern": "^\\t(intersectSphere|intersectsSphere|intersectsBox|distanceSqToPoint|set|delta|distanceSq|at)\\(", "pattern_type": "REGEX", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Box3.js", "src/math/Box3.js", "src/math/Box3.js", "src/math/Line3.js", "src/math/Line3.js", "src/math/Line3.js", "src/math/Line3.js", "src/math/Ray.js", "src/math/Ray.js", "src/math/Ray.js", "src/math/Ray.js", "src/math/Ray.js", "src/math/Ray.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 52, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L46-L52", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 46 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 445, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L439-L445", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 439 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 460, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L454-L460", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 454 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 52, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L46-L52", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 46 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 94, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L88-L94", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 88 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 105, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L99-L105", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 99 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 129, "file_path": "src/math/Line3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Line3.js#L123-L129", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 123 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 54, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L48-L54", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 48 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 85, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L79-L85", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 79 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 160, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L154-L160", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 154 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 314, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L308-L314", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 308 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 350, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L344-L350", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 344 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 526, "file_path": "src/math/Ray.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Ray.js#L520-L526", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 520 } ], "returned_matches": 13, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 13, "unique_files_matched": 3 }, "title": null, "content": null }+22:47Code GrepCode navigationthree-mesh-bvh“raycastFirst(”
raycastFirst(
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "API.md", "README.md", "example/sdfGeneration.js", "example/src/computeSelectedTriangles.js", "example/voxelize.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/cast/raycastFirst.template.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 512, "file_path": "API.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/API.md#L504-L512", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 504 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 205, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/README.md#L197-L205", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 197 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 281, "file_path": "example/sdfGeneration.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/sdfGeneration.js#L273-L281", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 273 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 168, "file_path": "example/src/computeSelectedTriangles.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/src/computeSelectedTriangles.js#L160-L168", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 160 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 288, "file_path": "example/voxelize.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/voxelize.js#L280-L288", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 280 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 472, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L464-L472", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 464 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 562, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L554-L562", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 554 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 16, "file_path": "src/core/cast/raycastFirst.template.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/cast/raycastFirst.template.js#L8-L16", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 8 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 7 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 8, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "pattern": "raycastFirst(", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "API.md", "README.md", "example/sdfGeneration.js", "example/src/computeSelectedTriangles.js", "example/voxelize.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js", "src/core/cast/raycastFirst.template.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 512, "file_path": "API.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/API.md#L504-L512", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 504 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 205, "file_path": "README.md", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/README.md#L197-L205", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 197 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 281, "file_path": "example/sdfGeneration.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/sdfGeneration.js#L273-L281", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 273 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 168, "file_path": "example/src/computeSelectedTriangles.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/src/computeSelectedTriangles.js#L160-L168", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 160 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 288, "file_path": "example/voxelize.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/voxelize.js#L280-L288", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 280 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 472, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L464-L472", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 464 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 562, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L554-L562", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 554 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 16, "file_path": "src/core/cast/raycastFirst.template.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/cast/raycastFirst.template.js#L8-L16", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 8 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 7 }, "title": null, "content": null }+23:01Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 60, "indexing_status": "indexed", "language": "javascript", "line_count": 60, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60, "file_path": "src/renderers/shaders/ShaderLib/meshbasic.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshbasic.glsl.js#L1-L60", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 116 }Request
Request payload
{ "end_line": 60, "file_path": "src/renderers/shaders/ShaderLib/meshbasic.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 60, "indexing_status": "indexed", "language": "javascript", "line_count": 60, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60, "file_path": "src/renderers/shaders/ShaderLib/meshbasic.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshbasic.glsl.js#L1-L60", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 116 }, "title": null, "content": null }+23:03Code GrepCode navigationthree“geometryAttribute = geometry.attributes”
geometryAttribute = geometry.attributes
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLBindingStates.js" } ], "pattern": "geometryAttribute = geometry.attributes", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+23:06Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 390, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 390, "file_path": "src/cameras/PerspectiveCamera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/PerspectiveCamera.js#L330-L390", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 330 } ], "start_line": 330, "status": "success", "total_lines": 407 }Request
Request payload
{ "end_line": 390, "file_path": "src/cameras/PerspectiveCamera.js", "package_name": "three", "registry": "npm", "start_line": 330, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 390, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 390, "file_path": "src/cameras/PerspectiveCamera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/PerspectiveCamera.js#L330-L390", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 330 } ], "start_line": 330, "status": "success", "total_lines": 407 }, "title": null, "content": null }+23:16Get ExampleGenerated exampleaction game melee combat hitbox hurtbox system with frame data active frames startup recovery and combo cancel windows
action game melee combat hitbox hurtbox system with frame data active frames startup recovery and combo cancel windows · javascript · strict
JavaScript Melee Combat System with Frame Data and Combo Cancels
// Runnable with: node melee.js const MOVES = { jab: { startup: 5, active: 3, recovery: 10, damage: 7, hitbox: { x: 28, y: -42, width: 34, height: 20 }, cancel: { from: 6, to: 12, into: ['jab', 'heavy'] } }, heavy: { startup: 12, active: 4, recovery: 22, damage: 18, hitbox: { x: 34, y: -38, width: 48, height: 28 }, cancel: { from: 14, to: 18, into: ['jab'] } } }; const overlap = (a, b) => a.x < b.x + b.width && a.x + a.width > b.x && a.y < b.y + b.height && a.y + a.height > b.y; class Fighter { constructor(name, x) { this.name = name; this.x = x; this.y = 0; this.width = 28; this.height = 70; this.hp = 100; this.facing = 1; this.current = null; this.frame = 0; this.alreadyHit = new Set(); } hurtbox() { return { x: this.x - this.width / 2, y: this.y - this.height, width: this.width, height: this.height }; } attackHitbox() { if (!this.current) return null; const box = this.current.data.hitbox; return { x: this.x + (this.facing === 1 ? box.x : -box.x - box.width), y: this.y + box.y, width: box.width, height: box.height }; } phase() { if (!this.current) return 'idle'; const { startup, active } = this.current.data; if (this.frame <= startup) return 'startup'; if (this.frame <= startup + active) return 'active'; return 'recovery'; } canCancelInto(moveName) { if (!this.current) return true; const cancel = this.current.data.cancel; return Boolean( cancel && this.frame >= cancel.from && this.frame <= cancel.to && cancel.into.includes(moveName) ); } startMove(moveName) { const data = MOVES[moveName]; if (!data) throw new Error(`Unknown move: ${moveName}`); if (!this.canCancelInto(moveName)) return false; this.current = { name: moveName, data }; this.frame = 1; this.alreadyHit.clear(); return true; } tick(opponent) { if (!this.current) return null; const event = { attacker: this.name, defender: opponent.name, move: this.current.name, frame: this.frame, phase: this.phase(), hit: false, damage: 0 }; if (this.phase() === 'active' && !this.alreadyHit.has(opponent)) { const hitbox = this.attackHitbox(); if (overlap(hitbox, opponent.hurtbox())) { opponent.hp = Math.max(0, opponent.hp - this.current.data.damage); this.alreadyHit.add(opponent); event.hit = true; event.damage = this.current.data.damage; } } const total = this.current.data.startup + this.current.data.active + this.current.data.recovery; this.frame += 1; if (this.frame > total) { this.current = null; this.frame = 0; } return event; } } class MeleeWorld { constructor() { this.frame = 0; this.events = []; this.fighters = []; } add(fighter) { this.fighters.push(fighter); return fighter; } tick() { this.frame += 1; const [a, b] = this.fighters; for (const event of [a.tick(b), b.tick(a)]) { if (event) this.events.push({ worldFrame: this.frame, ...event }); } } } // Example: jab connects, then is canceled into heavy during jab recovery. const world = new MeleeWorld(); const player = world.add(new Fighter('Player', 100)); const dummy = world.add(new Fighter('Dummy', 150)); player.startMove('jab'); for (let i = 0; i < 7; i++) { world.tick(); const last = world.events.at(-1); if (last?.hit) console.log('Hit confirmed:', last); } // Jab frame 7 is inside its cancel window (frames 6–12). console.log('Canceled:', player.startMove('heavy')); for (let i = 0; i < 40; i++) { world.tick(); const last = world.events.at(-1); if (last?.hit) console.log('Hit confirmed:', last); } console.log({ frame: world.frame, playerHp: player.hp, dummyHp: dummy.hp, remainingEvents: world.events.length });References
1- WilsonNet/vento-aureoTraining Room: a scriptable practice dummy, with a React menu and an agent API
Repo issue content is about a scriptable training dummy (hitbox/hurtbox mention) and includes frame-by-frame scripted interactions, which is adjacent to melee combat hitbox/hurtbox + frame data needs, but it’s an online training-system design rather than a concrete hitbox/hurtbox frame-data implementation or combo-cancel window spec; still useful as contextual guidance.
Request
Request payload
{ "query": "action game melee combat hitbox hurtbox system with frame data active frames startup recovery and combo cancel windows", "language": "javascript", "license_mode": "strict" }- WilsonNet/vento-aureoTraining Room: a scriptable practice dummy, with a React menu and an agent API
+23:26Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 20, "indexing_status": "indexed", "language": "javascript", "line_count": 20, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 20, "file_path": "src/renderers/shaders/ShaderChunk/skinnormal_vertex.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/skinnormal_vertex.glsl.js#L1-L20", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 20 }Request
Request payload
{ "end_line": 150, "file_path": "src/renderers/shaders/ShaderChunk/skinnormal_vertex.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 20, "indexing_status": "indexed", "language": "javascript", "line_count": 20, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 20, "file_path": "src/renderers/shaders/ShaderChunk/skinnormal_vertex.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/skinnormal_vertex.glsl.js#L1-L20", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 20 }, "title": null, "content": null }+23:29Code GrepCode navigationthree“geometry.attributes[ name ]”
geometry.attributes[ name ]
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLBindingStates.js" } ], "pattern": "geometry.attributes[ name ]", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+23:42Code GrepCode navigationthree“programAttributes”
programAttributes
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLBindingStates.js", "src/renderers/webgl/WebGLBindingStates.js", "src/renderers/webgl/WebGLBindingStates.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 165, "file_path": "src/renderers/webgl/WebGLBindingStates.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLBindingStates.js#L147-L165", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 147 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 167, "file_path": "src/renderers/webgl/WebGLBindingStates.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLBindingStates.js#L149-L167", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 149 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 169, "file_path": "src/renderers/webgl/WebGLBindingStates.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLBindingStates.js#L151-L169", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 151 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 9, "context_lines_before": 9, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLBindingStates.js" } ], "pattern": "programAttributes", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLBindingStates.js", "src/renderers/webgl/WebGLBindingStates.js", "src/renderers/webgl/WebGLBindingStates.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 165, "file_path": "src/renderers/webgl/WebGLBindingStates.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLBindingStates.js#L147-L165", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 147 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 167, "file_path": "src/renderers/webgl/WebGLBindingStates.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLBindingStates.js#L149-L167", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 149 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 169, "file_path": "src/renderers/webgl/WebGLBindingStates.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLBindingStates.js#L151-L169", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 151 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }, "title": null, "content": null }+24:06Code GrepCode navigationthree“constructor( points =”
constructor( points =
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/extras/curves/CatmullRomCurve3.js", "src/geometries/LatheGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 126, "file_path": "src/extras/curves/CatmullRomCurve3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/extras/curves/CatmullRomCurve3.js#L114-L126", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 114 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 42, "file_path": "src/geometries/LatheGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/LatheGeometry.js#L30-L42", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 30 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/geometries/LatheGeometry.js" }, { "kind": "GLOB", "value": "src/extras/curves/CatmullRomCurve3.js" } ], "pattern": "constructor( points = ", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/extras/curves/CatmullRomCurve3.js", "src/geometries/LatheGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 126, "file_path": "src/extras/curves/CatmullRomCurve3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/extras/curves/CatmullRomCurve3.js#L114-L126", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 114 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 42, "file_path": "src/geometries/LatheGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/LatheGeometry.js#L30-L42", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 30 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }, "title": null, "content": null }+24:29Code GrepCode navigationthree“setRenderTarget( renderTarget, activeCubeFace”
setRenderTarget( renderTarget, activeCubeFace
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "setRenderTarget( renderTarget, activeCubeFace", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+24:30Code GrepCode navigationthree“constructor( left, right, top, bottom, near”
constructor( left, right, top, bottom, near
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/cameras/OrthographicCamera.js" } ], "pattern": "constructor( left, right, top, bottom, near", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+24:32Get ExampleGenerated exampletwo-bone analytic IK solver law of cosines leg foot placement three.js compute upper and lower joint rotations toward target
two-bone analytic IK solver law of cosines leg foot placement three.js compute upper and lower joint rotations toward target · javascript · strict
Three.js Two-Bone Analytic Leg IK
import * as THREE from "three"; const _hip = new THREE.Vector3(); const _knee = new THREE.Vector3(); const _ankle = new THREE.Vector3(); const _target = new THREE.Vector3(); const _pole = new THREE.Vector3(); const _axis = new THREE.Vector3(); const _poleDirection = new THREE.Vector3(); const _direction = new THREE.Vector3(); const _currentDirection = new THREE.Vector3(); const _delta = new THREE.Quaternion(); const _parentInverse = new THREE.Quaternion(); const _parentWorldRotation = new THREE.Quaternion(); const _worldRotation = new THREE.Quaternion(); function setWorldRotation(object, worldRotation) { if (object.parent) { object.parent.getWorldQuaternion(_parentWorldRotation); _parentInverse.copy(_parentWorldRotation).invert(); object.quaternion.copy(_parentInverse).multiply(worldRotation); } else { object.quaternion.copy(worldRotation); } } function rotateBoneToward(bone, desiredChildPosition) { bone.getWorldPosition(_hip); _currentDirection.subVectors(desiredChildPosition, _hip).normalize(); bone.getWorldQuaternion(_worldRotation); _direction.set(0, 1, 0).applyQuaternion(_worldRotation).normalize(); // Apply the shortest world-space rotation, preserving the bone's roll. _delta.setFromUnitVectors(_direction, _currentDirection); setWorldRotation(bone, _delta.multiply(_worldRotation)); } /** * Analytic two-bone IK using the law of cosines. * * @param {THREE.Bone} upperBone Hip-to-knee bone. * @param {THREE.Bone} lowerBone Knee-to-ankle bone. * @param {THREE.Object3D} target Target foot/ankle position. * @param {THREE.Object3D} pole Pole target controlling the knee direction. * @returns {{reachable: boolean, knee: THREE.Vector3, ankle: THREE.Vector3}} */ export function solveTwoBoneIK(upperBone, lowerBone, target, pole) { upperBone.getWorldPosition(_hip); lowerBone.getWorldPosition(_knee); lowerBone.children[0]?.getWorldPosition(_ankle); target.getWorldPosition(_target); pole.getWorldPosition(_pole); const upperLength = _hip.distanceTo(_knee); const lowerLength = lowerBone.children[0] ? _knee.distanceTo(_ankle) : lowerBone.length ?? 1; if (upperLength <= 1e-6 || lowerLength <= 1e-6) { throw new Error("IK bones must have non-zero lengths"); } _axis.subVectors(_target, _hip); const requestedDistance = _axis.length(); const minReach = Math.abs(upperLength - lowerLength); const maxReach = upperLength + lowerLength; const distance = THREE.MathUtils.clamp(requestedDistance, minReach, maxReach); const reachable = requestedDistance >= minReach && requestedDistance <= maxReach; if (requestedDistance <= 1e-6) { _axis.set(0, -1, 0); } else { _axis.normalize(); } // Place the effective target on the reachable sphere. const effectiveTarget = _target.clone(); if (!reachable || requestedDistance !== distance) { effectiveTarget.copy(_hip).addScaledVector(_axis, distance); } // Law of cosines: distance from hip to the knee projection. const kneeAlongAxis = ( upperLength ** 2 - lowerLength ** 2 + distance ** 2 ) / (2 * distance); const kneeHeight = Math.sqrt( Math.max(0, upperLength ** 2 - kneeAlongAxis ** 2) ); // Project the pole direction onto the plane perpendicular to hip->target. _poleDirection.subVectors(_pole, _hip); _poleDirection.addScaledVector( _axis, -_poleDirection.dot(_axis) ); if (_poleDirection.lengthSq() < 1e-10) { _poleDirection.set(0, 1, 0); _poleDirection.addScaledVector(_axis, -_poleDirection.dot(_axis)); } _poleDirection.normalize(); _knee.copy(_hip) .addScaledVector(_axis, kneeAlongAxis) .addScaledVector(_poleDirection, kneeHeight); // Solve the upper bone, update matrices, then solve the lower bone. rotateBoneToward(upperBone, _knee); upperBone.updateMatrixWorld(true); rotateBoneToward(lowerBone, effectiveTarget); lowerBone.updateMatrixWorld(true); return { reachable, knee: _knee.clone(), ankle: effectiveTarget.clone(), }; } // Example usage: const result = solveTwoBoneIK( skeleton.getBoneByName("thigh_l"), skeleton.getBoneByName("calf_l"), footTargetObject, kneePoleObject, ); if (!result.reachable) { console.warn("The requested foot position is outside the leg's reach."); }References
2- AHEKOT/ComfyUI_VNCCS_Utilsweb/vnccs_pose_studio_core.js
Contains a JavaScript analytic 2-bone IK solver using the law of cosines for knee/leg chains, computing upper/mid joint bend angles and direction/bend orientation toward a target and pole; clearly aligns with three.js two-bone analytic IK leg foot placement and joint rotation computation.
- gfxfundamentals/threejsfundamentalsthreejs/resources/threejs/r102/js/animation/CCDIKSolver.js
Three.js CCD IK solver implementation (THREE.CCDIKSolver) with target/effector/links and rotation updates toward IK target; closely matches IK-in-three.js but it’s CCD iterative, not analytic two-bone law-of-cosines leg IK.
Request
Request payload
{ "query": "two-bone analytic IK solver law of cosines leg foot placement three.js compute upper and lower joint rotations toward target", "language": "javascript", "license_mode": "strict" }- AHEKOT/ComfyUI_VNCCS_Utilsweb/vnccs_pose_studio_core.js
+24:36Code GrepCode navigationthree“this.setRenderTarget = function”
this.setRenderTarget = function
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.module.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 78870, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L78854-L78870", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 78854 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 18892, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L18876-L18892", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 18876 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2898, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2882-L2898", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2882 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 3 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "this.setRenderTarget = function", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.module.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 78870, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L78854-L78870", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 78854 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 18892, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L18876-L18892", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 18876 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2898, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2882-L2898", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2882 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 3 }, "title": null, "content": null }+24:37Code GrepCode navigationthree“class OrthographicCamera extends Camera”
class OrthographicCamera extends Camera
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.core.js", "src/cameras/OrthographicCamera.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 47062, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L47042-L47062", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 47042 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 47082, "file_path": "build/three.core.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.core.js#L47062-L47082", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 47062 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 27, "file_path": "src/cameras/OrthographicCamera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/OrthographicCamera.js#L7-L27", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 7 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 3 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "class OrthographicCamera extends Camera", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.core.js", "src/cameras/OrthographicCamera.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 47062, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L47042-L47062", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 47042 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 47082, "file_path": "build/three.core.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.core.js#L47062-L47082", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 47062 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 27, "file_path": "src/cameras/OrthographicCamera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/OrthographicCamera.js#L7-L27", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 7 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 3 }, "title": null, "content": null }+24:42Code GrepCode navigationthree“camera.layers.test( object.layers )”
camera.layers.test( object.layers )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/**/*.js" } ], "pattern": "camera.layers.test( object.layers )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+24:43Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 120, "indexing_status": "indexed", "language": "javascript", "line_count": 120, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "src/core/Layers.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Layers.js#L1-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 121 }Request
Request payload
{ "end_line": 120, "file_path": "src/core/Layers.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 120, "indexing_status": "indexed", "language": "javascript", "line_count": 120, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "src/core/Layers.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Layers.js#L1-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 121 }, "title": null, "content": null }+24:49Code GrepCode navigationthree“_currentRenderList.push( object, geometry, material, groupOrder”
_currentRenderList.push( object, geometry, material, groupOrder
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "_currentRenderList.push( object, geometry, material, groupOrder", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+24:50Code GrepCode navigationthree“setAttribute( name, attribute )”
setAttribute( name, attribute )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 303, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L283-L303", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 283 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/core/BufferGeometry.js" } ], "pattern": "setAttribute( name, attribute )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 303, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L283-L303", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 283 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+24:53Code GrepCode navigationthree“setIndex( index ) {”
setIndex( index ) {
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 240, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L220-L240", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 220 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/core/BufferGeometry.js" } ], "pattern": "setIndex( index ) {", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 240, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L220-L240", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 220 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+24:54Code GrepCode navigationthree“object.layers.test”
object.layers.test
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1397, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1389-L1397", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1389 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1415, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1407-L1415", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1407 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1839, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1831-L1839", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1831 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2064, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2056-L2064", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2056 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2118, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2110-L2118", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2110 } ], "returned_matches": 5, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 5, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "object.layers.test", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1397, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1389-L1397", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1389 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1415, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1407-L1415", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1407 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1839, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1831-L1839", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1831 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2064, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2056-L2064", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2056 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2118, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2110-L2118", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2110 } ], "returned_matches": 5, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 5, "unique_files_matched": 1 }, "title": null, "content": null }+25:02Code GrepCode navigationthree“constructor(”
constructor(
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/geometries/ExtrudeGeometry.js", "src/geometries/TubeGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 43, "file_path": "src/geometries/ExtrudeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/ExtrudeGeometry.js#L37-L43", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 48, "file_path": "src/geometries/TubeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/TubeGeometry.js#L42-L48", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 42 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 8, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/geometries/ExtrudeGeometry.js" }, { "kind": "GLOB", "value": "src/geometries/TubeGeometry.js" } ], "pattern": "constructor(", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/geometries/ExtrudeGeometry.js", "src/geometries/TubeGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 43, "file_path": "src/geometries/ExtrudeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/ExtrudeGeometry.js#L37-L43", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 48, "file_path": "src/geometries/TubeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/TubeGeometry.js#L42-L48", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 42 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }, "title": null, "content": null }+25:02Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 1925, "indexing_status": "indexed", "language": "javascript", "line_count": 95, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1925, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1831-L1925", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1831 } ], "start_line": 1831, "status": "success", "total_lines": 3703 }Request
Request payload
{ "end_line": 1925, "file_path": "src/renderers/WebGLRenderer.js", "package_name": "three", "registry": "npm", "start_line": 1831, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 1925, "indexing_status": "indexed", "language": "javascript", "line_count": 95, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1925, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1831-L1925", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1831 } ], "start_line": 1831, "status": "success", "total_lines": 3703 }, "title": null, "content": null }+25:02Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 2125, "indexing_status": "indexed", "language": "javascript", "line_count": 41, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2125, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2085-L2125", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2085 } ], "start_line": 2085, "status": "success", "total_lines": 3703 }Request
Request payload
{ "end_line": 2125, "file_path": "src/renderers/WebGLRenderer.js", "package_name": "three", "registry": "npm", "start_line": 2085, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 2125, "indexing_status": "indexed", "language": "javascript", "line_count": 41, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2125, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2085-L2125", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2085 } ], "start_line": 2085, "status": "success", "total_lines": 3703 }, "title": null, "content": null }+25:03Code GrepCode navigationthree“setFromUnitVectors”
setFromUnitVectors
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Quaternion.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 475, "file_path": "src/math/Quaternion.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Quaternion.js#L467-L475", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 467 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/math/Quaternion.js" } ], "pattern": "setFromUnitVectors", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Quaternion.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 475, "file_path": "src/math/Quaternion.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Quaternion.js#L467-L475", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 467 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+25:08Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 40, "indexing_status": "indexed", "language": "javascript", "line_count": 40, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 40, "file_path": "src/geometries/ExtrudeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/ExtrudeGeometry.js#L1-L40", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 910 }Request
Request payload
{ "end_line": 40, "file_path": "src/geometries/ExtrudeGeometry.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 40, "indexing_status": "indexed", "language": "javascript", "line_count": 40, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 40, "file_path": "src/geometries/ExtrudeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/ExtrudeGeometry.js#L1-L40", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 910 }, "title": null, "content": null }+25:11Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 830, "indexing_status": "indexed", "language": "javascript", "line_count": 41, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 830, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L790-L830", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 790 } ], "start_line": 790, "status": "success", "total_lines": 1032 }Request
Request payload
{ "end_line": 830, "file_path": "src/renderers/webgl/WebGLProgram.js", "package_name": "three", "registry": "npm", "start_line": 790, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 830, "indexing_status": "indexed", "language": "javascript", "line_count": 41, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 830, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L790-L830", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 790 } ], "start_line": 790, "status": "success", "total_lines": 1032 }, "title": null, "content": null }+25:12Code GrepCode navigationthree“setValueV4a”
setValueV4a
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/renderers/webgl/WebGLUniforms.js" } ], "pattern": "setValueV4a", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+25:21Code GrepCode navigationthree“function flatten( array, nBlocks, blockSize )”
function flatten( array, nBlocks, blockSize )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLUniforms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 84, "file_path": "src/renderers/webgl/WebGLUniforms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLUniforms.js#L64-L84", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/renderers/webgl/WebGLUniforms.js" } ], "pattern": "function flatten( array, nBlocks, blockSize )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLUniforms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 84, "file_path": "src/renderers/webgl/WebGLUniforms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLUniforms.js#L64-L84", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+25:24Code GrepCode navigationthree“setValueV4fArray”
setValueV4fArray
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLUniforms.js", "src/renderers/webgl/WebGLUniforms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 724, "file_path": "src/renderers/webgl/WebGLUniforms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLUniforms.js#L708-L724", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 708 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 935, "file_path": "src/renderers/webgl/WebGLUniforms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLUniforms.js#L919-L935", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 919 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/renderers/webgl/WebGLUniforms.js" } ], "pattern": "setValueV4fArray", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLUniforms.js", "src/renderers/webgl/WebGLUniforms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 724, "file_path": "src/renderers/webgl/WebGLUniforms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLUniforms.js#L708-L724", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 708 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 935, "file_path": "src/renderers/webgl/WebGLUniforms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLUniforms.js#L919-L935", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 919 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+25:24Code GrepCode navigationthree“@property {number} [bevelThickness”
@property {number} [bevelThickness
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/geometries/ExtrudeGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 911, "file_path": "src/geometries/ExtrudeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/ExtrudeGeometry.js#L892-L911", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 892 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/geometries/ExtrudeGeometry.js" } ], "pattern": "@property {number} [bevelThickness", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/geometries/ExtrudeGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 911, "file_path": "src/geometries/ExtrudeGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/ExtrudeGeometry.js#L892-L911", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 892 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+25:33Get ExampleGenerated exampleThree.js ocean clipmap concentric square LOD rings geometry with Gerstner wave vertex displacement and seam stitching
Three.js ocean clipmap concentric square LOD rings geometry with Gerstner wave vertex displacement and seam stitching · javascript · strict
Three.js Gerstner Ocean with Concentric Clipmap Rings and Seam Stitching
import * as THREE from 'three'; const MAX_WAVES = 8; const vertexShader = /* glsl */ ` uniform float uTime; uniform int uWaveCount; uniform vec4 uWaveA[${MAX_WAVES}]; // direction.xy, k, omega uniform vec2 uWaveB[${MAX_WAVES}]; // amplitude, steepness varying vec3 vWorldPosition; varying vec3 vNormal; varying float vHeight; void main() { vec3 worldPosition = (modelMatrix * vec4(position, 1.0)).xyz; vec2 horizontal = worldPosition.xz; vec3 displacement = vec3(0.0); vec3 normal = vec3(0.0, 1.0, 0.0); float height = 0.0; for (int i = 0; i < ${MAX_WAVES}; i++) { if (i >= uWaveCount) break; vec2 direction = normalize(uWaveA[i].xy); float k = uWaveA[i].z; float omega = uWaveA[i].w; float amplitude = uWaveB[i].x; float steepness = uWaveB[i].y; float phase = k * dot(direction, horizontal) - omega * uTime; float sine = sin(phase); float cosine = cos(phase); displacement.xz += steepness * amplitude * direction * cosine; displacement.y += amplitude * sine; float wa = k * amplitude; normal.xz -= direction * wa * cosine; normal.y -= steepness * wa * sine; height += amplitude * sine; } vWorldPosition = worldPosition + displacement; vNormal = normalize(normal); vHeight = height; gl_Position = projectionMatrix * viewMatrix * vec4(vWorldPosition, 1.0); }`; const fragmentShader = /* glsl */ ` precision highp float; uniform vec3 uDeepColor; uniform vec3 uShallowColor; uniform vec3 uSkyColor; uniform vec3 uSunDirection; uniform float uFogDensity; uniform vec3 uFogColor; varying vec3 vWorldPosition; varying vec3 vNormal; varying float vHeight; void main() { vec3 n = normalize(vNormal); vec3 viewDirection = normalize(cameraPosition - vWorldPosition); float heightMix = clamp(vHeight * 0.35 + 0.5, 0.0, 1.0); vec3 color = mix(uDeepColor, uShallowColor, heightMix); float fresnel = pow(1.0 - max(dot(n, viewDirection), 0.0), 5.0); color = mix(color, uSkyColor, 0.08 + fresnel * 0.8); vec3 reflection = reflect(-normalize(uSunDirection), n); float specular = pow(max(dot(reflection, viewDirection), 0.0), 96.0); color += vec3(1.0, 0.94, 0.82) * specular; float distanceToCamera = length(cameraPosition - vWorldPosition); float fog = 1.0 - exp(-uFogDensity * uFogDensity * distanceToCamera * distanceToCamera); color = mix(color, uFogColor, clamp(fog, 0.0, 1.0)); gl_FragColor = vec4(color, 1.0); }`; function addGrid(target, x0, x1, z0, z1, nx, nz) { const base = target.positions.length / 3; for (let z = 0; z <= nz; z++) { const tz = z / nz; for (let x = 0; x <= nx; x++) { const tx = x / nx; target.positions.push(THREE.MathUtils.lerp(x0, x1, tx), 0, THREE.MathUtils.lerp(z0, z1, tz)); } } for (let z = 0; z < nz; z++) { for (let x = 0; x < nx; x++) { const a = base + z * (nx + 1) + x; const b = a + 1; const d = a + nx + 1; const c = d + 1; target.indices.push(a, d, b, b, d, c); } } } function createRingGeometry(innerRadius, outerRadius, resolution) { const data = { positions: [], indices: [] }; const depthSegments = Math.max(2, Math.ceil(resolution * (outerRadius - innerRadius) / outerRadius)); // Four patches form an annulus without triangles across the inner hole. addGrid(data, -outerRadius, outerRadius, -outerRadius, -innerRadius, resolution * 2, depthSegments); addGrid(data, -outerRadius, outerRadius, innerRadius, outerRadius, resolution * 2, depthSegments); addGrid(data, -outerRadius, -innerRadius, -innerRadius, innerRadius, depthSegments, resolution * 2); addGrid(data, innerRadius, outerRadius, -innerRadius, innerRadius, depthSegments, resolution * 2); const geometry = new THREE.BufferGeometry(); geometry.setAttribute('position', new THREE.Float32BufferAttribute(data.positions, 3)); geometry.setIndex(data.indices); geometry.computeVertexNormals(); return geometry; } function createSeamStitchGeometry(radius, resolution, skirtDepth) { const positions = []; const indices = []; const segments = resolution * 2; function addSide(point) { const base = positions.length / 3; for (let i = 0; i <= segments; i++) { const t = i / segments; const p = point(t); positions.push(p[0], 0, p[1]); positions.push(p[0], -skirtDepth, p[1]); } for (let i = 0; i < segments; i++) { const a = base + i * 2; const b = a + 2; indices.push(a, b, a + 1, a + 1, b, b + 1); } } addSide(t => [THREE.MathUtils.lerp(-radius, radius, t), -radius]); addSide(t => [THREE.MathUtils.lerp(radius, -radius, t), radius]); addSide(t => [-radius, THREE.MathUtils.lerp(radius, -radius, t)]); addSide(t => [radius, THREE.MathUtils.lerp(-radius, radius, t)]); const geometry = new THREE.BufferGeometry(); geometry.setAttribute('position', new THREE.Float32BufferAttribute(positions, 3)); geometry.setIndex(indices); geometry.computeVertexNormals(); return geometry; } export class OceanClipmap { constructor(scene, { levels = 6, baseCellSize = 1, resolution = 32, waveComponents = [], skirtDepth = 1.5, colorDeep = 0x063452, colorShallow = 0x2386a7, skyColor = 0x9fc3d9, fogColor = 0x9fc3d9, fogDensity = 0.0008 } = {}) { if (waveComponents.length > MAX_WAVES) { throw new RangeError(`At most ${MAX_WAVES} waves are supported`); } this.group = new THREE.Group(); this.group.frustumCulled = false; scene.add(this.group); const waveA = []; const waveB = []; for (let i = 0; i < MAX_WAVES; i++) { const wave = waveComponents[i]; waveA.push(new THREE.Vector4(wave?.dirX ?? 1, wave?.dirZ ?? 0, wave?.k ?? 1, wave?.omega ?? 1)); waveB.push(new THREE.Vector2(wave?.amplitude ?? 0, wave?.steepness ?? 0)); } this.material = new THREE.ShaderMaterial({ vertexShader, fragmentShader, uniforms: { uTime: { value: 0 }, uWaveCount: { value: waveComponents.length }, uWaveA: { value: waveA }, uWaveB: { value: waveB }, uDeepColor: { value: new THREE.Color(colorDeep) }, uShallowColor: { value: new THREE.Color(colorShallow) }, uSkyColor: { value: new THREE.Color(skyColor) }, uSunDirection: { value: new THREE.Vector3(0.5, 0.7, -0.4).normalize() }, uFogColor: { value: new THREE.Color(fogColor) }, uFogDensity: { value: fogDensity } } }); this.ringSpacing = baseCellSize; this.rings = []; for (let level = 0; level < levels; level++) { const cellSize = baseCellSize * 2 ** level; const inner = level === 0 ? 0 : cellSize * resolution; const outer = cellSize * resolution * 2; const ring = new THREE.Mesh( createRingGeometry(inner, outer, resolution), this.material ); ring.frustumCulled = false; this.group.add(ring); this.rings.push(ring); // A downward skirt bridges the mismatched vertex spacing of adjacent LODs. if (level > 0) { const stitch = new THREE.Mesh( createSeamStitchGeometry(inner, resolution, skirtDepth * 2 ** level), this.material ); stitch.frustumCulled = false; this.group.add(stitch); } } } update(timeSeconds, camera, sunDirection) { this.material.uniforms.uTime.value = timeSeconds; if (sunDirection) this.material.uniforms.uSunDirection.value.copy(sunDirection).normalize(); // Recenter the clipmap on snapped cells, preventing swimming and preserving seams. const cell = this.ringSpacing; this.group.position.x = Math.floor(camera.position.x / cell) * cell; this.group.position.z = Math.floor(camera.position.z / cell) * cell; } dispose() { for (const child of this.group.children) child.geometry.dispose(); this.material.dispose(); this.group.parent?.remove(this.group); } } // Example wave setup: // const ocean = new OceanClipmap(scene, { // waveComponents: [ // { dirX: 1, dirZ: 0.2, k: 0.12, omega: 0.45, amplitude: 1.2, steepness: 0.55 }, // { dirX: -0.4, dirZ: 1, k: 0.3, omega: 0.8, amplitude: 0.35, steepness: 0.35 } // ] // }); // ocean.update(clock.getElapsedTime(), camera, sun.position);References
1- abdulkadrtr/usv-simulation-ros2web/js/ocean.js
Contains a JavaScript/Three.js Gerstner-wave ocean vertex displacement shader (GPU Gems-style), but it does not implement clipmap concentric-square LOD rings or seam stitching geometry; useful partial for the wave-displacement part.
Request
Request payload
{ "query": "Three.js ocean clipmap concentric square LOD rings geometry with Gerstner wave vertex displacement and seam stitching", "language": "javascript", "license_mode": "strict" }- abdulkadrtr/usv-simulation-ros2web/js/ocean.js
+26:02Code GrepCode navigationthree“premultiply(”
premultiply(
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Quaternion.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 687, "file_path": "src/math/Quaternion.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Quaternion.js#L675-L687", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 675 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/math/Quaternion.js" } ], "pattern": "premultiply(", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Quaternion.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 687, "file_path": "src/math/Quaternion.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Quaternion.js#L675-L687", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 675 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+26:25Get ExampleGenerated examplewind system gust simulation global wind vector foliage sway shader uniform
wind system gust simulation global wind vector foliage sway shader uniform · javascript · strict
Global Wind Gusts Driving a Foliage Sway Shader
import * as THREE from 'three'; // Shared scene-wide wind state. Every foliage material reads the same uniforms. const windUniforms = { uTime: { value: 0 }, uWindDirection: { value: new THREE.Vector2(1, 0.3).normalize() }, uWindSpeed: { value: 1.8 }, uWindStrength: { value: 0.28 }, uGustSpeed: { value: 1.9 }, uGustResponse: { value: 0.65 }, }; const foliageVertexShader = /* glsl */ ` uniform float uTime; uniform vec2 uWindDirection; uniform float uWindSpeed; uniform float uWindStrength; uniform float uGustSpeed; uniform float uGustResponse; attribute float aWindPhase; attribute float aWindResponse; varying vec2 vUv; float hash(float n) { return fract(sin(n) * 43758.5453123); } void main() { vUv = uv; // Vertex height makes roots stable while tips receive the strongest motion. float height = smoothstep(0.0, 1.0, uv.y); float phase = aWindPhase + position.x * 0.37 + position.z * 0.23; float broadWave = sin( dot(position.xz, uWindDirection) * 0.7 + uTime * uWindSpeed + phase ); float gustWave = sin( dot(position.xz, uWindDirection * 1.7) * 0.9 + uTime * uGustSpeed + phase * 2.1 ); float gust = mix(1.0, 0.5 + 0.5 * gustWave, uGustResponse); float response = aWindResponse * height * height; float sway = (broadWave * 0.7 + gustWave * 0.3) * uWindStrength * gust * response; vec3 displaced = position; displaced.xz += uWindDirection * sway; displaced.y += abs(sway) * 0.08; gl_Position = projectionMatrix * modelViewMatrix * vec4(displaced, 1.0); } `; const foliageFragmentShader = /* glsl */ ` varying vec2 vUv; void main() { vec3 base = mix(vec3(0.08, 0.22, 0.05), vec3(0.35, 0.7, 0.12), vUv.y); gl_FragColor = vec4(base, 1.0); } `; function createFoliageMaterial() { return new THREE.ShaderMaterial({ uniforms: windUniforms, vertexShader: foliageVertexShader, fragmentShader: foliageFragmentShader, side: THREE.DoubleSide, }); } function createGrassBlade() { const geometry = new THREE.PlaneGeometry(0.12, 1, 1, 5); const phases = []; const responses = []; for (let i = 0; i < geometry.attributes.position.count; i += 1) { phases.push(Math.random() * Math.PI * 2); responses.push(0.8 + Math.random() * 0.4); } geometry.setAttribute( 'aWindPhase', new THREE.Float32BufferAttribute(phases, 1), ); geometry.setAttribute( 'aWindResponse', new THREE.Float32BufferAttribute(responses, 1), ); return geometry; } export function createWindDrivenFoliage(scene) { const material = createFoliageMaterial(); const geometry = createGrassBlade(); const foliage = new THREE.InstancedMesh(geometry, material, 5000); const transform = new THREE.Object3D(); for (let i = 0; i < foliage.count; i += 1) { transform.position.set( (Math.random() - 0.5) * 40, 0.5, (Math.random() - 0.5) * 40, ); transform.rotation.y = Math.random() * Math.PI; const scale = 0.7 + Math.random() * 0.8; transform.scale.set(scale, scale, scale); transform.updateMatrix(); foliage.setMatrixAt(i, transform.matrix); } foliage.instanceMatrix.needsUpdate = true; scene.add(foliage); return foliage; } // Call once per frame. The same global vector and gust state affect all foliage. export function updateWind(deltaSeconds, elapsedSeconds, wind) { windUniforms.uTime.value = elapsedSeconds; windUniforms.uWindDirection.value.set( wind.direction[0], wind.direction[1], ).normalize(); windUniforms.uWindSpeed.value = wind.speed; windUniforms.uWindStrength.value = wind.strength; windUniforms.uGustSpeed.value = wind.gustSpeed; windUniforms.uGustResponse.value = wind.gustResponse; } // Example render-loop integration: // const wind = { direction: [1, 0.3], speed: 1.8, strength: 0.28, // gustSpeed: 2.4, gustResponse: 0.65 }; // const clock = new THREE.Clock(); // function animate() { // const delta = clock.getDelta(); // const elapsed = clock.elapsedTime; // updateWind(delta, elapsed, wind); // renderer.render(scene, camera); // requestAnimationFrame(animate); // }References
2- call-me-sensei/toonlabscripts/verify-public-api.mjs
Contains JavaScript code and shader-source checks specifically mentioning grass wind uniforms such as uWindStrength/uWindResponse and vGust contributions; good partial match for gust simulation/global wind response wiring to foliage/vegetation shader behavior, though it’s focused on grass rather than a general global wind vector foliage sway system.
- call-me-sensei/toonlablabs/lighting-lab/waterStage.js
Shows JavaScript stage code configuring vegetation wind with gust parameters (e.g., `environment.wind`, `setWind` with `gustSpeed`) and uses shader-driven wind for grass/foliage-like vegetation; however it’s not specifically about a “foliage sway vertex shader” uniform name or a global wind vector uniform update pipeline.
Request
Request payload
{ "query": "wind system gust simulation global wind vector foliage sway shader uniform", "language": "javascript", "license_mode": "strict" }- call-me-sensei/toonlabscripts/verify-public-api.mjs
+27:10Get ExampleGenerated examplequaternion integration from angular velocity rigid body javascript
quaternion integration from angular velocity rigid body javascript · JavaScript · strict
Integrate a Rigid-Body Quaternion from Angular Velocity
class Quaternion { constructor(x = 0, y = 0, z = 0, w = 1) { this.x = x; this.y = y; this.z = z; this.w = w; } multiply(q) { const { x: ax, y: ay, z: az, w: aw } = this; const { x: bx, y: by, z: bz, w: bw } = q; return new Quaternion( aw * bx + ax * bw + ay * bz - az * by, aw * by - ax * bz + ay * bw + az * bx, aw * bz + ax * by - ay * bx + az * bw, aw * bw - ax * bx - ay * by - az * bz ); } normalize() { const length = Math.hypot(this.x, this.y, this.z, this.w); if (length === 0) return this.set(0, 0, 0, 1); this.x /= length; this.y /= length; this.z /= length; this.w /= length; return this; } set(x, y, z, w) { this.x = x; this.y = y; this.z = z; this.w = w; return this; } // Rotation produced by angular velocity omega over dt. static fromAngularVelocity(omega, dt) { const angle = Math.hypot(omega.x, omega.y, omega.z) * dt; if (angle < 1e-8) { // Small-angle approximation: sin(angle / 2) / |omega|. return new Quaternion( omega.x * dt * 0.5, omega.y * dt * 0.5, omega.z * dt * 0.5, 1 ).normalize(); } const halfAngle = angle * 0.5; const scale = Math.sin(halfAngle) / Math.hypot(omega.x, omega.y, omega.z); return new Quaternion( omega.x * scale, omega.y * scale, omega.z * scale, Math.cos(halfAngle) ); } } /** * Integrate orientation using world-space angular velocity. * * qNext = deltaRotation * q * * For local/body-space angular velocity, use: * qNext = q * deltaRotation instead. */ function integrateQuaternion(orientation, angularVelocity, dt) { const deltaRotation = Quaternion.fromAngularVelocity(angularVelocity, dt); return deltaRotation.multiply(orientation).normalize(); } // Example: rotate around the world Y axis at 2 radians per second. let orientation = new Quaternion(); const angularVelocity = { x: 0, y: 2, z: 0 }; const dt = 1 / 60; for (let step = 0; step < 60; step++) { orientation = integrateQuaternion(orientation, angularVelocity, dt); } console.log(orientation); // Approximately a 2-radian rotation around Y.References
4- NarcolepticEngineer/portfoliocontent/Rolling/cannon.js
Contains a JavaScript implementation of Quaternion within a physics library-style file (including Quaternion math like mult/vmult and rigid-body angularVelocity fields), which is relevant background for integrating angular velocity into orientation, though it does not directly show the exact quaternion-from-angular-velocity integration step.
- havokentity/demont-enginephysics: rigid body (orientation, multi-contact, box stacking) (Phase 2 of physics roadmap #131)
Discusses rigid-body orientation via quaternion with angular velocity integration (quaternion derivative) and related physics roadmap, but it targets a C++ engine rather than JavaScript, so implementation details for JS are missing.
- dweis/verold-cannon-appbuild/cannon_app.js
Contains a JavaScript rigid-body physics math implementation of CANNON.Quaternion (including quaternion operations like multiplication/inverse and axis-angle conversions) that can be used to integrate angular velocity into orientation, but it doesn’t directly show the specific “integrate angular velocity” step for rigid bodies in the indexed snippet.
- playcanvas/enginesrc/framework/components/rigid-body/component.js
PlayCanvas Engine rigid-body component implements quaternion-based rotation handling and exposes angularVelocity APIs, but it doesn’t directly show quaternion integration from angular velocity in isolation (still relevant for rigid-body quaternion/ang-vel workflow).
Request
Request payload
{ "query": "quaternion integration from angular velocity rigid body javascript", "language": "JavaScript", "license_mode": "strict" }- NarcolepticEngineer/portfoliocontent/Rolling/cannon.js
+28:52Get ExampleGenerated examplethree.js buoyancy floating boat on waves apply force at point torque
three.js buoyancy floating boat on waves apply force at point torque · javascript · strict
three.js Boat Buoyancy with Force-at-Point Torque
import * as THREE from 'three'; // Requires a THREE.Scene, THREE.Camera, and THREE.WebGLRenderer from your app. const scene = new THREE.Scene(); scene.background = new THREE.Color(0x87ceeb); const camera = new THREE.PerspectiveCamera(60, innerWidth / innerHeight, 0.1, 1000); camera.position.set(8, 5, 10); camera.lookAt(0, 0, 0); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setSize(innerWidth, innerHeight); document.body.appendChild(renderer.domElement); scene.add(new THREE.HemisphereLight(0xbde9ff, 0x365060, 2)); const sun = new THREE.DirectionalLight(0xffffff, 2); sun.position.set(5, 10, 5); scene.add(sun); const boat = new THREE.Group(); boat.position.set(0, 1, 0); scene.add(boat); const hull = new THREE.Mesh( new THREE.BoxGeometry(4, 0.8, 1.8), new THREE.MeshStandardMaterial({ color: 0x8b4513 }) ); hull.scale.y = 0.7; boat.add(hull); const mast = new THREE.Mesh( new THREE.CylinderGeometry(0.06, 0.06, 3, 12), new THREE.MeshStandardMaterial({ color: 0xeeeeee }) ); mast.position.y = 1.5; boat.add(mast); const water = new THREE.Mesh( new THREE.PlaneGeometry(100, 100, 100, 100), new THREE.MeshStandardMaterial({ color: 0x187b9f, roughness: 0.25 }) ); water.rotation.x = -Math.PI / 2; scene.add(water); const density = 0.45; const mass = 8; const gravity = new THREE.Vector3(0, -9.81, 0); const velocity = new THREE.Vector3(); const angularVelocity = new THREE.Vector3(); const force = new THREE.Vector3(); const torque = new THREE.Vector3(); // Local-space hull probes. Each probe applies buoyancy at its own position. const probes = [ new THREE.Vector3(-1.6, -0.25, -0.65), new THREE.Vector3(-1.6, -0.25, 0.65), new THREE.Vector3( 1.6, -0.25, -0.65), new THREE.Vector3( 1.6, -0.25, 0.65) ]; const inverseInertia = new THREE.Vector3(1 / 10, 1 / 35, 1 / 10); const worldProbe = new THREE.Vector3(); const waveNormal = new THREE.Vector3(); const leverArm = new THREE.Vector3(); const buoyancyForce = new THREE.Vector3(); function waveHeight(x, z, time) { return ( 0.28 * Math.sin(x * 0.8 + time * 1.4) + 0.16 * Math.sin(z * 1.3 + time * 1.9) + 0.10 * Math.sin((x + z) * 1.7 + time * 2.3) ); } function waveSlope(x, z, time) { const e = 0.01; const dx = (waveHeight(x + e, z, time) - waveHeight(x - e, z, time)) / (2 * e); const dz = (waveHeight(x, z + e, time) - waveHeight(x, z - e, time)) / (2 * e); return waveNormal.set(-dx, 1, -dz).normalize(); } function applyForceAtPoint(forceToApply, pointWorld) { force.add(forceToApply); leverArm.subVectors(pointWorld, boat.position); torque.add(leverArm.cross(forceToApply)); } function updateBoat(dt, time) { force.set(0, 0, 0); torque.set(0, 0, 0); // Gravity acts through the center of mass. applyForceAtPoint(force.copy(gravity).multiplyScalar(mass), boat.position); force.set(0, 0, 0); // gravity was already accumulated; preserve the accumulated torque/force below // Rebuild the force accumulator because applyForceAtPoint uses the same mutable vector. force.copy(gravity).multiplyScalar(mass); for (const localProbe of probes) { worldProbe.copy(localProbe).applyMatrix4(boat.matrixWorld); const surfaceY = waveHeight(worldProbe.x, worldProbe.z, time); const depth = surfaceY - worldProbe.y; if (depth > 0) { // Approximate displaced volume per probe and damp vertical motion. const displacedVolume = Math.min(depth, 0.8) * 0.7; const upwardForce = -gravity.y * mass * displacedVolume * density; const pointVelocity = velocity.clone().add( angularVelocity.clone().cross(worldProbe.clone().sub(boat.position)) ); buoyancyForce.copy(waveSlope(worldProbe.x, worldProbe.z, time)) .multiplyScalar(upwardForce) .addScaledVector(pointVelocity, -1.8); // This off-center application creates the restoring torque that rocks the boat. applyForceAtPoint(buoyancyForce, worldProbe); } } // Water resistance and angular damping. force.addScaledVector(velocity, -1.2); torque.addScaledVector(angularVelocity, -2.5); velocity.addScaledVector(force, dt / mass); boat.position.addScaledVector(velocity, dt); const angularAcceleration = new THREE.Vector3( torque.x * inverseInertia.x, torque.y * inverseInertia.y, torque.z * inverseInertia.z ); angularVelocity.addScaledVector(angularAcceleration, dt); const rotationStep = angularVelocity.clone().multiplyScalar(dt); boat.rotateX(rotationStep.x); boat.rotateY(rotationStep.y); boat.rotateZ(rotationStep.z); } const clock = new THREE.Clock(); function animate() { requestAnimationFrame(animate); const dt = Math.min(clock.getDelta(), 0.033); const time = clock.elapsedTime; water.position.y = 0; updateBoat(dt, time); renderer.render(scene, camera); } animate(); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); });References
1- Dante83/a-waterREADME.md
Relevant to three.js/A-Frame buoyancy on wave fields: it documents `buoyant` entities with a rigid solver that applies Archimedes force and righting torque, plus `buoyancy-hull` probe points for hull sampling (closest practical analogue to “apply force at point” torque), though it doesn’t show an explicit `applyForceAtPoint` API usage.
Request
Request payload
{ "query": "three.js buoyancy floating boat on waves apply force at point torque", "language": "javascript", "license_mode": "strict" }- Dante83/a-waterREADME.md
+29:20Code GrepCode navigationthree“powerPreference”
powerPreference
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 91, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L71-L91", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 71 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 389, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L369-L389", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 369 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3640, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3620-L3640", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3620 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "powerPreference", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 91, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L71-L91", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 71 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 389, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L369-L389", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 369 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3640, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3620-L3640", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3620 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 1 }, "title": null, "content": null }+29:20Code GrepCode navigationthree“this.readRenderTargetPixels = function”
this.readRenderTargetPixels = function
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3077, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3065-L3077", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3065 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "this.readRenderTargetPixels = function", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3077, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3065-L3077", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3065 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+29:25Code GrepCode navigationthree“this.uniforms = {};”
this.uniforms = {};
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/materials/ShaderMaterial.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 123, "file_path": "src/materials/ShaderMaterial.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/ShaderMaterial.js#L103-L123", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 103 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/materials/ShaderMaterial.js" } ], "pattern": "this.uniforms = {};", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/materials/ShaderMaterial.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 123, "file_path": "src/materials/ShaderMaterial.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/ShaderMaterial.js#L103-L123", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 103 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+1:41:00Get ExampleGenerated examplespring damper secondary motion for hair and cloth bones, semi-implicit Euler integration with stiffness and damping at fixed timestep, javascript
spring damper secondary motion for hair and cloth bones, semi-implicit Euler integration with stiffness and damping at fixed timestep, javascript · javascript · strict
Fixed-Timestep Spring-Damper Secondary Motion for Hair and Cloth Bones
// Spring-damper secondary motion using semi-implicit Euler integration. // The simulated point follows an animated bone's target position while its // velocity provides natural lag for hair or cloth-like bone chains. class Vec3 { constructor(x = 0, y = 0, z = 0) { this.x = x; this.y = y; this.z = z; } clone() { return new Vec3(this.x, this.y, this.z); } add(v) { this.x += v.x; this.y += v.y; this.z += v.z; return this; } sub(v) { this.x -= v.x; this.y -= v.y; this.z -= v.z; return this; } multiplyScalar(s) { this.x *= s; this.y *= s; this.z *= s; return this; } static subtract(a, b) { return new Vec3(a.x - b.x, a.y - b.y, a.z - b.z); } } function assertFinite(name, value) { if (!Number.isFinite(value)) { throw new TypeError(`${name} must be finite`); } } class SpringBone { constructor({ position = new Vec3(), stiffness = 80, damping = 12, mass = 1, gravity = new Vec3(0, -9.81, 0), } = {}) { assertFinite("stiffness", stiffness); assertFinite("damping", damping); assertFinite("mass", mass); if (stiffness < 0 || damping < 0 || mass <= 0) { throw new RangeError("stiffness and damping must be non-negative; mass must be positive"); } this.position = position.clone(); this.velocity = new Vec3(); this.stiffness = stiffness; this.damping = damping; this.mass = mass; this.gravity = gravity.clone(); } // One semi-implicit Euler step: // velocity <- velocity + acceleration * dt // position <- position + velocity * dt step(target, dt) { assertFinite("dt", dt); if (dt <= 0) throw new RangeError("dt must be positive"); const displacement = Vec3.subtract(target, this.position); // Fspring = k(target - position), Fdamping = -c * velocity. const force = displacement.multiplyScalar(this.stiffness) .add(this.velocity.clone().multiplyScalar(-this.damping)) .add(this.gravity.clone().multiplyScalar(this.mass)); const acceleration = force.multiplyScalar(1 / this.mass); // Semi-implicit Euler is more stable for spring systems than explicit Euler. this.velocity.add(acceleration.multiplyScalar(dt)); this.position.add(this.velocity.clone().multiplyScalar(dt)); return this.position; } } class SecondaryMotionSystem { constructor({ fixedDt = 1 / 120, maxSubsteps = 8 } = {}) { assertFinite("fixedDt", fixedDt); if (fixedDt <= 0 || maxSubsteps < 1) { throw new RangeError("fixedDt must be positive and maxSubsteps must be at least 1"); } this.fixedDt = fixedDt; this.maxSubsteps = maxSubsteps; this.accumulator = 0; } update(frameDt, bones, getTarget) { assertFinite("frameDt", frameDt); this.accumulator += Math.min(frameDt, 0.25); let substeps = 0; while (this.accumulator >= this.fixedDt && substeps < this.maxSubsteps) { for (const bone of bones) { bone.step(getTarget(bone), this.fixedDt); } this.accumulator -= this.fixedDt; substeps += 1; } // Avoid a spiral of death after a long pause. if (substeps === this.maxSubsteps) { this.accumulator = 0; } } } // Minimal runnable example: an animated target drives a dangling hair/cloth bone. const bone = new SpringBone({ position: new Vec3(0, 1, 0), stiffness: 110, damping: 15, mass: 0.15, gravity: new Vec3(0, -3, 0), }); const simulation = new SecondaryMotionSystem({ fixedDt: 1 / 120 }); let time = 0; for (let frame = 0; frame < 120; frame += 1) { const frameDt = 1 / 60; time += frameDt; // Replace this with the animated parent bone's world-space endpoint. const animatedTarget = new Vec3( Math.sin(time * 5) * 0.25, 1, 0, ); simulation.update(frameDt, [bone], () => animatedTarget); console.log({ time: time.toFixed(3), x: bone.position.x.toFixed(3), y: bone.position.y.toFixed(3), z: bone.position.z.toFixed(3), }); }References
2- samchon/AutoMovie사물별 모션을 선언적 Profile로 (gait 파라미터셋 + binding) + driven 비선형 커플링
Mentions spring stiffness/damping and discusses a semi/implicit-Euler-driven motion/Profile system in JavaScript/TS context, but it’s an issue/discussion about motion architecture rather than hair/cloth bone secondary motion implementation details.
- rahil-algobear/SpeedRacersrc/vehicle/VehiclePhysics.js
Concrete JavaScript vehicle physics implementation explicitly using semi-implicit Euler integration and includes stiffness/damping-related simulation (springy dynamics), but it’s not hair/cloth bones; still a strong match for the numerical integration + damping/stiffness pattern.
Request
Request payload
{ "query": "spring damper secondary motion for hair and cloth bones, semi-implicit Euler integration with stiffness and damping at fixed timestep, javascript", "language": "javascript", "license_mode": "strict" }- samchon/AutoMovie사물별 모션을 선언적 Profile로 (gait 파라미터셋 + binding) + driven 비선형 커플링
+1:41:22Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 215, "indexing_status": "indexed", "language": "javascript", "line_count": 66, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 215, "file_path": "src/geometries/LatheGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/LatheGeometry.js#L150-L215", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 150 } ], "start_line": 150, "status": "success", "total_lines": 230 }Request
Request payload
{ "end_line": 215, "file_path": "src/geometries/LatheGeometry.js", "package_name": "three", "registry": "npm", "start_line": 150, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 215, "indexing_status": "indexed", "language": "javascript", "line_count": 66, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 215, "file_path": "src/geometries/LatheGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/LatheGeometry.js#L150-L215", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 150 } ], "start_line": 150, "status": "success", "total_lines": 230 }, "title": null, "content": null }+1:42:05Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 34, "indexing_status": "indexed", "language": "javascript", "line_count": 34, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 34, "file_path": "src/renderers/WebGLRenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderTarget.js#L1-L34", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 34 }Request
Request payload
{ "end_line": 45, "file_path": "src/renderers/WebGLRenderTarget.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 34, "indexing_status": "indexed", "language": "javascript", "line_count": 34, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 34, "file_path": "src/renderers/WebGLRenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderTarget.js#L1-L34", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 34 }, "title": null, "content": null }+1:42:08Code GrepCode navigationthree“class Float32BufferAttribute extends BufferAttribute”
class Float32BufferAttribute extends BufferAttribute
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferAttribute.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1036, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L1016-L1036", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1016 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/core/BufferAttribute.js" } ], "pattern": "class Float32BufferAttribute extends BufferAttribute", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferAttribute.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1036, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L1016-L1036", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1016 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+1:42:15Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 245, "indexing_status": "indexed", "language": "javascript", "line_count": 28, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 245, "file_path": "examples/jsm/objects/Reflector.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/objects/Reflector.js#L218-L245", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 218 } ], "start_line": 218, "status": "success", "total_lines": 385 }Request
Request payload
{ "end_line": 245, "file_path": "examples/jsm/objects/Reflector.js", "package_name": "three", "registry": "npm", "start_line": 218, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 245, "indexing_status": "indexed", "language": "javascript", "line_count": 28, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 245, "file_path": "examples/jsm/objects/Reflector.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/objects/Reflector.js#L218-L245", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 218 } ], "start_line": 218, "status": "success", "total_lines": 385 }, "title": null, "content": null }+1:42:15Get ExampleGenerated exampleJavaScript game enemy AI state machine class with states patrol chase attack cooldown timers and transitions
JavaScript game enemy AI state machine class with states patrol chase attack cooldown timers and transitions · javascript · strict
JavaScript Enemy AI State Machine
class EnemyAI { constructor({ x = 0, y = 0, speed = 2, detectionRange = 10, attackRange = 1.5, attackDamage = 10, attackCooldown = 1.5, patrolPoints = [] } = {}) { this.position = { x, y }; this.speed = speed; this.detectionRange = detectionRange; this.attackRange = attackRange; this.attackDamage = attackDamage; this.attackCooldown = attackCooldown; this.lastAttackTime = -Infinity; this.state = "patrol"; this.patrolPoints = patrolPoints; this.patrolIndex = 0; this.target = null; } update(deltaSeconds, player, nowSeconds = performance.now() / 1000) { if (!player || player.health <= 0) return; this.target = player; const distance = this.distanceTo(player); // State transitions are centralized and easy to extend. if (this.state === "patrol" && distance <= this.detectionRange) { this.changeState("chase"); } else if (this.state === "chase" && distance <= this.attackRange) { this.changeState("attack"); } else if (this.state === "attack" && distance > this.attackRange) { this.changeState("chase"); } else if (this.state === "chase" && distance > this.detectionRange * 1.25) { this.changeState("patrol"); } switch (this.state) { case "patrol": this.patrol(deltaSeconds); break; case "chase": this.chase(deltaSeconds); break; case "attack": this.attack(nowSeconds); break; } } changeState(nextState) { if (this.state === nextState) return; console.log(`Enemy: ${this.state} -> ${nextState}`); this.state = nextState; } patrol(deltaSeconds) { if (this.patrolPoints.length === 0) return; const destination = this.patrolPoints[this.patrolIndex]; if (this.moveToward(destination, this.speed * 0.5 * deltaSeconds)) { this.patrolIndex = (this.patrolIndex + 1) % this.patrolPoints.length; } } chase(deltaSeconds) { this.moveToward(this.target, this.speed * deltaSeconds); } attack(nowSeconds) { if (!this.canAttack(nowSeconds)) return; this.target.health = Math.max(0, this.target.health - this.attackDamage); this.lastAttackTime = nowSeconds; console.log(`Enemy attacks for ${this.attackDamage} damage`); } canAttack(nowSeconds) { return nowSeconds - this.lastAttackTime >= this.attackCooldown; } moveToward(destination, distance) { const dx = destination.x - this.position.x; const dy = destination.y - this.position.y; const length = Math.hypot(dx, dy); if (length < 0.1) return true; const step = Math.min(distance, length); this.position.x += (dx / length) * step; this.position.y += (dy / length) * step; return length <= distance + 0.1; } distanceTo(target) { return Math.hypot( target.x - this.position.x, target.y - this.position.y ); } } // Minimal usage example. const enemy = new EnemyAI({ x: 0, y: 0, speed: 3, patrolPoints: [ { x: 0, y: 0 }, { x: 5, y: 0 }, { x: 5, y: 5 } ] }); const player = { x: 8, y: 0, health: 100 }; let time = 0; for (let frame = 0; frame < 600 && player.health > 0; frame++) { const deltaSeconds = 1 / 60; time += deltaSeconds; enemy.update(deltaSeconds, player, time); }References
2- bwm0822/game_02src/components/ai/ai_tmp.js
Implements a JavaScript AI framework with a state-machine concept plus cooldown/timer handling (`Cooldown`, `ready/set`) and behavior selection (attack/flee/patrol); it’s not a direct patrol→chase→attack FSM but contains the key cooldown + transition logic pieces.
- BRUMILO/ARCH-DOOMjs/enemy.js
Provides a JavaScript enemy AI with explicit finite state behavior (patrol/chase) plus an attack cooldown (`attackCooldown`, `lastAttack`, `canAttack`/`resetAttackCooldown`) and state transitions based on detection range.
Request
Request payload
{ "query": "JavaScript game enemy AI state machine class with states patrol chase attack cooldown timers and transitions", "language": "javascript", "license_mode": "strict" }- bwm0822/game_02src/components/ai/ai_tmp.js
+1:42:33Code GrepCode navigationthree“lookAt( x, y, z )”
lookAt( x, y, z )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 704, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L684-L704", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 684 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 2, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/Object3D.js" } ], "pattern": "lookAt( x, y, z )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 704, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L684-L704", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 684 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+1:42:40Code GrepCode navigationthree“^\t(setFromCenterAndSize|expandByPoint|expandByScalar|containsPoint|makeEmpty|getCenter)\(”
^\t(setFromCenterAndSize|expandByPoint|expandByScalar|containsPoint|makeEmpty|getCenter)\(
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Box3.js", "src/math/Box3.js", "src/math/Box3.js", "src/math/Box3.js", "src/math/Box3.js", "src/math/Box3.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 131, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L127-L131", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 127 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 196, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L192-L196", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 192 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 226, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L222-L226", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 222 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 250, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L246-L250", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 246 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 285, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L281-L285", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 281 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 395, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L391-L395", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 391 } ], "returned_matches": 6, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 6, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 2, "context_lines_before": 2, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 12, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/math/Box3.js" } ], "pattern": "^\\t(setFromCenterAndSize|expandByPoint|expandByScalar|containsPoint|makeEmpty|getCenter)\\(", "pattern_type": "REGEX", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Box3.js", "src/math/Box3.js", "src/math/Box3.js", "src/math/Box3.js", "src/math/Box3.js", "src/math/Box3.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 131, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L127-L131", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 127 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 196, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L192-L196", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 192 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 226, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L222-L226", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 222 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 250, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L246-L250", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 246 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 285, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L281-L285", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 281 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 395, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L391-L395", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 391 } ], "returned_matches": 6, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 6, "unique_files_matched": 1 }, "title": null, "content": null }+1:43:11Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 740, "indexing_status": "indexed", "language": "javascript", "line_count": 37, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 740, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L704-L740", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 704 } ], "start_line": 704, "status": "success", "total_lines": 1677 }Request
Request payload
{ "end_line": 740, "file_path": "src/core/Object3D.js", "package_name": "three", "registry": "npm", "start_line": 704, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 740, "indexing_status": "indexed", "language": "javascript", "line_count": 37, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 740, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L704-L740", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 704 } ], "start_line": 704, "status": "success", "total_lines": 1677 }, "title": null, "content": null }+1:43:19Get ExampleGenerated examplethird person game camera rig lock-on target framing over the shoulder with orbit yaw pitch and screen shake in three.js
third person game camera rig lock-on target framing over the shoulder with orbit yaw pitch and screen shake in three.js · javascript · strict
Three.js Third-Person Lock-On Camera Rig
import * as THREE from 'three'; // Assumes a browser module with Three.js available as the "three" package. const scene = new THREE.Scene(); scene.background = new THREE.Color(0x18202b); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(window.devicePixelRatio, 2)); renderer.setSize(window.innerWidth, window.innerHeight); document.body.appendChild(renderer.domElement); scene.add(new THREE.HemisphereLight(0xbfd8ff, 0x202020, 2)); const sun = new THREE.DirectionalLight(0xffffff, 3); sun.position.set(4, 8, 5); scene.add(sun); const camera = new THREE.PerspectiveCamera(60, innerWidth / innerHeight, 0.05, 100); scene.add(camera); const player = new THREE.Mesh( new THREE.CapsuleGeometry(0.35, 1.1, 8, 16), new THREE.MeshStandardMaterial({ color: 0x3d8cff }) ); player.position.set(0, 0.9, 0); scene.add(player); const target = new THREE.Mesh( new THREE.SphereGeometry(0.45, 20, 12), new THREE.MeshStandardMaterial({ color: 0xff624f }) ); target.position.set(3, 0.45, -4); scene.add(target); const ground = new THREE.Mesh( new THREE.PlaneGeometry(50, 50), new THREE.MeshStandardMaterial({ color: 0x35424a }) ); ground.rotation.x = -Math.PI / 2; scene.add(ground); const cameraRig = new ThirdPersonCamera({ camera, player, target, shoulder: 0.85, distance: 5.5, height: 1.7, }); class ThirdPersonCamera { constructor({ camera, player, target, shoulder = 0.8, distance = 5, height = 1.5 }) { this.camera = camera; this.player = player; this.target = target; this.shoulder = shoulder; this.distance = distance; this.height = height; this.minDistance = 2.2; this.maxDistance = 8; this.minPitch = -0.55; this.maxPitch = 1.05; this.yaw = 0; this.pitch = 0.22; this.locked = true; this.position = camera.position.clone(); this.lookAt = new THREE.Vector3(); this.currentTarget = new THREE.Vector3(); this.desiredTarget = new THREE.Vector3(); this.offset = new THREE.Vector3(); this.shake = { time: 0, duration: 0, amplitude: 0 }; this.tmp = new THREE.Vector3(); this.tmp2 = new THREE.Vector3(); } setLockOn(target) { this.target = target; this.locked = Boolean(target); } addShake(amplitude = 0.12, duration = 0.2) { this.shake.amplitude = Math.max(this.shake.amplitude, amplitude); this.shake.duration = Math.max(this.shake.duration, duration); this.shake.time = Math.max(this.shake.time, duration); } orbit(deltaYaw, deltaPitch) { if (this.locked) return; this.yaw += deltaYaw; this.pitch = THREE.MathUtils.clamp( this.pitch + deltaPitch, this.minPitch, this.maxPitch, ); } update(deltaSeconds) { const dt = Math.min(deltaSeconds, 0.05); const playerPosition = this.player.getWorldPosition(this.tmp); // During lock-on, yaw and pitch are solved from the player-to-target vector. if (this.locked && this.target) { const targetPosition = this.target.getWorldPosition(this.tmp2); const dx = targetPosition.x - playerPosition.x; const dz = targetPosition.z - playerPosition.z; const horizontalDistance = Math.max(Math.hypot(dx, dz), 0.001); const desiredYaw = Math.atan2(dx, dz); const desiredPitch = Math.atan2( targetPosition.y - (playerPosition.y + this.height * 0.55), horizontalDistance, ); this.yaw = dampAngle(this.yaw, desiredYaw, 12, dt); this.pitch = damp(this.pitch, desiredPitch, 10, dt); } // Camera position: behind the player, raised, and shifted to the shoulder. const horizontal = Math.cos(this.pitch) * this.distance; this.offset.set( Math.sin(this.yaw) * horizontal, Math.sin(this.pitch) * this.distance + this.height, Math.cos(this.yaw) * horizontal, ); const backward = this.offset.clone().setY(0).normalize(); const right = new THREE.Vector3(-backward.z, 0, backward.x); this.desiredTarget.copy(playerPosition).add(new THREE.Vector3(0, 1.15, 0)); const desiredPosition = playerPosition.clone().add(this.offset); desiredPosition.addScaledVector(right, this.shoulder); // Exponential smoothing makes the rig follow without frame-rate dependence. this.position.lerp(desiredPosition, 1 - Math.exp(-14 * dt)); this.currentTarget.lerp(this.desiredTarget, 1 - Math.exp(-16 * dt)); this.camera.position.copy(this.position); this.camera.lookAt(this.currentTarget); this.updateShake(dt); } updateShake(dt) { if (this.shake.time <= 0) { this.camera.rotation.z = damp(this.camera.rotation.z, 0, 18, dt); return; } this.shake.time -= dt; const life = Math.max(this.shake.time / this.shake.duration, 0); const amplitude = this.shake.amplitude * life * life; const t = (this.shake.duration - this.shake.time) * 32; // Deterministic layered oscillation avoids allocating random values per frame. const pitchShake = (Math.sin(t * 1.7) + 0.45 * Math.sin(t * 4.1)) * amplitude; const yawShake = (Math.sin(t * 2.3 + 1.4) + 0.35 * Math.sin(t * 6.2)) * amplitude; const rollShake = (Math.sin(t * 2.9 + 2.1) + 0.3 * Math.sin(t * 7.1)) * amplitude; this.camera.rotation.x += pitchShake; this.camera.rotation.y += yawShake * 0.65; this.camera.rotation.z += rollShake * 0.8; if (this.shake.time <= 0) this.shake.amplitude = 0; } } function damp(current, target, sharpness, dt) { return THREE.MathUtils.lerp(current, target, 1 - Math.exp(-sharpness * dt)); } function dampAngle(current, target, sharpness, dt) { const difference = THREE.MathUtils.euclideanModulo(target - current + Math.PI, Math.PI * 2) - Math.PI; return current + difference * (1 - Math.exp(-sharpness * dt)); } const keys = new Set(); addEventListener('keydown', (event) => { keys.add(event.code); if (event.code === 'KeyL') cameraRig.setLockOn(cameraRig.locked ? null : target); if (event.code === 'Space') cameraRig.addShake(0.18, 0.28); }); addEventListener('keyup', (event) => keys.delete(event.code)); let dragging = false; let lastPointer = { x: 0, y: 0 }; renderer.domElement.addEventListener('pointerdown', (event) => { dragging = true; lastPointer = { x: event.clientX, y: event.clientY }; renderer.domElement.setPointerCapture(event.pointerId); }); renderer.domElement.addEventListener('pointermove', (event) => { if (!dragging || cameraRig.locked) return; const dx = event.clientX - lastPointer.x; const dy = event.clientY - lastPointer.y; cameraRig.orbit(-dx * 0.006, -dy * 0.006); lastPointer = { x: event.clientX, y: event.clientY }; }); renderer.domElement.addEventListener('pointerup', () => { dragging = false; }); renderer.domElement.addEventListener('wheel', (event) => { cameraRig.distance = THREE.MathUtils.clamp( cameraRig.distance + event.deltaY * 0.005, cameraRig.minDistance, cameraRig.maxDistance, ); }); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); }); const clock = new THREE.Clock(); function animate() { requestAnimationFrame(animate); const dt = clock.getDelta(); const movement = new THREE.Vector3( (keys.has('KeyD') ? 1 : 0) - (keys.has('KeyA') ? 1 : 0), 0, (keys.has('KeyS') ? 1 : 0) - (keys.has('KeyW') ? 1 : 0), ); if (movement.lengthSq() > 0) { movement.normalize().multiplyScalar(3 * dt); player.position.add(movement); } cameraRig.update(dt); renderer.render(scene, camera); } animate();References
3- kevinyhe/eureka-hacks-2026js/main.js
Relevant Three.js third-person over-the-shoulder/target framing via camera position + lookAt, plus procedural screen/camera shake integration; does not use OrbitControls lock-on yaw/pitch explicitly, but includes the core lock-on-style targeting math and shake behavior.
- atul-mourya/rayzee-rendererrayzee/src/managers/CameraManager.js
Production-quality Three.js + OrbitControls camera manager implementation that supports orbit-target framing, camera switching, and per-frame focus logic (auto-focus raycasting), aligning with the lock-on/orbit-target part of an over-the-shoulder rig; does not explicitly cover the requested yaw/pitch lock-on mechanics or screen-shake implementation.
- rahil-algobear/SpeedRacersrc/game/CameraRig.js
High-quality three.js third-person camera rig code (CameraRig.js) implementing orbit-style framing, over-the-shoulder/chase modes, explicit yaw/pitch/look direction (gaze), and a speed/surface-based screen shake system.
Request
Request payload
{ "query": "third person game camera rig lock-on target framing over the shoulder with orbit yaw pitch and screen shake in three.js", "language": "javascript", "license_mode": "strict" }- kevinyhe/eureka-hacks-2026js/main.js
+1:45:26Code GrepCode navigationthree“begin_vertex”
begin_vertex
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderLib/meshphysical.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 44, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L36-L44", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 36 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js" } ], "pattern": "begin_vertex", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderLib/meshphysical.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 44, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L36-L44", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 36 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+1:45:27Code GrepCode navigationthree“gl_FragColor = vec4( packNormalToRGB”
gl_FragColor = vec4( packNormalToRGB
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js" } ], "pattern": "gl_FragColor = vec4( packNormalToRGB", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+1:45:37Get ExampleGenerated examplejavascript game state machine scene manager title pause gameplay transitions
javascript game state machine scene manager title pause gameplay transitions · javascript · strict
JavaScript Game Scene Manager with Title, Gameplay, Pause, and Win States
// Save as game.js and load it from an HTML page with a <script src="game.js"></script> tag. class SceneManager { constructor({ canvas, context }) { this.canvas = canvas; this.context = context; this.scenes = new Map(); this.current = null; this.lastTime = 0; } add(name, scene) { this.scenes.set(name, scene); scene.manager = this; return this; } change(name, data = {}) { const next = this.scenes.get(name); if (!next) throw new Error(`Unknown scene: ${name}`); this.current?.exit?.(); this.current = next; this.current.enter?.(data); } update(deltaTime) { this.current?.update?.(deltaTime); } render() { this.context.clearRect(0, 0, this.canvas.width, this.canvas.height); this.current?.render?.(this.context); } start(initialScene) { this.change(initialScene); requestAnimationFrame((time) => this.loop(time)); } loop(time) { const deltaTime = Math.min((time - this.lastTime) / 1000, 0.1); this.lastTime = time; this.update(deltaTime); this.render(); requestAnimationFrame((nextTime) => this.loop(nextTime)); } } class Scene { enter() {} exit() {} update() {} render() {} } class TitleScene extends Scene { enter() { this.manager.canvas.style.cursor = "default"; } update() { if (Input.wasPressed("Enter") || Input.wasPressed("Space")) { this.manager.change("gameplay", { score: 0 }); } } render(context) { drawBackground(context, "#10152b"); drawCenteredText(context, "NEON ASCENT", 120, 48, "#67e8f9"); drawCenteredText(context, "Press Enter or Space to start", 190, 20, "#e5e7eb"); } } class GameplayScene extends Scene { enter({ score = 0 } = {}) { this.score = score; this.player = { x: 150, y: 180, speed: 180 }; } update(deltaTime) { if (Input.wasPressed("Escape")) { this.manager.change("pause", { gameplay: this }); return; } if (Input.wasPressed("KeyW") || Input.wasPressed("ArrowUp")) { this.score += 10; } const direction = Number(Input.isDown("ArrowRight") || Input.isDown("KeyD")) - Number(Input.isDown("ArrowLeft") || Input.isDown("KeyA")); this.player.x += direction * this.player.speed * deltaTime; this.player.x = Math.max(20, Math.min(280, this.player.x)); if (this.score >= 50) { this.manager.change("win", { score: this.score }); } } render(context) { drawBackground(context, "#07151d"); context.fillStyle = "#243b53"; context.fillRect(0, 220, 320, 20); context.fillStyle = "#f472b6"; context.fillRect(this.player.x, this.player.y, 20, 20); context.fillStyle = "#e5e7eb"; context.font = "14px monospace"; context.fillText(`Score: ${this.score}`, 12, 22); context.fillText("Escape: pause | Arrow keys/WASD: move", 12, 42); } } class PauseScene extends Scene { enter({ gameplay }) { this.gameplay = gameplay; } update() { if (Input.wasPressed("Escape") || Input.wasPressed("Enter")) { this.manager.change("gameplay"); } else if (Input.wasPressed("KeyR")) { this.manager.change("gameplay", { score: 0 }); } else if (Input.wasPressed("KeyQ")) { this.manager.change("title"); } } render(context) { this.gameplay.render(context); context.fillStyle = "rgba(0, 0, 0, 0.72)"; context.fillRect(0, 0, 320, 240); drawCenteredText(context, "PAUSED", 90, 32, "#fbbf24"); drawCenteredText(context, "Enter/Esc: Resume", 140, 16, "#fff"); drawCenteredText(context, "R: Restart Q: Title", 170, 16, "#fff"); } } class WinScene extends Scene { enter({ score }) { this.score = score; } update() { if (Input.wasPressed("Enter") || Input.wasPressed("Space")) { this.manager.change("gameplay", { score: 0 }); } else if (Input.wasPressed("Escape")) { this.manager.change("title"); } } render(context) { drawBackground(context, "#10251b"); drawCenteredText(context, "YOU WIN", 105, 40, "#4ade80"); drawCenteredText(context, `Final score: ${this.score}`, 150, 18, "#fff"); drawCenteredText(context, "Enter: Restart | Escape: Title", 190, 16, "#d1d5db"); } } const Input = { down: new Set(), pressed: new Set(), isDown(key) { return this.down.has(key); }, wasPressed(key) { return this.pressed.has(key); }, endFrame() { this.pressed.clear(); } }; document.addEventListener("keydown", (event) => { if (!Input.down.has(event.code)) Input.pressed.add(event.code); Input.down.add(event.code); if (["Space", "ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight"].includes(event.code)) { event.preventDefault(); } }); document.addEventListener("keyup", (event) => Input.down.delete(event.code)); function drawBackground(context, color) { context.fillStyle = color; context.fillRect(0, 0, 320, 240); } function drawCenteredText(context, text, y, size, color) { context.fillStyle = color; context.font = `${size}px monospace`; context.textAlign = "center"; context.fillText(text, 160, y); context.textAlign = "left"; } const canvas = document.createElement("canvas"); canvas.width = 320; canvas.height = 240; canvas.style.width = "640px"; canvas.style.imageRendering = "pixelated"; document.body.style.margin = "0"; document.body.style.background = "#000"; document.body.append(canvas); const context = canvas.getContext("2d"); const manager = new SceneManager({ canvas, context }); manager .add("title", new TitleScene()) .add("gameplay", new GameplayScene()) .add("pause", new PauseScene()) .add("win", new WinScene()); // Clear one-frame input after each rendered frame. const originalRender = manager.render.bind(manager); manager.render = () => { originalRender(); Input.endFrame(); }; manager.start("title");References
2- chicaron82/VN-Projectv1/system/game-engine.js
JavaScript game engine code that directly implements core game loop and state/scene management, including transition handling and pause-related UI/state orchestration (ESC/pause/skip controls). While the specific 'scene manager' term isn't guaranteed, it is a strong, directly applicable scene/state architecture example.
- decagondev/platformRPRD: Neon Ascent — 2D Precision Platformer MVP
Game design doc specifically describing a scene manager as a state machine with explicit Title/Game/Win scenes and Pause as a sub-state, plus clear “state” and “scene transitions” architecture for a JavaScript web game.
Request
Request payload
{ "query": "javascript game state machine scene manager title pause gameplay transitions", "language": "javascript", "license_mode": "strict" }- chicaron82/VN-Projectv1/system/game-engine.js
+1:45:43Code GrepCode navigationthree“gl_FragColor”
gl_FragColor
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "src/renderers/shaders/ShaderLib/meshnormal.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 82, "file_path": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshnormal.glsl.js#L72-L82", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 72 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 86, "file_path": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshnormal.glsl.js#L76-L86", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 76 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 5, "context_lines_before": 5, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js" } ], "pattern": "gl_FragColor", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "src/renderers/shaders/ShaderLib/meshnormal.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 82, "file_path": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshnormal.glsl.js#L72-L82", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 72 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 86, "file_path": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshnormal.glsl.js#L76-L86", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 76 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+1:50:01PKG InfoPackage intelligencepkg:npm:simplex-noise
pkg:npm:simplex-noiseResult summary
{ "outcome": "result_returned", "packages": [ "npm:simplex-noise" ], "status": "success" }Request
Request payload
{ "name": "simplex-noise", "registry": "npm" }Response
Response payload
{ "summary": { "outcome": "result_returned", "packages": [ "npm:simplex-noise" ], "status": "success" }, "title": null, "content": null }+1:50:07Code GrepCode navigationthree“function mergeGeometries”
function mergeGeometries
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 143, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L123-L143", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 123 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "function mergeGeometries", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 143, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L123-L143", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 123 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+1:50:09Code GrepCode navigationthree“"./addons/*"”
"./addons/*"
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "package.json" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 22, "file_path": "package.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/package.json#L10-L22", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 10 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "\"./addons/*\"", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "package.json" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 22, "file_path": "package.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/package.json#L10-L22", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 10 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+1:50:16Code GrepCode navigationthree“setIndex( index )”
setIndex( index )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 240, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L220-L240", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 220 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/BufferGeometry.js" } ], "pattern": "setIndex( index )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 240, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L220-L240", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 220 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+1:50:20Code GrepCode navigationthree-mesh-bvh“function computeBoundsTree”
function computeBoundsTree
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/index.d.ts", "src/utils/ExtensionUtilities.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 323, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L303-L323", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 303 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 186, "file_path": "src/utils/ExtensionUtilities.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/utils/ExtensionUtilities.js#L166-L186", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 166 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "pattern": "function computeBoundsTree", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/index.d.ts", "src/utils/ExtensionUtilities.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 323, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L303-L323", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 303 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 186, "file_path": "src/utils/ExtensionUtilities.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/utils/ExtensionUtilities.js#L166-L186", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 166 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }, "title": null, "content": null }+1:50:28Code GrepCode navigationthree-mesh-bvh“constructor( geometry, options”
constructor( geometry, options
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/GeometryBVH.js", "src/core/LineBVH.js", "src/core/MeshBVH.js", "test/ShapeCasts.test.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 103, "file_path": "src/core/GeometryBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/GeometryBVH.js#L83-L103", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 83 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 230, "file_path": "src/core/LineBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/LineBVH.js#L210-L230", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 210 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 263, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L243-L263", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 243 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 58, "file_path": "test/ShapeCasts.test.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/test/ShapeCasts.test.js#L38-L58", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 38 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 4 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "pattern": "constructor( geometry, options", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/GeometryBVH.js", "src/core/LineBVH.js", "src/core/MeshBVH.js", "test/ShapeCasts.test.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 103, "file_path": "src/core/GeometryBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/GeometryBVH.js#L83-L103", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 83 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 230, "file_path": "src/core/LineBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/LineBVH.js#L210-L230", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 210 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 263, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L243-L263", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 243 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 58, "file_path": "test/ShapeCasts.test.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/test/ShapeCasts.test.js#L38-L58", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 38 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 4 }, "title": null, "content": null }+1:50:29Get ExampleGenerated examplethree.js procedural heightfield terrain BufferGeometry with per-vertex colors and analytic normals from height grid
three.js procedural heightfield terrain BufferGeometry with per-vertex colors and analytic normals from height grid · javascript · strict
Three.js Heightfield BufferGeometry with Analytic Normals
import * as THREE from 'three'; const GRID_SIZE = 160; const WORLD_SIZE = 40; const VERTEX_COUNT = GRID_SIZE + 1; const CELL_SIZE = WORLD_SIZE / GRID_SIZE; function heightAt(x, z) { const broad = Math.sin(x * 0.28) * 1.8; const ridges = Math.cos(z * 0.22 + x * 0.12) * 1.2; const detail = Math.sin(x * 1.7 + z * 0.4) * 0.18 + Math.cos(z * 1.9 - x * 0.3) * 0.14; return broad + ridges + detail; } function createTerrain() { const vertexTotal = VERTEX_COUNT * VERTEX_COUNT; const positions = new Float32Array(vertexTotal * 3); const normals = new Float32Array(vertexTotal * 3); const colors = new Float32Array(vertexTotal * 3); const indices = new Uint32Array(GRID_SIZE * GRID_SIZE * 6); let minHeight = Infinity; let maxHeight = -Infinity; // Build the height grid once so both positions and analytic normals use it. const heights = Array.from({ length: VERTEX_COUNT }, () => new Float32Array(VERTEX_COUNT), ); for (let z = 0; z < VERTEX_COUNT; z++) { for (let x = 0; x < VERTEX_COUNT; x++) { const worldX = x * CELL_SIZE - WORLD_SIZE / 2; const worldZ = z * CELL_SIZE - WORLD_SIZE / 2; const h = heightAt(worldX, worldZ); heights[z][x] = h; minHeight = Math.min(minHeight, h); maxHeight = Math.max(maxHeight, h); } } for (let z = 0; z < VERTEX_COUNT; z++) { for (let x = 0; x < VERTEX_COUNT; x++) { const vertex = z * VERTEX_COUNT + x; const positionOffset = vertex * 3; const h = heights[z][x]; const worldX = x * CELL_SIZE - WORLD_SIZE / 2; const worldZ = z * CELL_SIZE - WORLD_SIZE / 2; positions[positionOffset] = worldX; positions[positionOffset + 1] = h; positions[positionOffset + 2] = worldZ; // Central differences approximate dh/dx and dh/dz from the sampled grid. // Clamping makes the boundary use a one-sided difference naturally. const left = heights[z][Math.max(0, x - 1)]; const right = heights[z][Math.min(GRID_SIZE, x + 1)]; const down = heights[Math.max(0, z - 1)][x]; const up = heights[Math.min(GRID_SIZE, z + 1)][x]; const dxDenominator = x === 0 || x === GRID_SIZE ? CELL_SIZE : 2 * CELL_SIZE; const dzDenominator = z === 0 || z === GRID_SIZE ? CELL_SIZE : 2 * CELL_SIZE; const dhdx = (right - left) / dxDenominator; const dhdz = (up - down) / dzDenominator; // For p(x,z) = (x, h(x,z), z), the upward normal is (-dh/dx, 1, -dh/dz). const normal = new THREE.Vector3(-dhdx, 1, -dhdz).normalize(); normals[positionOffset] = normal.x; normals[positionOffset + 1] = normal.y; normals[positionOffset + 2] = normal.z; const height01 = (h - minHeight) / (maxHeight - minHeight); const slope = 1 - normal.y; const color = new THREE.Color(); if (height01 < 0.42) { color.setRGB(0.10, 0.28, 0.12); // lowland } else if (height01 < 0.72) { color.setRGB(0.35, 0.46, 0.16); // grass } else { color.setRGB(0.55, 0.52, 0.42); // highland } // Darken steep faces while retaining the height-based palette. color.multiplyScalar(THREE.MathUtils.lerp(1, 0.68, slope)); colors[positionOffset] = color.r; colors[positionOffset + 1] = color.g; colors[positionOffset + 2] = color.b; } } let index = 0; for (let z = 0; z < GRID_SIZE; z++) { for (let x = 0; x < GRID_SIZE; x++) { const a = z * VERTEX_COUNT + x; const b = a + 1; const c = a + VERTEX_COUNT; const d = c + 1; indices[index++] = a; indices[index++] = c; indices[index++] = b; indices[index++] = b; indices[index++] = c; indices[index++] = d; } } const geometry = new THREE.BufferGeometry(); geometry.setAttribute('position', new THREE.BufferAttribute(positions, 3)); geometry.setAttribute('normal', new THREE.BufferAttribute(normals, 3)); geometry.setAttribute('color', new THREE.BufferAttribute(colors, 3)); geometry.setIndex(new THREE.BufferAttribute(indices, 1)); geometry.computeBoundingSphere(); const material = new THREE.MeshStandardMaterial({ vertexColors: true, roughness: 0.92, metalness: 0, side: THREE.DoubleSide, }); return new THREE.Mesh(geometry, material); } const scene = new THREE.Scene(); scene.background = new THREE.Color(0x9fc4df); const camera = new THREE.PerspectiveCamera(55, innerWidth / innerHeight, 0.1, 200); camera.position.set(28, 25, 28); camera.lookAt(0, 0, 0); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.setSize(innerWidth, innerHeight); document.body.appendChild(renderer.domElement); scene.add(new THREE.HemisphereLight(0xb9d8ff, 0x39452b, 2.2)); const sun = new THREE.DirectionalLight(0xfff1d2, 3.2); sun.position.set(-18, 35, 12); scene.add(sun); scene.add(createTerrain()); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); }); function animate() { requestAnimationFrame(animate); renderer.render(scene, camera); } animate();References
1- kaolti/monolith-terrainsrc/terrain.js
Strong Three.js terrain heightfield implementation using BufferGeometry, CPU-sampled height grid, per-vertex colors, and computed vertex normals (computeVertexNormals) on the generated geometry; while normals are not explicitly “analytic from finite differences,” it matches the core pipeline for procedural heightfield terrain with per-vertex colors and correct normal vectors.
Request
Request payload
{ "query": "three.js procedural heightfield terrain BufferGeometry with per-vertex colors and analytic normals from height grid", "language": "javascript", "license_mode": "strict" }- kaolti/monolith-terrainsrc/terrain.js
+1:50:41Code GrepCode navigationthree“setPixelRatio”
setPixelRatio
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 636, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L620-L636", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 620 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "setPixelRatio", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 636, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L620-L636", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 620 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+1:50:42Code GrepCode navigationthree“set( channel )”
set( channel )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/Layers.js" } ], "pattern": "set( channel )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+1:50:46Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 90, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 90, "file_path": "src/core/Layers.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Layers.js#L30-L90", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 30 } ], "start_line": 30, "status": "success", "total_lines": 121 }Request
Request payload
{ "end_line": 90, "file_path": "src/core/Layers.js", "package_name": "three", "registry": "npm", "start_line": 30, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 90, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 90, "file_path": "src/core/Layers.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Layers.js#L30-L90", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 30 } ], "start_line": 30, "status": "success", "total_lines": 121 }, "title": null, "content": null }+1:50:49Code GrepCode navigationthree“class Fog”
class Fog
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/scenes/Fog.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 22, "file_path": "src/scenes/Fog.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/scenes/Fog.js#L2-L22", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/scenes/Fog.js" } ], "pattern": "class Fog", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/scenes/Fog.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 22, "file_path": "src/scenes/Fog.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/scenes/Fog.js#L2-L22", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+1:51:12Code GrepCode navigationthree“customProgramCacheKey”
customProgramCacheKey
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 390, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L374-L390", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 374 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 390, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L374-L390", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 374 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 440, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L424-L440", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 424 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLPrograms.js" } ], "pattern": "customProgramCacheKey", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 390, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L374-L390", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 374 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 390, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L374-L390", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 374 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 440, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L424-L440", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 424 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }, "title": null, "content": null }+1:53:12Code GrepCode navigationthree“uniform vec3 cameraPosition;”
uniform vec3 cameraPosition;
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 610, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L594-L610", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 594 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 776, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L760-L776", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 760 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/renderers/webgl/WebGLProgram.js" } ], "pattern": "uniform vec3 cameraPosition;", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 610, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L594-L610", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 594 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 776, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L760-L776", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 760 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+1:53:36Code GrepCode navigationthree“class Float32BufferAttribute”
class Float32BufferAttribute
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.core.js", "src/core/BufferAttribute.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 17742, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L17726-L17742", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 17726 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 17762, "file_path": "build/three.core.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.core.js#L17746-L17762", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 17746 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1034, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L1018-L1034", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1018 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 3 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "class Float32BufferAttribute", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.core.js", "src/core/BufferAttribute.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 17742, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L17726-L17742", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 17726 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 17762, "file_path": "build/three.core.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.core.js#L17746-L17762", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 17746 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1034, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L1018-L1034", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1018 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 3 }, "title": null, "content": null }+1:53:37Code GrepCode navigationthree“computeVertexNormals() {”
computeVertexNormals() {
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1015, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L995-L1015", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 995 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/BufferGeometry.js" } ], "pattern": "computeVertexNormals() {", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1015, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L995-L1015", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 995 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+1:55:52Get ExampleGenerated exampleWeb Audio API lookahead scheduler setTimeout currentTime note scheduling sequencer
Web Audio API lookahead scheduler setTimeout currentTime note scheduling sequencer · javascript · strict
Web Audio API Lookahead Sequencer
// Web Audio API sequencer using a timer for lookahead scheduling. const audioContext = new (window.AudioContext || window.webkitAudioContext)(); const tempo = 120; const stepsPerBeat = 4; const stepDuration = 60 / tempo / stepsPerBeat; const lookaheadMs = 25; const scheduleAheadTime = 0.1; const notes = [261.63, 293.66, 329.63, 392.00, 329.63, 293.66, 261.63, 196.00]; let isPlaying = false; let timerId = null; let nextNoteTime = 0; let nextStep = 0; const scheduledNotes = []; function scheduleNote(frequency, time, step) { const oscillator = audioContext.createOscillator(); const gain = audioContext.createGain(); oscillator.type = "triangle"; oscillator.frequency.value = frequency; oscillator.connect(gain).connect(audioContext.destination); gain.gain.setValueAtTime(0.0001, time); gain.gain.exponentialRampToValueAtTime(0.18, time + 0.01); gain.gain.exponentialRampToValueAtTime(0.0001, time + stepDuration * 0.9); oscillator.start(time); oscillator.stop(time + stepDuration); scheduledNotes.push({ step, time }); } function advanceNote() { nextNoteTime += stepDuration; nextStep = (nextStep + 1) % notes.length; } function scheduler() { if (!isPlaying) return; // Schedule against AudioContext time, not wall-clock time. while (nextNoteTime < audioContext.currentTime + scheduleAheadTime) { scheduleNote(notes[nextStep], nextNoteTime, nextStep); advanceNote(); } timerId = setTimeout(scheduler, lookaheadMs); } async function start() { if (isPlaying) return; await audioContext.resume(); // Must be called from a user gesture. isPlaying = true; nextStep = 0; nextNoteTime = audioContext.currentTime + 0.05; scheduledNotes.length = 0; scheduler(); } function stop() { isPlaying = false; clearTimeout(timerId); timerId = null; } const startButton = document.createElement("button"); startButton.textContent = "Start"; startButton.addEventListener("click", start); a const stopButton = document.createElement("button"); stopButton.textContent = "Stop"; stopButton.addEventListener("click", stop); document.body.append(startButton, stopButton);References
2- imkhub1/imk-tetrisaudio.js
Implements a Web Audio API lookahead-style scheduler using AudioContext.currentTime plus a setInterval “scheduler” loop to schedule steps and notes/SFX, directly matching the query’s sequencer + currentTime + lookahead pattern in JavaScript.
- LividInstruments/WebMIDIjs/seq.js
JavaScript example of a Web Audio API lookahead scheduler using `seqContext.currentTime` plus a `setTimeout`-driven `scheduler()` loop for note scheduling (sequencer timing).
Request
Request payload
{ "query": "Web Audio API lookahead scheduler setTimeout currentTime note scheduling sequencer", "language": "javascript", "license_mode": "strict" }- imkhub1/imk-tetrisaudio.js
+1:56:29Get ExampleGenerated examplegenerate synthetic impulse response buffer for ConvolverNode reverb decay noise
generate synthetic impulse response buffer for ConvolverNode reverb decay noise · javascript · strict
Generate a Synthetic Convolution Reverb Impulse Response
/** * Creates a stereo synthetic impulse response for a ConvolverNode. * The response is white noise shaped by an exponential decay envelope. */ function createImpulseResponse(audioContext, { duration = 2.4, decay = 2.0, channels = 2, normalize = true, } = {}) { if (!audioContext || typeof audioContext.createBuffer !== 'function') { throw new TypeError('A valid AudioContext is required.'); } const sampleRate = audioContext.sampleRate; const length = Math.max(1, Math.floor(sampleRate * duration)); const impulse = audioContext.createBuffer(channels, length, sampleRate); for (let channel = 0; channel < channels; channel++) { const data = impulse.getChannelData(channel); for (let i = 0; i < length; i++) { const time = i / sampleRate; const envelope = Math.exp(-decay * time / duration); const noise = Math.random() * 2 - 1; data[i] = noise * envelope; } } // Keep the convolution level predictable without changing the stereo image. if (normalize) { let peak = 0; for (let channel = 0; channel < channels; channel++) { const data = impulse.getChannelData(channel); for (const sample of data) peak = Math.max(peak, Math.abs(sample)); } if (peak > 0) { for (let channel = 0; channel < channels; channel++) { const data = impulse.getChannelData(channel); for (let i = 0; i < data.length; i++) data[i] *= 0.9 / peak; } } } return impulse; } // Example usage in a browser: const audioContext = new (window.AudioContext || window.webkitAudioContext)(); const convolver = audioContext.createConvolver(); convolver.buffer = createImpulseResponse(audioContext, { duration: 3, decay: 2.5, }); // Route an input source through the reverb. const input = audioContext.createGain(); input.connect(convolver); convolver.connect(audioContext.destination);References
6- XHiddenProjects/ForgeEngineutils/src/sound.js
Direct JavaScript implementation of Web Audio ConvolverNode-style synthetic impulse response with exponentially decaying noise, using AudioBuffer.getChannelData to fill channels and assign to convolver.buffer; matches the requested reverb decay/noise generation pattern.
- processing/p5.js-soundsrc/reverb.js
JavaScript implementation (p5.js-sound) that builds an impulse response for a ConvolverNode-based reverb using random noise scaled by Math.pow(1 - n/length, decay) and supports reverse/decay/seconds via set()/process().
- Bino-Elgua/Swibepwa/audio.js
JavaScript code generating a synthetic reverb impulse response buffer (2-channel) with exponentially decaying random noise, then assigning it to a ConvolverNode; closely matches the decay/noise impulse-response generation intent.
- gillworks/red-sandssrc/audio/Noise.js
Directly implements synthetic impulse response generation for a Web Audio ConvolverNode (includes decaying noise tail, stereo impulse buffer via AudioBuffer/getChannelData), matching the query intent and required APIs.
- alemangui/pizzicatosite/Pizzicato.js
Implements Web Audio Convolver-based reverb by generating an impulse response buffer (uses createConvolver and AudioBuffer/getChannelData) with decay shaping; however it uses Math.random (non-deterministic) and focuses on a library reverb effect rather than a standalone “synthetic impulse response decay noise” generator.
- alemangui/pizzicatodistr/Pizzicato.js
Implements a synthetic ConvolverNode impulse response by generating an AudioBuffer with decaying random noise (getChannelData, Math.random, decay/time) and assigns it to reverbNode.buffer in a JavaScript Web Audio reverb effect.
Request
Request payload
{ "query": "generate synthetic impulse response buffer for ConvolverNode reverb decay noise", "language": "javascript", "license_mode": "strict" }- XHiddenProjects/ForgeEngineutils/src/sound.js
+1:57:10Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 95, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 95, "file_path": "src/audio/AudioListener.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/AudioListener.js#L35-L95", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 35 } ], "start_line": 35, "status": "success", "total_lines": 218 }Request
Request payload
{ "end_line": 95, "file_path": "src/audio/AudioListener.js", "package_name": "three", "registry": "npm", "start_line": 35, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 95, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 95, "file_path": "src/audio/AudioListener.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/AudioListener.js#L35-L95", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 35 } ], "start_line": 35, "status": "success", "total_lines": 218 }, "title": null, "content": null }+1:57:17Code GrepCode navigationthree“setNodeSource”
setNodeSource
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/audio/Audio.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 248, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L228-L248", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 228 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/audio/Audio.js" } ], "pattern": "setNodeSource", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/audio/Audio.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 248, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L228-L248", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 228 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+1:57:28Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 130, "indexing_status": "indexed", "language": "javascript", "line_count": 130, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 130, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L1-L130", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 253 }Request
Request payload
{ "end_line": 130, "file_path": "src/audio/PositionalAudio.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 130, "indexing_status": "indexed", "language": "javascript", "line_count": 130, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 130, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L1-L130", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 253 }, "title": null, "content": null }+1:57:34Code GrepCode navigationthree“setMatrixAt|setColorAt|instanceColor|setUsage|computeBoundingSphere”
setMatrixAt|setColorAt|instanceColor|setUsage|computeBoundingSphere
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 56, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L50-L56", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 50 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 65, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L59-L65", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 59 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 70, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L64-L70", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 98, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L92-L98", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 92 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 107, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L101-L107", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 101 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 116, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L110-L116", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 110 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 152, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L146-L152", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 146 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 154, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L148-L154", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 148 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 167, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L161-L167", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 161 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 192, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L186-L192", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 186 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 192, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L186-L192", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 186 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 192, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L186-L192", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 186 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 212, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L206-L212", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 206 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 218, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L212-L218", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 212 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 273, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L267-L273", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 267 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 315, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L309-L315", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 309 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 321, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L315-L321", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 315 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 323, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L317-L323", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 317 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 325, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L319-L325", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 319 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 329, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L323-L329", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 323 } ], "returned_matches": 20, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 20, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 40, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/objects/InstancedMesh.js" } ], "pattern": "setMatrixAt|setColorAt|instanceColor|setUsage|computeBoundingSphere", "pattern_type": "REGEX", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js", "src/objects/InstancedMesh.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 56, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L50-L56", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 50 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 65, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L59-L65", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 59 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 70, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L64-L70", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 98, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L92-L98", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 92 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 107, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L101-L107", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 101 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 116, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L110-L116", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 110 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 152, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L146-L152", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 146 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 154, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L148-L154", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 148 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 167, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L161-L167", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 161 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 192, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L186-L192", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 186 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 192, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L186-L192", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 186 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 192, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L186-L192", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 186 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 212, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L206-L212", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 206 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 218, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L212-L218", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 212 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 273, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L267-L273", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 267 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 315, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L309-L315", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 309 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 321, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L315-L321", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 315 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 323, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L317-L323", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 317 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 325, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L319-L325", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 319 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 329, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L323-L329", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 323 } ], "returned_matches": 20, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 20, "unique_files_matched": 1 }, "title": null, "content": null }+1:57:35Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 80, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 80, "file_path": "src/geometries/LatheGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/LatheGeometry.js#L20-L80", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 20 } ], "start_line": 20, "status": "success", "total_lines": 230 }Request
Request payload
{ "end_line": 80, "file_path": "src/geometries/LatheGeometry.js", "package_name": "three", "registry": "npm", "start_line": 20, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 80, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 80, "file_path": "src/geometries/LatheGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/LatheGeometry.js#L20-L80", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 20 } ], "start_line": 20, "status": "success", "total_lines": 230 }, "title": null, "content": null }+1:57:35Code GrepCode navigationthree“updateMatrixWorld”
updateMatrixWorld
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/audio/PositionalAudio.js", "src/audio/PositionalAudio.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 227, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L207-L227", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 207 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 229, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L209-L229", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 209 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/audio/PositionalAudio.js" } ], "pattern": "updateMatrixWorld", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/audio/PositionalAudio.js", "src/audio/PositionalAudio.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 227, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L207-L227", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 207 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 229, "file_path": "src/audio/PositionalAudio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/PositionalAudio.js#L209-L229", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 209 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+1:57:38Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 70, "indexing_status": "indexed", "language": "javascript", "line_count": 70, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 70, "file_path": "src/lights/PointLight.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/lights/PointLight.js#L1-L70", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 131 }Request
Request payload
{ "end_line": 70, "file_path": "src/lights/PointLight.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 70, "indexing_status": "indexed", "language": "javascript", "line_count": 70, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 70, "file_path": "src/lights/PointLight.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/lights/PointLight.js#L1-L70", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 131 }, "title": null, "content": null }+1:57:39Get ExampleGenerated exampleHTML DOM HUD overlay on top of Three.js canvas, pointer-events none container, health bar and compass updated from an event bus
HTML DOM HUD overlay on top of Three.js canvas, pointer-events none container, health bar and compass updated from an event bus · javascript · strict
Three.js HUD Overlay with Event-Bus Updates
// Assumes THREE is available globally. class EventBus { constructor() { this.listeners = new Map(); } on(eventName, listener) { if (!this.listeners.has(eventName)) this.listeners.set(eventName, new Set()); this.listeners.get(eventName).add(listener); return () => this.listeners.get(eventName)?.delete(listener); } emit(eventName, payload) { for (const listener of this.listeners.get(eventName) || []) { listener(payload); } } } class GameHUD { constructor({ parent = document.body, bus }) { this.bus = bus; this.root = document.createElement('div'); this.root.id = 'game-hud'; Object.assign(this.root.style, { position: 'fixed', inset: '0', zIndex: '10', pointerEvents: 'none', fontFamily: 'system-ui, sans-serif', color: '#fff' }); this.root.innerHTML = ` <section style="position:absolute;top:20px;left:20px;width:220px;padding:12px;background:rgba(8,12,20,.78);border:1px solid rgba(255,255,255,.2);border-radius:8px"> <div style="font-size:12px;margin-bottom:6px">HEALTH <span id="health-text">100 / 100</span></div> <div style="height:12px;background:#26303b;border-radius:6px;overflow:hidden"> <div id="health-fill" style="height:100%;width:100%;background:#35d07f;transition:width .2s,background .2s"></div> </div> </section> <section style="position:absolute;top:20px;right:20px;width:110px;height:110px;display:grid;place-items:center;background:rgba(8,12,20,.78);border:1px solid rgba(255,255,255,.2);border-radius:50%"> <span style="position:absolute;top:7px;font-size:11px">N</span> <span style="position:absolute;right:9px;font-size:11px">E</span> <span style="position:absolute;bottom:7px;font-size:11px">S</span> <span style="position:absolute;left:9px;font-size:11px">W</span> <span id="compass-arrow" style="font-size:36px;color:#ff5b5b;transform:rotate(0deg);transition:transform .15s">▲</span> </section> `; parent.appendChild(this.root); this.healthFill = this.root.querySelector('#health-fill'); this.healthText = this.root.querySelector('#health-text'); this.compassArrow = this.root.querySelector('#compass-arrow'); this.unsubscribe = [ bus.on('player:health', ({ current, maximum }) => this.setHealth(current, maximum)), bus.on('player:heading', ({ degrees }) => this.setHeading(degrees)) ]; } setHealth(current, maximum) { const safeMaximum = Math.max(1, maximum); const clamped = Math.max(0, Math.min(current, safeMaximum)); const percentage = (clamped / safeMaximum) * 100; this.healthFill.style.width = `${percentage}%`; this.healthFill.style.background = percentage <= 25 ? '#ef4444' : percentage <= 50 ? '#f59e0b' : '#35d07f'; this.healthText.textContent = `${Math.ceil(clamped)} / ${safeMaximum}`; } setHeading(degrees) { // The arrow points toward the current heading; north is zero degrees. this.compassArrow.style.transform = `rotate(${degrees}deg)`; } destroy() { this.unsubscribe.forEach((unsubscribe) => unsubscribe()); this.root.remove(); } } function createThreeScene() { const bus = new EventBus(); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(window.devicePixelRatio, 2)); renderer.setSize(window.innerWidth, window.innerHeight); renderer.domElement.style.display = 'block'; document.body.style.margin = '0'; document.body.style.overflow = 'hidden'; document.body.appendChild(renderer.domElement); const scene = new THREE.Scene(); scene.background = new THREE.Color(0x111827); const camera = new THREE.PerspectiveCamera(60, window.innerWidth / window.innerHeight, 0.1, 1000); camera.position.set(0, 2.5, 6); camera.lookAt(0, 1, 0); scene.add(new THREE.HemisphereLight(0xffffff, 0x334155, 2)); const cube = new THREE.Mesh( new THREE.BoxGeometry(2, 2, 2), new THREE.MeshStandardMaterial({ color: 0x38bdf8 }) ); scene.add(cube); const hud = new GameHUD({ bus }); let health = 100; let heading = 0; let lastTime = performance.now(); function frame(now) { const delta = (now - lastTime) / 1000; lastTime = now; cube.rotation.y += delta; heading = (heading + delta * 25) % 360; bus.emit('player:heading', { degrees: heading }); renderer.render(scene, camera); requestAnimationFrame(frame); } window.addEventListener('keydown', (event) => { if (event.key.toLowerCase() !== 'h') return; health = Math.max(0, health - 10); bus.emit('player:health', { current: health, maximum: 100 }); }); window.addEventListener('resize', () => { camera.aspect = window.innerWidth / window.innerHeight; camera.updateProjectionMatrix(); renderer.setSize(window.innerWidth, window.innerHeight); }); bus.emit('player:health', { current: health, maximum: 100 }); requestAnimationFrame(frame); return { bus, hud, scene, camera, renderer }; } createThreeScene();References
2- nocoldiz/hypernet-explorer-pluginsjs/plugins/Vehicle/CamperDrivingSystem.js
Implements an HTML DOM overlay HUD on top of a Three.js canvas (creates positioned divs/canvas, sets `pointer-events:none`, includes minimap/compass-like UI); however it doesn’t show an explicit event-bus-driven health bar/compass update pattern, so it only partially matches the query intent.
- JohnnyOpcode/ReMixrcontent.js
JavaScript content-script code that creates a DOM overlay HUD for an interactive inspector; it includes 'overlay' behavior and uses click/hover event handling, but it does not specifically show a Three.js canvas HUD, pointer-events:none overlay container, health bar/compass, or an event-bus-driven update pattern.
Request
Request payload
{ "query": "HTML DOM HUD overlay on top of Three.js canvas, pointer-events none container, health bar and compass updated from an event bus", "language": "javascript", "license_mode": "strict" }- nocoldiz/hypernet-explorer-pluginsjs/plugins/Vehicle/CamperDrivingSystem.js
+1:57:40Code GrepCode navigationthree“connect() {”
connect() {
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/audio/Audio.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 440, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L420-L440", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 420 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/audio/Audio.js" } ], "pattern": "\tconnect() {", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/audio/Audio.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 440, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L420-L440", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 420 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+1:57:40Code GrepCode navigationthree“DynamicDrawUsage|setUsage”
DynamicDrawUsage|setUsage
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferAttribute.js", "src/core/BufferAttribute.js", "src/core/BufferAttribute.js", "src/core/InterleavedBuffer.js", "src/core/InterleavedBuffer.js", "src/core/InterleavedBuffer.js", "src/core/InterleavedBuffer.js", "src/core/UniformsGroup.js", "src/core/UniformsGroup.js", "src/core/UniformsGroup.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 112, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L104-L112", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 104 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 168, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L160-L168", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 160 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 171, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L163-L171", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 163 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 61, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L53-L61", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 53 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 114, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L106-L114", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 106 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 117, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L109-L117", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 109 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 232, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L224-L232", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 224 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 56, "file_path": "src/core/UniformsGroup.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/UniformsGroup.js#L48-L56", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 48 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 117, "file_path": "src/core/UniformsGroup.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/UniformsGroup.js#L109-L117", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 109 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "src/core/UniformsGroup.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/UniformsGroup.js#L112-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 112 } ], "returned_matches": 10, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 10, "unique_files_matched": 3 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 14, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/core" } ], "pattern": "DynamicDrawUsage|setUsage", "pattern_type": "REGEX", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferAttribute.js", "src/core/BufferAttribute.js", "src/core/BufferAttribute.js", "src/core/InterleavedBuffer.js", "src/core/InterleavedBuffer.js", "src/core/InterleavedBuffer.js", "src/core/InterleavedBuffer.js", "src/core/UniformsGroup.js", "src/core/UniformsGroup.js", "src/core/UniformsGroup.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 112, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L104-L112", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 104 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 168, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L160-L168", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 160 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 171, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L163-L171", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 163 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 61, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L53-L61", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 53 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 114, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L106-L114", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 106 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 117, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L109-L117", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 109 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 232, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L224-L232", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 224 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 56, "file_path": "src/core/UniformsGroup.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/UniformsGroup.js#L48-L56", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 48 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 117, "file_path": "src/core/UniformsGroup.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/UniformsGroup.js#L109-L117", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 109 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "src/core/UniformsGroup.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/UniformsGroup.js#L112-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 112 } ], "returned_matches": 10, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 10, "unique_files_matched": 3 }, "title": null, "content": null }+1:57:49Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 500, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 500, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L440-L500", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 440 } ], "start_line": 440, "status": "success", "total_lines": 778 }Request
Request payload
{ "end_line": 500, "file_path": "src/audio/Audio.js", "package_name": "three", "registry": "npm", "start_line": 440, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 500, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 500, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L440-L500", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 440 } ], "start_line": 440, "status": "success", "total_lines": 778 }, "title": null, "content": null }+1:58:02Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 90, "indexing_status": "indexed", "language": "javascript", "line_count": 51, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 90, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L40-L90", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 } ], "start_line": 40, "status": "success", "total_lines": 778 }Request
Request payload
{ "end_line": 90, "file_path": "src/audio/Audio.js", "package_name": "three", "registry": "npm", "start_line": 40, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 90, "indexing_status": "indexed", "language": "javascript", "line_count": 51, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 90, "file_path": "src/audio/Audio.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/audio/Audio.js#L40-L90", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 } ], "start_line": 40, "status": "success", "total_lines": 778 }, "title": null, "content": null }+1:58:08Get ExampleGenerated examplethree.js instanced grass field InstancedMesh ShaderMaterial wind sway vertex shader distance fade per-instance phase attribute
three.js instanced grass field InstancedMesh ShaderMaterial wind sway vertex shader distance fade per-instance phase attribute · javascript · strict
Three.js Instanced Grass with Wind Sway and Distance Fade
import * as THREE from 'three'; const scene = new THREE.Scene(); scene.background = new THREE.Color(0x9bc7e8); const camera = new THREE.PerspectiveCamera(55, innerWidth / innerHeight, 0.1, 250); camera.position.set(0, 12, 24); camera.lookAt(0, 0, 0); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.setSize(innerWidth, innerHeight); document.body.appendChild(renderer.domElement); const COUNT = 12000; const FIELD_SIZE = 70; const MAX_DISTANCE = 48; // A subdivided blade lets the wind bend the grass smoothly from its root. const blade = new THREE.PlaneGeometry(0.18, 1.4, 1, 4); blade.translate(0, 0.7, 0); const phases = new Float32Array(COUNT); const scales = new Float32Array(COUNT); const offsets = new Float32Array(COUNT * 3); for (let i = 0; i < COUNT; i++) { const n = i * 3; offsets[n] = (Math.random() - 0.5) * FIELD_SIZE; offsets[n + 1] = 0; offsets[n + 2] = (Math.random() - 0.5) * FIELD_SIZE; phases[i] = Math.random() * Math.PI * 2; scales[i] = 0.65 + Math.random() * 0.8; } blade.setAttribute( 'instanceOffset', new THREE.InstancedBufferAttribute(offsets, 3), ); blade.setAttribute( 'instancePhase', new THREE.InstancedBufferAttribute(phases, 1), ); blade.setAttribute( 'instanceScale', new THREE.InstancedBufferAttribute(scales, 1), ); const material = new THREE.ShaderMaterial({ uniforms: { uTime: { value: 0 }, uCameraPosition: { value: new THREE.Vector3() }, uMaxDistance: { value: MAX_DISTANCE }, uWindStrength: { value: 0.28 }, }, vertexShader: /* glsl */ ` attribute vec3 instanceOffset; attribute float instancePhase; attribute float instanceScale; uniform float uTime; uniform float uWindStrength; uniform vec3 uCameraPosition; uniform float uMaxDistance; varying float vFade; varying float vHeight; void main() { vHeight = uv.y; vec3 local = position; local.y *= instanceScale; vec3 worldBase = instanceOffset; float distanceToCamera = distance(worldBase, uCameraPosition); vFade = 1.0 - smoothstep(uMaxDistance * 0.65, uMaxDistance, distanceToCamera); // Spatial phase prevents every blade from swaying in sync. float spatialPhase = instanceOffset.x * 0.19 + instanceOffset.z * 0.23; float wind = sin(uTime * 1.8 + instancePhase + spatialPhase); float gust = sin(uTime * 0.63 + spatialPhase * 0.7) * 0.35; float bend = (wind + gust) * uWindStrength * vHeight * vHeight; local.x += bend; local.z += bend * 0.35; vec4 worldPosition = modelMatrix * vec4(local + instanceOffset, 1.0); gl_Position = projectionMatrix * viewMatrix * worldPosition; } `, fragmentShader: /* glsl */ ` varying float vFade; varying float vHeight; void main() { vec3 rootColor = vec3(0.08, 0.22, 0.035); vec3 tipColor = vec3(0.34, 0.62, 0.12); vec3 color = mix(rootColor, tipColor, vHeight); // Alpha fade avoids a hard field boundary at the draw distance. float alpha = vFade * 0.92; if (alpha < 0.01) discard; gl_FragColor = vec4(color, alpha); } `, side: THREE.DoubleSide, transparent: true, depthWrite: true, }); const grass = new THREE.InstancedMesh(blade, material, COUNT); grass.frustumCulled = false; scene.add(grass); const ground = new THREE.Mesh( new THREE.PlaneGeometry(FIELD_SIZE, FIELD_SIZE), new THREE.MeshBasicMaterial({ color: 0x47722d }), ); ground.rotation.x = -Math.PI / 2; scene.add(ground); const clock = new THREE.Clock(); function animate() { requestAnimationFrame(animate); material.uniforms.uTime.value = clock.getElapsedTime(); material.uniforms.uCameraPosition.value.copy(camera.position); renderer.render(scene, camera); } animate(); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); });References
2- Drommedhar/novalist-officialapp/src/renderer/public/map/map3d.js
Production three.js code using InstancedMesh-style instanced attributes for grass wind sway (per-instance `grassPhase`/`grassRoot` attributes) and a vertex sway formula tied to `time` and per-blade phase, matching the requested instanced grass wind/phase pattern; distance fade is not clearly shown in the captured snippet.
- Joe-Heffer/Peak-District-Downhillsrc/scenery/Grass.js
Directly implements three.js InstancedMesh grass with a custom ShaderMaterial-style vertex/fragment injection (onBeforeCompile) to add wind sway in the vertex shader, plus per-instance wind phase via instance world position and a distance-based fade via a fragment discard cutoff.
Request
Request payload
{ "query": "three.js instanced grass field InstancedMesh ShaderMaterial wind sway vertex shader distance fade per-instance phase attribute", "language": "javascript", "license_mode": "strict" }- Drommedhar/novalist-officialapp/src/renderer/public/map/map3d.js
+1:58:39Get ExampleGenerated examplelocalStorage versioned schema migration quota exceeded safe wrapper
localStorage versioned schema migration quota exceeded safe wrapper · javascript · strict
Safe Versioned localStorage Store with Migration and Quota Recovery
// Versioned localStorage persistence with migration, safe fallbacks, and // QuotaExceededError recovery. Run in a browser. const storage = (() => { const KEY = "app.records.v2"; const memory = new Map(); const fallback = { getItem: (key) => memory.has(key) ? memory.get(key) : null, setItem: (key, value) => memory.set(key, String(value)), removeItem: (key) => memory.delete(key) }; function backend() { try { const value = globalThis.localStorage; value.getItem("__storage_probe__"); return value; } catch { return fallback; } } function isQuotaError(error) { return error?.name === "QuotaExceededError" || error?.code === 22; } function read() { const source = backend(); try { const raw = source.getItem(KEY); if (!raw) return []; const parsed = JSON.parse(raw); // Migrate v1: { version: 1, items: [{ name, createdAt }] } if (parsed?.version === 1 && Array.isArray(parsed.items)) { return parsed.items.map((item) => ({ id: crypto.randomUUID(), label: String(item.name ?? ""), createdAt: Number(item.createdAt) || Date.now() })); } // Current schema: { version: 2, items: [...] } if (parsed?.version === 2 && Array.isArray(parsed.items)) { return parsed.items.filter((item) => item && typeof item === "object"); } } catch { // Corrupt or unavailable data is treated as an empty collection. } return []; } function write(items) { const source = backend(); const envelope = JSON.stringify({ version: 2, items }); try { source.setItem(KEY, envelope); return { ok: true, warning: null }; } catch (error) { if (!isQuotaError(error)) { return { ok: false, warning: "Storage is unavailable; using memory only." }; } // Retry once after removing the largest optional fields and oldest data. const compact = items .map(({ id, label, createdAt }) => ({ id, label, createdAt })) .slice(-10); try { source.setItem(KEY, JSON.stringify({ version: 2, items: compact })); return { ok: true, warning: "Storage was full; older records were removed." }; } catch { return { ok: false, warning: "Storage quota exceeded; changes remain in memory." }; } } } let items = read(); const listeners = new Set(); function notify() { for (const listener of listeners) listener(items.slice()); } function update(nextItems) { items = nextItems; const result = write(items); notify(); return result; } return { getAll: () => items.slice(), add(label) { return update([ ...items, { id: crypto.randomUUID(), label: String(label), createdAt: Date.now() } ]); }, remove(id) { return update(items.filter((item) => item.id !== id)); }, subscribe(listener) { listeners.add(listener); return () => listeners.delete(listener); }, migrateAndPersist() { return write(items); // Persists migrated v1 data as v2. } }; })(); // Example usage. const unsubscribe = storage.subscribe((records) => { console.table(records); }); const migrationResult = storage.migrateAndPersist(); if (migrationResult.warning) console.warn(migrationResult.warning); const saveResult = storage.add("example record"); if (saveResult.warning) console.warn(saveResult.warning); // Later: unsubscribe();References
3- irgendjemandkeinkorper/godot-scene-architectRun history store with brief grouping
Directly about implementing a localStorage-backed versioned migration plus quota/QuotaExceeded handling and a safe wrapper/persistence layer (run history store) in a JavaScript/TS app; covers key terms migration + quota exceeded and the persistence design.
- risqinf/apikuassets/webapp/app.js
Shows a localStorage versioned schema wrapper with migration and safe wrappers (try/catch degradation) for client-side collections; quota-exceeded handling isn’t clearly evidenced in the shown snippet, but the schema/migration/safety patterns are highly relevant to the query.
- hybrist/waluaupackages/vite-plugin-waluau/runtime.js
Code shows a safe localStorage wrapper with fallback when localStorage is unavailable (try/catch and fallback Map), which partially aligns with handling localStorage quota/robustness, but it doesn’t cover “versioned schema migration” or “quota exceeded” specifically.
Request
Request payload
{ "query": "localStorage versioned schema migration quota exceeded safe wrapper", "language": "javascript", "license_mode": "strict" }- irgendjemandkeinkorper/godot-scene-architectRun history store with brief grouping
+1:58:43Code GrepCode navigationthree“uniform vec3 cameraPosition”
uniform vec3 cameraPosition
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 610, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L594-L610", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 594 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 776, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L760-L776", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 760 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLProgram.js" } ], "pattern": "uniform vec3 cameraPosition", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 610, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L594-L610", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 594 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 776, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L760-L776", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 760 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+1:59:40Get ExampleGenerated exampleprocedural stylized tree generator three.js trunk branches canopy blobs merge geometry vertex colors
procedural stylized tree generator three.js trunk branches canopy blobs merge geometry vertex colors · javascript · strict
Three.js Procedural Stylized Tree with Merged Geometry and Vertex Colors
<!doctype html> <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <title>Procedural Tree</title> <style> html, body { margin: 0; height: 100%; overflow: hidden; background: #9bc8e6; } canvas { display: block; } </style> </head> <body> <script type="importmap"> { "imports": { "three": "https://cdn.jsdelivr.net/npm/three@0.179.1/build/three.module.js", "three/addons/": "https://cdn.jsdelivr.net/npm/three@0.179.1/examples/jsm/" } } </script> <script type="module"> import * as THREE from 'three'; import { OrbitControls } from 'three/addons/controls/OrbitControls.js'; import { mergeGeometries } from 'three/addons/utils/BufferGeometryUtils.js'; const scene = new THREE.Scene(); scene.background = new THREE.Color(0x9bc8e6); const camera = new THREE.PerspectiveCamera(42, innerWidth / innerHeight, 0.1, 100); camera.position.set(11, 9, 14); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.setSize(innerWidth, innerHeight); renderer.shadowMap.enabled = true; renderer.shadowMap.type = THREE.PCFSoftShadowMap; document.body.appendChild(renderer.domElement); const controls = new OrbitControls(camera, renderer.domElement); controls.target.set(0, 4.5, 0); controls.enableDamping = true; scene.add(new THREE.HemisphereLight(0xdff3ff, 0x705033, 2.2)); const sun = new THREE.DirectionalLight(0xfff0cf, 3.5); sun.position.set(-8, 14, 8); sun.castShadow = true; sun.shadow.mapSize.set(2048, 2048); scene.add(sun); const trunkParts = []; const canopyParts = []; const brown = new THREE.Color(0x704326); const brownLight = new THREE.Color(0x9a6139); const greens = [ new THREE.Color(0x315f2c), new THREE.Color(0x477d35), new THREE.Color(0x639b40), new THREE.Color(0x86ad4d) ]; function colorGeometry(geometry, colorFn) { const positions = geometry.getAttribute('position'); const colors = new Float32Array(positions.count * 3); for (let i = 0; i < positions.count; i++) { const c = colorFn(i, positions.getY(i)); colors[i * 3] = c.r; colors[i * 3 + 1] = c.g; colors[i * 3 + 2] = c.b; } geometry.setAttribute('color', new THREE.Float32BufferAttribute(colors, 3)); return geometry; } function branchGeometry(start, end, radiusStart, radiusEnd, radialSegments = 6) { const direction = new THREE.Vector3().subVectors(end, start); const length = direction.length(); const geometry = new THREE.CylinderGeometry( radiusEnd, radiusStart, length, radialSegments, 1 ); geometry.translate(0, length / 2, 0); geometry.applyQuaternion( new THREE.Quaternion().setFromUnitVectors( new THREE.Vector3(0, 1, 0), direction.normalize() ) ); geometry.translate(start.x, start.y, start.z); return colorGeometry(geometry, (index) => index % 5 === 0 ? brownLight : brown ); } function addBranch(start, end, radiusStart, radiusEnd) { trunkParts.push(branchGeometry(start, end, radiusStart, radiusEnd)); } function addBlob(center, radius, colorIndex, scale = 1) { const geometry = new THREE.IcosahedronGeometry(radius, 1); geometry.scale(1, scale, 1); geometry.translate(center.x, center.y, center.z); const base = greens[colorIndex % greens.length]; colorGeometry(geometry, (index, y) => { const variation = ((index * 17) % 11) / 55; const shade = THREE.MathUtils.clamp( 0.86 + y / (radius * 8) + variation, 0.65, 1.2 ); return base.clone().multiplyScalar(shade); }); canopyParts.push(geometry); } function randomRange(min, max) { return min + Math.random() * (max - min); } function makeTree({ seed = 7, height = 8 } = {}) { // Seeded randomness keeps the generated tree repeatable. let state = seed >>> 0; const random = () => { state = (1664525 * state + 1013904223) >>> 0; return state / 0x100000000; }; const trunkTop = height * 0.58; const trunkRadius = height * 0.075; addBranch( new THREE.Vector3(0, 0, 0), new THREE.Vector3(randomRange(-0.15, 0.15), trunkTop, randomRange(-0.15, 0.15)), trunkRadius, trunkRadius * 0.42 ); const branchCount = 8; for (let i = 0; i < branchCount; i++) { const angle = (i / branchCount) * Math.PI * 2 + random() * 0.45; const y = height * randomRange(0.34, 0.68); const start = new THREE.Vector3(0, y, 0); const length = height * randomRange(0.22, 0.38); const end = new THREE.Vector3( Math.cos(angle) * length, y + height * randomRange(0.12, 0.3), Math.sin(angle) * length ); addBranch(start, end, trunkRadius * randomRange(0.35, 0.62), trunkRadius * 0.08); addBlob( end.clone().add(new THREE.Vector3(0, height * 0.1, 0)), height * randomRange(0.16, 0.23), Math.floor(random() * greens.length), randomRange(0.75, 1.15) ); } // A few overlapping blobs make a readable, hand-painted canopy silhouette. const crown = new THREE.Vector3(0, height * 0.78, 0); for (let i = 0; i < 10; i++) { addBlob( crown.clone().add(new THREE.Vector3( randomRange(-height * 0.28, height * 0.28), randomRange(-height * 0.12, height * 0.2), randomRange(-height * 0.28, height * 0.28) )), height * randomRange(0.18, 0.28), Math.floor(random() * greens.length), randomRange(0.7, 1.25) ); } } makeTree({ seed: 42, height: 8 }); const mergedTrunk = mergeGeometries(trunkParts, false); const mergedCanopy = mergeGeometries(canopyParts, false); if (!mergedTrunk || !mergedCanopy) { throw new Error('Geometry merge failed: all parts must have matching attributes.'); } mergedTrunk.computeVertexNormals(); mergedCanopy.computeVertexNormals(); const trunkMaterial = new THREE.MeshStandardMaterial({ vertexColors: true, roughness: 1 }); const canopyMaterial = new THREE.MeshStandardMaterial({ vertexColors: true, roughness: 0.95, flatShading: true }); const tree = new THREE.Group(); const trunk = new THREE.Mesh(mergedTrunk, trunkMaterial); const canopy = new THREE.Mesh(mergedCanopy, canopyMaterial); trunk.castShadow = trunk.receiveShadow = true; canopy.castShadow = canopy.receiveShadow = true; tree.add(trunk, canopy); scene.add(tree); const ground = new THREE.Mesh( new THREE.CircleGeometry(18, 64).rotateX(-Math.PI / 2), new THREE.MeshStandardMaterial({ color: 0x70934c, roughness: 1 }) ); ground.receiveShadow = true; scene.add(ground); const ring = new THREE.Mesh( new THREE.TorusGeometry(1.1, 0.035, 6, 32), new THREE.MeshBasicMaterial({ color: 0xc6a36a }) ); ring.rotation.x = Math.PI / 2; ring.position.y = 0.02; scene.add(ring); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); }); function animate() { controls.update(); tree.rotation.y += 0.0015; renderer.render(scene, camera); requestAnimationFrame(animate); } animate(); </script> </body> </html>References
3- Drommedhar/novalist-officialapp/src/renderer/public/map/map3d.js
Contains substantial Three.js/WebGPU code for procedural low-poly tree meshes (trunk/canopy) and related geometry construction, matching the query’s focus on stylized procedural trees; however it’s broader map/scene code and the exact “merge geometry / vertex colors / branch canopy blobs” aspects aren’t clearly isolated in the snippet.
- nocoldiz/hypernet-explorer-pluginsjs/plugins/Vehicle/CamperDrivingSystem.js
JavaScript/three.js-based procedural scene code that includes procedural geometry generation (trunk/canopy-like structures), instancing, and material/vertex-color-style decoration patterns, but it’s a game/plugin-specific tree/foliage implementation rather than a focused “stylized tree generator” using merge-geometry + vertex colors as the main topic.
- mrdoob/three.jsexamples/jsm/loaders/FBXLoader.js
three.js FBXLoader implementation that shows how per-vertex data like colors/normals are parsed and written into BufferGeometry (useful background for building a procedural tree with vertex colors), though it’s not directly a tree generator or canopy/blob branching logic.
Request
Request payload
{ "query": "procedural stylized tree generator three.js trunk branches canopy blobs merge geometry vertex colors", "language": "javascript", "license_mode": "strict" }- Drommedhar/novalist-officialapp/src/renderer/public/map/map3d.js
+2:00:13Get ExampleGenerated exampletypewriter text effect requestAnimationFrame with skip to full text, visual novel dialogue manager
typewriter text effect requestAnimationFrame with skip to full text, visual novel dialogue manager · javascript · strict
Visual Novel Dialogue Manager with requestAnimationFrame Typewriter and Skip
'use strict'; class Typewriter { constructor(element, { charactersPerSecond = 45, onComplete } = {}) { this.element = element; this.charactersPerSecond = charactersPerSecond; this.onComplete = onComplete; this.text = ''; this.index = 0; this.elapsed = 0; this.frameId = null; this.lastTime = 0; this.running = false; } start(text) { this.stop(); this.text = String(text); this.index = 0; this.elapsed = 0; this.lastTime = 0; this.running = true; this.element.textContent = ''; this.frameId = requestAnimationFrame((time) => this.tick(time)); } tick(time) { if (!this.running) return; if (!this.lastTime) this.lastTime = time; this.elapsed += time - this.lastTime; this.lastTime = time; const characters = Math.floor( (this.elapsed / 1000) * this.charactersPerSecond ); if (characters > this.index) { this.index = Math.min(characters, this.text.length); this.element.textContent = this.text.slice(0, this.index); } if (this.index >= this.text.length) { this.stop(); this.onComplete?.(); return; } this.frameId = requestAnimationFrame((nextTime) => this.tick(nextTime)); } // Completes the current line immediately without starting another line. skip() { if (!this.running) return false; this.element.textContent = this.text; this.index = this.text.length; this.stop(); this.onComplete?.(); return true; } stop() { this.running = false; if (this.frameId !== null) { cancelAnimationFrame(this.frameId); this.frameId = null; } } get isComplete() { return !this.running && this.index >= this.text.length; } } class DialogueManager { constructor({ nameElement, textElement, continueButton, dialogues }) { this.nameElement = nameElement; this.textElement = textElement; this.continueButton = continueButton; this.dialogues = dialogues; this.currentIndex = -1; this.finished = false; this.typewriter = new Typewriter(textElement, { charactersPerSecond: 42, onComplete: () => this.updateContinueLabel() }); continueButton.addEventListener('click', () => this.advance()); textElement.addEventListener('click', () => this.advance()); document.addEventListener('keydown', (event) => { if (event.key === ' ' || event.key === 'Enter') { event.preventDefault(); this.advance(); } }); this.advance(); } advance() { // First activation skips typing; the next activation advances the story. if (this.typewriter.running) { this.typewriter.skip(); return; } if (this.finished) return; this.currentIndex += 1; if (this.currentIndex >= this.dialogues.length) { this.finish(); return; } const dialogue = this.dialogues[this.currentIndex]; this.nameElement.textContent = dialogue.speaker; this.typewriter.start(dialogue.text); this.updateContinueLabel(); } updateContinueLabel() { this.continueButton.textContent = this.typewriter.isComplete ? 'Continue' : 'Skip'; } finish() { this.finished = true; this.nameElement.textContent = ''; this.textElement.textContent = '— End —'; this.continueButton.disabled = true; this.continueButton.textContent = 'Finished'; } } // Minimal browser setup: the manager creates its own visual-novel dialogue box. document.body.innerHTML = ` <main class="vn" aria-live="polite"> <div class="portrait" aria-hidden="true">✦</div> <section class="dialogue-box"> <strong class="speaker"></strong> <p class="dialogue-text" tabindex="0"></p> <button class="continue" type="button">Continue</button> </section> </main> `; document.head.insertAdjacentHTML('beforeend', ` <style> * { box-sizing: border-box; } body { margin: 0; min-height: 100vh; display: grid; place-items: center; background: #171522; color: #fff; font: 16px/1.6 system-ui, sans-serif; } .vn { width: min(720px, 92vw); } .portrait { margin: 0 auto 1rem; width: 120px; height: 120px; display: grid; place-items: center; border-radius: 50%; background: #7659b8; font-size: 4rem; } .dialogue-box { position: relative; padding: 1.5rem; border: 2px solid #7659b8; border-radius: 12px; background: #242033; } .speaker { color: #d7bdff; font-size: 1.15rem; } .dialogue-text { min-height: 4.8em; cursor: pointer; } .continue { float: right; padding: .55rem 1rem; cursor: pointer; } </style> `); new DialogueManager({ nameElement: document.querySelector('.speaker'), textElement: document.querySelector('.dialogue-text'), continueButton: document.querySelector('.continue'), dialogues: [ { speaker: 'Mira', text: 'The station clock stopped at midnight.' }, { speaker: 'Jonah', text: 'Then we still have time to change what happens next.' }, { speaker: 'Mira', text: 'Click, tap, Enter, or Space to continue. During typing, the same action skips to the full line.' } ] });References
4- giovanemere/Edisson-Giovanni-Z-Lopezassets/js/script.js
Includes a JavaScript TypeWriter class implementing a text typewriter animation (with delete/rewrite), matching the core “typewriter text effect” part of the request, but it does not use requestAnimationFrame nor implement a “skip to full text”/visual-novel dialogue manager flow.
- lanpartis/avg-game-frameworkEpic: avg-game-framework-yaml-config
Strong match for a JavaScript visual-novel/dialogue manager architecture including a dialogue system with typewriter effect and explicit skip functionality; not actual requestAnimationFrame implementation code but directly addresses the requested components in a declarative framework design.
- bryanstanleyyy/Bryan-Websiteanimations.js
Provides a JavaScript typewriter effect implementation (TypeWriter class) and dialogue-adjacent UI animation using requestAnimationFrame, including how to render/skip-like transitions in a web VN-style page; direct match to typewriter request, though not a full “dialogue manager with skip” architecture.
- lanpartis/avg-game-frameworkEpic: avg-game-framework-yaml-config
Issue/epic describing a JavaScript adventure/visual-novel framework with a “Dialogue system” including typewriter effect and skip functionality; useful for architecture but lacks concrete implementation details in the provided content.
Request
Request payload
{ "query": "typewriter text effect requestAnimationFrame with skip to full text, visual novel dialogue manager", "language": "javascript", "license_mode": "strict" }- giovanemere/Edisson-Giovanni-Z-Lopezassets/js/script.js
+2:00:36Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 200, "indexing_status": "indexed", "language": "javascript", "line_count": 81, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 200, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L120-L200", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 120 } ], "start_line": 120, "status": "success", "total_lines": 1501 }Request
Request payload
{ "end_line": 200, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "package_name": "three", "registry": "npm", "start_line": 120, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 200, "indexing_status": "indexed", "language": "javascript", "line_count": 81, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 200, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L120-L200", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 120 } ], "start_line": 120, "status": "success", "total_lines": 1501 }, "title": null, "content": null }+2:00:47Code GrepCode navigationthree“setAttribute|setIndex”
setAttribute|setIndex
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/geometries/PolyhedronGeometry.js", "src/geometries/PolyhedronGeometry.js", "src/geometries/PolyhedronGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 64, "file_path": "src/geometries/PolyhedronGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/PolyhedronGeometry.js#L60-L64", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 65, "file_path": "src/geometries/PolyhedronGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/PolyhedronGeometry.js#L61-L65", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 61 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66, "file_path": "src/geometries/PolyhedronGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/PolyhedronGeometry.js#L62-L66", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 62 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 2, "context_lines_before": 2, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 10, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/geometries/PolyhedronGeometry.js" } ], "pattern": "setAttribute|setIndex", "pattern_type": "REGEX", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/geometries/PolyhedronGeometry.js", "src/geometries/PolyhedronGeometry.js", "src/geometries/PolyhedronGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 64, "file_path": "src/geometries/PolyhedronGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/PolyhedronGeometry.js#L60-L64", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 65, "file_path": "src/geometries/PolyhedronGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/PolyhedronGeometry.js#L61-L65", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 61 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66, "file_path": "src/geometries/PolyhedronGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/PolyhedronGeometry.js#L62-L66", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 62 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }, "title": null, "content": null }+2:00:55Get ExampleGenerated exampleaccessible menu list keyboard arrow key navigation with roving tabindex aria-activedescendant plus gamepad d-pad and analog stick navigation with repeat delay
accessible menu list keyboard arrow key navigation with roving tabindex aria-activedescendant plus gamepad d-pad and analog stick navigation with repeat delay · javascript · strict
Accessible Menu Navigation with Keyboard and Gamepad
// Browser example: keyboard roving tabindex, aria-activedescendant, and gamepad navigation. const app = document.createElement('main'); app.innerHTML = ` <h1>Input method demo</h1> <h2>Roving tabindex menu</h2> <div id="roving-menu" role="menu" aria-label="Actions"></div> <h2>aria-activedescendant listbox</h2> <div id="active-menu" role="listbox" aria-label="Colors" tabindex="0"></div> <p id="status" aria-live="polite"></p> `; document.body.append(app); const options = ['New file', 'Open file', 'Save file', 'Close file']; const colors = ['Red', 'Green', 'Blue', 'Yellow']; const status = document.querySelector('#status'); function createItems(container, values, role) { container.replaceChildren(...values.map((label, index) => { const item = document.createElement('button'); item.type = 'button'; item.textContent = label; item.id = `${container.id}-item-${index}`; item.setAttribute('role', role); item.tabIndex = -1; return item; })); } createItems(document.querySelector('#roving-menu'), options, 'menuitem'); createItems(document.querySelector('#active-menu'), colors, 'option'); function createNavigator(container, { mode = 'tabindex', orientation = 'vertical', wrap = true, onActivate = () => {} } = {}) { let index = 0; let items = []; const refresh = () => { items = [...container.querySelectorAll('[role="menuitem"], [role="option"]')]; if (!items.length) return; index = Math.max(0, Math.min(index, items.length - 1)); items.forEach((item, i) => { const selected = i === index; item.setAttribute('aria-selected', String(selected)); if (mode === 'tabindex') { item.tabIndex = selected ? 0 : -1; } else { item.classList.toggle('active', selected); } }); if (mode === 'activedescendant') { container.setAttribute('aria-activedescendant', items[index].id); } }; const focusCurrent = () => { if (mode === 'tabindex') items[index]?.focus(); else container.focus(); }; const move = (delta) => { if (!items.length) return; const next = index + delta; index = wrap ? (next + items.length) % items.length : Math.max(0, Math.min(next, items.length - 1)); refresh(); focusCurrent(); }; const activate = () => { const item = items[index]; if (!item) return; onActivate(item.textContent, index); }; const handleKeyDown = (event) => { const vertical = orientation === 'vertical'; const forward = vertical ? 'ArrowDown' : 'ArrowRight'; const backward = vertical ? 'ArrowUp' : 'ArrowLeft'; if (event.key === forward) { event.preventDefault(); move(1); } else if (event.key === backward) { event.preventDefault(); move(-1); } else if (event.key === 'Home') { event.preventDefault(); index = 0; refresh(); focusCurrent(); } else if (event.key === 'End') { event.preventDefault(); index = items.length - 1; refresh(); focusCurrent(); } else if (event.key === 'Enter' || event.key === ' ') { event.preventDefault(); activate(); } }; container.addEventListener('keydown', handleKeyDown); container.addEventListener('click', (event) => { const clicked = event.target.closest('[role="menuitem"], [role="option"]'); const clickedIndex = items.indexOf(clicked); if (clickedIndex < 0) return; index = clickedIndex; refresh(); activate(); }); refresh(); return { move, activate, focus: focusCurrent, get index() { return index; }, get size() { return items.length; } }; } const rovingNavigator = createNavigator(document.querySelector('#roving-menu'), { mode: 'tabindex', onActivate: (label) => { status.textContent = `Activated: ${label}`; } }); const activeDescendantNavigator = createNavigator(document.querySelector('#active-menu'), { mode: 'activedescendant', onActivate: (label) => { status.textContent = `Selected: ${label}`; } }); // Gamepad navigation uses the same movement API as keyboard navigation. class GamepadNavigator { constructor(navigator, { gamepadIndex = 0, deadzone = 0.35, initialDelay = 450, repeatDelay = 120 } = {}) { this.navigator = navigator; this.gamepadIndex = gamepadIndex; this.deadzone = deadzone; this.initialDelay = initialDelay; this.repeatDelay = repeatDelay; this.nextMoveAt = 0; this.lastDirection = 0; this.frame = this.frame.bind(this); requestAnimationFrame(this.frame); } direction(gamepad) { // Standard mapping: D-pad buttons 12/13, then the left analog stick axis 1. const dpad = (gamepad.buttons[12]?.pressed ? 1 : 0) - (gamepad.buttons[13]?.pressed ? 1 : 0); if (dpad) return dpad; const axis = gamepad.axes[1] ?? 0; if (Math.abs(axis) < this.deadzone) return 0; return axis > 0 ? 1 : -1; } frame(now) { const gamepad = navigator.getGamepads?.()[this.gamepadIndex]; if (gamepad) { const direction = this.direction(gamepad); if (!direction) { this.lastDirection = 0; this.nextMoveAt = 0; } else if (direction !== this.lastDirection) { this.navigator.move(direction); this.lastDirection = direction; this.nextMoveAt = now + this.initialDelay; } else if (now >= this.nextMoveAt) { this.navigator.move(direction); this.nextMoveAt = now + this.repeatDelay; } } requestAnimationFrame(this.frame); } } // Connect the first gamepad to the roving menu; change the navigator to control the // aria-activedescendant menu instead if that is the active widget in your application. new GamepadNavigator(rovingNavigator); window.addEventListener('gamepadconnected', (event) => { status.textContent = `Gamepad connected: ${event.gamepad.id}`; }); window.addEventListener('gamepaddisconnected', () => { status.textContent = 'Gamepad disconnected'; });References
2- shuxueshuxue/Spexcodespec-dashboard/src/ReviewShell.jsx
Implements accessible keyboard roving/tabindex for a menu via arrow keys (ArrowUp/ArrowDown/Home/End) and uses aria-activedescendant with a listbox/menu structure; includes rovingIndex logic. Lacks explicit gamepad D-pad/analog repeat-delay handling from the query terms.
- jvoltci/nilamsrc/behaviours/roving.mjs
Direct JavaScript implementation of roving tabindex with an option to use aria-activedescendant, including ArrowUp/Down/Left/Right handling plus typeahead and activation logic—strong match for accessible menu keyboard navigation; gamepad d-pad/analog repeat-delay not shown.
Request
Request payload
{ "query": "accessible menu list keyboard arrow key navigation with roving tabindex aria-activedescendant plus gamepad d-pad and analog stick navigation with repeat delay", "language": "javascript", "license_mode": "strict" }- shuxueshuxue/Spexcodespec-dashboard/src/ReviewShell.jsx
+2:01:52Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 17, "indexing_status": "indexed", "language": "javascript", "line_count": 17, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 17, "file_path": "src/renderers/shaders/ShaderChunk/fog_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/fog_fragment.glsl.js#L1-L17", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 17 }Request
Request payload
{ "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/fog_fragment.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 17, "indexing_status": "indexed", "language": "javascript", "line_count": 17, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 17, "file_path": "src/renderers/shaders/ShaderChunk/fog_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/fog_fragment.glsl.js#L1-L17", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 17 }, "title": null, "content": null }+2:01:54Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 19, "indexing_status": "indexed", "language": "javascript", "line_count": 19, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 19, "file_path": "src/renderers/shaders/ShaderChunk/fog_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/fog_pars_fragment.glsl.js#L1-L19", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 19 }Request
Request payload
{ "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/fog_pars_fragment.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 19, "indexing_status": "indexed", "language": "javascript", "line_count": 19, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 19, "file_path": "src/renderers/shaders/ShaderChunk/fog_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/fog_pars_fragment.glsl.js#L1-L19", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 19 }, "title": null, "content": null }+2:02:10Code GrepCode navigationthree“this\.(setScissorTest|setViewport|setScissor|clearDepth|autoClear) =”
this\.(setScissorTest|setViewport|setScissor|clearDepth|autoClear) =
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 200, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L196-L200", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 196 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 798, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L794-L798", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 794 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 835, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L831-L835", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 831 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 869, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L865-L869", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 865 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1043, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1039-L1043", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1039 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 2, "context_lines_before": 2, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "this\\.(setScissorTest|setViewport|setScissor|clearDepth|autoClear) =", "pattern_type": "REGEX", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 200, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L196-L200", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 196 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 798, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L794-L798", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 794 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 835, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L831-L835", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 831 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 869, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L865-L869", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 865 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1043, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1039-L1043", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1039 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }, "title": null, "content": null }+2:02:18Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 830, "indexing_status": "indexed", "language": "javascript", "line_count": 35, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 830, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L796-L830", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 796 } ], "start_line": 796, "status": "success", "total_lines": 3703 }Request
Request payload
{ "end_line": 830, "file_path": "src/renderers/WebGLRenderer.js", "package_name": "three", "registry": "npm", "start_line": 796, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 830, "indexing_status": "indexed", "language": "javascript", "line_count": 35, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 830, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L796-L830", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 796 } ], "start_line": 796, "status": "success", "total_lines": 3703 }, "title": null, "content": null }+2:02:25Code GrepCode navigationthree“enableAll(”
enableAll(
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/Layers.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 59, "file_path": "src/core/Layers.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Layers.js#L53-L59", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 53 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/Layers.js" } ], "pattern": "enableAll(", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/Layers.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 59, "file_path": "src/core/Layers.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Layers.js#L53-L59", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 53 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+2:02:28Code GrepCode navigationthree“setFromObject( object, precise”
setFromObject( object, precise
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Box3.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 161, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L149-L161", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 149 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/math/Box3.js" } ], "pattern": "setFromObject( object, precise", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Box3.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 161, "file_path": "src/math/Box3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Box3.js#L149-L161", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 149 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+2:16:24Code GrepCode navigationthree“this.getViewport = function”
this.getViewport = function
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 785, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L777-L785", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 777 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "this.getViewport = function", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 785, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L777-L785", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 777 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+2:50:28Code GrepCode navigationthree“dispose”
dispose
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js", "src/core/BufferGeometry.js", "src/core/BufferGeometry.js", "src/core/BufferGeometry.js", "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 143, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L131-L143", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 131 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 632, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L620-L632", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 620 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1476, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1464-L1476", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1464 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1478, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1466-L1478", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1466 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1480, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1468-L1480", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1468 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/BufferGeometry.js" } ], "pattern": "dispose", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js", "src/core/BufferGeometry.js", "src/core/BufferGeometry.js", "src/core/BufferGeometry.js", "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 143, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L131-L143", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 131 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 632, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L620-L632", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 620 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1476, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1464-L1476", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1464 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1478, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1466-L1478", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1466 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1480, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1468-L1480", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1468 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }, "title": null, "content": null }+2:50:33Code GrepCode navigationthree“traverse( callback )”
traverse( callback )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js", "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1080, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1060-L1080", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1060 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1088, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1068-L1088", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1068 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/Object3D.js" } ], "pattern": "traverse( callback )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js", "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1080, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1060-L1080", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1060 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1088, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1068-L1088", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1068 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+2:50:46Code GrepCode navigationthree“info.autoReset”
info.autoReset
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 545, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L525-L545", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 525 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1127, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1107-L1127", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1107 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1135, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1115-L1135", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1115 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1712, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1692-L1712", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1692 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "info.autoReset", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 545, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L525-L545", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 525 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1127, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1107-L1127", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1107 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1135, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1115-L1135", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1115 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1712, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1692-L1712", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1692 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+2:50:51SearchCode navigationthreeClock getDelta autoStart running oldTime
Clock getDelta autoStart running oldTime
pkg:npm:three@0.185.1Result summary
{ "completed": true, "freshness_counts": { "current": 1 }, "indexing_status_counts": { "indexed": 1 }, "outcome": "result_returned", "partial_results": false, "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 87, "file_path": "src/core/Clock.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Clock.js#L8-L87", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 8 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 56324, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L56199-L56324", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 56199 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 56344, "file_path": "build/three.core.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.core.js#L56219-L56344", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 56219 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 131, "file_path": "src/core/Clock.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Clock.js#L107-L131", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 107 } ], "result_type_counts": { "repository_code": 4 }, "results": [ { "label": "Clock", "target": "npm:three@0.185.1", "type": "repository_code" }, { "label": "Clock", "target": "npm:three@0.185.1", "type": "repository_code" }, { "label": "Clock", "target": "npm:three@0.185.1", "type": "repository_code" }, { "label": "getDelta", "target": "npm:three@0.185.1", "type": "repository_code" } ], "returned_results": 4, "search_ref_present": false, "source_counts": { "code": 1 }, "status": "success" }Request
Request payload
{ "allow_partial_results": false, "context_lines_after": 2, "context_lines_before": 2, "limit": 4, "offset": 0, "query": "Clock getDelta autoStart running oldTime", "sources": [ "code" ], "targets": [ { "name": "three", "registry": "npm", "version": "0.185.1" } ], "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "completed": true, "freshness_counts": { "current": 1 }, "indexing_status_counts": { "indexed": 1 }, "outcome": "result_returned", "partial_results": false, "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 87, "file_path": "src/core/Clock.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Clock.js#L8-L87", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 8 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 56324, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L56199-L56324", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 56199 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 56344, "file_path": "build/three.core.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.core.js#L56219-L56344", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 56219 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 131, "file_path": "src/core/Clock.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Clock.js#L107-L131", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 107 } ], "result_type_counts": { "repository_code": 4 }, "results": [ { "label": "Clock", "target": "npm:three@0.185.1", "type": "repository_code" }, { "label": "Clock", "target": "npm:three@0.185.1", "type": "repository_code" }, { "label": "Clock", "target": "npm:three@0.185.1", "type": "repository_code" }, { "label": "getDelta", "target": "npm:three@0.185.1", "type": "repository_code" } ], "returned_results": 4, "search_ref_present": false, "source_counts": { "code": 1 }, "status": "success" }, "title": null, "content": null }+2:51:09Code GrepCode navigationthree“preserveDrawingBuffer”
preserveDrawingBuffer
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "build/three.module.js", "build/three.module.js", "build/three.module.min.js", "build/three.module.min.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 16078, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L16070-L16078", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 16070 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 16376, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L16368-L16376", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 16368 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "build/three.module.min.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.min.js#L2-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "build/three.module.min.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.min.js#L2-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 84, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L76-L84", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 76 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 382, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L374-L382", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 374 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3633, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3625-L3633", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3625 } ], "returned_matches": 7, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 7, "unique_files_matched": 3 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [ "js" ], "include_hidden": false, "max_matches": 20, "max_matches_per_file": 20, "package_name": "three", "pattern": "preserveDrawingBuffer", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "build/three.module.js", "build/three.module.js", "build/three.module.min.js", "build/three.module.min.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 16078, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L16070-L16078", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 16070 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 16376, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L16368-L16376", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 16368 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "build/three.module.min.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.min.js#L2-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "build/three.module.min.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.min.js#L2-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 84, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L76-L84", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 76 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 382, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L374-L382", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 374 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3633, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3625-L3633", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3625 } ], "returned_matches": 7, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 7, "unique_files_matched": 3 }, "title": null, "content": null }+2:51:12Code GrepCode navigationthree{"errors":[{"code":"GREP_FAILED","message":"failed to read GREP posting blocks: Failed to get coalesced range [10424224..10428703) from: packs/grep/4d67e930bd3a23d0d22e30c9dc0f1b6c.pack. Unexpected backend error; retry, and report if it persists."}],"next_cursor_present":false,"status":"error"}
addUpdateRange
Result summary
{ "errors": [ { "code": "GREP_FAILED", "message": "failed to read GREP posting blocks: Failed to get coalesced range [10424224..10428703) from: packs/grep/4d67e930bd3a23d0d22e30c9dc0f1b6c.pack. Unexpected backend error; retry, and report if it persists." } ], "next_cursor_present": false, "status": "error" }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 25, "max_matches_per_file": 20, "package_name": "three", "pattern": "addUpdateRange", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "errors": [ { "code": "GREP_FAILED", "message": "failed to read GREP posting blocks: Failed to get coalesced range [10424224..10428703) from: packs/grep/4d67e930bd3a23d0d22e30c9dc0f1b6c.pack. Unexpected backend error; retry, and report if it persists." } ], "next_cursor_present": false, "status": "error" }, "title": null, "content": null }+2:51:20Code GrepCode navigationthree“addUpdateRange”
addUpdateRange
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferAttribute.js", "src/core/BufferAttribute.js", "src/core/InterleavedBuffer.js", "src/core/InterleavedBuffer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L110-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 110 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 186, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L176-L186", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 176 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 69, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L59-L69", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 59 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 132, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L122-L132", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 122 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 5, "context_lines_before": 5, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 12, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/core" } ], "pattern": "addUpdateRange", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferAttribute.js", "src/core/BufferAttribute.js", "src/core/InterleavedBuffer.js", "src/core/InterleavedBuffer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L110-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 110 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 186, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L176-L186", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 176 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 69, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L59-L69", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 59 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 132, "file_path": "src/core/InterleavedBuffer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/InterleavedBuffer.js#L122-L132", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 122 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 2 }, "title": null, "content": null }+2:51:22Code GrepCode navigationthree“customProgramCacheKey”
customProgramCacheKey
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/common/RenderObject.js", "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 739, "file_path": "src/renderers/common/RenderObject.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/RenderObject.js#L729-L739", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 729 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 387, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L377-L387", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 377 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 387, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L377-L387", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 377 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 437, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L427-L437", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 427 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 5, "context_lines_before": 5, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 15, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers" } ], "pattern": "customProgramCacheKey", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/common/RenderObject.js", "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 739, "file_path": "src/renderers/common/RenderObject.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/common/RenderObject.js#L729-L739", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 729 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 387, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L377-L387", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 377 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 387, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L377-L387", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 377 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 437, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L427-L437", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 427 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 2 }, "title": null, "content": null }+2:52:19Code GrepCode navigationthree“preserveDrawingBuffer”
preserveDrawingBuffer
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 83, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L77-L83", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 77 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 381, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L375-L381", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 375 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3632, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3626-L3632", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3626 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 10, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers" } ], "pattern": "preserveDrawingBuffer", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 83, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L77-L83", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 77 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 381, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L375-L381", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 375 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 3632, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L3626-L3632", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3626 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 1 }, "title": null, "content": null }+2:52:33Code GrepCode navigationthree“nMips”
nMips
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 109, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L93-L109", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 93 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 117, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L101-L117", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 101 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 162, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L146-L162", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 146 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 176, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L160-L176", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 160 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 265, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L249-L265", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 249 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 328, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L312-L328", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 312 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 456, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L440-L456", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 440 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 461, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L445-L461", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 445 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 12, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "examples/jsm/postprocessing" } ], "pattern": "nMips", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js", "examples/jsm/postprocessing/UnrealBloomPass.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 109, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L93-L109", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 93 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 117, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L101-L117", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 101 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 162, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L146-L162", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 146 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 176, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L160-L176", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 160 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 265, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L249-L265", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 249 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 328, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L312-L328", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 312 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 456, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L440-L456", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 440 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 461, "file_path": "examples/jsm/postprocessing/UnrealBloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/UnrealBloomPass.js#L445-L461", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 445 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 1 }, "title": null, "content": null }+2:52:33Code GrepCode navigationthree“onBeforeCompile”
onBeforeCompile
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2222, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2210-L2222", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2210 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 20, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers" } ], "pattern": "onBeforeCompile", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2222, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2210-L2222", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2210 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+2:52:34Code GrepCode navigationthree“vViewPosition”
vViewPosition
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderLib/meshlambert.glsl.js", "src/renderers/shaders/ShaderLib/meshlambert.glsl.js", "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "src/renderers/shaders/ShaderLib/meshphong.glsl.js", "src/renderers/shaders/ShaderLib/meshphong.glsl.js", "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "src/renderers/shaders/ShaderLib/meshtoon.glsl.js", "src/renderers/shaders/ShaderLib/meshtoon.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderLib/meshlambert.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshlambert.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 46, "file_path": "src/renderers/shaders/ShaderLib/meshlambert.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshlambert.glsl.js#L40-L46", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshmatcap.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 47, "file_path": "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshmatcap.glsl.js#L41-L47", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 41 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 59, "file_path": "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshmatcap.glsl.js#L53-L59", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 53 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 90, "file_path": "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshmatcap.glsl.js#L84-L90", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 84 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 9, "file_path": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshnormal.glsl.js#L3-L9", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 46, "file_path": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshnormal.glsl.js#L40-L46", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60, "file_path": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshnormal.glsl.js#L54-L60", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 54 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderLib/meshphong.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphong.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 46, "file_path": "src/renderers/shaders/ShaderLib/meshphong.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphong.glsl.js#L40-L46", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 51, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L45-L51", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 45 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 133, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L127-L133", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 127 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderLib/meshtoon.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshtoon.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 45, "file_path": "src/renderers/shaders/ShaderLib/meshtoon.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshtoon.glsl.js#L39-L45", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 39 } ], "returned_matches": 16, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 16, "unique_files_matched": 6 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 30, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/shaders/ShaderLib" } ], "pattern": "vViewPosition", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderLib/meshlambert.glsl.js", "src/renderers/shaders/ShaderLib/meshlambert.glsl.js", "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "src/renderers/shaders/ShaderLib/meshphong.glsl.js", "src/renderers/shaders/ShaderLib/meshphong.glsl.js", "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "src/renderers/shaders/ShaderLib/meshtoon.glsl.js", "src/renderers/shaders/ShaderLib/meshtoon.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderLib/meshlambert.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshlambert.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 46, "file_path": "src/renderers/shaders/ShaderLib/meshlambert.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshlambert.glsl.js#L40-L46", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshmatcap.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 47, "file_path": "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshmatcap.glsl.js#L41-L47", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 41 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 59, "file_path": "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshmatcap.glsl.js#L53-L59", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 53 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 90, "file_path": "src/renderers/shaders/ShaderLib/meshmatcap.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshmatcap.glsl.js#L84-L90", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 84 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 9, "file_path": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshnormal.glsl.js#L3-L9", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 46, "file_path": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshnormal.glsl.js#L40-L46", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60, "file_path": "src/renderers/shaders/ShaderLib/meshnormal.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshnormal.glsl.js#L54-L60", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 54 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderLib/meshphong.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphong.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 46, "file_path": "src/renderers/shaders/ShaderLib/meshphong.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphong.glsl.js#L40-L46", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 51, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L45-L51", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 45 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 133, "file_path": "src/renderers/shaders/ShaderLib/meshphysical.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L127-L133", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 127 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderLib/meshtoon.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshtoon.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 45, "file_path": "src/renderers/shaders/ShaderLib/meshtoon.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderLib/meshtoon.glsl.js#L39-L45", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 39 } ], "returned_matches": 16, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 16, "unique_files_matched": 6 }, "title": null, "content": null }+2:52:51Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 2240, "indexing_status": "indexed", "language": "javascript", "line_count": 66, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2240, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2175-L2240", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2175 } ], "start_line": 2175, "status": "success", "total_lines": 3703 }Request
Request payload
{ "end_line": 2240, "file_path": "src/renderers/WebGLRenderer.js", "package_name": "three", "registry": "npm", "start_line": 2175, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 2240, "indexing_status": "indexed", "language": "javascript", "line_count": 66, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2240, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2175-L2240", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2175 } ], "start_line": 2175, "status": "success", "total_lines": 3703 }, "title": null, "content": null }+2:52:55Code GrepCode navigationthree{"errors":[{"code":"GREP_FAILED","message":"failed to fetch GREP verification inputs concurrently: Failed to get remote object: cas/f7b27667814192caf0c61ff809cf5f5af87bbc0106cac7690b083d49f285b3df. Unexpected backend error; retry, and report if it persists."}],"next_cursor_present":false,"status":"error"}
matrixWorldInverse.copy
Result summary
{ "errors": [ { "code": "GREP_FAILED", "message": "failed to fetch GREP verification inputs concurrently: Failed to get remote object: cas/f7b27667814192caf0c61ff809cf5f5af87bbc0106cac7690b083d49f285b3df. Unexpected backend error; retry, and report if it persists." } ], "next_cursor_present": false, "status": "error" }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 10, "max_matches_per_file": 20, "package_name": "three", "pattern": "matrixWorldInverse.copy", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "errors": [ { "code": "GREP_FAILED", "message": "failed to fetch GREP verification inputs concurrently: Failed to get remote object: cas/f7b27667814192caf0c61ff809cf5f5af87bbc0106cac7690b083d49f285b3df. Unexpected backend error; retry, and report if it persists." } ], "next_cursor_present": false, "status": "error" }, "title": null, "content": null }+2:52:56Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 110, "indexing_status": "indexed", "language": "javascript", "line_count": 75, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js#L36-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 36 } ], "start_line": 36, "status": "success", "total_lines": 365 }Request
Request payload
{ "end_line": 110, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "package_name": "three", "registry": "npm", "start_line": 36, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 110, "indexing_status": "indexed", "language": "javascript", "line_count": 75, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js#L36-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 36 } ], "start_line": 36, "status": "success", "total_lines": 365 }, "title": null, "content": null }+2:53:00Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 360, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 360, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js#L300-L360", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 300 } ], "start_line": 300, "status": "success", "total_lines": 365 }Request
Request payload
{ "end_line": 360, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "package_name": "three", "registry": "npm", "start_line": 300, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 360, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 360, "file_path": "examples/jsm/postprocessing/EffectComposer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/EffectComposer.js#L300-L360", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 300 } ], "start_line": 300, "status": "success", "total_lines": 365 }, "title": null, "content": null }+2:53:12Code GrepCode navigationthree“matrixWorldInverse”
matrixWorldInverse
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1668, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1648-L1668", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1648 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2138, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2118-L2138", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2118 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2582, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2562-L2582", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2562 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "matrixWorldInverse", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1668, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1648-L1668", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1648 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2138, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2118-L2138", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2118 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2582, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2562-L2582", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2562 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }, "title": null, "content": null }+2:53:24Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 100, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L40-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 } ], "start_line": 40, "status": "success", "total_lines": 160 }Request
Request payload
{ "end_line": 100, "file_path": "src/cameras/Camera.js", "package_name": "three", "registry": "npm", "start_line": 40, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 100, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L40-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 } ], "start_line": 40, "status": "success", "total_lines": 160 }, "title": null, "content": null }+2:53:33Code GrepCode navigationthree“instanceMatrix.needsUpdate”
instanceMatrix.needsUpdate
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 10, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src" } ], "pattern": "instanceMatrix.needsUpdate", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+2:53:37Code GrepCode navigationthree“DynamicDrawUsage”
DynamicDrawUsage
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 10, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/objects" } ], "pattern": "DynamicDrawUsage", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+2:53:42Code GrepCode navigationthree“updateMatrixWorld”
updateMatrixWorld
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/cameras/Camera.js", "src/cameras/Camera.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 122, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L102-L122", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 102 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 124, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L104-L124", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 104 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/cameras/Camera.js" } ], "pattern": "updateMatrixWorld", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/cameras/Camera.js", "src/cameras/Camera.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 122, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L102-L122", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 102 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 124, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L104-L124", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 104 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+2:53:45Code GrepCode navigationthree“updateRanges”
updateRanges
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1873, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1853-L1873", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1853 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1873, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1853-L1873", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1853 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1877, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1857-L1877", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1857 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1886, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1866-L1886", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1866 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1888, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1868-L1888", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1868 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1933, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1913-L1933", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1913 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1933, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1913-L1933", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1913 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1937, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1917-L1937", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1917 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 8, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/webgl" } ], "pattern": "updateRanges", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js", "src/renderers/webgl-fallback/WebGLBackend.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1873, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1853-L1873", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1853 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1873, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1853-L1873", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1853 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1877, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1857-L1877", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1857 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1886, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1866-L1886", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1866 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1888, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1868-L1888", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1868 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1933, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1913-L1933", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1913 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1933, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1913-L1933", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1913 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1937, "file_path": "src/renderers/webgl-fallback/WebGLBackend.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl-fallback/WebGLBackend.js#L1917-L1937", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1917 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 1 }, "title": null, "content": null }+2:53:55Code GrepCode navigationthree“bufferSubData”
bufferSubData
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L80-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 80 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 105, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L85-L105", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 85 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 152, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L132-L152", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 132 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLAttributes.js" } ], "pattern": "bufferSubData", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L80-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 80 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 105, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L85-L105", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 85 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 152, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L132-L152", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 132 } ], "returned_matches": 3, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 3, "unique_files_matched": 1 }, "title": null, "content": null }+2:54:19Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 340, "indexing_status": "indexed", "language": "javascript", "line_count": 41, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 340, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L300-L340", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 300 } ], "start_line": 300, "status": "success", "total_lines": 411 }Request
Request payload
{ "end_line": 340, "file_path": "src/objects/InstancedMesh.js", "package_name": "three", "registry": "npm", "start_line": 300, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 340, "indexing_status": "indexed", "language": "javascript", "line_count": 41, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 340, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L300-L340", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 300 } ], "start_line": 300, "status": "success", "total_lines": 411 }, "title": null, "content": null }+2:54:35Code GrepCode navigationthree“material.needsUpdate”
material.needsUpdate
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1359, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1343-L1359", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1343 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1363, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1347-L1363", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1347 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2073, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2057-L2073", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2057 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2078, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2062-L2078", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2062 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2144, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2128-L2144", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2128 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2148, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2132-L2148", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2132 } ], "returned_matches": 6, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 6, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "material.needsUpdate", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1359, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1343-L1359", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1343 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1363, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1347-L1363", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1347 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2073, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2057-L2073", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2057 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2078, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2062-L2078", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2062 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2144, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2128-L2144", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2128 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2148, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2132-L2148", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2132 } ], "returned_matches": 6, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 6, "unique_files_matched": 1 }, "title": null, "content": null }+2:55:50Code GrepCode navigationthree“getObjectByProperty”
getObjectByProperty
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js", "src/core/Object3D.js", "src/core/Object3D.js", "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 929, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L909-L929", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 909 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 942, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L922-L942", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 922 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 954, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L934-L954", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 934 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 961, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L941-L961", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 941 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/Object3D.js" } ], "pattern": "getObjectByProperty", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js", "src/core/Object3D.js", "src/core/Object3D.js", "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 929, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L909-L929", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 909 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 942, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L922-L942", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 922 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 954, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L934-L954", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 934 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 961, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L941-L961", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 941 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+2:56:18Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 121, "indexing_status": "indexed", "language": "javascript", "line_count": 82, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 121, "file_path": "src/core/Layers.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Layers.js#L40-L121", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 } ], "start_line": 40, "status": "success", "total_lines": 121 }Request
Request payload
{ "end_line": 130, "file_path": "src/core/Layers.js", "package_name": "three", "registry": "npm", "start_line": 40, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 121, "indexing_status": "indexed", "language": "javascript", "line_count": 82, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 121, "file_path": "src/core/Layers.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Layers.js#L40-L121", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 } ], "start_line": 40, "status": "success", "total_lines": 121 }, "title": null, "content": null }+2:58:02Code GrepCode navigationthree“set needsUpdate”
set needsUpdate
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/materials/Material.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1212, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L1196-L1212", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1196 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/materials/Material.js" } ], "pattern": "set needsUpdate", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/materials/Material.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1212, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L1196-L1212", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1196 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+2:58:03Code GrepCode navigationthree“onRotationChange”
onRotationChange
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js", "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 153, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L137-L153", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 137 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 165, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L149-L165", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 149 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/Object3D.js" } ], "pattern": "onRotationChange", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js", "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 153, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L137-L153", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 137 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 165, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L149-L165", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 149 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+2:58:15Code GrepCode navigationthree-mesh-bvh“shapecast(”
shapecast(
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BVH.js", "src/core/LineBVH.js", "src/core/LineBVH.js", "src/core/LineBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 352, "file_path": "src/core/BVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/BVH.js#L332-L352", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 332 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 98, "file_path": "src/core/LineBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/LineBVH.js#L78-L98", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 78 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 101, "file_path": "src/core/LineBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/LineBVH.js#L81-L101", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 81 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 127, "file_path": "src/core/LineBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/LineBVH.js#L107-L127", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 107 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 635, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L615-L635", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 615 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 638, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L618-L638", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 618 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 3 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "path_selectors": [ { "kind": "PREFIX", "value": "src/core" } ], "pattern": "shapecast(", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BVH.js", "src/core/LineBVH.js", "src/core/LineBVH.js", "src/core/LineBVH.js", "src/core/MeshBVH.js", "src/core/MeshBVH.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 352, "file_path": "src/core/BVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/BVH.js#L332-L352", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 332 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 98, "file_path": "src/core/LineBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/LineBVH.js#L78-L98", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 78 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 101, "file_path": "src/core/LineBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/LineBVH.js#L81-L101", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 81 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 127, "file_path": "src/core/LineBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/LineBVH.js#L107-L127", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 107 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 635, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L615-L635", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 615 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 638, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L618-L638", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 618 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 3 }, "title": null, "content": null }+2:58:38Code GrepCode navigationthree“boneTexture”
boneTexture
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/objects/Skeleton.js", "src/objects/Skeleton.js", "src/objects/Skeleton.js", "src/objects/Skeleton.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 74, "file_path": "src/objects/Skeleton.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Skeleton.js#L58-L74", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 58 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 88, "file_path": "src/objects/Skeleton.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Skeleton.js#L72-L88", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 72 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 212, "file_path": "src/objects/Skeleton.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Skeleton.js#L196-L212", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 196 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 212, "file_path": "src/objects/Skeleton.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Skeleton.js#L196-L212", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 196 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/objects/Skeleton.js" } ], "pattern": "boneTexture", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/objects/Skeleton.js", "src/objects/Skeleton.js", "src/objects/Skeleton.js", "src/objects/Skeleton.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 74, "file_path": "src/objects/Skeleton.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Skeleton.js#L58-L74", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 58 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 88, "file_path": "src/objects/Skeleton.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Skeleton.js#L72-L88", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 72 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 212, "file_path": "src/objects/Skeleton.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Skeleton.js#L196-L212", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 196 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 212, "file_path": "src/objects/Skeleton.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/Skeleton.js#L196-L212", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 196 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+3:00:26Code GrepCode navigationthree“function getProgram”
function getProgram
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2165, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2145-L2165", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2145 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "function getProgram", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2165, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2145-L2165", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2145 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:00:30Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 2255, "indexing_status": "indexed", "language": "javascript", "line_count": 91, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2255, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2165-L2255", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2165 } ], "start_line": 2165, "status": "success", "total_lines": 3703 }Request
Request payload
{ "end_line": 2255, "file_path": "src/renderers/WebGLRenderer.js", "package_name": "three", "registry": "npm", "start_line": 2165, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 2255, "indexing_status": "indexed", "language": "javascript", "line_count": 91, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2255, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2165-L2255", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2165 } ], "start_line": 2165, "status": "success", "total_lines": 3703 }, "title": null, "content": null }+3:00:38Code GrepCode navigationthree“needsProgramChange”
needsProgramChange
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2394, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2382-L2394", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2382 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2400, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2388-L2400", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2388 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2404, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2392-L2404", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2392 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2408, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2396-L2408", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2396 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2412, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2400-L2412", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2400 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 5, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "needsProgramChange", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2394, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2382-L2394", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2382 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2400, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2388-L2400", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2388 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2404, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2392-L2404", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2392 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2408, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2396-L2408", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2396 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2412, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2400-L2412", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2400 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }, "title": null, "content": null }+3:00:46Code GrepCode navigationthree“state.version”
state.version
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLLights.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 493, "file_path": "src/renderers/webgl/WebGLLights.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLLights.js#L477-L493", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 477 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 5, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLLights.js" } ], "pattern": "state.version", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLLights.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 493, "file_path": "src/renderers/webgl/WebGLLights.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLLights.js#L477-L493", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 477 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:01:04Code GrepCode navigationthree“function renderObject”
function renderObject
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLShadowMap.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 517, "file_path": "src/renderers/webgl/WebGLShadowMap.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLShadowMap.js#L497-L517", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 497 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLShadowMap.js" } ], "pattern": "function renderObject", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLShadowMap.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 517, "file_path": "src/renderers/webgl/WebGLShadowMap.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLShadowMap.js#L497-L517", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 497 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:01:43Code GrepCode navigationthree“intersectsObject”
intersectsObject
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Frustum.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 156, "file_path": "src/math/Frustum.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Frustum.js#L136-L156", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 136 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/math/Frustum.js" } ], "pattern": "intersectsObject", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Frustum.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 156, "file_path": "src/math/Frustum.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Frustum.js#L136-L156", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 136 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:02:05Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 340, "indexing_status": "indexed", "language": "javascript", "line_count": 51, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 340, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L290-L340", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 290 } ], "start_line": 290, "status": "success", "total_lines": 405 }Request
Request payload
{ "end_line": 340, "file_path": "src/core/RenderTarget.js", "package_name": "three", "registry": "npm", "start_line": 290, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 340, "indexing_status": "indexed", "language": "javascript", "line_count": 51, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 340, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L290-L340", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 290 } ], "start_line": 290, "status": "success", "total_lines": 405 }, "title": null, "content": null }+3:02:13Code GrepCode navigationthree“_currentMaterialId”
_currentMaterialId
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 317, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L301-L317", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 301 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1800, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1784-L1800", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1784 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2383, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2367-L2383", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2367 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2544, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2528-L2544", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2528 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2546, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2530-L2546", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2530 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 5, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "_currentMaterialId", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 317, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L301-L317", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 301 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1800, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1784-L1800", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1784 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2383, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2367-L2383", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2367 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2544, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2528-L2544", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2528 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2546, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2530-L2546", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2530 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }, "title": null, "content": null }+3:02:15Code GrepCode navigationthree“onInstancedMeshDispose”
onInstancedMeshDispose
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.module.js", "build/three.module.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 64707, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L64687-L64707", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64687 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 64709, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L64689-L64709", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64689 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 64753, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L64733-L64753", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64733 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 64757, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L64737-L64757", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64737 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 4729, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L4709-L4729", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 4709 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 4731, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L4711-L4731", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 4711 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "pattern": "onInstancedMeshDispose", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.module.js", "build/three.module.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 64707, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L64687-L64707", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64687 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 64709, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L64689-L64709", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64689 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 64753, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L64733-L64753", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64733 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 64757, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L64737-L64757", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64737 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 4729, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L4709-L4729", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 4709 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 4731, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L4711-L4731", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 4711 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 2 }, "title": null, "content": null }+3:02:46Code GrepCode navigationthree“UniformsUtils.clone”
UniformsUtils.clone
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/postprocessing/AfterimagePass.js", "examples/jsm/postprocessing/AfterimagePass.js", "examples/jsm/postprocessing/BloomPass.js", "examples/jsm/postprocessing/BloomPass.js", "examples/jsm/postprocessing/BokehPass.js", "examples/jsm/postprocessing/CubeTexturePass.js", "examples/jsm/postprocessing/DotScreenPass.js", "examples/jsm/postprocessing/FilmPass.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 50, "file_path": "examples/jsm/postprocessing/AfterimagePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/AfterimagePass.js#L38-L50", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 38 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 73, "file_path": "examples/jsm/postprocessing/AfterimagePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/AfterimagePass.js#L61-L73", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 61 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 52, "file_path": "examples/jsm/postprocessing/BloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BloomPass.js#L40-L52", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 80, "file_path": "examples/jsm/postprocessing/BloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BloomPass.js#L68-L80", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 68 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 85, "file_path": "examples/jsm/postprocessing/BokehPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BokehPass.js#L73-L85", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 73 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 82, "file_path": "examples/jsm/postprocessing/CubeTexturePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/CubeTexturePass.js#L70-L82", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 70 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 49, "file_path": "examples/jsm/postprocessing/DotScreenPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/DotScreenPass.js#L37-L49", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 49, "file_path": "examples/jsm/postprocessing/FilmPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FilmPass.js#L37-L49", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 6 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 8, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "examples/jsm/postprocessing" } ], "pattern": "UniformsUtils.clone", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/postprocessing/AfterimagePass.js", "examples/jsm/postprocessing/AfterimagePass.js", "examples/jsm/postprocessing/BloomPass.js", "examples/jsm/postprocessing/BloomPass.js", "examples/jsm/postprocessing/BokehPass.js", "examples/jsm/postprocessing/CubeTexturePass.js", "examples/jsm/postprocessing/DotScreenPass.js", "examples/jsm/postprocessing/FilmPass.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 50, "file_path": "examples/jsm/postprocessing/AfterimagePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/AfterimagePass.js#L38-L50", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 38 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 73, "file_path": "examples/jsm/postprocessing/AfterimagePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/AfterimagePass.js#L61-L73", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 61 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 52, "file_path": "examples/jsm/postprocessing/BloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BloomPass.js#L40-L52", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 80, "file_path": "examples/jsm/postprocessing/BloomPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BloomPass.js#L68-L80", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 68 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 85, "file_path": "examples/jsm/postprocessing/BokehPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/BokehPass.js#L73-L85", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 73 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 82, "file_path": "examples/jsm/postprocessing/CubeTexturePass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/CubeTexturePass.js#L70-L82", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 70 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 49, "file_path": "examples/jsm/postprocessing/DotScreenPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/DotScreenPass.js#L37-L49", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 49, "file_path": "examples/jsm/postprocessing/FilmPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/FilmPass.js#L37-L49", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 37 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 6 }, "title": null, "content": null }+3:03:09Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 100, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "examples/jsm/postprocessing/ShaderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/ShaderPass.js#L40-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 } ], "start_line": 40, "status": "success", "total_lines": 135 }Request
Request payload
{ "end_line": 100, "file_path": "examples/jsm/postprocessing/ShaderPass.js", "package_name": "three", "registry": "npm", "start_line": 40, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 100, "indexing_status": "indexed", "language": "javascript", "line_count": 61, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "examples/jsm/postprocessing/ShaderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/ShaderPass.js#L40-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 40 } ], "start_line": 40, "status": "success", "total_lines": 135 }, "title": null, "content": null }+3:07:48Code GrepCode navigationthree“depthBuffer = true”
depthBuffer = true
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 5, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/core" } ], "pattern": "depthBuffer = true", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+3:07:54Code GrepCode navigationthree“depthBuffer”
depthBuffer
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 36, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L26-L36", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 26 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 38, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L28-L38", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 63, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L53-L63", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 53 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 65, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L55-L65", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 55 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 5, "context_lines_before": 5, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/RenderTarget.js" } ], "pattern": "depthBuffer", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js", "src/core/RenderTarget.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 36, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L26-L36", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 26 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 38, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L28-L38", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 63, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L53-L63", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 53 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 65, "file_path": "src/core/RenderTarget.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/RenderTarget.js#L55-L65", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 55 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+3:10:59Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 7, "indexing_status": "indexed", "language": "javascript", "line_count": 7, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderChunk/color_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/color_fragment.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 7 }Request
Request payload
{ "end_line": 150, "file_path": "src/renderers/shaders/ShaderChunk/color_fragment.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 7, "indexing_status": "indexed", "language": "javascript", "line_count": 7, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderChunk/color_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/color_fragment.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 7 }, "title": null, "content": null }+3:10:59Code GrepCode navigationthree“vertexColors”
vertexColors
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 310, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L306-L310", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 306 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 310, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L306-L310", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 306 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 311, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L307-L311", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 307 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 517, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L513-L517", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 513 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 2, "context_lines_before": 2, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLPrograms.js" } ], "pattern": "vertexColors", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js", "src/renderers/webgl/WebGLPrograms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 310, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L306-L310", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 306 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 310, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L306-L310", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 306 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 311, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L307-L311", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 307 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 517, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L513-L517", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 513 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+3:11:04Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 75, "indexing_status": "indexed", "language": "javascript", "line_count": 75, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 75, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js#L1-L75", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 213 }Request
Request payload
{ "end_line": 75, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 75, "indexing_status": "indexed", "language": "javascript", "line_count": 75, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 75, "file_path": "src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js#L1-L75", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 213 }, "title": null, "content": null }+3:11:05Code GrepCode navigationthree“BRDF_Lambert”
BRDF_Lambert
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 5, "context_lines_before": 5, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/shaders/ShaderChunk/bsdfs.glsl.js" } ], "pattern": "BRDF_Lambert", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+3:11:10Code GrepCode navigationthree“BRDF_Lambert”
BRDF_Lambert
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/common.glsl.js", "src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 107, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L99-L107", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 99 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 20, "file_path": "src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js#L12-L20", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 12 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 26, "file_path": "src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js#L18-L26", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 18 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 22, "file_path": "src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js#L14-L22", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 14 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js#L22-L30", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 22 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 562, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L554-L562", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 554 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 567, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L559-L567", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 559 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 18, "file_path": "src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js#L10-L18", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 10 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 24, "file_path": "src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js#L16-L24", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 16 } ], "returned_matches": 9, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 9, "unique_files_matched": 5 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/shaders" } ], "pattern": "BRDF_Lambert", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/common.glsl.js", "src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 107, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L99-L107", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 99 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 20, "file_path": "src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js#L12-L20", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 12 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 26, "file_path": "src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js#L18-L26", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 18 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 22, "file_path": "src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js#L14-L22", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 14 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js#L22-L30", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 22 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 562, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L554-L562", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 554 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 567, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L559-L567", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 559 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 18, "file_path": "src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js#L10-L18", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 10 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 24, "file_path": "src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js#L16-L24", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 16 } ], "returned_matches": 9, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 9, "unique_files_matched": 5 }, "title": null, "content": null }+3:11:18Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 60, "indexing_status": "indexed", "language": "javascript", "line_count": 60, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L1-L60", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 656 }Request
Request payload
{ "end_line": 60, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 60, "indexing_status": "indexed", "language": "javascript", "line_count": 60, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L1-L60", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 656 }, "title": null, "content": null }+3:11:20Code GrepCode navigationthree“diffuseContribution”
diffuseContribution
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/transmission_fragment.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 11, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L5-L11", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 5 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 502, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L496-L502", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 496 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 561, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L555-L561", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 555 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 566, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L560-L566", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 560 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 623, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L617-L623", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 617 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/transmission_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/transmission_fragment.glsl.js#L24-L30", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 24 } ], "returned_matches": 7, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 7, "unique_files_matched": 3 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/shaders" } ], "pattern": "diffuseContribution", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/transmission_fragment.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 11, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L5-L11", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 5 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 502, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L496-L502", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 496 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 561, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L555-L561", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 555 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 566, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L560-L566", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 560 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 623, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L617-L623", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 617 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/transmission_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/transmission_fragment.glsl.js#L24-L30", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 24 } ], "returned_matches": 7, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 7, "unique_files_matched": 3 }, "title": null, "content": null }+3:12:00Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 7, "indexing_status": "indexed", "language": "javascript", "line_count": 7, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderChunk/tonemapping_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/tonemapping_fragment.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 7 }Request
Request payload
{ "end_line": 150, "file_path": "src/renderers/shaders/ShaderChunk/tonemapping_fragment.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 7, "indexing_status": "indexed", "language": "javascript", "line_count": 7, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "src/renderers/shaders/ShaderChunk/tonemapping_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/tonemapping_fragment.glsl.js#L1-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 7 }, "title": null, "content": null }+3:12:16Code GrepCode navigationthree“toneMapping”
toneMapping
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 8, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L2-L8", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 9, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L3-L9", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 10, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L4-L10", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 4 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 11, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L5-L11", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 5 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 12, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L6-L12", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 13, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L7-L13", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 7 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 14, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L8-L14", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 8 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 78, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L72-L78", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 72 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 96, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L90-L96", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 90 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 96, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L90-L96", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 90 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L94-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 94 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L94-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 94 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 103, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L97-L103", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 97 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 103, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L97-L103", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 97 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 109, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L103-L109", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 103 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 109, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L103-L109", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 103 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L104-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 104 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L104-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 104 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 111, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L105-L111", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 105 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 111, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L105-L111", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 105 } ], "returned_matches": 20, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 20, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "examples/jsm/postprocessing/OutputPass.js" } ], "pattern": "toneMapping", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js", "examples/jsm/postprocessing/OutputPass.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 8, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L2-L8", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 9, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L3-L9", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 10, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L4-L10", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 4 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 11, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L5-L11", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 5 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 12, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L6-L12", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 13, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L7-L13", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 7 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 14, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L8-L14", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 8 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 78, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L72-L78", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 72 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 96, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L90-L96", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 90 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 96, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L90-L96", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 90 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L94-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 94 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 100, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L94-L100", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 94 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 103, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L97-L103", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 97 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 103, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L97-L103", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 97 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 109, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L103-L109", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 103 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 109, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L103-L109", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 103 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L104-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 104 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L104-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 104 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 111, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L105-L111", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 105 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 111, "file_path": "examples/jsm/postprocessing/OutputPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/OutputPass.js#L105-L111", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 105 } ], "returned_matches": 20, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 20, "unique_files_matched": 1 }, "title": null, "content": null }+3:12:17Code GrepCode navigationthree“toneMapped”
toneMapped
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLBackground.js", "src/renderers/webgl/WebGLBackground.js", "src/renderers/webgl/WebGLPrograms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 154, "file_path": "src/renderers/webgl/WebGLBackground.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLBackground.js#L148-L154", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 148 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 211, "file_path": "src/renderers/webgl/WebGLBackground.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLBackground.js#L205-L211", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 205 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 181, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L175-L181", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 175 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/webgl" } ], "pattern": "toneMapped", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLBackground.js", "src/renderers/webgl/WebGLBackground.js", "src/renderers/webgl/WebGLPrograms.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 154, "file_path": "src/renderers/webgl/WebGLBackground.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLBackground.js#L148-L154", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 148 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 211, "file_path": "src/renderers/webgl/WebGLBackground.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLBackground.js#L205-L211", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 205 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 181, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L175-L181", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 175 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 2 }, "title": null, "content": null }+3:12:25Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 200, "indexing_status": "indexed", "language": "javascript", "line_count": 33, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 200, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L168-L200", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 168 } ], "start_line": 168, "status": "success", "total_lines": 686 }Request
Request payload
{ "end_line": 200, "file_path": "src/renderers/webgl/WebGLPrograms.js", "package_name": "three", "registry": "npm", "start_line": 168, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 200, "indexing_status": "indexed", "language": "javascript", "line_count": 33, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 200, "file_path": "src/renderers/webgl/WebGLPrograms.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLPrograms.js#L168-L200", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 168 } ], "start_line": 168, "status": "success", "total_lines": 686 }, "title": null, "content": null }+3:12:59Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 110, "indexing_status": "indexed", "language": "javascript", "line_count": 75, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "src/core/Layers.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Layers.js#L36-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 36 } ], "start_line": 36, "status": "success", "total_lines": 121 }Request
Request payload
{ "end_line": 110, "file_path": "src/core/Layers.js", "package_name": "three", "registry": "npm", "start_line": 36, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 110, "indexing_status": "indexed", "language": "javascript", "line_count": 75, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 110, "file_path": "src/core/Layers.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Layers.js#L36-L110", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 36 } ], "start_line": 36, "status": "success", "total_lines": 121 }, "title": null, "content": null }+3:15:22Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 103, "indexing_status": "indexed", "language": "javascript", "line_count": 103, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 103, "file_path": "examples/jsm/shaders/OutputShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/OutputShader.js#L1-L103", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 103 }Request
Request payload
{ "end_line": 120, "file_path": "examples/jsm/shaders/OutputShader.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 103, "indexing_status": "indexed", "language": "javascript", "line_count": 103, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 103, "file_path": "examples/jsm/shaders/OutputShader.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/shaders/OutputShader.js#L1-L103", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 103 }, "title": null, "content": null }+3:15:42Code GrepCode navigationthree“_shadowMapSize.copy”
_shadowMapSize.copy
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLShadowMap.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 182, "file_path": "src/renderers/webgl/WebGLShadowMap.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLShadowMap.js#L162-L182", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 162 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLShadowMap.js" } ], "pattern": "_shadowMapSize.copy", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLShadowMap.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 182, "file_path": "src/renderers/webgl/WebGLShadowMap.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLShadowMap.js#L162-L182", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 162 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:15:43Code GrepCode navigationthree“shadow.map === null”
shadow.map === null
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLShadowMap.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 213, "file_path": "src/renderers/webgl/WebGLShadowMap.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLShadowMap.js#L193-L213", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 193 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLShadowMap.js" } ], "pattern": "shadow.map === null", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLShadowMap.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 213, "file_path": "src/renderers/webgl/WebGLShadowMap.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLShadowMap.js#L193-L213", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 193 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:15:47Code GrepCode navigationthree“renderer.render( this.scene, this.camera )”
renderer.render( this.scene, this.camera )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/postprocessing/RenderPass.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 175, "file_path": "examples/jsm/postprocessing/RenderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderPass.js#L155-L175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 155 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "examples/jsm/postprocessing/RenderPass.js" } ], "pattern": "renderer.render( this.scene, this.camera )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/postprocessing/RenderPass.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 175, "file_path": "examples/jsm/postprocessing/RenderPass.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/postprocessing/RenderPass.js#L155-L175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 155 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:15:48Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 30, "indexing_status": "indexed", "language": "javascript", "line_count": 30, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/tonemapping_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/tonemapping_pars_fragment.glsl.js#L1-L30", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 200 }Request
Request payload
{ "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/tonemapping_pars_fragment.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 30, "indexing_status": "indexed", "language": "javascript", "line_count": 30, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 30, "file_path": "src/renderers/shaders/ShaderChunk/tonemapping_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/tonemapping_pars_fragment.glsl.js#L1-L30", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 200 }, "title": null, "content": null }+3:21:06Code GrepCode navigationgodotengine/godot“DIFFUSE_TOON”
DIFFUSE_TOON
repo:https://github.com/godotengine/godotResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "servers/rendering/renderer_rd/forward_clustered/scene_shader_forward_clustered.cpp", "servers/rendering/renderer_rd/forward_clustered/scene_shader_forward_clustered.cpp", "servers/rendering/renderer_rd/forward_mobile/scene_shader_forward_mobile.cpp", "servers/rendering/renderer_rd/forward_mobile/scene_shader_forward_mobile.cpp", "servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl", "servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl", "servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl", "servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl", "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 885, "file_path": "servers/rendering/renderer_rd/forward_clustered/scene_shader_forward_clustered.cpp", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/forward_clustered/scene_shader_forward_clustered.cpp#L869-L885", "repo_url": "https://github.com/godotengine/godot", "start_line": 869 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 885, "file_path": "servers/rendering/renderer_rd/forward_clustered/scene_shader_forward_clustered.cpp", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/forward_clustered/scene_shader_forward_clustered.cpp#L869-L885", "repo_url": "https://github.com/godotengine/godot", "start_line": 869 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 824, "file_path": "servers/rendering/renderer_rd/forward_mobile/scene_shader_forward_mobile.cpp", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/forward_mobile/scene_shader_forward_mobile.cpp#L808-L824", "repo_url": "https://github.com/godotengine/godot", "start_line": 808 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 824, "file_path": "servers/rendering/renderer_rd/forward_mobile/scene_shader_forward_mobile.cpp", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/forward_mobile/scene_shader_forward_mobile.cpp#L808-L824", "repo_url": "https://github.com/godotengine/godot", "start_line": 808 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 2253, "file_path": "servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl#L2237-L2253", "repo_url": "https://github.com/godotengine/godot", "start_line": 2237 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 2283, "file_path": "servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl#L2267-L2283", "repo_url": "https://github.com/godotengine/godot", "start_line": 2267 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 1891, "file_path": "servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl#L1875-L1891", "repo_url": "https://github.com/godotengine/godot", "start_line": 1875 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 1924, "file_path": "servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl#L1908-L1924", "repo_url": "https://github.com/godotengine/godot", "start_line": 1908 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 236, "file_path": "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl#L220-L236", "repo_url": "https://github.com/godotengine/godot", "start_line": 220 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 1220, "file_path": "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl#L1204-L1220", "repo_url": "https://github.com/godotengine/godot", "start_line": 1204 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 1267, "file_path": "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl#L1251-L1267", "repo_url": "https://github.com/godotengine/godot", "start_line": 1251 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 1282, "file_path": "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl#L1266-L1282", "repo_url": "https://github.com/godotengine/godot", "start_line": 1266 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 1291, "file_path": "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl#L1275-L1291", "repo_url": "https://github.com/godotengine/godot", "start_line": 1275 } ], "returned_matches": 13, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 13, "unique_files_matched": 5 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "path_selectors": [ { "kind": "PREFIX", "value": "servers/rendering" } ], "pattern": "DIFFUSE_TOON", "pattern_type": "LITERAL", "repo_url": "https://github.com/godotengine/godot", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "servers/rendering/renderer_rd/forward_clustered/scene_shader_forward_clustered.cpp", "servers/rendering/renderer_rd/forward_clustered/scene_shader_forward_clustered.cpp", "servers/rendering/renderer_rd/forward_mobile/scene_shader_forward_mobile.cpp", "servers/rendering/renderer_rd/forward_mobile/scene_shader_forward_mobile.cpp", "servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl", "servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl", "servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl", "servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl", "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 885, "file_path": "servers/rendering/renderer_rd/forward_clustered/scene_shader_forward_clustered.cpp", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/forward_clustered/scene_shader_forward_clustered.cpp#L869-L885", "repo_url": "https://github.com/godotengine/godot", "start_line": 869 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 885, "file_path": "servers/rendering/renderer_rd/forward_clustered/scene_shader_forward_clustered.cpp", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/forward_clustered/scene_shader_forward_clustered.cpp#L869-L885", "repo_url": "https://github.com/godotengine/godot", "start_line": 869 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 824, "file_path": "servers/rendering/renderer_rd/forward_mobile/scene_shader_forward_mobile.cpp", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/forward_mobile/scene_shader_forward_mobile.cpp#L808-L824", "repo_url": "https://github.com/godotengine/godot", "start_line": 808 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 824, "file_path": "servers/rendering/renderer_rd/forward_mobile/scene_shader_forward_mobile.cpp", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/forward_mobile/scene_shader_forward_mobile.cpp#L808-L824", "repo_url": "https://github.com/godotengine/godot", "start_line": 808 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 2253, "file_path": "servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl#L2237-L2253", "repo_url": "https://github.com/godotengine/godot", "start_line": 2237 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 2283, "file_path": "servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl#L2267-L2283", "repo_url": "https://github.com/godotengine/godot", "start_line": 2267 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 1891, "file_path": "servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl#L1875-L1891", "repo_url": "https://github.com/godotengine/godot", "start_line": 1875 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 1924, "file_path": "servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl#L1908-L1924", "repo_url": "https://github.com/godotengine/godot", "start_line": 1908 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 236, "file_path": "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl#L220-L236", "repo_url": "https://github.com/godotengine/godot", "start_line": 220 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 1220, "file_path": "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl#L1204-L1220", "repo_url": "https://github.com/godotengine/godot", "start_line": 1204 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 1267, "file_path": "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl#L1251-L1267", "repo_url": "https://github.com/godotengine/godot", "start_line": 1251 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 1282, "file_path": "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl#L1266-L1282", "repo_url": "https://github.com/godotengine/godot", "start_line": 1266 }, { "commit_sha": "51105ccbe58381774ecd7a7486d564b202a5192e", "end_line": 1291, "file_path": "servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl", "kind": "code", "permalink": "https://github.com/godotengine/godot/blob/51105ccbe58381774ecd7a7486d564b202a5192e/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl#L1275-L1291", "repo_url": "https://github.com/godotengine/godot", "start_line": 1275 } ], "returned_matches": 13, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 13, "unique_files_matched": 5 }, "title": null, "content": null }+3:21:27Code GrepCode navigationthree“outlineThickness”
outlineThickness
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/effects/OutlineEffect.js", "examples/jsm/effects/OutlineEffect.js", "examples/jsm/effects/OutlineEffect.js", "examples/jsm/effects/OutlineEffect.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 71, "file_path": "examples/jsm/effects/OutlineEffect.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/effects/OutlineEffect.js#L59-L71", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 59 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 86, "file_path": "examples/jsm/effects/OutlineEffect.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/effects/OutlineEffect.js#L74-L86", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 74 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 89, "file_path": "examples/jsm/effects/OutlineEffect.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/effects/OutlineEffect.js#L77-L89", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 77 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 274, "file_path": "examples/jsm/effects/OutlineEffect.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/effects/OutlineEffect.js#L262-L274", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 262 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "examples/jsm/effects/OutlineEffect.js" } ], "pattern": "outlineThickness", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/effects/OutlineEffect.js", "examples/jsm/effects/OutlineEffect.js", "examples/jsm/effects/OutlineEffect.js", "examples/jsm/effects/OutlineEffect.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 71, "file_path": "examples/jsm/effects/OutlineEffect.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/effects/OutlineEffect.js#L59-L71", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 59 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 86, "file_path": "examples/jsm/effects/OutlineEffect.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/effects/OutlineEffect.js#L74-L86", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 74 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 89, "file_path": "examples/jsm/effects/OutlineEffect.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/effects/OutlineEffect.js#L77-L89", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 77 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 274, "file_path": "examples/jsm/effects/OutlineEffect.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/effects/OutlineEffect.js#L262-L274", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 262 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+3:21:53Code GrepCode navigationthree“colorspace_pars_fragment”
colorspace_pars_fragment
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/webgl/WebGLOutput.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 36, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L28-L36", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 36, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L28-L36", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 164, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L156-L164", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 156 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 164, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L156-L164", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 156 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 86, "file_path": "src/renderers/webgl/WebGLOutput.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLOutput.js#L78-L86", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 78 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 782, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L774-L782", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 774 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 3 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 10, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/" } ], "pattern": "colorspace_pars_fragment", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/webgl/WebGLOutput.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 36, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L28-L36", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 36, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L28-L36", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 164, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L156-L164", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 156 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 164, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L156-L164", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 156 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 86, "file_path": "src/renderers/webgl/WebGLOutput.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLOutput.js#L78-L86", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 78 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 782, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L774-L782", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 774 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 3 }, "title": null, "content": null }+3:21:55Code GrepCode navigationthree“tonemapping_pars_fragment”
tonemapping_pars_fragment
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk/common.glsl.js", "src/renderers/webgl/WebGLOutput.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 106, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L98-L106", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 98 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 106, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L98-L106", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 98 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 234, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L226-L234", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 226 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 234, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L226-L234", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 226 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 14, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L6-L14", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 85, "file_path": "src/renderers/webgl/WebGLOutput.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLOutput.js#L77-L85", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 77 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 776, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L768-L776", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 768 } ], "returned_matches": 7, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 7, "unique_files_matched": 4 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 10, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/" } ], "pattern": "tonemapping_pars_fragment", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk.js", "src/renderers/shaders/ShaderChunk/common.glsl.js", "src/renderers/webgl/WebGLOutput.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 106, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L98-L106", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 98 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 106, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L98-L106", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 98 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 234, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L226-L234", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 226 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 234, "file_path": "src/renderers/shaders/ShaderChunk.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk.js#L226-L234", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 226 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 14, "file_path": "src/renderers/shaders/ShaderChunk/common.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/common.glsl.js#L6-L14", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 85, "file_path": "src/renderers/webgl/WebGLOutput.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLOutput.js#L77-L85", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 77 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 776, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L768-L776", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 768 } ], "returned_matches": 7, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 7, "unique_files_matched": 4 }, "title": null, "content": null }+3:23:02Code GrepCode navigationthree“colorspace_pars_fragment”
colorspace_pars_fragment
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 786, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L770-L786", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 770 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/webgl/WebGLProgram.js" } ], "pattern": "colorspace_pars_fragment", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 786, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L770-L786", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 770 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:27:24Code GrepCode navigationthree“ShadowMap =”
ShadowMap =
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/constants.js", "src/constants.js", "src/constants.js", "src/constants.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 58, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L56-L58", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 56 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L64-L66", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 75, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L73-L75", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 73 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 84, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L82-L84", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 82 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 1, "context_lines_before": 1, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/constants.js" } ], "pattern": "ShadowMap =", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/constants.js", "src/constants.js", "src/constants.js", "src/constants.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 58, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L56-L58", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 56 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L64-L66", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 64 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 75, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L73-L75", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 73 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 84, "file_path": "src/constants.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/constants.js#L82-L84", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 82 } ], "returned_matches": 4, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+3:28:24Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 60, "indexing_status": "indexed", "language": "javascript", "line_count": 31, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60, "file_path": "examples/jsm/effects/OutlineEffect.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/effects/OutlineEffect.js#L30-L60", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 30 } ], "start_line": 30, "status": "success", "total_lines": 489 }Request
Request payload
{ "end_line": 60, "file_path": "examples/jsm/effects/OutlineEffect.js", "package_name": "three", "registry": "npm", "start_line": 30, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 60, "indexing_status": "indexed", "language": "javascript", "line_count": 31, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60, "file_path": "examples/jsm/effects/OutlineEffect.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/effects/OutlineEffect.js#L30-L60", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 30 } ], "start_line": 30, "status": "success", "total_lines": 489 }, "title": null, "content": null }+3:28:40Code GrepCode navigationpmndrs/postprocessing“saturation”
saturation
repo:https://github.com/pmndrs/postprocessingResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/effects/glsl/hue-saturation.frag", "src/effects/glsl/hue-saturation.frag", "src/effects/glsl/hue-saturation.frag", "src/effects/glsl/hue-saturation.frag", "src/effects/glsl/hue-saturation.frag" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "703a17523c8d52045dadfdb228aaab5fb1888edc", "end_line": 8, "file_path": "src/effects/glsl/hue-saturation.frag", "kind": "code", "permalink": "https://github.com/pmndrs/postprocessing/blob/703a17523c8d52045dadfdb228aaab5fb1888edc/src/effects/glsl/hue-saturation.frag#L1-L8", "repo_url": "https://github.com/pmndrs/postprocessing", "start_line": 1 }, { "commit_sha": "703a17523c8d52045dadfdb228aaab5fb1888edc", "end_line": 19, "file_path": "src/effects/glsl/hue-saturation.frag", "kind": "code", "permalink": "https://github.com/pmndrs/postprocessing/blob/703a17523c8d52045dadfdb228aaab5fb1888edc/src/effects/glsl/hue-saturation.frag#L7-L19", "repo_url": "https://github.com/pmndrs/postprocessing", "start_line": 7 }, { "commit_sha": "703a17523c8d52045dadfdb228aaab5fb1888edc", "end_line": 23, "file_path": "src/effects/glsl/hue-saturation.frag", "kind": "code", "permalink": "https://github.com/pmndrs/postprocessing/blob/703a17523c8d52045dadfdb228aaab5fb1888edc/src/effects/glsl/hue-saturation.frag#L11-L23", "repo_url": "https://github.com/pmndrs/postprocessing", "start_line": 11 }, { "commit_sha": "703a17523c8d52045dadfdb228aaab5fb1888edc", "end_line": 25, "file_path": "src/effects/glsl/hue-saturation.frag", "kind": "code", "permalink": "https://github.com/pmndrs/postprocessing/blob/703a17523c8d52045dadfdb228aaab5fb1888edc/src/effects/glsl/hue-saturation.frag#L13-L25", "repo_url": "https://github.com/pmndrs/postprocessing", "start_line": 13 }, { "commit_sha": "703a17523c8d52045dadfdb228aaab5fb1888edc", "end_line": 29, "file_path": "src/effects/glsl/hue-saturation.frag", "kind": "code", "permalink": "https://github.com/pmndrs/postprocessing/blob/703a17523c8d52045dadfdb228aaab5fb1888edc/src/effects/glsl/hue-saturation.frag#L17-L29", "repo_url": "https://github.com/pmndrs/postprocessing", "start_line": 17 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "path_selectors": [ { "kind": "EXACT", "value": "src/effects/glsl/hue-saturation.frag" } ], "pattern": "saturation", "pattern_type": "LITERAL", "repo_url": "https://github.com/pmndrs/postprocessing", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/effects/glsl/hue-saturation.frag", "src/effects/glsl/hue-saturation.frag", "src/effects/glsl/hue-saturation.frag", "src/effects/glsl/hue-saturation.frag", "src/effects/glsl/hue-saturation.frag" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "703a17523c8d52045dadfdb228aaab5fb1888edc", "end_line": 8, "file_path": "src/effects/glsl/hue-saturation.frag", "kind": "code", "permalink": "https://github.com/pmndrs/postprocessing/blob/703a17523c8d52045dadfdb228aaab5fb1888edc/src/effects/glsl/hue-saturation.frag#L1-L8", "repo_url": "https://github.com/pmndrs/postprocessing", "start_line": 1 }, { "commit_sha": "703a17523c8d52045dadfdb228aaab5fb1888edc", "end_line": 19, "file_path": "src/effects/glsl/hue-saturation.frag", "kind": "code", "permalink": "https://github.com/pmndrs/postprocessing/blob/703a17523c8d52045dadfdb228aaab5fb1888edc/src/effects/glsl/hue-saturation.frag#L7-L19", "repo_url": "https://github.com/pmndrs/postprocessing", "start_line": 7 }, { "commit_sha": "703a17523c8d52045dadfdb228aaab5fb1888edc", "end_line": 23, "file_path": "src/effects/glsl/hue-saturation.frag", "kind": "code", "permalink": "https://github.com/pmndrs/postprocessing/blob/703a17523c8d52045dadfdb228aaab5fb1888edc/src/effects/glsl/hue-saturation.frag#L11-L23", "repo_url": "https://github.com/pmndrs/postprocessing", "start_line": 11 }, { "commit_sha": "703a17523c8d52045dadfdb228aaab5fb1888edc", "end_line": 25, "file_path": "src/effects/glsl/hue-saturation.frag", "kind": "code", "permalink": "https://github.com/pmndrs/postprocessing/blob/703a17523c8d52045dadfdb228aaab5fb1888edc/src/effects/glsl/hue-saturation.frag#L13-L25", "repo_url": "https://github.com/pmndrs/postprocessing", "start_line": 13 }, { "commit_sha": "703a17523c8d52045dadfdb228aaab5fb1888edc", "end_line": 29, "file_path": "src/effects/glsl/hue-saturation.frag", "kind": "code", "permalink": "https://github.com/pmndrs/postprocessing/blob/703a17523c8d52045dadfdb228aaab5fb1888edc/src/effects/glsl/hue-saturation.frag#L17-L29", "repo_url": "https://github.com/pmndrs/postprocessing", "start_line": 17 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }, "title": null, "content": null }+3:31:35Code GrepCode navigationthree“distanceToSquared”
distanceToSquared
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Vector3.js", "src/math/Vector3.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 959, "file_path": "src/math/Vector3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Vector3.js#L951-L959", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 951 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 971, "file_path": "src/math/Vector3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Vector3.js#L963-L971", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 963 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/math/Vector3.js" } ], "pattern": "distanceToSquared", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Vector3.js", "src/math/Vector3.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 959, "file_path": "src/math/Vector3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Vector3.js#L951-L959", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 951 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 971, "file_path": "src/math/Vector3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Vector3.js#L963-L971", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 963 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+3:38:22Code GrepCode navigationthree“export function damp”
export function damp
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/math/MathUtils.js" } ], "pattern": "export function damp", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+3:38:31Code GrepCode navigationthree“function damp(”
function damp(
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/MathUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 138, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L130-L138", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 130 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/math/" } ], "pattern": "function damp(", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/MathUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 138, "file_path": "src/math/MathUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/MathUtils.js#L130-L138", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 130 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:38:32Code GrepCode navigationthree“LinearTransferOETF”
LinearTransferOETF
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.min.js", "build/three.module.min.js", "build/three.module.min.js", "src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js", "src/renderers/webgl/WebGLProgram.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60340, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60334-L60340", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60334 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66260, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L66254-L66260", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 66254 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66267, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L66261-L66267", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 66261 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 362, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L356-L362", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 356 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6282, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L6276-L6282", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6276 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6289, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L6283-L6289", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6283 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "build/three.module.min.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.min.js#L3-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "build/three.module.min.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.min.js#L3-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "build/three.module.min.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.min.js#L3-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6, "file_path": "src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js#L1-L6", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 48, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L42-L48", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 42 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 55, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L49-L55", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 49 } ], "returned_matches": 12, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 12, "unique_files_matched": 5 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 12, "max_matches_per_file": 20, "package_name": "three", "pattern": "LinearTransferOETF", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.min.js", "build/three.module.min.js", "build/three.module.min.js", "src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js", "src/renderers/webgl/WebGLProgram.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60340, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60334-L60340", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60334 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66260, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L66254-L66260", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 66254 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66267, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L66261-L66267", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 66261 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 362, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L356-L362", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 356 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6282, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L6276-L6282", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6276 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6289, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L6283-L6289", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6283 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "build/three.module.min.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.min.js#L3-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "build/three.module.min.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.min.js#L3-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 7, "file_path": "build/three.module.min.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.min.js#L3-L7", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 3 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6, "file_path": "src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js#L1-L6", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 48, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L42-L48", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 42 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 55, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L49-L55", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 49 } ], "returned_matches": 12, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 12, "unique_files_matched": 5 }, "title": null, "content": null }+3:38:39Code GrepCode navigationthree“LinearTransferOETF”
LinearTransferOETF
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6, "file_path": "src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js#L1-L6", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 8, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/shaders/" } ], "pattern": "LinearTransferOETF", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6, "file_path": "src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js#L1-L6", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:38:39Code GrepCode navigationthree-mesh-bvh“closestPointToSegment”
closestPointToSegment
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/index.d.ts", "src/math/ExtendedTriangle.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 430, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L426-L430", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 426 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 149, "file_path": "src/math/ExtendedTriangle.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/math/ExtendedTriangle.js#L145-L149", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 145 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 2, "context_lines_before": 2, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "path_selectors": [ { "kind": "PREFIX", "value": "src/" } ], "pattern": "closestPointToSegment", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/index.d.ts", "src/math/ExtendedTriangle.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 430, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L426-L430", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 426 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 149, "file_path": "src/math/ExtendedTriangle.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/math/ExtendedTriangle.js#L145-L149", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 145 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 2 }, "title": null, "content": null }+3:38:57Code GrepCode navigationthree“LinearTransferOETF”
LinearTransferOETF
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 51, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L39-L51", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 39 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 58, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L46-L58", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 46 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/webgl/" } ], "pattern": "LinearTransferOETF", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLProgram.js", "src/renderers/webgl/WebGLProgram.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 51, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L39-L51", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 39 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 58, "file_path": "src/renderers/webgl/WebGLProgram.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLProgram.js#L46-L58", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 46 } ], "returned_matches": 2, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+3:39:18SearchCode navigationgkjohnson/three-mesh-bvhcharacter movement capsule collider deltaVector grounded playerIsOnGround gravity
character movement capsule collider deltaVector grounded playerIsOnGround gravity
repo:https://github.com/gkjohnson/three-mesh-bvhResult summary
{ "completed": true, "freshness_counts": { "current": 1 }, "indexing_status_counts": { "indexed": 1 }, "outcome": "result_returned", "partial_results": false, "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 436, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L357-L436", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 357 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 442, "file_path": "example/objectbvh_characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/objectbvh_characterMovement.js#L363-L442", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 363 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 191, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L112-L191", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 112 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 200, "file_path": "example/objectbvh_characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/objectbvh_characterMovement.js#L121-L200", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 121 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 378, "file_path": "example/physics.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/physics.js#L299-L378", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 299 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 276, "file_path": "src/workers/parallelMeshBVH.worker.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/workers/parallelMeshBVH.worker.js#L266-L276", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 266 } ], "result_type_counts": { "repository_code": 6 }, "results": [ { "label": "updatePlayer", "target": "github:gkjohnson/three-mesh-bvh", "type": "repository_code" }, { "label": "updatePlayer", "target": "github:gkjohnson/three-mesh-bvh", "type": "repository_code" }, { "label": "init", "target": "github:gkjohnson/three-mesh-bvh", "type": "repository_code" }, { "label": "init", "target": "github:gkjohnson/three-mesh-bvh", "type": "repository_code" }, { "label": "updateSphereCollisions", "target": "github:gkjohnson/three-mesh-bvh", "type": "repository_code" }, { "label": "getOnProgressDeltaCallback", "target": "github:gkjohnson/three-mesh-bvh", "type": "repository_code" } ], "returned_results": 6, "search_ref_present": false, "source_counts": { "code": 1 }, "status": "success" }Request
Request payload
{ "allow_partial_results": false, "context_lines_after": 2, "context_lines_before": 2, "limit": 6, "offset": 0, "query": "character movement capsule collider deltaVector grounded playerIsOnGround gravity", "sources": [ "code" ], "targets": [ { "repo_url": "https://github.com/gkjohnson/three-mesh-bvh" } ], "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "completed": true, "freshness_counts": { "current": 1 }, "indexing_status_counts": { "indexed": 1 }, "outcome": "result_returned", "partial_results": false, "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 436, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L357-L436", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 357 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 442, "file_path": "example/objectbvh_characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/objectbvh_characterMovement.js#L363-L442", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 363 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 191, "file_path": "example/characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/characterMovement.js#L112-L191", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 112 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 200, "file_path": "example/objectbvh_characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/objectbvh_characterMovement.js#L121-L200", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 121 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 378, "file_path": "example/physics.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/physics.js#L299-L378", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 299 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 276, "file_path": "src/workers/parallelMeshBVH.worker.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/workers/parallelMeshBVH.worker.js#L266-L276", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 266 } ], "result_type_counts": { "repository_code": 6 }, "results": [ { "label": "updatePlayer", "target": "github:gkjohnson/three-mesh-bvh", "type": "repository_code" }, { "label": "updatePlayer", "target": "github:gkjohnson/three-mesh-bvh", "type": "repository_code" }, { "label": "init", "target": "github:gkjohnson/three-mesh-bvh", "type": "repository_code" }, { "label": "init", "target": "github:gkjohnson/three-mesh-bvh", "type": "repository_code" }, { "label": "updateSphereCollisions", "target": "github:gkjohnson/three-mesh-bvh", "type": "repository_code" }, { "label": "getOnProgressDeltaCallback", "target": "github:gkjohnson/three-mesh-bvh", "type": "repository_code" } ], "returned_results": 6, "search_ref_present": false, "source_counts": { "code": 1 }, "status": "success" }, "title": null, "content": null }+3:39:28Code ReadCode navigationgkjohnson/three-mesh-bvh
repo:https://github.com/gkjohnson/three-mesh-bvhResult summary
{ "end_line": 200, "indexing_status": "indexed", "language": "javascript", "line_count": 80, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 200, "file_path": "example/objectbvh_characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/objectbvh_characterMovement.js#L121-L200", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 121 } ], "start_line": 121, "status": "success", "target_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "git_ref": "HEAD", "kind": "code_target", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "role": "resolved_requested" } ], "total_lines": 506 }Request
Request payload
{ "end_line": 200, "file_path": "example/objectbvh_characterMovement.js", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 121, "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 200, "indexing_status": "indexed", "language": "javascript", "line_count": 80, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 200, "file_path": "example/objectbvh_characterMovement.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/example/objectbvh_characterMovement.js#L121-L200", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 121 } ], "start_line": 121, "status": "success", "target_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "git_ref": "HEAD", "kind": "code_target", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "role": "resolved_requested" } ], "total_lines": 506 }, "title": null, "content": null }+3:39:42SearchCode navigationpmndrs/ecctrlcamera collision distance zoom follow character third person
camera collision distance zoom follow character third person
repo:https://github.com/pmndrs/ecctrlResult summary
{ "completed": true, "freshness_counts": { "stale": 1 }, "indexing_status_counts": { "indexed": 1 }, "outcome": "empty_result", "partial_results": false, "returned_results": 0, "search_ref_present": true, "source_counts": { "code": 1 }, "status": "success" }Request
Request payload
{ "allow_partial_results": false, "context_lines_after": 2, "context_lines_before": 2, "limit": 5, "offset": 0, "query": "camera collision distance zoom follow character third person", "sources": [ "code" ], "targets": [ { "repo_url": "https://github.com/pmndrs/ecctrl" } ], "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "completed": true, "freshness_counts": { "stale": 1 }, "indexing_status_counts": { "indexed": 1 }, "outcome": "empty_result", "partial_results": false, "returned_results": 0, "search_ref_present": true, "source_counts": { "code": 1 }, "status": "success" }, "title": null, "content": null }+3:45:11Code FilesCode navigationpmndrs/ecctrlsrc/
repo:https://github.com/pmndrs/ecctrlResult summary
{ "code_index_state": "current", "files": [ "src/all.ts", "src/animation.ts", "src/camera.ts", "src/character/Ecctrl.tsx", "src/character/animation/EcctrlAnimationStateController.tsx", "src/character/animation/index.ts", "src/character/animation/resolveAnimationState.ts", "src/character/animation/types.ts", "src/character/animation/useEcctrlAnimationStore.ts", "src/character/types.ts", "src/curves.ts", "src/curves/CurveLUT.ts", "src/gravity.ts", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/useCustomGravity.ts", "src/index.ts", "src/input.ts", "src/input/Joystick.tsx", "src/input/VirtualButton.tsx", "src/input/stores/useButtonStore.ts" ], "has_more": true, "indexing_status": "indexed", "outcome": "result_returned", "result_pointers": [ { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/all.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/all.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/animation.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/animation.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/camera.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/camera.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/Ecctrl.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/Ecctrl.tsx", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/animation/EcctrlAnimationStateController.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/animation/EcctrlAnimationStateController.tsx", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/animation/index.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/animation/index.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/animation/resolveAnimationState.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/animation/resolveAnimationState.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/animation/types.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/animation/types.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/animation/useEcctrlAnimationStore.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/animation/useEcctrlAnimationStore.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/types.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/types.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/curves.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/curves.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/curves/CurveLUT.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/curves/CurveLUT.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/gravity.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/gravity/useCustomGravity.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/useCustomGravity.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/index.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/index.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/input.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/input.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/input/Joystick.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/input/Joystick.tsx", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/input/VirtualButton.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/input/VirtualButton.tsx", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/input/stores/useButtonStore.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/input/stores/useButtonStore.ts", "repo_url": "https://github.com/pmndrs/ecctrl" } ], "result_pointers_truncated": true, "returned": 30, "status": "success", "total": 34 }Request
Request payload
{ "exclude_doc_files": false, "exclude_test_files": false, "include_hidden": false, "limit": 30, "offset": 0, "path_prefix": "src/", "repo_url": "https://github.com/pmndrs/ecctrl", "wait_timeout_ms": 20000 }ResponseTruncated
Response payload
{ "summary": { "code_index_state": "current", "files": [ "src/all.ts", "src/animation.ts", "src/camera.ts", "src/character/Ecctrl.tsx", "src/character/animation/EcctrlAnimationStateController.tsx", "src/character/animation/index.ts", "src/character/animation/resolveAnimationState.ts", "src/character/animation/types.ts", "src/character/animation/useEcctrlAnimationStore.ts", "src/character/types.ts", "src/curves.ts", "src/curves/CurveLUT.ts", "src/gravity.ts", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/useCustomGravity.ts", "src/index.ts", "src/input.ts", "src/input/Joystick.tsx", "src/input/VirtualButton.tsx", "src/input/stores/useButtonStore.ts" ], "has_more": true, "indexing_status": "indexed", "outcome": "result_returned", "result_pointers": [ { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/all.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/all.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/animation.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/animation.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/camera.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/camera.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/Ecctrl.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/Ecctrl.tsx", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/animation/EcctrlAnimationStateController.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/animation/EcctrlAnimationStateController.tsx", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/animation/index.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/animation/index.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/animation/resolveAnimationState.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/animation/resolveAnimationState.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/animation/types.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/animation/types.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/animation/useEcctrlAnimationStore.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/animation/useEcctrlAnimationStore.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/character/types.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/character/types.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/curves.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/curves.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/curves/CurveLUT.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/curves/CurveLUT.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/gravity.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/gravity/useCustomGravity.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/useCustomGravity.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/index.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/index.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/input.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/input.ts", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/input/Joystick.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/input/Joystick.tsx", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/input/VirtualButton.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/input/VirtualButton.tsx", "repo_url": "https://github.com/pmndrs/ecctrl" }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "file_path": "src/input/stores/useButtonStore.ts", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/input/stores/useButtonStore.ts", "repo_url": "https://github.com/pmndrs/ecctrl" } ], "result_pointers_truncated": true, "returned": 30, "status": "success", "total": 34 }, "title": null, "content": null }This shared record contains a truncated response.
+3:45:18Code GrepCode navigationpmndrs/ecctrl“camDollySpeed”
camDollySpeed
repo:https://github.com/pmndrs/ecctrlResult summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 5, "context_lines_before": 5, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "pattern": "camDollySpeed", "pattern_type": "LITERAL", "repo_url": "https://github.com/pmndrs/ecctrl", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+3:45:29Code GrepCode navigationpmndrs/ecctrl“camCollision”
camCollision
repo:https://github.com/pmndrs/ecctrlResult summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "pattern": "camCollision", "pattern_type": "LITERAL", "repo_url": "https://github.com/pmndrs/ecctrl", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+3:45:36Code GrepCode navigationpmndrs/ecctrl“camera”
camera
repo:https://github.com/pmndrs/ecctrlResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 13, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L7-L13", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 7 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 16, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L10-L16", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 10 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 18, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L12-L18", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 12 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 18, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L12-L18", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 12 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 28, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L22-L28", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 22 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 30, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L24-L30", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 24 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 30, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L24-L30", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 24 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 30, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L24-L30", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 24 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 33, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L27-L33", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 27 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 50, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L44-L50", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 44 } ], "returned_matches": 10, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 10, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 3, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 10, "max_matches_per_file": 20, "path_selectors": [ { "kind": "EXACT", "value": "src/gravity/EcctrlCameraControls.tsx" } ], "pattern": "camera", "pattern_type": "LITERAL", "repo_url": "https://github.com/pmndrs/ecctrl", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx", "src/gravity/EcctrlCameraControls.tsx" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 13, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L7-L13", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 7 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 16, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L10-L16", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 10 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 18, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L12-L18", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 12 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 18, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L12-L18", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 12 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 28, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L22-L28", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 22 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 30, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L24-L30", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 24 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 30, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L24-L30", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 24 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 30, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L24-L30", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 24 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 33, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L27-L33", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 27 }, { "commit_sha": "e2f4eb899ab54787170f5472832efb0a238c0ef9", "end_line": 50, "file_path": "src/gravity/EcctrlCameraControls.tsx", "kind": "code", "permalink": "https://github.com/pmndrs/ecctrl/blob/e2f4eb899ab54787170f5472832efb0a238c0ef9/src/gravity/EcctrlCameraControls.tsx#L44-L50", "repo_url": "https://github.com/pmndrs/ecctrl", "start_line": 44 } ], "returned_matches": 10, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 10, "unique_files_matched": 1 }, "title": null, "content": null }+3:45:50Code GrepCode navigationplaycanvas/engine“wasPressed”
wasPressed
repo:https://github.com/playcanvas/engineResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/platform/input/controller.js", "src/platform/input/controller.js", "src/platform/input/controller.js", "src/platform/input/controller.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 361, "file_path": "src/platform/input/controller.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/controller.js#L345-L361", "repo_url": "https://github.com/playcanvas/engine", "start_line": 345 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 375, "file_path": "src/platform/input/controller.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/controller.js#L359-L375", "repo_url": "https://github.com/playcanvas/engine", "start_line": 359 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 382, "file_path": "src/platform/input/controller.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/controller.js#L366-L382", "repo_url": "https://github.com/playcanvas/engine", "start_line": 366 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 387, "file_path": "src/platform/input/controller.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/controller.js#L371-L387", "repo_url": "https://github.com/playcanvas/engine", "start_line": 371 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "path_selectors": [ { "kind": "PREFIX", "value": "src/platform/input/" } ], "pattern": "wasPressed", "pattern_type": "LITERAL", "repo_url": "https://github.com/playcanvas/engine", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/platform/input/controller.js", "src/platform/input/controller.js", "src/platform/input/controller.js", "src/platform/input/controller.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 361, "file_path": "src/platform/input/controller.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/controller.js#L345-L361", "repo_url": "https://github.com/playcanvas/engine", "start_line": 345 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 375, "file_path": "src/platform/input/controller.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/controller.js#L359-L375", "repo_url": "https://github.com/playcanvas/engine", "start_line": 359 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 382, "file_path": "src/platform/input/controller.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/controller.js#L366-L382", "repo_url": "https://github.com/playcanvas/engine", "start_line": 366 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 387, "file_path": "src/platform/input/controller.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/controller.js#L371-L387", "repo_url": "https://github.com/playcanvas/engine", "start_line": 371 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+3:46:12Code GrepCode navigationBabylonJS/Babylon.js“cameraAcceleration”
cameraAcceleration
repo:https://github.com/BabylonJS/Babylon.jsResult summary
{ "files_too_large_skipped": 0, "indexing_ref": "9b8d55ea-36c6-4b6c-8699-88f7c4365dd5", "next_cursor_present": false, "outcome": "deferred", "returned_matches": 0, "status": "success", "target_pointers": [ { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "git_ref": "HEAD", "kind": "code_target", "repo_url": "https://github.com/babylonjs/babylon.js", "role": "resolved_requested" } ], "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "path_selectors": [ { "kind": "PREFIX", "value": "packages/dev/core/src/Cameras/" } ], "pattern": "cameraAcceleration", "pattern_type": "LITERAL", "repo_url": "https://github.com/BabylonJS/Babylon.js", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "indexing_ref": "9b8d55ea-36c6-4b6c-8699-88f7c4365dd5", "next_cursor_present": false, "outcome": "deferred", "returned_matches": 0, "status": "success", "target_pointers": [ { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "git_ref": "HEAD", "kind": "code_target", "repo_url": "https://github.com/babylonjs/babylon.js", "role": "resolved_requested" } ], "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+3:46:21Code GrepCode navigationplaycanvas/engine“_lastKeys”
_lastKeys
repo:https://github.com/playcanvas/engineResult summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 7, "context_lines_before": 7, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "path_selectors": [ { "kind": "EXACT", "value": "src/platform/input/keyboard.js" } ], "pattern": "_lastKeys", "pattern_type": "LITERAL", "repo_url": "https://github.com/playcanvas/engine", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+3:46:34Code GrepCode navigationplaycanvas/engine“_lastKeymap”
_lastKeymap
repo:https://github.com/playcanvas/engineResult summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "path_selectors": [ { "kind": "PREFIX", "value": "src/platform/input/" } ], "pattern": "_lastKeymap", "pattern_type": "LITERAL", "repo_url": "https://github.com/playcanvas/engine", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+3:46:38Code ReadCode navigationplaycanvas/engine
repo:https://github.com/playcanvas/engineResult summary
{ "end_line": 60, "indexing_status": "indexed", "language": "javascript", "line_count": 60, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 60, "file_path": "src/platform/input/keyboard.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/keyboard.js#L1-L60", "repo_url": "https://github.com/playcanvas/engine", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 397 }Request
Request payload
{ "end_line": 60, "file_path": "src/platform/input/keyboard.js", "repo_url": "https://github.com/playcanvas/engine", "start_line": 1, "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 60, "indexing_status": "indexed", "language": "javascript", "line_count": 60, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 60, "file_path": "src/platform/input/keyboard.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/keyboard.js#L1-L60", "repo_url": "https://github.com/playcanvas/engine", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 397 }, "title": null, "content": null }+3:46:44Code GrepCode navigationplaycanvas/engine“_lastKeymap[a-zA-Z]*|_keymap”
_lastKeymap[a-zA-Z]*|_keymap
repo:https://github.com/playcanvas/engineResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/platform/input/keyboard.js", "src/platform/input/keyboard.js", "src/platform/input/keyboard.js", "src/platform/input/keyboard.js", "src/platform/input/keyboard.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 111, "file_path": "src/platform/input/keyboard.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/keyboard.js#L95-L111", "repo_url": "https://github.com/playcanvas/engine", "start_line": 95 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 271, "file_path": "src/platform/input/keyboard.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/keyboard.js#L255-L271", "repo_url": "https://github.com/playcanvas/engine", "start_line": 255 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 297, "file_path": "src/platform/input/keyboard.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/keyboard.js#L281-L297", "repo_url": "https://github.com/playcanvas/engine", "start_line": 281 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 343, "file_path": "src/platform/input/keyboard.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/keyboard.js#L327-L343", "repo_url": "https://github.com/playcanvas/engine", "start_line": 327 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 358, "file_path": "src/platform/input/keyboard.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/keyboard.js#L342-L358", "repo_url": "https://github.com/playcanvas/engine", "start_line": 342 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 5, "max_matches_per_file": 20, "path_selectors": [ { "kind": "EXACT", "value": "src/platform/input/keyboard.js" } ], "pattern": "_lastKeymap[a-zA-Z]*|_keymap", "pattern_type": "REGEX", "repo_url": "https://github.com/playcanvas/engine", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/platform/input/keyboard.js", "src/platform/input/keyboard.js", "src/platform/input/keyboard.js", "src/platform/input/keyboard.js", "src/platform/input/keyboard.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 111, "file_path": "src/platform/input/keyboard.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/keyboard.js#L95-L111", "repo_url": "https://github.com/playcanvas/engine", "start_line": 95 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 271, "file_path": "src/platform/input/keyboard.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/keyboard.js#L255-L271", "repo_url": "https://github.com/playcanvas/engine", "start_line": 255 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 297, "file_path": "src/platform/input/keyboard.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/keyboard.js#L281-L297", "repo_url": "https://github.com/playcanvas/engine", "start_line": 281 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 343, "file_path": "src/platform/input/keyboard.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/keyboard.js#L327-L343", "repo_url": "https://github.com/playcanvas/engine", "start_line": 327 }, { "commit_sha": "af23f43b8f217e24d9ca39ac843b5a959908bf8b", "end_line": 358, "file_path": "src/platform/input/keyboard.js", "kind": "code", "permalink": "https://github.com/playcanvas/engine/blob/af23f43b8f217e24d9ca39ac843b5a959908bf8b/src/platform/input/keyboard.js#L342-L358", "repo_url": "https://github.com/playcanvas/engine", "start_line": 342 } ], "returned_matches": 5, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 5, "unique_files_matched": 1 }, "title": null, "content": null }+3:47:45Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 14, "indexing_status": "indexed", "language": "javascript", "line_count": 14, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 14, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js#L1-L14", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 161 }Request
Request payload
{ "end_line": 14, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 14, "indexing_status": "indexed", "language": "javascript", "line_count": 14, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 14, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js#L1-L14", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 161 }, "title": null, "content": null }+3:47:58Code GrepCode navigationthree“directDiffuse += irradiance * BRDF_Lambert”
directDiffuse += irradiance * BRDF_Lambert
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 564, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L552-L564", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 552 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js" } ], "pattern": "directDiffuse += irradiance * BRDF_Lambert", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 564, "file_path": "src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js#L552-L564", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 552 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:47:59Code GrepCode navigationBabylonJS/Babylon.js“cameraAcceleration”
cameraAcceleration
repo:https://github.com/BabylonJS/Babylon.jsResult summary
{ "files_too_large_skipped": 0, "indexing_ref": "9b8d55ea-36c6-4b6c-8699-88f7c4365dd5", "next_cursor_present": false, "outcome": "deferred", "returned_matches": 0, "status": "success", "target_pointers": [ { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "git_ref": "HEAD", "kind": "code_target", "repo_url": "https://github.com/babylonjs/babylon.js", "role": "resolved_requested" } ], "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "path_selectors": [ { "kind": "PREFIX", "value": "packages/dev/core/src/Cameras/followCamera.ts" } ], "pattern": "cameraAcceleration", "pattern_type": "LITERAL", "repo_url": "https://github.com/BabylonJS/Babylon.js", "wait_timeout_ms": 60000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "indexing_ref": "9b8d55ea-36c6-4b6c-8699-88f7c4365dd5", "next_cursor_present": false, "outcome": "deferred", "returned_matches": 0, "status": "success", "target_pointers": [ { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "git_ref": "HEAD", "kind": "code_target", "repo_url": "https://github.com/babylonjs/babylon.js", "role": "resolved_requested" } ], "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+3:48:48Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 230, "indexing_status": "indexed", "language": "javascript", "line_count": 81, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 230, "file_path": "src/lights/LightShadow.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/lights/LightShadow.js#L150-L230", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 150 } ], "start_line": 150, "status": "success", "total_lines": 347 }Request
Request payload
{ "end_line": 230, "file_path": "src/lights/LightShadow.js", "package_name": "three", "registry": "npm", "start_line": 150, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 230, "indexing_status": "indexed", "language": "javascript", "line_count": 81, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 230, "file_path": "src/lights/LightShadow.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/lights/LightShadow.js#L150-L230", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 150 } ], "start_line": 150, "status": "success", "total_lines": 347 }, "title": null, "content": null }+3:48:52Code GrepCode navigationthree“normalBias”
normalBias
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 39, "file_path": "src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js#L27-L39", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 27 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 63, "file_path": "src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js#L51-L63", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 51 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 89, "file_path": "src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js#L77-L89", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 77 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "PREFIX", "value": "src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js" } ], "pattern": "normalBias", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js", "src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 39, "file_path": "src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js#L27-L39", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 27 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 63, "file_path": "src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js#L51-L63", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 51 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 89, "file_path": "src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js#L77-L89", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 77 } ], "returned_matches": 3, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 3, "unique_files_matched": 1 }, "title": null, "content": null }+3:49:08Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 95, "indexing_status": "indexed", "language": "javascript", "line_count": 66, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 95, "file_path": "examples/jsm/effects/OutlineEffect.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/effects/OutlineEffect.js#L30-L95", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 30 } ], "start_line": 30, "status": "success", "total_lines": 489 }Request
Request payload
{ "end_line": 95, "file_path": "examples/jsm/effects/OutlineEffect.js", "package_name": "three", "registry": "npm", "start_line": 30, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 95, "indexing_status": "indexed", "language": "javascript", "line_count": 66, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 95, "file_path": "examples/jsm/effects/OutlineEffect.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/effects/OutlineEffect.js#L30-L95", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 30 } ], "start_line": 30, "status": "success", "total_lines": 489 }, "title": null, "content": null }+3:49:09Code GrepCode navigationthree“shadowNormalBias”
shadowNormalBias
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js", "src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 38, "file_path": "src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js#L18-L38", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 18 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 51, "file_path": "src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js#L31-L51", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 31 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 2, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js" } ], "pattern": "shadowNormalBias", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js", "src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 38, "file_path": "src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js#L18-L38", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 18 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 51, "file_path": "src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js#L31-L51", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 31 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+3:49:12Code GrepCode navigationBabylonJS/Babylon.js“cameraAcceleration”
cameraAcceleration
repo:https://github.com/BabylonJS/Babylon.jsResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "packages/dev/core/src/Cameras/followCamera.pure.ts", "packages/dev/core/src/Cameras/followCamera.pure.ts", "packages/dev/core/src/Cameras/followCamera.pure.ts", "packages/dev/core/src/Cameras/followCamera.pure.ts" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "end_line": 95, "file_path": "packages/dev/core/src/Cameras/followCamera.pure.ts", "kind": "code", "permalink": "https://github.com/babylonjs/babylon.js/blob/b15e177d5b7871248a2fccdbca0896cd609e8721/packages/dev/core/src/Cameras/followCamera.pure.ts#L79-L95", "repo_url": "https://github.com/babylonjs/babylon.js", "start_line": 79 }, { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "end_line": 149, "file_path": "packages/dev/core/src/Cameras/followCamera.pure.ts", "kind": "code", "permalink": "https://github.com/babylonjs/babylon.js/blob/b15e177d5b7871248a2fccdbca0896cd609e8721/packages/dev/core/src/Cameras/followCamera.pure.ts#L133-L149", "repo_url": "https://github.com/babylonjs/babylon.js", "start_line": 133 }, { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "end_line": 150, "file_path": "packages/dev/core/src/Cameras/followCamera.pure.ts", "kind": "code", "permalink": "https://github.com/babylonjs/babylon.js/blob/b15e177d5b7871248a2fccdbca0896cd609e8721/packages/dev/core/src/Cameras/followCamera.pure.ts#L134-L150", "repo_url": "https://github.com/babylonjs/babylon.js", "start_line": 134 }, { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "end_line": 151, "file_path": "packages/dev/core/src/Cameras/followCamera.pure.ts", "kind": "code", "permalink": "https://github.com/babylonjs/babylon.js/blob/b15e177d5b7871248a2fccdbca0896cd609e8721/packages/dev/core/src/Cameras/followCamera.pure.ts#L135-L151", "repo_url": "https://github.com/babylonjs/babylon.js", "start_line": 135 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "path_selectors": [ { "kind": "PREFIX", "value": "packages/dev/core/src/Cameras/" } ], "pattern": "cameraAcceleration", "pattern_type": "LITERAL", "repo_url": "https://github.com/BabylonJS/Babylon.js", "wait_timeout_ms": 60000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "packages/dev/core/src/Cameras/followCamera.pure.ts", "packages/dev/core/src/Cameras/followCamera.pure.ts", "packages/dev/core/src/Cameras/followCamera.pure.ts", "packages/dev/core/src/Cameras/followCamera.pure.ts" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "end_line": 95, "file_path": "packages/dev/core/src/Cameras/followCamera.pure.ts", "kind": "code", "permalink": "https://github.com/babylonjs/babylon.js/blob/b15e177d5b7871248a2fccdbca0896cd609e8721/packages/dev/core/src/Cameras/followCamera.pure.ts#L79-L95", "repo_url": "https://github.com/babylonjs/babylon.js", "start_line": 79 }, { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "end_line": 149, "file_path": "packages/dev/core/src/Cameras/followCamera.pure.ts", "kind": "code", "permalink": "https://github.com/babylonjs/babylon.js/blob/b15e177d5b7871248a2fccdbca0896cd609e8721/packages/dev/core/src/Cameras/followCamera.pure.ts#L133-L149", "repo_url": "https://github.com/babylonjs/babylon.js", "start_line": 133 }, { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "end_line": 150, "file_path": "packages/dev/core/src/Cameras/followCamera.pure.ts", "kind": "code", "permalink": "https://github.com/babylonjs/babylon.js/blob/b15e177d5b7871248a2fccdbca0896cd609e8721/packages/dev/core/src/Cameras/followCamera.pure.ts#L134-L150", "repo_url": "https://github.com/babylonjs/babylon.js", "start_line": 134 }, { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "end_line": 151, "file_path": "packages/dev/core/src/Cameras/followCamera.pure.ts", "kind": "code", "permalink": "https://github.com/babylonjs/babylon.js/blob/b15e177d5b7871248a2fccdbca0896cd609e8721/packages/dev/core/src/Cameras/followCamera.pure.ts#L135-L151", "repo_url": "https://github.com/babylonjs/babylon.js", "start_line": 135 } ], "returned_matches": 4, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 4, "unique_files_matched": 1 }, "title": null, "content": null }+3:50:01Code GrepCode navigationthree“updateMatrixWorld( force ) {”
updateMatrixWorld( force ) {
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1175, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1155-L1175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1155 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/core/Object3D.js" } ], "pattern": "updateMatrixWorld( force ) {", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1175, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1155-L1175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1155 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:50:13Code GrepCode navigationthree“this.matrixWorldNeedsUpdate = true;”
this.matrixWorldNeedsUpdate = true;
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1156, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1144-L1156", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1144 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/core/Object3D.js" } ], "pattern": "this.matrixWorldNeedsUpdate = true;", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/Object3D.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1156, "file_path": "src/core/Object3D.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/Object3D.js#L1144-L1156", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1144 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:53:23Code GrepCode navigationthree“addUpdateRange( start, count )”
addUpdateRange( start, count )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferAttribute.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 191, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L171-L191", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 171 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/core/BufferAttribute.js" } ], "pattern": "addUpdateRange( start, count )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferAttribute.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 191, "file_path": "src/core/BufferAttribute.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferAttribute.js#L171-L191", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 171 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+3:53:23Code GrepCode navigationthree“updateRanges”
updateRanges
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 91, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L75-L91", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 75 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 91, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L75-L91", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 75 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 95, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L79-L95", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 79 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 111, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L95-L111", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 95 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 114, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L98-L114", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 98 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L104-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 104 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 122, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L106-L122", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 106 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 123, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L107-L123", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 107 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 137, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L121-L137", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 121 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 144, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L128-L144", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 128 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 146, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L130-L146", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 130 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 148, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L132-L148", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 132 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 155, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L139-L155", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 139 } ], "returned_matches": 13, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 13, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/renderers/webgl/WebGLAttributes.js" } ], "pattern": "updateRanges", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js", "src/renderers/webgl/WebGLAttributes.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 91, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L75-L91", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 75 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 91, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L75-L91", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 75 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 95, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L79-L95", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 79 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 111, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L95-L111", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 95 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 114, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L98-L114", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 98 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 120, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L104-L120", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 104 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 122, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L106-L122", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 106 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 123, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L107-L123", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 107 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 137, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L121-L137", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 121 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 144, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L128-L144", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 128 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 146, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L130-L146", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 130 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 148, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L132-L148", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 132 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 155, "file_path": "src/renderers/webgl/WebGLAttributes.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLAttributes.js#L139-L155", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 139 } ], "returned_matches": 13, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 13, "unique_files_matched": 1 }, "title": null, "content": null }+3:59:53Code GrepCode navigationBabylonJS/Babylon.js“public heightOffset”
public heightOffset
repo:https://github.com/BabylonJS/Babylon.jsResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "packages/dev/core/src/Cameras/followCamera.pure.ts" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "end_line": 77, "file_path": "packages/dev/core/src/Cameras/followCamera.pure.ts", "kind": "code", "permalink": "https://github.com/babylonjs/babylon.js/blob/b15e177d5b7871248a2fccdbca0896cd609e8721/packages/dev/core/src/Cameras/followCamera.pure.ts#L57-L77", "repo_url": "https://github.com/babylonjs/babylon.js", "start_line": 57 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 2, "max_matches_per_file": 20, "path_selectors": [ { "kind": "PREFIX", "value": "packages/dev/core/src/Cameras/followCamera.pure.ts" } ], "pattern": "public heightOffset", "pattern_type": "LITERAL", "repo_url": "https://github.com/BabylonJS/Babylon.js", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "packages/dev/core/src/Cameras/followCamera.pure.ts" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "b15e177d5b7871248a2fccdbca0896cd609e8721", "end_line": 77, "file_path": "packages/dev/core/src/Cameras/followCamera.pure.ts", "kind": "code", "permalink": "https://github.com/babylonjs/babylon.js/blob/b15e177d5b7871248a2fccdbca0896cd609e8721/packages/dev/core/src/Cameras/followCamera.pure.ts#L57-L77", "repo_url": "https://github.com/babylonjs/babylon.js", "start_line": 57 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+4:14:07Code GrepCode navigationthree“project( camera )”
project( camera )
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/math/Vector3.js", "src/math/Vector3.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 505, "file_path": "src/math/Vector3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Vector3.js#L493-L505", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 493 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 518, "file_path": "src/math/Vector3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Vector3.js#L506-L518", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 506 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/math/Vector3.js" } ], "pattern": "project( camera )", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/math/Vector3.js", "src/math/Vector3.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 505, "file_path": "src/math/Vector3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Vector3.js#L493-L505", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 493 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 518, "file_path": "src/math/Vector3.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/math/Vector3.js#L506-L518", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 506 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+4:14:22Code GrepCode navigationpmndrs/three-stdlib“requestPointerLock”
requestPointerLock
repo:https://github.com/pmndrs/three-stdlibResult summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/controls/PointerLockControls.ts" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "e0e835a267afd01d318c5ea532732af0235872da", "end_line": 133, "file_path": "src/controls/PointerLockControls.ts", "kind": "code", "permalink": "https://github.com/pmndrs/three-stdlib/blob/e0e835a267afd01d318c5ea532732af0235872da/src/controls/PointerLockControls.ts#L114-L133", "repo_url": "https://github.com/pmndrs/three-stdlib", "start_line": 114 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 12, "max_matches_per_file": 20, "pattern": "requestPointerLock", "pattern_type": "LITERAL", "repo_url": "https://github.com/pmndrs/three-stdlib", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/controls/PointerLockControls.ts" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "e0e835a267afd01d318c5ea532732af0235872da", "end_line": 133, "file_path": "src/controls/PointerLockControls.ts", "kind": "code", "permalink": "https://github.com/pmndrs/three-stdlib/blob/e0e835a267afd01d318c5ea532732af0235872da/src/controls/PointerLockControls.ts#L114-L133", "repo_url": "https://github.com/pmndrs/three-stdlib", "start_line": 114 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+4:14:30Code GrepCode navigationthree“matrixWorldInverse”
matrixWorldInverse
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/cameras/Camera.js", "src/cameras/Camera.js", "src/cameras/Camera.js", "src/cameras/Camera.js", "src/cameras/Camera.js", "src/cameras/Camera.js", "src/cameras/Camera.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 48, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L38-L48", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 38 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 91, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L81-L91", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 81 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 91, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L81-L91", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 81 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 127, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L117-L127", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 117 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 131, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L121-L131", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 121 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 147, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L137-L147", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 137 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 151, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L141-L151", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 141 } ], "returned_matches": 7, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 7, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 5, "context_lines_before": 5, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/cameras/Camera.js" } ], "pattern": "matrixWorldInverse", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/cameras/Camera.js", "src/cameras/Camera.js", "src/cameras/Camera.js", "src/cameras/Camera.js", "src/cameras/Camera.js", "src/cameras/Camera.js", "src/cameras/Camera.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 48, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L38-L48", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 38 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 91, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L81-L91", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 81 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 91, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L81-L91", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 81 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 127, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L117-L127", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 117 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 131, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L121-L131", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 121 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 147, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L137-L147", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 137 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 151, "file_path": "src/cameras/Camera.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/cameras/Camera.js#L141-L151", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 141 } ], "returned_matches": 7, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 7, "unique_files_matched": 1 }, "title": null, "content": null }+4:14:31Code GrepCode navigationthree“pointerlock”
pointerlock
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 21, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L5-L21", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 5 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 29, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L13-L29", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 13 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L21-L37", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 21 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 47, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L31-L47", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 31 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 50, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L34-L50", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 34 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 67, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L51-L67", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 51 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 67, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L51-L67", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 51 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 69, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L53-L69", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 53 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 117, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L101-L117", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 101 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 117, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L101-L117", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 101 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 118, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L102-L118", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 102 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 118, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L102-L118", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 102 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 133, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L117-L133", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 117 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 133, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L117-L133", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 117 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 134, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L118-L134", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 118 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 134, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L118-L134", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 118 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 141, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L125-L141", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 125 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 141, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L125-L141", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 125 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 142, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L126-L142", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 126 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 142, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L126-L142", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 126 } ], "returned_matches": 20, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 20, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "examples/jsm/controls/PointerLockControls.js" } ], "pattern": "pointerlock", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js", "examples/jsm/controls/PointerLockControls.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 21, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L5-L21", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 5 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 29, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L13-L29", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 13 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 37, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L21-L37", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 21 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 47, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L31-L47", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 31 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 50, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L34-L50", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 34 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 67, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L51-L67", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 51 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 67, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L51-L67", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 51 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 69, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L53-L69", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 53 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 117, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L101-L117", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 101 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 117, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L101-L117", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 101 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 118, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L102-L118", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 102 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 118, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L102-L118", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 102 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 133, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L117-L133", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 117 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 133, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L117-L133", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 117 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 134, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L118-L134", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 118 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 134, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L118-L134", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 118 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 141, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L125-L141", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 125 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 141, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L125-L141", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 125 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 142, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L126-L142", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 126 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 142, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L126-L142", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 126 } ], "returned_matches": 20, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 20, "unique_files_matched": 1 }, "title": null, "content": null }+4:14:36Code GrepCode navigationthree“allowOverride”
allowOverride
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 445, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L431-L445", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 431 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 847, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L833-L847", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 833 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 847, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L833-L847", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 833 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 982, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L968-L982", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 968 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 982, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L968-L982", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 968 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 982, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L968-L982", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 968 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1173, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L1159-L1173", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1159 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1173, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L1159-L1173", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1159 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 7, "context_lines_before": 7, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/materials/Material.js" } ], "pattern": "allowOverride", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js", "src/materials/Material.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 445, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L431-L445", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 431 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 847, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L833-L847", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 833 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 847, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L833-L847", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 833 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 982, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L968-L982", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 968 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 982, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L968-L982", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 968 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 982, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L968-L982", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 968 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1173, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L1159-L1173", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1159 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1173, "file_path": "src/materials/Material.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/materials/Material.js#L1159-L1173", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1159 } ], "returned_matches": 8, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 8, "unique_files_matched": 1 }, "title": null, "content": null }+4:14:37Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 200, "indexing_status": "indexed", "language": "javascript", "line_count": 58, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 200, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L143-L200", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 143 } ], "start_line": 143, "status": "success", "total_lines": 264 }Request
Request payload
{ "end_line": 200, "file_path": "examples/jsm/controls/PointerLockControls.js", "package_name": "three", "registry": "npm", "start_line": 143, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 200, "indexing_status": "indexed", "language": "javascript", "line_count": 58, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 200, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L143-L200", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 143 } ], "start_line": 143, "status": "success", "total_lines": 264 }, "title": null, "content": null }+4:14:43Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 264, "indexing_status": "indexed", "language": "javascript", "line_count": 65, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 264, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L200-L264", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 200 } ], "start_line": 200, "status": "success", "total_lines": 264 }Request
Request payload
{ "end_line": 264, "file_path": "examples/jsm/controls/PointerLockControls.js", "package_name": "three", "registry": "npm", "start_line": 200, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 264, "indexing_status": "indexed", "language": "javascript", "line_count": 65, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 264, "file_path": "examples/jsm/controls/PointerLockControls.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/controls/PointerLockControls.js#L200-L264", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 200 } ], "start_line": 200, "status": "success", "total_lines": 264 }, "title": null, "content": null }+4:15:08Get ExampleGenerated examplethree.js game contextual interact prompt: find nearest interactable in radius on key press and show HUD prompt
three.js game contextual interact prompt: find nearest interactable in radius on key press and show HUD prompt · javascript · strict
Three.js Nearest Interactable HUD Prompt
// Assumes THREE is available globally and a canvas with id="game" exists. const scene = new THREE.Scene(); const camera = new THREE.PerspectiveCamera(60, innerWidth / innerHeight, 0.1, 1000); const renderer = new THREE.WebGLRenderer({ canvas: document.querySelector('#game'), antialias: true }); renderer.setSize(innerWidth, innerHeight); const player = { position: new THREE.Vector3(0, 1, 5), }; const interactables = []; const INTERACT_RADIUS = 3.5; let nearestInteractable = null; const hudPrompt = document.createElement('div'); hudPrompt.style.cssText = ` position: fixed; left: 50%; bottom: 12%; transform: translateX(-50%); padding: 10px 16px; color: white; background: rgba(0, 0, 0, 0.75); border: 1px solid rgba(255, 255, 255, 0.35); border-radius: 6px; font: 16px sans-serif; display: none; pointer-events: none; `; document.body.appendChild(hudPrompt); function addInteractable({ position, label, onInteract, color = 0x4caf50 }) { const mesh = new THREE.Mesh( new THREE.BoxGeometry(1, 1, 1), new THREE.MeshStandardMaterial({ color }) ); mesh.position.copy(position); mesh.userData.interactable = { label, onInteract }; scene.add(mesh); interactables.push(mesh); return mesh; } function findNearestInteractable() { let nearest = null; let nearestDistance = INTERACT_RADIUS; const playerPosition = player.position; for (const object of interactables) { if (!object.visible || !object.userData.interactable) continue; const distance = playerPosition.distanceTo(object.position); if (distance <= nearestDistance) { nearest = object; nearestDistance = distance; } } return nearest; } function updateInteractPrompt() { nearestInteractable = findNearestInteractable(); if (!nearestInteractable) { hudPrompt.style.display = 'none'; hudPrompt.textContent = ''; return; } const { label } = nearestInteractable.userData.interactable; hudPrompt.textContent = `Press E to ${label}`; hudPrompt.style.display = 'block'; } function interact() { // Recalculate on key press so the target cannot become stale between frames. const target = findNearestInteractable(); if (!target) return; target.userData.interactable.onInteract({ object: target, player, }); updateInteractPrompt(); } window.addEventListener('keydown', (event) => { if (event.code !== 'KeyE' || event.repeat) return; interact(); }); // Example interactables. addInteractable({ position: new THREE.Vector3(-2, 0.5, 1), label: 'open chest', onInteract: ({ object }) => { object.material.color.set(0xffc107); object.userData.interactable.label = 'close chest'; }, }); addInteractable({ position: new THREE.Vector3(2, 0.5, 1), label: 'talk', color: 0x2196f3, onInteract: () => { hudPrompt.textContent = 'Hello there!'; }, }); // Replace this movement with your game's player controller. window.addEventListener('keydown', (event) => { const step = 0.25; if (event.code === 'KeyW') player.position.z -= step; if (event.code === 'KeyS') player.position.z += step; if (event.code === 'KeyA') player.position.x -= step; if (event.code === 'KeyD') player.position.x += step; }); function animate() { requestAnimationFrame(animate); updateInteractPrompt(); camera.position.set(player.position.x, 6, player.position.z + 8); camera.lookAt(player.position); renderer.render(scene, camera); } scene.add(new THREE.HemisphereLight(0xffffff, 0x444444, 2)); scene.add(new THREE.GridHelper(20, 20)); animate();References
1- jamescockburn47/moorsteadsrc/main.js
Moorstead’s main.js shows a three.js gameplay HUD prompt system tied to proximity/radius/interact logic (including interactHint updates), so it’s directly relevant to nearest-interactable-in-radius-on-key-press with a contextual HUD prompt; it’s a concrete integration example though not an isolated reusable utility.
Request
Request payload
{ "query": "three.js game contextual interact prompt: find nearest interactable in radius on key press and show HUD prompt", "language": "javascript", "license_mode": "strict" }- jamescockburn47/moorsteadsrc/main.js
+4:17:01Code GrepCode navigationthree“forceClear = true”
forceClear = true
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLBackground.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 68, "file_path": "src/renderers/webgl/WebGLBackground.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLBackground.js#L48-L68", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 48 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/renderers/webgl/WebGLBackground.js" } ], "pattern": "forceClear = true", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/webgl/WebGLBackground.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 68, "file_path": "src/renderers/webgl/WebGLBackground.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/webgl/WebGLBackground.js#L48-L68", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 48 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+4:30:24Get ExampleGenerated exampleWeb Audio unlock on user gesture: call AudioContext.resume() inside the gesture then build expensive impulse response buffers asynchronously off the main thread critical path
Web Audio unlock on user gesture: call AudioContext.resume() inside the gesture then build expensive impulse response buffers asynchronously off the main thread critical path · javascript · strict
Unlock Web Audio on Gesture While Building IR Off-Thread
// Browser example: save as an HTML script or run as a module in a page with // <button id="start">Start audio</button>. const startButton = document.querySelector('#start'); const status = document.querySelector('#status'); const AudioContextClass = window.AudioContext || window.webkitAudioContext; const audioContext = new AudioContextClass(); // Keep construction cheap and explicitly suspended until a gesture. const input = audioContext.createGain(); const convolver = audioContext.createConvolver(); const output = audioContext.createGain(); output.gain.value = 0.25; input.connect(convolver).connect(output).connect(audioContext.destination); const irWorker = new Worker( URL.createObjectURL(new Blob([` self.onmessage = ({ data: { sampleRate, seconds } }) => { const length = Math.floor(sampleRate * seconds); const left = new Float32Array(length); const right = new Float32Array(length); // Expensive impulse-response synthesis stays outside the UI thread. for (let i = 0; i < length; i++) { const time = i / sampleRate; const envelope = Math.pow(1 - time / seconds, 3); const earlyReflection = i % Math.floor(sampleRate * 0.031) === 0; const reflectionGain = earlyReflection ? 0.35 : 1; const noise = (Math.random() * 2 - 1) * envelope * reflectionGain; left[i] = noise; right[i] = noise * 0.92; } self.postMessage({ left, right }, [left.buffer, right.buffer]); }; `], { type: 'application/javascript' })) ); let impulseResponseReady; function buildImpulseResponseInWorker() { impulseResponseReady = new Promise((resolve, reject) => { irWorker.onmessage = ({ data: { left, right } }) => { try { const buffer = audioContext.createBuffer( 2, left.length, audioContext.sampleRate ); buffer.copyToChannel(left, 0); buffer.copyToChannel(right, 1); convolver.buffer = buffer; resolve(); } catch (error) { reject(error); } }; irWorker.onerror = reject; irWorker.postMessage({ sampleRate: audioContext.sampleRate, seconds: 2 }); }); } // Start expensive preparation before the click. It does not unlock audio. buildImpulseResponseInWorker(); startButton.addEventListener('click', () => { // Do not await before this call: resume must be reached directly by the // user-gesture handler on browsers that enforce autoplay restrictions. const unlock = audioContext.resume(); unlock.then(async () => { status.textContent = 'Audio unlocked; preparing impulse response…'; await impulseResponseReady; const oscillator = audioContext.createOscillator(); oscillator.frequency.value = 220; oscillator.connect(input); oscillator.start(); status.textContent = 'Playing'; startButton.disabled = true; // Stop the demo source after a short period; the context remains reusable. setTimeout(() => oscillator.stop(), 1000); }).catch((error) => { console.error('Unable to unlock audio:', error); status.textContent = 'Audio could not be started'; }); });References
3- block/buzz[Bug] Idle desktop app burns ~4% CPU and pins the audio device awake
Strong, specific evidence around Web Audio AudioContext suspension/resume and user-gesture unlocking behavior (including why resume may happen automatically on macOS autoplay settings), plus concrete guidance that decoding can be done with OfflineAudioContext off the main path for impulse/asset preparation.
- rahil-algobear/SpeedRacersrc/audio/AudioEngine.js
Strong match: JavaScript Web Audio pattern that calls `AudioContext.resume()` from a user gesture and avoids blocking by precomputing expensive data (noise beds/impulse responses/firing-model transforms) ahead of the resume critical path.
- GoogleChromeLabs/web-audio-samplessrc/experiments/webgpuaudio/main.js
Strong match for the requested pattern: `audioContext.resume()` is triggered from a user click, and the audio pipeline is set up with an `AudioWorkletNode`/Worker using queued/shared buffers so the heavy processing (including impulse response data handling) can proceed off the main critical path.
Request
Request payload
{ "query": "Web Audio unlock on user gesture: call AudioContext.resume() inside the gesture then build expensive impulse response buffers asynchronously off the main thread critical path", "language": "javascript", "license_mode": "strict" }- block/buzz[Bug] Idle desktop app burns ~4% CPU and pins the audio device awake
+4:31:16Get ExampleGenerated examplegame state machine game over screen retry restores player health and respawn position, pop state with retry result payload
game state machine game over screen retry restores player health and respawn position, pop state with retry result payload · javascript · strict
Game State Machine with Retry Result Payload
class StateMachine { constructor() { this.stack = []; } push(state, payload) { this.stack.push(state); state.enter?.(this, payload); } pop(result) { const state = this.stack.pop(); state?.exit?.(result); const parent = this.stack.at(-1); parent?.resume?.(this, result); return result; } update(input) { this.stack.at(-1)?.update?.(this, input); } } class PlayState { constructor() { this.maxHealth = 100; this.health = this.maxHealth; this.respawnPosition = { x: 0, y: 0 }; this.position = { ...this.respawnPosition }; this.checkpoint = null; } enter(machine, payload = {}) { if (payload.respawn) { this.restoreCheckpoint(payload.respawn); } console.log(`Playing at (${this.position.x}, ${this.position.y}) with ${this.health} HP`); } update(machine, input = {}) { if (input.checkpoint) { this.setCheckpoint(input.checkpoint); } if (input.damage) { this.health = Math.max(0, this.health - input.damage); console.log(`Player health: ${this.health}`); } if (this.health === 0) { this.showGameOver(machine); } } setCheckpoint(position) { this.checkpoint = { position: { ...position }, health: this.maxHealth, }; this.respawnPosition = { ...position }; console.log(`Checkpoint saved at (${position.x}, ${position.y})`); } showGameOver(machine) { // Capture the checkpoint before pushing the game-over state. const respawn = this.checkpoint ?? { position: { ...this.respawnPosition }, health: this.maxHealth, }; machine.push(new GameOverState(), { respawn: { position: { ...respawn.position }, health: respawn.health, }, }); } resume(machine, result) { if (result?.action !== "retry") return; // The game-over state was popped with a result payload. this.restoreCheckpoint(result.respawn); console.log("Retry selected"); console.log(`Respawned at (${this.position.x}, ${this.position.y}) with ${this.health} HP`); } restoreCheckpoint(respawn) { this.position = { ...respawn.position }; this.respawnPosition = { ...respawn.position }; this.health = respawn.health; } } class GameOverState { enter(machine, payload) { this.respawn = payload.respawn; console.log("GAME OVER — press R to retry or Q to quit"); } update(machine, input = {}) { if (input.retry) { machine.pop({ action: "retry", respawn: { position: { ...this.respawn.position }, health: this.respawn.health, }, }); } else if (input.quit) { machine.pop({ action: "quit" }); } } } // Runnable demonstration. const game = new StateMachine(); const play = new PlayState(); game.push(play); game.update({ checkpoint: { x: 120, y: 64 } }); game.update({ damage: 100 }); console.log("Current state:", game.stack.at(-1).constructor.name); game.update({ retry: true }); console.log("Current state:", game.stack.at(-1).constructor.name);References
3- devilsir/devilsir.github.ioWonder World/src/core/Game.js
Contains a JavaScript game controller with explicit state management (e.g., `stage`, `respawning`), checkpoint/respawn handling (`handleRespawn`, `checkpoint`, `lastCheckpoint`), and game-over/lifecycle logic inside `Game.js`, aligning with the “retry/respawn after game over” part of the query, though it doesn’t clearly show the specific “pop state with retry result payload” pattern.
- arifulislamat/p2p-maze-shootersrc/game.js
Contains an online game state flow with a GAME_OVER restart_request handshake and a reconnection/resync mechanism that reboots match state without full reset; while it doesn’t explicitly show a stack “pop state” retry-result payload, it’s the closest JavaScript implementation-level match to “retry after game over” and state restoration.
- AbelConsulting/ChipSavagejs/game.js
JavaScript game controller code that includes a state machine with GAME_OVER and an explicit respawn/death flow (respawnTimer, isRespawning, _pendingRespawn), which aligns with “game over → retry/respawn” behavior, though it doesn’t clearly show a “pop state with retry result payload” mechanism.
Request
Request payload
{ "query": "game state machine game over screen retry restores player health and respawn position, pop state with retry result payload", "language": "javascript", "license_mode": "strict" }- devilsir/devilsir.github.ioWonder World/src/core/Game.js
+4:46:22Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 150, "indexing_status": "indexed", "language": "javascript", "line_count": 150, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 150, "file_path": "src/objects/LOD.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/LOD.js#L1-L150", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 329 }Request
Request payload
{ "end_line": 150, "file_path": "src/objects/LOD.js", "package_name": "three", "registry": "npm", "start_line": 1, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 150, "indexing_status": "indexed", "language": "javascript", "line_count": 150, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 150, "file_path": "src/objects/LOD.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/LOD.js#L1-L150", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1 } ], "start_line": 1, "status": "success", "total_lines": 329 }, "title": null, "content": null }+4:46:31Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 300, "indexing_status": "indexed", "language": "javascript", "line_count": 106, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 300, "file_path": "src/objects/LOD.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/LOD.js#L195-L300", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 195 } ], "start_line": 195, "status": "success", "total_lines": 329 }Request
Request payload
{ "end_line": 300, "file_path": "src/objects/LOD.js", "package_name": "three", "registry": "npm", "start_line": 195, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 300, "indexing_status": "indexed", "language": "javascript", "line_count": 106, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 300, "file_path": "src/objects/LOD.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/LOD.js#L195-L300", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 195 } ], "start_line": 195, "status": "success", "total_lines": 329 }, "title": null, "content": null }+4:48:42Code GrepCode navigationthree“export function mergeVertices”
export function mergeVertices
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "examples/jsm/utils/BufferGeometryUtils.js" } ], "pattern": "export function mergeVertices", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+4:48:43Code GrepCode navigationthree“FLAT_SHADED”
FLAT_SHADED
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60425, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60413-L60425", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60413 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60429, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60417-L60429", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60417 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60431, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60419-L60431", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60419 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60433, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60421-L60433", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60421 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60527, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60515-L60527", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60515 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60537, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60525-L60537", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60525 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60537, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60525-L60537", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60525 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60539, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60527-L60539", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60527 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66793, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L66781-L66793", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 66781 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66965, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L66953-L66965", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 66953 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 447, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L435-L447", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 435 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 451, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L439-L451", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 439 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 453, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L441-L453", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 441 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 455, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L443-L455", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 443 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 549, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L537-L549", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 537 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 559, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L547-L559", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 547 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 559, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L547-L559", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 547 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 561, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L549-L561", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 549 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6815, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L6803-L6815", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6803 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6987, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L6975-L6987", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6975 } ], "returned_matches": 20, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 20, "unique_files_matched": 2 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 20, "max_matches_per_file": 20, "package_name": "three", "pattern": "FLAT_SHADED", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.cjs", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js", "build/three.module.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60425, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60413-L60425", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60413 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60429, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60417-L60429", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60417 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60431, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60419-L60431", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60419 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60433, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60421-L60433", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60421 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60527, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60515-L60527", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60515 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60537, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60525-L60537", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60525 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60537, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60525-L60537", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60525 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 60539, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L60527-L60539", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 60527 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66793, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L66781-L66793", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 66781 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 66965, "file_path": "build/three.cjs", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.cjs#L66953-L66965", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 66953 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 447, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L435-L447", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 435 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 451, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L439-L451", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 439 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 453, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L441-L453", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 441 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 455, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L443-L455", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 443 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 549, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L537-L549", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 537 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 559, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L547-L559", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 547 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 559, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L547-L559", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 547 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 561, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L549-L561", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 549 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6815, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L6803-L6815", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6803 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 6987, "file_path": "build/three.module.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/build/three.module.js#L6975-L6987", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 6975 } ], "returned_matches": 20, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 20, "unique_files_matched": 2 }, "title": null, "content": null }+4:49:00Code GrepCode navigationthree“overrideMaterial”
overrideMaterial
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 354, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L346-L354", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 346 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1979, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1971-L1979", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1971 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1979, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1971-L1979", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1971 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1981, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1973-L1981", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1973 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2103, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2095-L2103", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2095 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2103, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2095-L2103", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2095 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2112, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2104-L2112", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2104 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2114, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2106-L2114", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2106 } ], "returned_matches": 8, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 8, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 4, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 8, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/renderers/WebGLRenderer.js" } ], "pattern": "overrideMaterial", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js", "src/renderers/WebGLRenderer.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 354, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L346-L354", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 346 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1979, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1971-L1979", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1971 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1979, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1971-L1979", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1971 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1981, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L1973-L1981", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1973 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2103, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2095-L2103", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2095 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2103, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2095-L2103", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2095 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2112, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2104-L2112", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2104 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2114, "file_path": "src/renderers/WebGLRenderer.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/renderers/WebGLRenderer.js#L2106-L2114", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2106 } ], "returned_matches": 8, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 8, "unique_files_matched": 1 }, "title": null, "content": null }+6:00:23Get ExampleGenerated examplethree.js LOD impostor billboard for distant vegetation instanced level of detail switch distance
three.js LOD impostor billboard for distant vegetation instanced level of detail switch distance · javascript · strict
Three.js Instanced Vegetation with Distance-Based Billboard LOD
import * as THREE from 'three'; const scene = new THREE.Scene(); scene.background = new THREE.Color(0x9fc7e8); scene.fog = new THREE.Fog(0x9fc7e8, 90, 260); const camera = new THREE.PerspectiveCamera(55, innerWidth / innerHeight, 0.1, 500); camera.position.set(35, 24, 45); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.setSize(innerWidth, innerHeight); renderer.shadowMap.enabled = true; document.body.appendChild(renderer.domElement); scene.add(new THREE.HemisphereLight(0xb9dcff, 0x40512b, 2)); const sun = new THREE.DirectionalLight(0xffffff, 2.5); sun.position.set(40, 80, 30); sun.castShadow = true; scene.add(sun); const ground = new THREE.Mesh( new THREE.PlaneGeometry(400, 400), new THREE.MeshStandardMaterial({ color: 0x526b38, roughness: 1 }) ); ground.rotation.x = -Math.PI / 2; ground.receiveShadow = true; scene.add(ground); // Generate a vegetation texture without requiring an external asset. function createTreeTexture() { const canvas = document.createElement('canvas'); canvas.width = canvas.height = 256; const ctx = canvas.getContext('2d'); ctx.clearRect(0, 0, 256, 256); ctx.fillStyle = '#65452b'; ctx.fillRect(119, 112, 18, 112); for (const leaf of [ [128, 58, 58], [82, 102, 48], [174, 103, 50], [128, 125, 70], ]) { const [x, y, r] = leaf; const gradient = ctx.createRadialGradient(x - r * 0.25, y - r * 0.3, 3, x, y, r); gradient.addColorStop(0, '#9bd45b'); gradient.addColorStop(1, '#245d2d'); ctx.fillStyle = gradient; ctx.beginPath(); ctx.arc(x, y, r, 0, Math.PI * 2); ctx.fill(); } const texture = new THREE.CanvasTexture(canvas); texture.colorSpace = THREE.SRGBColorSpace; texture.minFilter = THREE.LinearMipmapLinearFilter; return texture; } const spriteTexture = createTreeTexture(); const treeCount = 1200; const highDistance = 42; const lowDistance = 58; const fadeHysteresis = 4; // High-detail geometry is shared by every near tree. const trunkMesh = new THREE.InstancedMesh( new THREE.CylinderGeometry(0.18, 0.32, 4, 7), new THREE.MeshStandardMaterial({ color: 0x69472b, roughness: 1 }), treeCount ); const crownMesh = new THREE.InstancedMesh( new THREE.IcosahedronGeometry(2.8, 1), new THREE.MeshStandardMaterial({ color: 0x347b38, roughness: 0.9 }), treeCount ); trunkMesh.castShadow = crownMesh.castShadow = true; trunkMesh.frustumCulled = crownMesh.frustumCulled = false; scene.add(trunkMesh, crownMesh); // One shared alpha-card mesh represents every distant tree. const billboardMaterial = new THREE.MeshBasicMaterial({ map: spriteTexture, transparent: true, alphaTest: 0.35, depthWrite: true, side: THREE.DoubleSide, }); const billboardMesh = new THREE.InstancedMesh( new THREE.PlaneGeometry(7, 10), billboardMaterial, treeCount ); billboardMesh.frustumCulled = false; scene.add(billboardMesh); const trees = []; const highMatrix = new THREE.Matrix4(); const billboardMatrix = new THREE.Matrix4(); const position = new THREE.Vector3(); const scale = new THREE.Vector3(); const billboardQuaternion = new THREE.Quaternion(); const billboardScale = new THREE.Vector3(1, 1, 1); const hiddenScale = new THREE.Vector3(0, 0, 0); for (let i = 0; i < treeCount; i++) { const angle = Math.random() * Math.PI * 2; const radius = 12 + Math.sqrt(Math.random()) * 145; position.set(Math.cos(angle) * radius, 0, Math.sin(angle) * radius); const height = 0.8 + Math.random() * 1.5; scale.setScalar(height); highMatrix.compose(position, new THREE.Quaternion(), scale); trunkMesh.setMatrixAt(i, highMatrix); position.y = 4.1 * height; highMatrix.compose(position, new THREE.Quaternion(), scale); crownMesh.setMatrixAt(i, highMatrix); position.y = 0; trees.push({ position: position.clone(), high: true, height }); } trunkMesh.instanceMatrix.needsUpdate = true; crownMesh.instanceMatrix.needsUpdate = true; const cameraPosition = new THREE.Vector3(); const temp = new THREE.Vector3(); function updateVegetationLOD() { camera.getWorldPosition(cameraPosition); for (let i = 0; i < trees.length; i++) { const tree = trees[i]; const distance = cameraPosition.distanceTo(tree.position); // Hysteresis prevents rapid toggling when the camera is near the boundary. if (tree.high && distance > lowDistance + fadeHysteresis) tree.high = false; if (!tree.high && distance < highDistance - fadeHysteresis) tree.high = true; if (tree.high) { trunkMesh.setMatrixAt(i, highMatrix.compose( tree.position, new THREE.Quaternion(), temp.setScalar(tree.height) )); temp.set(tree.position.x, tree.position.y + 4.1 * tree.height, tree.position.z); crownMesh.setMatrixAt(i, highMatrix.compose( temp, new THREE.Quaternion(), temp.setScalar(tree.height) )); billboardMesh.setMatrixAt(i, billboardMatrix.compose( tree.position, new THREE.Quaternion(), hiddenScale )); } else { // A camera-facing plane is the impostor. Only its instance matrix changes. temp.copy(tree.position); temp.y += 5 * tree.height; billboardQuaternion.copy(camera.quaternion); billboardMesh.setMatrixAt(i, billboardMatrix.compose( temp, billboardQuaternion, billboardScale.set(tree.height, tree.height, tree.height) )); trunkMesh.setMatrixAt(i, highMatrix.compose( tree.position, new THREE.Quaternion(), hiddenScale )); crownMesh.setMatrixAt(i, highMatrix.compose( tree.position, new THREE.Quaternion(), hiddenScale )); } } trunkMesh.instanceMatrix.needsUpdate = true; crownMesh.instanceMatrix.needsUpdate = true; billboardMesh.instanceMatrix.needsUpdate = true; } function animate() { requestAnimationFrame(animate); updateVegetationLOD(); renderer.render(scene, camera); } animate(); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); });References
3- webmemo-code/ai-learning-treegrove/walk-app.mjs
Contains a concrete three.js impostor/billboard-style vegetation rendering approach using InstancedMesh (pads, glow) and mentions LOD, but it’s specific to the project’s “impostor” scheme rather than a standard distance-based LOD switch implementation.
- SkyeShark/SeedThreesrc/main.js
SeedThree main implementation uses three.js impostor/billboard baking (bakeImpostor/assembleBillboardFromRawBake, disposeBillboard) for distant vegetation, with an LOD-style pipeline and instancing-aware geometry handling; it’s not laser-focused on the exact “LOD switch distance” wiring in this snippet but is strongly relevant to the requested impostor billboard vegetation LOD approach in JavaScript.
- danilokhury/Synabunneural-interface/public/variant/3d/graph.js
Contains Three.js JavaScript code that uses InstancedMesh together with LOD/distance terms, but it’s for a neural-graph renderer and doesn’t clearly implement an impostor billboard vegetation LOD switch strategy or explicit distant impostor/billboard distances.
Request
Request payload
{ "query": "three.js LOD impostor billboard for distant vegetation instanced level of detail switch distance", "language": "javascript", "license_mode": "strict" }- webmemo-code/ai-learning-treegrove/walk-app.mjs
+6:02:19Get ExampleGenerated examplefaceted low poly rock boulder geometry flat shading toNonIndexed computeVertexNormals stylized
faceted low poly rock boulder geometry flat shading toNonIndexed computeVertexNormals stylized · javascript · strict
Faceted Low-Poly Boulder Geometry in Three.js
import * as THREE from 'three'; // Create an irregular boulder with one independent vertex per triangle. export function createLowPolyBoulder({ radius = 1, seed = 1234, color = 0x807568, } = {}) { const geometry = new THREE.IcosahedronGeometry(radius, 2).toNonIndexed(); const positions = geometry.attributes.position; const random = mulberry32(seed); const vertex = new THREE.Vector3(); // Deform each triangle vertex to create a stylized, uneven silhouette. for (let i = 0; i < positions.count; i++) { vertex.fromBufferAttribute(positions, i).normalize(); const broadLump = noise3(vertex.x * 2.1, vertex.y * 2.1, vertex.z * 2.1, seed) * 0.18; const smallLump = noise3(vertex.x * 6.0, vertex.y * 6.0, vertex.z * 6.0, seed + 17) * 0.06; const amount = 0.88 + broadLump + smallLump; vertex.multiplyScalar(amount); vertex.y *= 0.78; // Squat boulder profile. vertex.x *= 1.08; positions.setXYZ(i, vertex.x, vertex.y, vertex.z); } // Independent triangle vertices are required for crisp per-face normals. geometry.computeVertexNormals(); geometry.computeBoundingSphere(); const material = new THREE.MeshStandardMaterial({ color, roughness: 0.95, metalness: 0, flatShading: true, }); const boulder = new THREE.Mesh(geometry, material); boulder.castShadow = true; boulder.receiveShadow = true; return boulder; } function mulberry32(value) { return () => { value |= 0; value = value + 0x6d2b79f5 | 0; let t = Math.imul(value ^ value >>> 15, 1 | value); t = t + Math.imul(t ^ t >>> 7, 61 | t) ^ t; return ((t ^ t >>> 14) >>> 0) / 4294967296; }; } // Lightweight deterministic value noise for repeatable rock deformation. function noise3(x, y, z, seed) { const hash = (n) => { const value = Math.sin(n * 127.1 + seed * 311.7) * 43758.5453; return value - Math.floor(value); }; const ix = Math.floor(x); const iy = Math.floor(y); const iz = Math.floor(z); const fx = x - ix; const fy = y - iy; const fz = z - iz; const smooth = (t) => t * t * (3 - 2 * t); const sx = smooth(fx); const sy = smooth(fy); const sz = smooth(fz); const at = (dx, dy, dz) => hash((ix + dx) * 73856093 + (iy + dy) * 19349663 + (iz + dz) * 83492791); const x00 = at(0, 0, 0) * (1 - sx) + at(1, 0, 0) * sx; const x10 = at(0, 1, 0) * (1 - sx) + at(1, 1, 0) * sx; const x01 = at(0, 0, 1) * (1 - sx) + at(1, 0, 1) * sx; const x11 = at(0, 1, 1) * (1 - sx) + at(1, 1, 1) * sx; const y0 = x00 * (1 - sy) + x10 * sy; const y1 = x01 * (1 - sy) + x11 * sy; return (y0 * (1 - sz) + y1 * sz) * 2 - 1; }References
2- crunchybananas/shipyard-microtoolsdocs/the-island/js/props.js
Contains Three.js rock/boulder geometry generation and calls computeVertexNormals, plus low-poly style mesh handling, but it does not clearly show the exact toNonIndexed + faceted/flat-shading workflow requested (flatShading is mostly false and no explicit toNonIndexed usage appears in the provided snippet).
- craftmygame/little-citylittle-taipei/main.js
Uses Three.js faceted workflow keywords—`toNonIndexed()` and `computeVertexNormals()`—to achieve flat/per-face shading, but it’s embedded in a larger game/scene and not specifically about stylized low-poly rock boulders.
Request
Request payload
{ "query": "faceted low poly rock boulder geometry flat shading toNonIndexed computeVertexNormals stylized", "language": "javascript", "license_mode": "strict" }- crunchybananas/shipyard-microtoolsdocs/the-island/js/props.js
+6:02:55Code GrepCode navigationthree“toNonIndexed”
toNonIndexed
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js", "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1131, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1115-L1131", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1115 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1171, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1155-L1171", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1155 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 3, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/BufferGeometry.js" } ], "pattern": "toNonIndexed", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js", "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1131, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1115-L1131", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1115 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1171, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1155-L1171", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1155 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+6:02:55Code GrepCode navigationthree“mergeVertices”
mergeVertices
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 648, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L638-L648", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 638 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1501, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1491-L1501", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1491 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 5, "context_lines_before": 5, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 4, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "examples/jsm/utils/BufferGeometryUtils.js" } ], "pattern": "mergeVertices", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 648, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L638-L648", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 638 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1501, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1491-L1501", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1491 } ], "returned_matches": 2, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 2, "unique_files_matched": 1 }, "title": null, "content": null }+6:03:00Code GrepCode navigationthree“function toCreasedNormals”
function toCreasedNormals
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1325, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1305-L1325", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1305 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "examples/jsm/utils/BufferGeometryUtils.js" } ], "pattern": "function toCreasedNormals", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1325, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1305-L1325", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1305 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+6:03:54Get ExampleGenerated examplethree.js terrain heightmap with separate cliff mesh overhang rock outcrop geometry placed on top of heightfield
three.js terrain heightmap with separate cliff mesh overhang rock outcrop geometry placed on top of heightfield · javascript · strict
Three.js Heightfield with Separate Overhanging Cliff Rock
import * as THREE from 'three'; import { OrbitControls } from 'three/addons/controls/OrbitControls.js'; const scene = new THREE.Scene(); scene.background = new THREE.Color(0x9fc7e6); scene.fog = new THREE.Fog(0x9fc7e6, 35, 115); const camera = new THREE.PerspectiveCamera(55, innerWidth / innerHeight, 0.1, 300); camera.position.set(24, 21, 30); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.setSize(innerWidth, innerHeight); renderer.shadowMap.enabled = true; renderer.shadowMap.type = THREE.PCFSoftShadowMap; document.body.appendChild(renderer.domElement); const controls = new OrbitControls(camera, renderer.domElement); controls.target.set(0, 4, 0); controls.enableDamping = true; scene.add(new THREE.HemisphereLight(0xbfe3ff, 0x493d32, 2.2)); const sun = new THREE.DirectionalLight(0xffedcf, 3.5); sun.position.set(-25, 38, 20); sun.castShadow = true; sun.shadow.mapSize.set(2048, 2048); scene.add(sun); const WORLD_SIZE = 70; const GRID_SIZE = 180; const HALF_WORLD = WORLD_SIZE / 2; function heightAt(x, z) { const broad = 4.5 * Math.sin(x * 0.105) * Math.cos(z * 0.12); const ridges = 1.8 * Math.sin(x * 0.31 + z * 0.14); const detail = 0.55 * Math.sin(x * 0.77) * Math.sin(z * 0.61); const valley = -5.5 * Math.exp(-((x + 8) ** 2 / 180 + z ** 2 / 420)); return 7 + broad + ridges + detail + valley; } // The terrain is a heightfield: every x/z location has exactly one y value. const terrainGeometry = new THREE.PlaneGeometry( WORLD_SIZE, WORLD_SIZE, GRID_SIZE, GRID_SIZE ); terrainGeometry.rotateX(-Math.PI / 2); const terrainPositions = terrainGeometry.attributes.position; for (let i = 0; i < terrainPositions.count; i++) { const x = terrainPositions.getX(i); const z = terrainPositions.getZ(i); terrainPositions.setY(i, heightAt(x, z)); } terrainPositions.needsUpdate = true; terrainGeometry.computeVertexNormals(); const terrain = new THREE.Mesh( terrainGeometry, new THREE.MeshStandardMaterial({ color: 0x63794d, roughness: 1, metalness: 0 }) ); terrain.receiveShadow = true; scene.add(terrain); function makeCliffRock({ center, footprint, depth = 7, seed = 1 }) { // footprint points are local x/z coordinates around the rock center. // The upper ring follows the heightfield; the lower ring is pushed outward, // which creates a genuine overhang rather than another heightfield patch. const random = () => { const value = Math.sin(seed++ * 999.17) * 43758.5453; return value - Math.floor(value); }; const topRing = footprint.map(([x, z]) => { const worldX = center.x + x; const worldZ = center.z + z; return new THREE.Vector3(worldX, heightAt(worldX, worldZ) + 0.18, worldZ); }); const centroid = topRing.reduce( (sum, point) => sum.add(new THREE.Vector3(point.x, 0, point.z)), new THREE.Vector3() ).multiplyScalar(1 / topRing.length); const bottomRing = topRing.map((top, index) => { const radial = new THREE.Vector3(top.x - centroid.x, 0, top.z - centroid.z); radial.normalize(); // Some faces project farther than others, making the silhouette irregular. const outward = 0.8 + random() * 1.8; return new THREE.Vector3( top.x + radial.x * outward, top.y - depth - random() * 2.2, top.z + radial.z * outward ); }); const vertices = []; const colors = []; const indices = []; const rockColor = new THREE.Color(0x66584b); const ledgeColor = new THREE.Color(0x85715d); function addVertex(point, color) { vertices.push(point.x, point.y, point.z); colors.push(color.r, color.g, color.b); return vertices.length / 3 - 1; } const topIndices = topRing.map((point) => addVertex(point, ledgeColor)); const bottomIndices = bottomRing.map((point) => addVertex(point, rockColor)); // Triangulated top cap, slightly above the terrain. for (let i = 1; i < topIndices.length - 1; i++) { indices.push(topIndices[0], topIndices[i], topIndices[i + 1]); } // Vertical/inward-facing side walls. These are separate from the terrain mesh. for (let i = 0; i < topIndices.length; i++) { const next = (i + 1) % topIndices.length; indices.push( topIndices[i], bottomIndices[i], bottomIndices[next], topIndices[i], bottomIndices[next], topIndices[next] ); } // Add a smaller underside cap so the overhang remains visible from below. const undersideCenter = new THREE.Vector3( centroid.x, Math.min(...bottomRing.map((p) => p.y)) - 0.4, centroid.z ); const undersideIndex = addVertex(undersideCenter, rockColor); for (let i = 0; i < bottomIndices.length; i++) { const next = (i + 1) % bottomIndices.length; indices.push(undersideIndex, bottomIndices[next], bottomIndices[i]); } const geometry = new THREE.BufferGeometry(); geometry.setAttribute('position', new THREE.Float32BufferAttribute(vertices, 3)); geometry.setAttribute('color', new THREE.Float32BufferAttribute(colors, 3)); geometry.setIndex(indices); geometry.computeVertexNormals(); const material = new THREE.MeshStandardMaterial({ vertexColors: true, roughness: 0.93, flatShading: true, side: THREE.DoubleSide }); const rock = new THREE.Mesh(geometry, material); rock.castShadow = true; rock.receiveShadow = true; return rock; } const cliff = makeCliffRock({ center: new THREE.Vector3(5, 0, -4), footprint: [ [-7, -3], [-5, -6], [-1, -7], [4, -5], [7, -1], [6, 3], [3, 6], [-2, 5], [-6, 3] ], depth: 8, seed: 42 }); scene.add(cliff); // A few smaller outcrops use the same separate-mesh construction. scene.add(makeCliffRock({ center: new THREE.Vector3(-14, 0, 9), footprint: [[-3, -2], [0, -3], [4, -1], [3, 2], [0, 3], [-3, 2]], depth: 3.5, seed: 7 })); const ground = new THREE.Mesh( new THREE.PlaneGeometry(240, 240), new THREE.MeshStandardMaterial({ color: 0x29352a, roughness: 1 }) ); ground.rotation.x = -Math.PI / 2; ground.position.y = -5; ground.receiveShadow = true; scene.add(ground); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); }); function animate() { controls.update(); renderer.render(scene, camera); } renderer.setAnimationLoop(animate);References
1- Braffolk/fable5-world-demoSTATUS.md
Only a project status entry mentioning three.js and a TERRAIN/heightfield term; no direct code/docs about heightmap + separate cliff mesh/overhang rock outcrop geometry placement.
Request
Request payload
{ "query": "three.js terrain heightmap with separate cliff mesh overhang rock outcrop geometry placed on top of heightfield", "language": "javascript", "license_mode": "strict" }- Braffolk/fable5-world-demoSTATUS.md
+6:04:19Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 200, "indexing_status": "indexed", "language": "javascript", "line_count": 68, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 200, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L133-L200", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 133 } ], "start_line": 133, "status": "success", "total_lines": 1501 }Request
Request payload
{ "end_line": 200, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "package_name": "three", "registry": "npm", "start_line": 133, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 200, "indexing_status": "indexed", "language": "javascript", "line_count": 68, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 200, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L133-L200", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 133 } ], "start_line": 133, "status": "success", "total_lines": 1501 }, "title": null, "content": null }+6:19:51Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 175, "indexing_status": "indexed", "language": "javascript", "line_count": 81, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 175, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L95-L175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 95 } ], "start_line": 95, "status": "success", "total_lines": 411 }Request
Request payload
{ "end_line": 175, "file_path": "src/objects/InstancedMesh.js", "package_name": "three", "registry": "npm", "start_line": 95, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 175, "indexing_status": "indexed", "language": "javascript", "line_count": 81, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 175, "file_path": "src/objects/InstancedMesh.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/InstancedMesh.js#L95-L175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 95 } ], "start_line": 95, "status": "success", "total_lines": 411 }, "title": null, "content": null }+6:19:52Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 1400, "indexing_status": "indexed", "language": "javascript", "line_count": 101, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1400, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1300-L1400", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1300 } ], "start_line": 1300, "status": "success", "total_lines": 1501 }Request
Request payload
{ "end_line": 1400, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "package_name": "three", "registry": "npm", "start_line": 1300, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 1400, "indexing_status": "indexed", "language": "javascript", "line_count": 101, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1400, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1300-L1400", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1300 } ], "start_line": 1300, "status": "success", "total_lines": 1501 }, "title": null, "content": null }+6:19:56Code GrepCode navigationthree“toCreasedNormals”
toCreasedNormals
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html.md", "docs/search.json", "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 310, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L304-L310", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 304 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 310, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L304-L310", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 304 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 310, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L304-L310", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 304 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 159, "file_path": "docs/pages/module-BufferGeometryUtils.html.md", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html.md#L153-L159", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 153 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 23996, "file_path": "docs/search.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/search.json#L23990-L23996", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 23990 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1321, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1315-L1321", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1315 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1502, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1500-L1502", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1500 } ], "returned_matches": 7, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 7, "unique_files_matched": 4 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 6, "context_lines_before": 0, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "toCreasedNormals", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html.md", "docs/search.json", "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 310, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L304-L310", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 304 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 310, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L304-L310", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 304 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 310, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L304-L310", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 304 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 159, "file_path": "docs/pages/module-BufferGeometryUtils.html.md", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html.md#L153-L159", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 153 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 23996, "file_path": "docs/search.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/search.json#L23990-L23996", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 23990 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1321, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1315-L1321", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1315 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1502, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1500-L1502", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1500 } ], "returned_matches": 7, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 7, "unique_files_matched": 4 }, "title": null, "content": null }+6:19:57Code GrepCode navigationthree“mergeGeometries”
mergeGeometries
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "docs/pages/global.html", "docs/pages/global.html.md", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html.md", "docs/search.json", "examples/jsm/generators/city/SkyscraperGenerator.js", "examples/jsm/generators/city/SkyscraperGenerator.js", "examples/jsm/generators/city/SkyscraperGenerator.js", "examples/jsm/helpers/TextureHelper.js", "examples/jsm/helpers/TextureHelper.js", "examples/jsm/helpers/TextureHelperGPU.js", "examples/jsm/helpers/TextureHelperGPU.js", "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2207, "file_path": "docs/pages/global.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/global.html#L2203-L2207", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2203 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1304, "file_path": "docs/pages/global.html.md", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/global.html.md#L1300-L1304", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1300 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 223, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L219-L223", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 219 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 223, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L219-L223", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 219 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 223, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L219-L223", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 219 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 111, "file_path": "docs/pages/module-BufferGeometryUtils.html.md", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html.md#L107-L111", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 107 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 23982, "file_path": "docs/search.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/search.json#L23978-L23982", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 23978 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 29, "file_path": "examples/jsm/generators/city/SkyscraperGenerator.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/generators/city/SkyscraperGenerator.js#L25-L29", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 25 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 59, "file_path": "examples/jsm/generators/city/SkyscraperGenerator.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/generators/city/SkyscraperGenerator.js#L55-L59", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 55 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 76, "file_path": "examples/jsm/generators/city/SkyscraperGenerator.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/generators/city/SkyscraperGenerator.js#L72-L76", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 72 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 14, "file_path": "examples/jsm/helpers/TextureHelper.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/helpers/TextureHelper.js#L10-L14", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 10 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 265, "file_path": "examples/jsm/helpers/TextureHelper.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/helpers/TextureHelper.js#L261-L265", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 261 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 15, "file_path": "examples/jsm/helpers/TextureHelperGPU.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/helpers/TextureHelperGPU.js#L11-L15", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 11 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 214, "file_path": "examples/jsm/helpers/TextureHelperGPU.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/helpers/TextureHelperGPU.js#L210-L214", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 210 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 137, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L133-L137", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 133 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 162, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L158-L162", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 158 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 173, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L169-L173", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 169 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 190, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L186-L190", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 186 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 199, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L195-L199", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 195 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 208, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L204-L208", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 204 } ], "result_pointers_truncated": true, "returned_matches": 50, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 50, "unique_files_matched": 27 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 4, "context_lines_before": 0, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "mergeGeometries", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }ResponseTruncated
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "docs/pages/global.html", "docs/pages/global.html.md", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html.md", "docs/search.json", "examples/jsm/generators/city/SkyscraperGenerator.js", "examples/jsm/generators/city/SkyscraperGenerator.js", "examples/jsm/generators/city/SkyscraperGenerator.js", "examples/jsm/helpers/TextureHelper.js", "examples/jsm/helpers/TextureHelper.js", "examples/jsm/helpers/TextureHelperGPU.js", "examples/jsm/helpers/TextureHelperGPU.js", "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js", "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 2207, "file_path": "docs/pages/global.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/global.html#L2203-L2207", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 2203 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1304, "file_path": "docs/pages/global.html.md", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/global.html.md#L1300-L1304", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1300 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 223, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L219-L223", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 219 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 223, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L219-L223", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 219 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 223, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L219-L223", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 219 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 111, "file_path": "docs/pages/module-BufferGeometryUtils.html.md", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html.md#L107-L111", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 107 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 23982, "file_path": "docs/search.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/search.json#L23978-L23982", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 23978 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 29, "file_path": "examples/jsm/generators/city/SkyscraperGenerator.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/generators/city/SkyscraperGenerator.js#L25-L29", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 25 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 59, "file_path": "examples/jsm/generators/city/SkyscraperGenerator.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/generators/city/SkyscraperGenerator.js#L55-L59", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 55 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 76, "file_path": "examples/jsm/generators/city/SkyscraperGenerator.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/generators/city/SkyscraperGenerator.js#L72-L76", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 72 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 14, "file_path": "examples/jsm/helpers/TextureHelper.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/helpers/TextureHelper.js#L10-L14", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 10 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 265, "file_path": "examples/jsm/helpers/TextureHelper.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/helpers/TextureHelper.js#L261-L265", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 261 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 15, "file_path": "examples/jsm/helpers/TextureHelperGPU.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/helpers/TextureHelperGPU.js#L11-L15", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 11 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 214, "file_path": "examples/jsm/helpers/TextureHelperGPU.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/helpers/TextureHelperGPU.js#L210-L214", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 210 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 137, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L133-L137", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 133 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 162, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L158-L162", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 158 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 173, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L169-L173", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 169 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 190, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L186-L190", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 186 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 199, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L195-L199", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 195 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 208, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L204-L208", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 204 } ], "result_pointers_truncated": true, "returned_matches": 50, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 50, "unique_files_matched": 27 }, "title": null, "content": null }This shared record contains a truncated response.
+6:20:02Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 1420, "indexing_status": "indexed", "language": "javascript", "line_count": 111, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1420, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1310-L1420", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1310 } ], "start_line": 1310, "status": "success", "total_lines": 1501 }Request
Request payload
{ "end_line": 1420, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "package_name": "three", "registry": "npm", "start_line": 1310, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 1420, "indexing_status": "indexed", "language": "javascript", "line_count": 111, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1420, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1310-L1420", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1310 } ], "start_line": 1310, "status": "success", "total_lines": 1501 }, "title": null, "content": null }+6:20:03Code GrepCode navigationthree-mesh-bvh“class MeshBVH”
class MeshBVH
pkg:npm:three-mesh-bvh@0.9.14Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/MeshBVH.js", "src/index.d.ts", "src/index.d.ts", "src/index.d.ts", "src/objects/BVHHelper.js", "src/webgl/MeshBVHUniformStruct.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 104, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L94-L104", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 94 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 145, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L135-L145", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 135 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 319, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L309-L319", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 309 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 412, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L402-L412", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 402 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 534, "file_path": "src/objects/BVHHelper.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/objects/BVHHelper.js#L524-L534", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 524 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 43, "file_path": "src/webgl/MeshBVHUniformStruct.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/webgl/MeshBVHUniformStruct.js#L33-L43", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 33 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 4 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 0, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three-mesh-bvh", "pattern": "class MeshBVH", "pattern_type": "LITERAL", "registry": "npm", "version": "0.9.14", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/MeshBVH.js", "src/index.d.ts", "src/index.d.ts", "src/index.d.ts", "src/objects/BVHHelper.js", "src/webgl/MeshBVHUniformStruct.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 104, "file_path": "src/core/MeshBVH.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/core/MeshBVH.js#L94-L104", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 94 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 145, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L135-L145", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 135 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 319, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L309-L319", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 309 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 412, "file_path": "src/index.d.ts", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/index.d.ts#L402-L412", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 402 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 534, "file_path": "src/objects/BVHHelper.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/objects/BVHHelper.js#L524-L534", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 524 }, { "commit_sha": "75a7046260e2bfb3bc158d8c7759f581bc1fea9d", "end_line": 43, "file_path": "src/webgl/MeshBVHUniformStruct.js", "kind": "code", "permalink": "https://github.com/gkjohnson/three-mesh-bvh/blob/75a7046260e2bfb3bc158d8c7759f581bc1fea9d/src/webgl/MeshBVHUniformStruct.js#L33-L43", "repo_url": "https://github.com/gkjohnson/three-mesh-bvh", "start_line": 33 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 4 }, "title": null, "content": null }+6:20:05Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 150, "indexing_status": "indexed", "language": "javascript", "line_count": 41, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 150, "file_path": "src/objects/LOD.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/LOD.js#L110-L150", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 110 } ], "start_line": 110, "status": "success", "total_lines": 329 }Request
Request payload
{ "end_line": 150, "file_path": "src/objects/LOD.js", "package_name": "three", "registry": "npm", "start_line": 110, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 150, "indexing_status": "indexed", "language": "javascript", "line_count": 41, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 150, "file_path": "src/objects/LOD.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/objects/LOD.js#L110-L150", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 110 } ], "start_line": 110, "status": "success", "total_lines": 329 }, "title": null, "content": null }+6:20:10Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 200, "indexing_status": "indexed", "language": "javascript", "line_count": 76, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 200, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L125-L200", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 125 } ], "start_line": 125, "status": "success", "total_lines": 1501 }Request
Request payload
{ "end_line": 200, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "package_name": "three", "registry": "npm", "start_line": 125, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 200, "indexing_status": "indexed", "language": "javascript", "line_count": 76, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 200, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L125-L200", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 125 } ], "start_line": 125, "status": "success", "total_lines": 1501 }, "title": null, "content": null }+6:20:11Get ExampleGenerated examplethree.js procedural low poly palm tree fronds leaflets merged BufferGeometry instanced
three.js procedural low poly palm tree fronds leaflets merged BufferGeometry instanced · javascript · strict
Procedural Low-Poly Palm Fronds with Merged Leaflets and Instancing
import * as THREE from 'three'; import { OrbitControls } from 'three/addons/controls/OrbitControls.js'; const scene = new THREE.Scene(); scene.background = new THREE.Color(0x9ed8ef); const camera = new THREE.PerspectiveCamera(55, innerWidth / innerHeight, 0.1, 300); camera.position.set(12, 9, 15); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.setSize(innerWidth, innerHeight); renderer.shadowMap.enabled = true; document.body.appendChild(renderer.domElement); new OrbitControls(camera, renderer.domElement).target.set(0, 4, 0); scene.add(new THREE.HemisphereLight(0xcceeff, 0x60452f, 2.2)); const sun = new THREE.DirectionalLight(0xffffff, 3); sun.position.set(8, 16, 10); sun.castShadow = true; scene.add(sun); const trunkHeight = 5; const frondCount = 10; const palmCount = 80; // Creates one frond mesh containing every leaflet as one merged BufferGeometry. function createMergedFrondGeometry({ leafletCount = 18, length = 4.8 } = {}) { const positions = []; const normals = []; const uvs = []; const indices = []; const addLeaflet = (side, t, index) => { const z = t * length; const leafletLength = (1 - t) * 1.8 + 0.35; const width = 0.11 * (1 - t * 0.55); // Leaflets alternate slightly along the rachis and point outward. const base = new THREE.Vector3(side * 0.06, 0, z); const tip = new THREE.Vector3( side * (0.25 + leafletLength), 0.10 + t * 0.22, z + leafletLength * 0.22, ); const direction = tip.clone().sub(base).normalize(); const sideAxis = new THREE.Vector3(0, 1, 0) .cross(direction) .normalize() .multiplyScalar(width); const quad = [ base.clone().sub(sideAxis), base.clone().add(sideAxis), tip.clone().add(sideAxis.multiplyScalar(0.25)), tip.clone().sub(sideAxis.multiplyScalar(0.25)), ]; const normal = quad[1].clone().sub(quad[0]) .cross(quad[3].clone().sub(quad[0])) .normalize(); const vertexStart = positions.length / 3; for (const vertex of quad) { positions.push(vertex.x, vertex.y, vertex.z); normals.push(normal.x, normal.y, normal.z); } uvs.push(0, 0, 1, 0, 1, 1, 0, 1); indices.push( vertexStart, vertexStart + 1, vertexStart + 2, vertexStart, vertexStart + 2, vertexStart + 3, ); }; for (let i = 0; i < leafletCount; i++) { const t = i / (leafletCount - 1); addLeaflet(i % 2 === 0 ? 1 : -1, t, i); } // The central rachis is also part of the merged frond geometry. const rachis = new THREE.CylinderGeometry(0.045, 0.09, length, 5, 1, false); rachis.rotateX(Math.PI / 2); rachis.translate(0, 0, length / 2); const rachisPosition = rachis.getAttribute('position'); const rachisNormal = rachis.getAttribute('normal'); const rachisUv = rachis.getAttribute('uv'); const offset = positions.length / 3; for (let i = 0; i < rachisPosition.count; i++) { positions.push( rachisPosition.getX(i), rachisPosition.getY(i), rachisPosition.getZ(i), ); normals.push( rachisNormal.getX(i), rachisNormal.getY(i), rachisNormal.getZ(i), ); uvs.push(rachisUv.getX(i), rachisUv.getY(i)); } for (let i = 0; i < rachis.index.count; i++) { indices.push(rachis.index.getX(i) + offset); } rachis.dispose(); const geometry = new THREE.BufferGeometry(); geometry.setAttribute('position', new THREE.Float32BufferAttribute(positions, 3)); geometry.setAttribute('normal', new THREE.Float32BufferAttribute(normals, 3)); geometry.setAttribute('uv', new THREE.Float32BufferAttribute(uvs, 2)); geometry.setIndex(indices); geometry.computeBoundingSphere(); return geometry; } const frondGeometry = createMergedFrondGeometry(); const frondMaterial = new THREE.MeshStandardMaterial({ color: 0x3f8f42, roughness: 0.9, side: THREE.DoubleSide, flatShading: true, }); const trunkGeometry = new THREE.CylinderGeometry(0.28, 0.48, trunkHeight, 7); const trunkMaterial = new THREE.MeshStandardMaterial({ color: 0x80512e, roughness: 1, flatShading: true, }); // One instanced trunk and one instanced merged-frond mesh draw the whole grove. const trunks = new THREE.InstancedMesh(trunkGeometry, trunkMaterial, palmCount); const fronds = new THREE.InstancedMesh( frondGeometry, frondMaterial, palmCount * frondCount, ); trunks.castShadow = trunks.receiveShadow = true; fronds.castShadow = true; const palmMatrix = new THREE.Object3D(); const frondMatrix = new THREE.Object3D(); let frondInstance = 0; for (let palm = 0; palm < palmCount; palm++) { const angle = palm * 2.399963 + Math.random() * 0.3; const radius = Math.sqrt(palm / palmCount) * 24; const x = Math.cos(angle) * radius; const z = Math.sin(angle) * radius; const scale = 0.75 + Math.random() * 0.55; palmMatrix.position.set(x, trunkHeight / 2 * scale, z); palmMatrix.scale.setScalar(scale); palmMatrix.rotation.set(0, Math.random() * Math.PI, 0); palmMatrix.updateMatrix(); trunks.setMatrixAt(palm, palmMatrix.matrix); for (let i = 0; i < frondCount; i++) { const radialAngle = (i / frondCount) * Math.PI * 2 + Math.random() * 0.18; const droop = 0.22 + Math.random() * 0.22; frondMatrix.position.set(x, trunkHeight * scale, z); frondMatrix.rotation.set(droop, radialAngle, 0); frondMatrix.scale.setScalar(scale * (0.9 + Math.random() * 0.18)); frondMatrix.updateMatrix(); fronds.setMatrixAt(frondInstance++, frondMatrix.matrix); } } trunks.instanceMatrix.needsUpdate = true; fronds.instanceMatrix.needsUpdate = true; scene.add(trunks, fronds); const ground = new THREE.Mesh( new THREE.CircleGeometry(45, 48), new THREE.MeshStandardMaterial({ color: 0xc7ae72, roughness: 1 }), ); ground.rotation.x = -Math.PI / 2; ground.receiveShadow = true; scene.add(ground); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); }); renderer.setAnimationLoop(() => { renderer.render(scene, camera); });References
3- SkyeShark/SeedThreesrc/main.js
Provides a substantial Three.js (WebGPU) procedural plant/tree generator in JavaScript, including foliage/low-detail card-based approaches that can inform fronds/leaflets generation and GPU-friendly optimization. However, it is not a direct match to the specific “low poly palm tree fronds/leaflets merged BufferGeometry + InstancedMesh” combination, and the snippet focuses more on biome/tree rebuilding than on explicit merged BufferGeometry or InstancedMesh usage for palm fronds.
- call-me-sensei/toonlabsrc/vegetation/stylizedTreeFoliage.js
Implements procedural three.js foliage with frond/leaflet-style card generation and produces a merged BufferGeometry (quad-soup canopy); does not directly cover InstancedMesh usage specifically for palm fronds.
- Drommedhar/novalist-officialapp/src/renderer/public/map/map3d.js
Contains three.js procedural low-poly foliage/tree generation (including InstancedMesh-style pooling/geometry construction), which is relevant to building palm-like fronds/leaflets, but it’s not specifically a palm tree implementation or explicit frond/leaflet mesh merging workflow.
Request
Request payload
{ "query": "three.js procedural low poly palm tree fronds leaflets merged BufferGeometry instanced", "language": "javascript", "license_mode": "strict" }- SkyeShark/SeedThreesrc/main.js
+6:20:17Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 1500, "indexing_status": "indexed", "language": "javascript", "line_count": 81, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1500, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1420-L1500", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1420 } ], "start_line": 1420, "status": "success", "total_lines": 1501 }Request
Request payload
{ "end_line": 1500, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "package_name": "three", "registry": "npm", "start_line": 1420, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 1500, "indexing_status": "indexed", "language": "javascript", "line_count": 81, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1500, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1420-L1500", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1420 } ], "start_line": 1420, "status": "success", "total_lines": 1501 }, "title": null, "content": null }+6:20:18Get ExampleGenerated examplethree.js procedural stylized cliff geometry with strata bands and rock ledges built from BufferGeometry rings
three.js procedural stylized cliff geometry with strata bands and rock ledges built from BufferGeometry rings · javascript · strict
Three.js Procedural Stylized Cliff with Strata Rings and Rock Ledges
import * as THREE from 'three'; // A stylized cliff is represented by several irregular horizontal rings. // Radius changes between rings create strata steps and overhanging ledges. const scene = new THREE.Scene(); scene.background = new THREE.Color(0x9fc8dc); scene.fog = new THREE.Fog(0x9fc8dc, 35, 110); const camera = new THREE.PerspectiveCamera(45, innerWidth / innerHeight, 0.1, 250); camera.position.set(28, 18, 32); camera.lookAt(0, 9, 0); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.setSize(innerWidth, innerHeight); renderer.shadowMap.enabled = true; document.body.style.margin = '0'; document.body.appendChild(renderer.domElement); scene.add(new THREE.HemisphereLight(0xd9f1ff, 0x44352e, 2.0)); const sun = new THREE.DirectionalLight(0xffe7c2, 3.2); sun.position.set(-25, 45, 20); sun.castShadow = true; sun.shadow.mapSize.set(2048, 2048); scene.add(sun); const TAU = Math.PI * 2; const SEGMENTS = 48; const rng = mulberry32(0xdecafbad); function mulberry32(seed) { return () => { seed |= 0; seed = seed + 0x6d2b79f5 | 0; let t = Math.imul(seed ^ seed >>> 15, 1 | seed); t = t + Math.imul(t ^ t >>> 7, 61 | t) ^ t; return ((t ^ t >>> 14) >>> 0) / 4294967296; }; } function material(color, roughness = 1) { return new THREE.MeshStandardMaterial({ color, roughness, metalness: 0, flatShading: true }); } // Create one irregular horizontal BufferGeometry ring. function makeRing({ y, rx, rz, phase = 0, noise = 0.08 }) { const ring = []; for (let i = 0; i < SEGMENTS; i++) { const a = i / SEGMENTS * TAU; const n = 1 + (rng() - 0.5) * noise; const waviness = 1 + Math.sin(a * 3 + phase) * 0.035; ring.push({ x: Math.cos(a) * rx * n * waviness, y, z: Math.sin(a) * rz * n * waviness, angle: a }); } return ring; } // Connect two rings into a triangulated BufferGeometry band. function connectRings(lower, upper) { const positions = []; const indices = []; for (const p of lower) positions.push(p.x, p.y, p.z); for (const p of upper) positions.push(p.x, p.y, p.z); for (let i = 0; i < SEGMENTS; i++) { const next = (i + 1) % SEGMENTS; const a = i; const b = next; const c = SEGMENTS + next; const d = SEGMENTS + i; // Alternating diagonal directions avoid a repetitive visual pattern. if (i % 2) indices.push(a, b, d, b, c, d); else indices.push(a, b, c, a, c, d); } const geometry = new THREE.BufferGeometry(); geometry.setAttribute( 'position', new THREE.Float32BufferAttribute(positions, 3) ); geometry.setIndex(indices); geometry.computeVertexNormals(); return geometry; } function addBand(lower, upper, color) { const mesh = new THREE.Mesh(connectRings(lower, upper), material(color)); mesh.castShadow = true; mesh.receiveShadow = true; scene.add(mesh); return mesh; } function addRingCap(ring, color, top = true) { const positions = [0, ring[0].y, 0]; const indices = []; for (const p of ring) positions.push(p.x, p.y, p.z); for (let i = 0; i < SEGMENTS; i++) { const a = 1 + i; const b = 1 + ((i + 1) % SEGMENTS); indices.push(top ? [0, a, b] : [0, b, a]); } const geometry = new THREE.BufferGeometry(); geometry.setAttribute('position', new THREE.Float32BufferAttribute(positions, 3)); geometry.setIndex(indices.flat()); geometry.computeVertexNormals(); const mesh = new THREE.Mesh(geometry, material(color)); mesh.castShadow = true; mesh.receiveShadow = true; scene.add(mesh); } const strata = [ 0x594238, 0x765444, 0x8f674c, 0xa77b55, 0x6c4c3d, 0xb18a61, 0x80604b, 0xc29a6b ]; // Profile order is bottom-to-top. Repeated height transitions form thin ledges. const profile = [ { y: 0.0, rx: 16.0, rz: 10.5 }, { y: 1.7, rx: 15.5, rz: 10.0 }, { y: 2.0, rx: 16.8, rz: 10.9 }, // outward rock shelf { y: 4.2, rx: 14.0, rz: 9.0 }, { y: 4.5, rx: 15.1, rz: 9.8 }, // second shelf { y: 7.5, rx: 12.2, rz: 7.8 }, { y: 7.8, rx: 13.4, rz: 8.7 }, // third shelf { y: 11.0, rx: 10.1, rz: 6.4 }, { y: 11.35, rx: 11.0, rz: 7.1 }, // upper ledge { y: 14.0, rx: 8.0, rz: 5.2 }, { y: 14.3, rx: 8.7, rz: 5.8 }, { y: 16.8, rx: 6.5, rz: 4.2 } ]; const rings = profile.map((p, i) => makeRing({ ...p, phase: i * 0.71, noise: i % 2 ? 0.12 : 0.07 })); for (let i = 0; i < rings.length - 1; i++) { addBand(rings[i], rings[i + 1], strata[i % strata.length]); } addRingCap(rings[0], 0x49372f, false); addRingCap(rings.at(-1), 0xb38a61, true); // Add small angular stones beneath ledges. Their positions use the same ring logic. function addLedgeDebris(ring, count, radiusOffset) { const rockMaterial = material(0x5b4539); for (let i = 0; i < count; i++) { const p = ring[Math.floor(rng() * ring.length)]; const angle = p.angle + (rng() - 0.5) * 0.16; const radius = radiusOffset + (rng() - 0.5) * 1.0; const rock = new THREE.Mesh( new THREE.DodecahedronGeometry(0.45 + rng() * 0.55, 0), rockMaterial ); rock.position.set( Math.cos(angle) * radius, p.y + 0.12 + rng() * 0.5, Math.sin(angle) * radius ); rock.scale.set(1.3, 0.55 + rng() * 0.5, 0.8); rock.rotation.set(rng() * 2, rng() * TAU, rng() * 2); rock.castShadow = true; rock.receiveShadow = true; scene.add(rock); } } for (const index of [1, 3, 5, 7, 9]) { addLedgeDebris(rings[index], 10, profile[index].rx + 0.7); } // Flat ground plane for contact shadows. const ground = new THREE.Mesh( new THREE.CircleGeometry(42, 64), material(0x34463b) ); ground.rotation.x = -Math.PI / 2; ground.position.y = -0.05; ground.receiveShadow = true; scene.add(ground); // Simple orbit animation keeps the procedural silhouette visible. let time = 0; function animate() { requestAnimationFrame(animate); time += 0.0025; camera.position.x = Math.cos(time) * 31; camera.position.z = Math.sin(time) * 31; camera.lookAt(0, 8, 0); renderer.render(scene, camera); } animate(); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); });References
2- majidmanzarpour/threejs-procedural-dungeonsrc/main.js
JavaScript Three.js procedural generator that includes “ring” primitives and custom geometry/tiling, but it’s for dungeons rather than stylized cliff strata/ledge banding with BufferGeometry rings; useful as a reference for ring-based procedural layout/instancing patterns.
- ocftw/ssddocs/games/main.js
Contains Three.js procedural geometry construction with BufferGeometry/mergeGeometries and uses ring/Geometry-related primitives, but it’s not specifically about procedural cliff strata ledges or BufferGeometry ring-based strata bands as requested.
Request
Request payload
{ "query": "three.js procedural stylized cliff geometry with strata bands and rock ledges built from BufferGeometry rings", "language": "javascript", "license_mode": "strict" }- majidmanzarpour/threejs-procedural-dungeonsrc/main.js
+6:21:36Get ExampleGenerated examplethree.js procedural rock boulder geometry stratified layers hard edges vertex colors low poly
three.js procedural rock boulder geometry stratified layers hard edges vertex colors low poly · javascript · strict
Three.js Low-Poly Stratified Boulder with Vertex Colors
import * as THREE from 'three'; // Seeded randomness keeps the boulder reproducible. function mulberry32(seed) { return () => { seed |= 0; seed = (seed + 0x6d2b79f5) | 0; let t = Math.imul(seed ^ (seed >>> 15), 1 | seed); t = (t + Math.imul(t ^ (t >>> 7), 61 | t)) ^ t; return ((t ^ (t >>> 14)) >>> 0) / 4294967296; }; } function makeStratifiedBoulder({ seed = 42, sides = 11, layers = 7, height = 3.2, radius = 2.2, } = {}) { const random = mulberry32(seed); const positions = []; const colors = []; const palette = [ new THREE.Color('#5b5148'), new THREE.Color('#75695b'), new THREE.Color('#8f806c'), new THREE.Color('#6b6258'), new THREE.Color('#a08e73'), ]; const ringAngles = Array.from({ length: sides }, (_, i) => (i / sides) * Math.PI * 2 + (random() - 0.5) * 0.18 ); const rings = []; for (let layer = 0; layer <= layers; layer++) { const t = layer / layers; const y = -height / 2 + t * height; // Bulging middle and tapered top/bottom create an irregular boulder silhouette. const silhouette = Math.sin(Math.PI * t) ** 0.55; const taper = 0.68 + silhouette * 0.42; const ring = []; for (let i = 0; i < sides; i++) { const angle = ringAngles[i]; const noise = 0.84 + random() * 0.30; const radial = radius * taper * noise; ring.push(new THREE.Vector3( Math.cos(angle) * radial, y + (random() - 0.5) * height * 0.045, Math.sin(angle) * radial )); } rings.push(ring); } function addTriangle(a, b, c, color) { for (const vertex of [a, b, c]) { positions.push(vertex.x, vertex.y, vertex.z); colors.push(color.r, color.g, color.b); } } // Stratified side faces. Each layer receives a separate rock color band. for (let layer = 0; layer < layers; layer++) { const baseColor = palette[layer % palette.length].clone(); baseColor.offsetHSL(0, 0, (random() - 0.5) * 0.08); for (let i = 0; i < sides; i++) { const next = (i + 1) % sides; const a = rings[layer][i]; const b = rings[layer][next]; const c = rings[layer + 1][next]; const d = rings[layer + 1][i]; // Alternating diagonals avoid a perfectly repetitive triangulation pattern. if ((i + layer) % 2 === 0) { addTriangle(a, b, d, baseColor); addTriangle(b, c, d, baseColor); } else { addTriangle(a, b, c, baseColor); addTriangle(a, c, d, baseColor); } } } // Bottom cap. const bottomCenter = new THREE.Vector3(0, -height / 2, 0); for (let i = 0; i < sides; i++) { addTriangle( bottomCenter, rings[0][(i + 1) % sides], rings[0][i], palette[0] ); } // Top cap, slightly lighter to emphasize the horizontal strata. const topCenter = new THREE.Vector3(0, height / 2, 0); const topColor = palette[2].clone().offsetHSL(0, 0, 0.08); for (let i = 0; i < sides; i++) { addTriangle( topCenter, rings[layers][i], rings[layers][(i + 1) % sides], topColor ); } const geometry = new THREE.BufferGeometry(); geometry.setAttribute( 'position', new THREE.Float32BufferAttribute(positions, 3) ); geometry.setAttribute( 'color', new THREE.Float32BufferAttribute(colors, 3) ); geometry.computeVertexNormals(); const material = new THREE.MeshStandardMaterial({ vertexColors: true, flatShading: true, roughness: 0.94, metalness: 0, }); const mesh = new THREE.Mesh(geometry, material); mesh.castShadow = true; mesh.receiveShadow = true; return mesh; } // Minimal scene setup. const scene = new THREE.Scene(); scene.background = new THREE.Color('#b9c5c1'); const camera = new THREE.PerspectiveCamera( 45, window.innerWidth / window.innerHeight, 0.1, 100 ); camera.position.set(6, 4.5, 7); camera.lookAt(0, 0, 0); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setSize(window.innerWidth, window.innerHeight); renderer.shadowMap.enabled = true; document.body.appendChild(renderer.domElement); scene.add(new THREE.HemisphereLight('#dbe9e5', '#51483f', 2.2)); const keyLight = new THREE.DirectionalLight('#fff1d2', 4); keyLight.position.set(5, 8, 4); keyLight.castShadow = true; scene.add(keyLight); const boulder = makeStratifiedBoulder({ seed: 1337, sides: 12, layers: 8, height: 3.8, radius: 2.4, }); scene.add(boulder); const ground = new THREE.Mesh( new THREE.CircleGeometry(12, 32), new THREE.MeshStandardMaterial({ color: '#514b43', roughness: 1 }) ); ground.rotation.x = -Math.PI / 2; ground.position.y = -1.95; ground.receiveShadow = true; scene.add(ground); function animate() { requestAnimationFrame(animate); boulder.rotation.y += 0.002; renderer.render(scene, camera); } animate(); window.addEventListener('resize', () => { camera.aspect = window.innerWidth / window.innerHeight; camera.updateProjectionMatrix(); renderer.setSize(window.innerWidth, window.innerHeight); });References
5- kaolti/monolith-terrainsrc/terrain.js
Strong three.js procedural terrain implementation that uses BufferGeometry vertex coloring (via a per-vertex 'color' attribute with MeshStandardMaterial vertexColors), hard-edged stylization can be derived from the height/slope logic, and it includes shader customization for flat-like contour bands. However it focuses on “terrain” rather than explicit “rock boulder” low-poly stratified hard-edge generation, so it’s an adaptable partial match.
- w3reality/three-laser-pointerexamples/demo-terrains/src/three-terrain.js
Provides a JavaScript/three.js procedural terrain generation module (THREE.Terrain) with BufferGeometry compatibility and heightmap-based vertex updates, which is relevant to procedural rock/low-poly geometry generation and stratified hard-edged appearance; it does not directly implement vertex colors or explicit boulder/stratified flat layers, so it’s only a partial match.
- crunchybananas/shipyard-microtoolsdocs/the-island/js/assets.js
Contains three.js code for texture/normal handling and explicitly references flatShading and vertex color interactions, but it’s not focused on procedural low-poly rock geometry, stratified layers, or vertex-colored boulders; useful only as partial implementation context (not a direct match).
- jimmyorr/chill-flightterrain.js
Contains Three.js procedural terrain with `flatShading: true` and `vertexColors: true`, plus explicitly hard-edged low-poly style rock geometry (`DodecahedronGeometry(..., 0)`), but it’s not specifically “stratified layers” rock/boulder-focused beyond general terrain/chunk generation context.
- craftmygame/little-citylittle-taipei/main.js
Uses Three.js to generate procedural, low-poly style geometry with flat/cel shading concepts and explicit per-vertex color attributes (including flatShading/vertexColors patterns), which is relevant to vertex-colored hard-edged look; however it’s mainly a procedural terrain/city world rather than specifically procedural rock/boulder layering.
Request
Request payload
{ "query": "three.js procedural rock boulder geometry stratified layers hard edges vertex colors low poly", "language": "javascript", "license_mode": "strict" }- kaolti/monolith-terrainsrc/terrain.js
+6:22:16Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 1501, "indexing_status": "indexed", "language": "javascript", "line_count": 42, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1501, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1460-L1501", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1460 } ], "start_line": 1460, "status": "success", "total_lines": 1501 }Request
Request payload
{ "end_line": 1501, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "package_name": "three", "registry": "npm", "start_line": 1460, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 1501, "indexing_status": "indexed", "language": "javascript", "line_count": 42, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1501, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1460-L1501", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1460 } ], "start_line": 1460, "status": "success", "total_lines": 1501 }, "title": null, "content": null }+6:38:39Code GrepCode navigationthree“export function toCreasedNormals”
export function toCreasedNormals
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "examples/jsm/utils/BufferGeometryUtils.js" } ], "pattern": "export function toCreasedNormals", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "next_cursor_present": false, "outcome": "empty_result", "returned_matches": 0, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 0, "unique_files_matched": 0 }, "title": null, "content": null }+6:38:44Code GrepCode navigationthree“toCreasedNormals”
toCreasedNormals
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html.md", "docs/search.json", "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 312, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L298-L312", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 298 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 312, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L298-L312", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 298 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 312, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L298-L312", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 298 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 161, "file_path": "docs/pages/module-BufferGeometryUtils.html.md", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html.md#L147-L161", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 147 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 23998, "file_path": "docs/search.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/search.json#L23984-L23998", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 23984 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1323, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1309-L1323", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1309 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 4 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 6, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 6, "max_matches_per_file": 20, "package_name": "three", "pattern": "toCreasedNormals", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html", "docs/pages/module-BufferGeometryUtils.html.md", "docs/search.json", "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": true, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 312, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L298-L312", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 298 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 312, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L298-L312", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 298 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 312, "file_path": "docs/pages/module-BufferGeometryUtils.html", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html#L298-L312", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 298 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 161, "file_path": "docs/pages/module-BufferGeometryUtils.html.md", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/pages/module-BufferGeometryUtils.html.md#L147-L161", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 147 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 23998, "file_path": "docs/search.json", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/docs/search.json#L23984-L23998", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 23984 }, { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1323, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1309-L1323", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1309 } ], "returned_matches": 6, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 6, "unique_files_matched": 4 }, "title": null, "content": null }+6:38:44Code GrepCode navigationthree“function toCreasedNormals”
function toCreasedNormals
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1325, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1305-L1325", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1305 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": true, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "pattern": "function toCreasedNormals", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1325, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L1305-L1325", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1305 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+6:38:45Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 115, "indexing_status": "indexed", "language": "javascript", "line_count": 86, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 115, "file_path": "src/geometries/PolyhedronGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/PolyhedronGeometry.js#L30-L115", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 30 } ], "start_line": 30, "status": "success", "total_lines": 348 }Request
Request payload
{ "end_line": 115, "file_path": "src/geometries/PolyhedronGeometry.js", "package_name": "three", "registry": "npm", "start_line": 30, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 115, "indexing_status": "indexed", "language": "javascript", "line_count": 86, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 115, "file_path": "src/geometries/PolyhedronGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/PolyhedronGeometry.js#L30-L115", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 30 } ], "start_line": 30, "status": "success", "total_lines": 348 }, "title": null, "content": null }+6:38:45Code GrepCode navigationthree“function mergeGeometries”
function mergeGeometries
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 143, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L123-L143", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 123 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 10, "context_lines_before": 10, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "examples/jsm/utils/BufferGeometryUtils.js" } ], "pattern": "function mergeGeometries", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "examples/jsm/utils/BufferGeometryUtils.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 143, "file_path": "examples/jsm/utils/BufferGeometryUtils.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/examples/jsm/utils/BufferGeometryUtils.js#L123-L143", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 123 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+6:38:55Get ExampleGenerated examplestylized low poly wooden sailing boat procedural geometry three.js hull planks mast rigging
stylized low poly wooden sailing boat procedural geometry three.js hull planks mast rigging · typescript · strict
Procedural Low-Poly Wooden Sailing Boat in Three.js
import * as THREE from "three"; const scene = new THREE.Scene(); scene.background = new THREE.Color(0x9fc9d6); scene.fog = new THREE.Fog(0x9fc9d6, 18, 55); const camera = new THREE.PerspectiveCamera(45, innerWidth / innerHeight, 0.1, 100); camera.position.set(8, 5.5, 9); camera.lookAt(0, 0.8, 0); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(Math.min(devicePixelRatio, 2)); renderer.setSize(innerWidth, innerHeight); renderer.shadowMap.enabled = true; document.body.appendChild(renderer.domElement); scene.add(new THREE.HemisphereLight(0xccecff, 0x445044, 2.2)); const sun = new THREE.DirectionalLight(0xffe0aa, 3.5); sun.position.set(-6, 12, 8); sun.castShadow = true; scene.add(sun); const boat = new THREE.Group(); boat.rotation.y = Math.PI * 0.08; scene.add(boat); const wood = [0x70452c, 0x8c5b38, 0xa97445, 0x5b3828].map( color => new THREE.MeshStandardMaterial({ color, roughness: 0.9, flatShading: true }) ); const darkWood = new THREE.MeshStandardMaterial({ color: 0x3e281d, roughness: 1, flatShading: true }); const rope = new THREE.MeshStandardMaterial({ color: 0xb79b70, roughness: 1 }); const sailMaterial = new THREE.MeshStandardMaterial({ color: 0xe6d7ad, side: THREE.DoubleSide, roughness: 1, flatShading: true }); function hullBeam(x: number): number { return 1.32 * Math.pow(Math.max(0, 1 - Math.abs(x) / 3.4), 0.62); } function hullHeight(x: number): number { return 0.35 + 0.18 * (1 - Math.pow(Math.abs(x) / 3.4, 1.5)); } // Each plank is a short tapered prism. Separate segments preserve the faceted style. function addPlank(side: number, z0: number, z1: number, material: THREE.Material): void { const stations = [-3.4, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 3.4]; const thickness = 0.075; for (let i = 0; i < stations.length - 1; i++) { const xa = stations[i]; const xb = stations[i + 1]; const ya = side * (hullBeam(xa) + 0.08); const yb = side * (hullBeam(xb) + 0.08); const za = z0 + hullHeight(xa) * (z0 / 0.9); const zb = z0 + hullHeight(xb) * (z0 / 0.9); const vertices = new Float32Array([ xa, ya, za, xb, yb, zb, xa, ya, za + 0.18, xb, yb, zb + 0.18, xa, ya - side * thickness, za, xb, yb - side * thickness, zb, xa, ya - side * thickness, za + 0.18, xb, yb - side * thickness, zb + 0.18 ]); const indices = [ 0, 1, 3, 0, 3, 2, 4, 6, 7, 4, 7, 5, 0, 4, 5, 0, 5, 1, 2, 3, 7, 2, 7, 6, 0, 2, 6, 0, 6, 4, 1, 5, 7, 1, 7, 3 ]; const geometry = new THREE.BufferGeometry(); geometry.setAttribute("position", new THREE.BufferAttribute(vertices, 3)); geometry.setIndex(indices); geometry.computeVertexNormals(); const mesh = new THREE.Mesh(geometry, material); mesh.castShadow = true; mesh.receiveShadow = true; boat.add(mesh); } } for (let side of [-1, 1]) { for (let row = 0; row < 4; row++) { addPlank(side, -0.48 + row * 0.2, -0.3 + row * 0.2, wood[(row + (side > 0 ? 1 : 0)) % wood.length]); } } // Keel and bow/stern caps. const keel = new THREE.Mesh(new THREE.BoxGeometry(5.8, 0.22, 0.28), darkWood); keel.position.set(0, 0, -0.58); keel.castShadow = true; boat.add(keel); for (const x of [-3.35, 3.35]) { const cap = new THREE.Mesh(new THREE.BoxGeometry(0.22, 1.05, 0.75), darkWood); cap.position.set(x, 0, -0.05); cap.rotation.z = x < 0 ? -0.22 : 0.22; cap.castShadow = true; boat.add(cap); } // Deck beams and planks. for (let x = -2.7; x <= 2.7; x += 0.48) { const deck = new THREE.Mesh(new THREE.BoxGeometry(0.4, 0.11, hullBeam(x) * 1.72), wood[2]); deck.position.set(x, 0, 0.52); deck.castShadow = true; boat.add(deck); } function cylinderBetween(a: THREE.Vector3, b: THREE.Vector3, radius: number, material: THREE.Material): THREE.Mesh { const direction = new THREE.Vector3().subVectors(b, a); const mesh = new THREE.Mesh(new THREE.CylinderGeometry(radius, radius, direction.length(), 6), material); mesh.position.copy(a).add(b).multiplyScalar(0.5); mesh.quaternion.setFromUnitVectors(new THREE.Vector3(0, 1, 0), direction.normalize()); mesh.castShadow = true; return mesh; } // Mast, boom, bowsprit, and rigging. const mastBase = new THREE.Vector3(-0.65, 0, 0.48); const mastTop = new THREE.Vector3(-0.65, 0, 5.0); boat.add(cylinderBetween(mastBase, mastTop, 0.11, darkWood)); boat.add(cylinderBetween(new THREE.Vector3(-2.05, 0, 0.62), new THREE.Vector3(0.1, 0, 2.25), 0.075, darkWood)); boat.add(cylinderBetween(new THREE.Vector3(-0.65, 0, 2.05), new THREE.Vector3(1.75, 0, 2.05), 0.085, darkWood)); const riggingPoints: [THREE.Vector3, THREE.Vector3][] = [ [mastTop, new THREE.Vector3(3.25, 0, 0.62)], [mastTop, new THREE.Vector3(-3.15, 0, 0.65)], [mastTop, new THREE.Vector3(-0.65, 0, -0.5)], [new THREE.Vector3(1.75, 0, 2.05), new THREE.Vector3(1.75, 0, 0.62)] ]; for (const [a, b] of riggingPoints) boat.add(cylinderBetween(a, b, 0.018, rope)); // Triangular mainsail with deliberately coarse geometry. const sailGeometry = new THREE.BufferGeometry(); sailGeometry.setAttribute("position", new THREE.Float32BufferAttribute([ -0.56, 0.04, 4.82, -0.56, 0.04, 2.18, 1.68, 0.04, 2.08, -0.56, 0.04, 4.82, 1.68, 0.04, 2.08, 1.08, 0.04, 3.35 ], 3)); sailGeometry.computeVertexNormals(); const sail = new THREE.Mesh(sailGeometry, sailMaterial); sail.castShadow = true; boat.add(sail); // Small fore triangle. const jibGeometry = new THREE.BufferGeometry(); jibGeometry.setAttribute("position", new THREE.Float32BufferAttribute([ -0.72, 0.02, 4.62, -2.0, 0.02, 0.72, 0.05, 0.02, 2.18 ], 3)); jibGeometry.computeVertexNormals(); boat.add(new THREE.Mesh(jibGeometry, sailMaterial)); // Water plane. const water = new THREE.Mesh( new THREE.PlaneGeometry(80, 80, 32, 32), new THREE.MeshStandardMaterial({ color: 0x3d8890, roughness: 0.75, metalness: 0.05, flatShading: true }) ); water.rotation.x = -Math.PI / 2; water.position.y = -0.75; water.receiveShadow = true; scene.add(water); const clock = new THREE.Clock(); function animate(): void { requestAnimationFrame(animate); const t = clock.getElapsedTime(); boat.position.y = Math.sin(t * 1.2) * 0.045; boat.rotation.z = Math.sin(t * 0.9) * 0.018; renderer.render(scene, camera); } animate(); addEventListener("resize", () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); });References
2- flowwweb/sailingsimulatordocs/architecture.md
Three.js-based sailing simulator architecture that explicitly plans for both hull and rigging (sail rendering approach), but it’s high-level guidance rather than procedural low-poly plank/mast-geometry implementation details.
- flowwweb/sailingsimulatordocs/research/saltwind-analysis.md
Good match to procedural sailing-boat geometry in Three.js (custom hull/deck/mast/rigging built from geometry), though it focuses more on sailing/trim logic than wooden low-poly hull planks details.
Request
Request payload
{ "query": "stylized low poly wooden sailing boat procedural geometry three.js hull planks mast rigging", "language": "typescript", "license_mode": "strict" }- flowwweb/sailingsimulatordocs/architecture.md
+6:38:59Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 75, "indexing_status": "indexed", "language": "javascript", "line_count": 48, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 75, "file_path": "src/geometries/TorusGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/TorusGeometry.js#L28-L75", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 } ], "start_line": 28, "status": "success", "total_lines": 161 }Request
Request payload
{ "end_line": 75, "file_path": "src/geometries/TorusGeometry.js", "package_name": "three", "registry": "npm", "start_line": 28, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 75, "indexing_status": "indexed", "language": "javascript", "line_count": 48, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 75, "file_path": "src/geometries/TorusGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/TorusGeometry.js#L28-L75", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 28 } ], "start_line": 28, "status": "success", "total_lines": 161 }, "title": null, "content": null }+6:39:00Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 1175, "indexing_status": "indexed", "language": "javascript", "line_count": 26, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1175, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1150-L1175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1150 } ], "start_line": 1150, "status": "success", "total_lines": 1480 }Request
Request payload
{ "end_line": 1175, "file_path": "src/core/BufferGeometry.js", "package_name": "three", "registry": "npm", "start_line": 1150, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 1175, "indexing_status": "indexed", "language": "javascript", "line_count": 26, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1175, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1150-L1175", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1150 } ], "start_line": 1150, "status": "success", "total_lines": 1480 }, "title": null, "content": null }+6:39:31Code GrepCode navigationthree“constructor( radius = 1, tube =”
constructor( radius = 1, tube =
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/geometries/TorusGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 34, "file_path": "src/geometries/TorusGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/TorusGeometry.js#L23-L34", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 23 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 3, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "GLOB", "value": "src/geometries/TorusGeometry.js" } ], "pattern": "constructor( radius = 1, tube = ", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/geometries/TorusGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 34, "file_path": "src/geometries/TorusGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/TorusGeometry.js#L23-L34", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 23 } ], "returned_matches": 1, "route_taken": "CONTENT_INDEX", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+6:43:11Get ExampleGenerated examplethree.js low poly character armor accessories procedural geometry faceted hard normals computeVertexNormals silhouette
three.js low poly character armor accessories procedural geometry faceted hard normals computeVertexNormals silhouette · javascript · strict
Procedural Faceted Low-Poly Shoulder Armor in Three.js
import * as THREE from 'three'; const scene = new THREE.Scene(); scene.background = new THREE.Color(0x20242c); const camera = new THREE.PerspectiveCamera(45, innerWidth / innerHeight, 0.1, 100); camera.position.set(3.6, 2.8, 5.5); camera.lookAt(0, 1.35, 0); const renderer = new THREE.WebGLRenderer({ antialias: true }); renderer.setPixelRatio(devicePixelRatio); renderer.setSize(innerWidth, innerHeight); document.body.style.margin = '0'; document.body.appendChild(renderer.domElement); scene.add(new THREE.HemisphereLight(0xbfd7ff, 0x18202a, 2.2)); const keyLight = new THREE.DirectionalLight(0xffffff, 3.5); keyLight.position.set(-3, 5, 4); scene.add(keyLight); function addTriangle(vertices, a, b, c) { vertices.push( a.x, a.y, a.z, b.x, b.y, b.z, c.x, c.y, c.z ); } // Creates a closed, angular plate from a 2D silhouette and gives it thickness. function extrudedArmorPlate(points, thickness) { const vertices = []; const frontZ = thickness / 2; const backZ = -frontZ; const front = points.map(([x, y]) => new THREE.Vector3(x, y, frontZ)); const back = points.map(([x, y]) => new THREE.Vector3(x, y, backZ)); // Non-indexed triangles deliberately keep every face's normal independent. for (let i = 1; i < front.length - 1; i++) { addTriangle(vertices, front[0], front[i], front[i + 1]); addTriangle(vertices, back[0], back[i + 1], back[i]); } for (let i = 0; i < points.length; i++) { const next = (i + 1) % points.length; addTriangle(vertices, front[i], back[i], back[next]); addTriangle(vertices, front[i], back[next], front[next]); } const geometry = new THREE.BufferGeometry(); geometry.setAttribute( 'position', new THREE.Float32BufferAttribute(vertices, 3) ); // Matches the standard BufferGeometry normal-generation workflow. geometry.computeVertexNormals(); geometry.computeBoundingSphere(); return geometry; } function createPauldron(side) { const silhouette = [ [0.00, 0.35], [0.32, 0.52], [0.78, 0.34], [1.02, 0.02], [0.92, -0.40], [0.58, -0.72], [0.20, -0.62], [0.00, -0.40] ]; const armorMaterial = new THREE.MeshStandardMaterial({ color: 0x536d91, roughness: 0.72, metalness: 0.35, flatShading: true, side: THREE.DoubleSide }); const pauldron = new THREE.Mesh( extrudedArmorPlate(silhouette, 0.30), armorMaterial ); pauldron.position.set(side * 0.62, 1.92, 0.02); pauldron.rotation.y = side * -0.16; pauldron.scale.x = side; // Raised center ridge emphasizes the silhouette and catches hard lighting. const ridge = new THREE.Mesh( extrudedArmorPlate([ [0.08, 0.30], [0.30, 0.38], [0.56, 0.20], [0.45, -0.44], [0.18, -0.50] ], 0.12), new THREE.MeshStandardMaterial({ color: 0x9b6f3c, roughness: 0.8, metalness: 0.15, flatShading: true, side: THREE.DoubleSide }) ); ridge.position.set(side * 0.62, 1.92, 0.20); ridge.rotation.y = side * -0.16; ridge.scale.x = side; const group = new THREE.Group(); group.add(pauldron, ridge); return group; } // Low-poly character base. const torso = new THREE.Mesh( new THREE.CylinderGeometry(0.72, 0.92, 1.65, 6), new THREE.MeshStandardMaterial({ color: 0x303b4c, roughness: 0.9, flatShading: true }) ); torso.position.y = 1.05; scene.add(torso); const head = new THREE.Mesh( new THREE.IcosahedronGeometry(0.48, 1), new THREE.MeshStandardMaterial({ color: 0x9d6e50, roughness: 1, flatShading: true }) ); head.position.y = 2.25; scene.add(head); scene.add(createPauldron(-1)); scene.add(createPauldron(1)); const ground = new THREE.Mesh( new THREE.CircleGeometry(5, 32), new THREE.MeshStandardMaterial({ color: 0x11151c, roughness: 1 }) ); ground.rotation.x = -Math.PI / 2; scene.add(ground); addEventListener('resize', () => { camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); renderer.setSize(innerWidth, innerHeight); }); function animate() { requestAnimationFrame(animate); scene.rotation.y += 0.003; renderer.render(scene, camera); } animate();References
4- aricooperdavis/wheal-pelldocs/CaveView/js/CaveView2Plugins.js
Contains three.js BufferGeometry implementation including computeVertexNormals and related normal-buffer setup; useful for faceted/hard-edge silhouette workflows, though it’s not specifically low-poly armor/geometry/silhouette code and appears to be bundled/partial three.js source.
- brentongunning/voodoo.jstools/externs/three.js
three.js externs define FlatShading and computeVertexNormals symbols (older three.js API surface), which can help wire faceted rendering; however it’s metadata/extern definitions, not procedural low-poly armor geometry or silhouette-specific logic.
- aricooperdavis/wheal-pelldocs/CaveView/js/workers/gltfWorker.js
Includes three.js-style `BufferGeometry` and `computeVertexNormals` logic in JavaScript (helpful for normal generation), though it’s a glTF worker/serialized code bundle rather than directly about low-poly faceted silhouette armor accessory geometry.
- aka-blackboots/three-curve-computeresource/three-curves-compute.js
Contains three.js `BufferGeometry` and an implementation of `computeVertexNormals` in JavaScript, which is directly relevant to producing faceted/hard-edge normals for low-poly silhouettes (though it’s not specifically about armor/procedural accessory geometry).
Request
Request payload
{ "query": "three.js low poly character armor accessories procedural geometry faceted hard normals computeVertexNormals silhouette", "language": "javascript", "license_mode": "strict" }- aricooperdavis/wheal-pelldocs/CaveView/js/CaveView2Plugins.js
+6:54:18Code GrepCode navigationthree“normalizeNormals() {”
normalizeNormals() {
pkg:npm:three@0.185.1Result summary
{ "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1109, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1093-L1109", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1093 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }Request
Request payload
{ "allow_unscoped": false, "case_sensitive": false, "context_lines_after": 8, "context_lines_before": 8, "exclude_doc_files": false, "exclude_test_files": false, "extensions": [], "include_hidden": false, "max_matches": 50, "max_matches_per_file": 20, "package_name": "three", "path_selectors": [ { "kind": "EXACT", "value": "src/core/BufferGeometry.js" } ], "pattern": "normalizeNormals() {", "pattern_type": "LITERAL", "registry": "npm", "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "files_too_large_skipped": 0, "matched_files": [ "src/core/BufferGeometry.js" ], "next_cursor_present": false, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 1109, "file_path": "src/core/BufferGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/core/BufferGeometry.js#L1093-L1109", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 1093 } ], "returned_matches": 1, "route_taken": "SINGLE_FILE", "status": "success", "total_matches": 1, "unique_files_matched": 1 }, "title": null, "content": null }+6:54:19Code ReadCode navigationthree
pkg:npm:three@0.185.1Result summary
{ "end_line": 140, "indexing_status": "indexed", "language": "javascript", "line_count": 37, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 140, "file_path": "src/geometries/LatheGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/LatheGeometry.js#L104-L140", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 104 } ], "start_line": 104, "status": "success", "total_lines": 230 }Request
Request payload
{ "end_line": 140, "file_path": "src/geometries/LatheGeometry.js", "package_name": "three", "registry": "npm", "start_line": 104, "version": "0.185.1", "wait_timeout_ms": 20000 }Response
Response payload
{ "summary": { "end_line": 140, "indexing_status": "indexed", "language": "javascript", "line_count": 37, "outcome": "result_returned", "result_pointers": [ { "commit_sha": "2431a09f46f34c560bc8e44b33be0e567723d5b9", "end_line": 140, "file_path": "src/geometries/LatheGeometry.js", "kind": "code", "permalink": "https://github.com/mrdoob/three.js/blob/2431a09f46f34c560bc8e44b33be0e567723d5b9/src/geometries/LatheGeometry.js#L104-L140", "repo_url": "https://github.com/mrdoob/three.js", "start_line": 104 } ], "start_line": 104, "status": "success", "total_lines": 230 }, "title": null, "content": null }