MCPcopy Create free account
hub / github.com/Bloom-Engine/engine / setupWater

Function setupWater

examples/renderer-test/main.ts:367–393  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

365// caustics, foam, and volumetric fog when those land.
366
367function setupWater(): void {
368 const cz = 25.0;
369
370 // Water plane
371 const waterNode = createSceneNode();
372 const wv = makePlaneVertices(30, 20);
373 const wi = makePlaneIndices();
374 updateSceneNodeGeometry(waterNode, wv, wi);
375 const wm = mat4Translate(mat4Identity(), { x: 0, y: 0.2, z: cz });
376 setSceneNodeTransform(waterNode, wm);
377 setSceneNodeWaterMaterial(waterNode, 0.15, 1.5, 0.1, 0.3, 0.5, 0.6);
378 setSceneNodeReceiveShadow(waterNode, true);
379
380 // Rocks / objects sticking out of water
381 placeSphere(3, 0.8, cz - 3, 1.5, 0.45, 0.42, 0.4, 0.8, 0.0);
382 placeSphere(-4, 0.5, cz + 2, 1.2, 0.5, 0.45, 0.4, 0.9, 0.0);
383 placeSphere(6, 1.2, cz + 4, 2.0, 0.4, 0.38, 0.35, 0.7, 0.0);
384
385 // Pillar rising from water
386 placeCube(0, 2, cz, 1, 4, 1, 0.55, 0.5, 0.48, 0.4, 0.0);
387
388 // Metallic sphere floating above (for reflection testing)
389 placeSphere(0, 4.5, cz, 1.0, 0.95, 0.93, 0.88, 0.05, 1.0);
390
391 // Shore / ground under water extending outward
392 placeCube(0, -0.5, cz - 12, 40, 0.1, 8, 0.6, 0.55, 0.45, 0.8, 0.0);
393}
394
395// ============================================================
396// Zone 5: Geometry Density (centered at x=25, z=-25)

Callers 1

main.tsFile · 0.85

Calls 11

createSceneNodeFunction · 0.90
updateSceneNodeGeometryFunction · 0.90
mat4TranslateFunction · 0.90
mat4IdentityFunction · 0.90
setSceneNodeTransformFunction · 0.90
makePlaneVerticesFunction · 0.85
makePlaneIndicesFunction · 0.85
placeSphereFunction · 0.85
placeCubeFunction · 0.85

Tested by

no test coverage detected