ai21.net
言語

運河と風車の 3D シーンモデル比較

運河と風車の 3D シーンモデル比較 — 1

プロンプト

Build "Lock Jelly." — a single self-contained HTML file (WebGPU + WGSL, no libraries, no network, works from file://), part of a "Material Studies" series of jelly dioramas. If WebGPU is missing or the adapter fails, show a clean fallback card instead of the scene.

CONCEPT
A square block of clear coloured jelly (about 5.2 × 5.2 units, ~2 units high) holding a little English canal scene. The canal runs along the FRONT edge of the block, so the block's front face cuts the water lengthways: you see the lock chamber in cross-section, the water inside it rising and falling between the gates, fish swimming, the boat's hull below the waterline. All cut faces show candy-coloured soil strata; under the pounds a blue-grey puddle-clay lining, under the chamber a brick invert on a concrete bed, under the fields brown earth and turf.

LAYOUT (left to right along the front)
- Upper pound on the left at the higher level, opening into a round winding hole (a bay for turning boats); near the lock it narrows between brick wing walls.
- The lock chamber in the middle: brick walls with dressed-stone quoins and coping, a slimy band between the two water levels and weed below, an iron ladder, a gauge board, a stone cill under the top gate, recesses that the open gates fold into.
- Below the bottom gate a short walled tail, then the lower pound bends away from the front face, runs under a humpback brick bridge into a basin with a willow-covered island, lily pads in its corners and a sunken bicycle on the bed.
- The ground steps down from an upper terrace to a lower one along a grassy bank.
- Behind the lock: stone setts around the chamber, bollards, a gravel towpath, a lane, the keeper's whitewashed cottage with a slate roof, green door, picket-fence garden full of flowers and washing flapping on a line, a gas lamp, a bench, a white windmill with turning lattice sails, oaks, willows, poplars, a hedge, sheep, reeds on the soft banks.

WATER
- Linear shallow-water waves on a staggered grid (~168²) with a little surface tension, so short ripples are springy like jelly; damping and firmness are adjustable.
- Three separate bodies of water — upper pound, chamber, lower pound — each with its own rest level. Faces between bodies stay shut unless the gate between them is open and the levels are equal. The chamber's level is moved bodily when paddles are drawn (Torricelli-style flow), with boils, white water and a dimple at the intake.
- Rendering: refraction of the scene behind, flavour-coloured absorption, sun caustics on the bed, soft light shafts, foam (wakes, paddle churn), a meniscus line on the cut faces. Split the surface mesh along the gate lines so the step in level at a shut gate is a clean wall hidden by the gate leaf, not a ramp.
- The block itself can be tipped by dragging its side; the jelly shears and wobbles, the water sloshes, and it settles back.

THE LOCK AND THE KEEPER
- Two single-leaf timber gates (planks, rails, diagonal brace, iron straps, a walkway with a handrail), each with a white balance beam with black bands. Ground-paddle pedestals with toothed racks that rise when wound.
- An articulated lock keeper (flat cap, navy jumper, cords, windlass in hand; torso, arms, thighs and shins as separate parts). He walks with a proper gait, plans his route around the bench, pedestals, bollards and any beam lying across his way (going round the beam's end), leans his back on a beam and walks it round backwards to swing a gate, winds the windlass with his arm circling the spindle, and sits on his bench between jobs. He sets off for the gate as the boat comes in.
- The cycle: the boat lies in the full chamber → keeper shuts the top gate → winds up the bottom paddles → the chamber empties into the tail with white water → winds them down → opens the bottom gate → the boat leaves, runs the tail, swings round the bend, ducks under the bridge, goes round the island and comes back into the chamber bow first → shut bottom gate → round to the top paddles → chamber fills with boils → open the top gate → the boat goes up the pound, turns in the winding hole and comes back. Repeat forever. A gate may only open when the levels match.

BOATS
- A traditional narrowboat "Wobble": black lofted hull, a green cabin with red lining-out, brass portholes, a cratch board and cover at the bow, a chimney with brass bands (puffing smoke), a painted Buckby can, plank and pole on the roof, rope fenders, a headlamp, a brass swan-neck tiller and a steerer in a red jumper. It follows smooth filleted routes (check the stern never swings out through the block's face), slows near the gates, heaves, pitches and rolls on the local surface, and hands its displaced volume back to the water so it makes bow waves and wakes.
- Three moored narrowboats in the basin in different liveries with flowerpots on the roofs and one ginger cat, tied to bank pins with stretchy mooring lines.

LIFE
- Roach, perch and bream as boids that stay in their own body of water (they can only move between pound and chamber while a gate is open), under the surface and hulls, off the bed, scattering from the boat and splashes.
- Mallards (drakes, ducks) and a duck with four ducklings that follow exactly along her trail; a pair of mute swans in the basin. They paddle the surface, ride the chamber down and up, upend now and then, get out of the boat's way and come for bread.
- A grey heron that wades in the shallows or stands on a moored boat's roof, stabs at fish (sometimes catching one), and flaps off somewhere quieter when the boat passes or someone toots.
- Chimney smoke from the boat and the cottage.

UI (editorial, like a print magazine)
- Top-left: small caps eyebrow "MATERIAL STUDIES", a huge italic serif title "Lock / Jelly.", a short subtitle. Top-right: a status pill "WebGPU · Live / Paused / Unavailable".
- Right: a frosted-glass control panel (a bottom sheet on mobile) with: buttons Hurry (speeds the keeper, paddles and boat), Toot (horn; also Space), Throw bread, Rubber duck (drops a yellow rubber duck that floats upright, can be picked up and thrown, rides the lock, is stopped by gates and shoved by boats); a liveliness meter; tallies Trips · Lockfuls · Fed; a status line "Wobble — Emptying the lock 62%" telling the story step by step; three flavours Greengage, Elderflower, Blackcurrant (change the water colour/absorption and strata); sliders Firmness, Wave damping, Paddle speed; Reset, Pause, Sound on/off, View.
- Bottom-left: "How to play — Throw bread. Toot the horn. Hurry the keeper." with a small line of instructions.
- Interaction: drag across the water to make waves, drag the block's side to tip it, pick up and throw rubber ducks, drag empty space to orbit, scroll/pinch to zoom; touch works.
- Soft studio lighting on a warm paper backdrop with the block's tinted, caustic-flecked shadow; WebAudio sounds: the boat's horn, the gate thudding shut, a creak, the windlass ratchet, and the rush of water that swells with the flow.

QUALITY
Keep it smooth (fixed-step physics, cheap per frame), no console errors, no page scroll, works at phone width. Test it headlessly: a full round trip happens, levels go exactly from upper to lower and back, no gate opens across a step, the keeper never walks into the water or through obstacles, the boat never touches a gate leaf, and every button works.

日本語訳

「Lock Jelly.」を制作してください。— 単一の自己完結型 HTML ファイル(WebGPU + WGSL、ライブラリなし、ネットワークなし、file:// から動作)で、「Material Studies」シリーズのゼリー・ジオラマのひとつとなる作品です。WebGPU が存在しない、またはアダプターが失敗した場合は、シーンではなくクリーンなフォールバックカードを表示してください。

コンセプト
透明な色付きゼリーの四角いブロック(約 5.2 × 5.2 ユニット、高さ約 2 ユニット)の中に、小さなイギリスの運河の風景が収まっています。運河はブロックの手前(FRONT)の縁に沿って走っているため、ブロックの前面が水面を縦方向に切り取ります。ロックの閘室が断面として見え、その中の水がゲートの間で上下し、魚が泳ぎ、喫水線の下にボートの船体が見えます。すべての切断面にはキャンディ色の土の地層が現れます。ポンドの下には青灰色のパドルクレイの裏打ち、閘室の下にはコンクリート基礎の上のレンガのインバート、畑の下には茶色の土と芝です。

レイアウト(前面に沿って左から右へ)
- 左側の高い水位にある上部ポンドは、円形のワインディングホール(船を転回するための入り江)へと開いています。ロックの近くではレンガの翼壁の間で狭くなります。
- 中央の閘室:化粧石の隅石と笠石を備えたレンガの壁、2 つの水位の間のぬめりの帯とその下の水草、鉄のはしご、水位標板、上流側ゲートの下の石の敷居、開いたゲートが折り込まれる窪み。
- 下流側ゲートの下には短い壁付きのテイルがあり、その後、下部ポンドは前面から離れるように曲がり、レンガの太鼓橋の下をくぐって、ヤナギに覆われた島、角に睡蓮の葉が浮かび、水底に沈んだ自転車がある池へと続きます。
- 地面は草の土手に沿って、上のテラスから下のテラスへと段状に下がっています。
- ロックの後方:閘室の周囲の石畳、ボラード、砂利の曳舟道、小道、スレート屋根と緑の扉を持つ白塗りの管理人の小屋、花にあふれ、物干しロープで洗濯物が揺れる白い柵の庭、ガス灯、ベンチ、格子の帆が回転する白い風車、オーク、ヤナギ、ポプラ、生け垣、羊、やわらかな土手の葦。

水
- スタッガード格子(約 168²)上の線形浅水波に少し表面張力を加え、短い波紋がゼリーのように弾むようにします。減衰と固さは調整可能です。
- 上部ポンド、閘室、下部ポンドという 3 つの独立した水域があり、それぞれに独自の静止水位があります。水域の間の境は、その間のゲートが開いていて水位が等しい場合を除き、閉じたままです。パドルを引くと閘室の水位は全体として移動し(トリチェリ式の流れ)、取水口には沸き上がり、白波、くぼみが生じます。
- レンダリング:背後のシーンの屈折、フレーバー色の吸収、水底の太陽コースティクス、やわらかな光の筋、泡(航跡、パドルの攪拌)、切断面のメニスカス線。水面メッシュをゲート線に沿って分割し、閉じたゲートでの水位差がスロープではなく、ゲートリーフに隠されたきれいな壁になるようにします。
- ブロック自体は側面をドラッグして傾けられます。ゼリーはせん断されて揺れ、水はちゃぷんと揺れ、やがて元の状態に落ち着きます。

ロックと管理人
- 2 枚の片開き木製ゲート(板、横桟、斜めの筋交い、鉄の帯金、手すり付きの歩廊)があり、それぞれに黒い帯の入った白いバランスビームが付いています。歯付きラックを備えた地上パドルの台座は、巻くと上に上がります。
- 関節で動くロックの管理人(フラットキャップ、ネイビーのジャンパー、コーデュロイのズボン、手にウィンドラス。胴体、腕、太もも、すねは別パーツ)。彼は正しい歩容で歩き、ベンチ、台座、ボラード、進路を横切るビームを避けて経路を計画し(ビームの端を回り込む)、ビームに背中をもたせかけて後ろ向きに歩いてゲートを旋回させ、腕をスピンドルの周りに回してウィンドラスを巻き、仕事の合間にはベンチに座ります。ボートが入ってくるとゲートへ向かって出発します。
- サイクル:ボートが満水の閘室にいる → 管理人が上流側ゲートを閉じる → 下流側パドルを巻き上げる → 閘室の水が白波とともにテイルへ流れ出る → パドルを巻き下げる → 下流側ゲートを開ける → ボートが出て、テイルを進み、曲がり角を回り、橋の下をくぐり、島を回って船首から閘室に戻る → 下流側ゲートを閉じる → 上流側パドルのところへ回る → 閘室が沸き上がりながら満水になる → 上流側ゲートを開ける → ボートはポンドを進み、ワインディングホールで向きを変えて戻ってくる。これを永遠に繰り返します。ゲートは水位が一致したときにのみ開けられます。

ボート
- 伝統的なナローボート「Wobble」:黒いロフト造りの船体、赤いラインの入った緑のキャビン、真ちゅうの舷窓、船首のクラッチボードとカバー、真ちゅうの帯が付いた煙突(煙を吐く)、塗装されたバックビー缶、屋根の上の板とポール、ロープのフェンダー、前照灯、真ちゅうの白鳥の首形チラー、赤いジャンパーを着た操舵手。滑らかなフィレット処理された経路をたどり(船尾がブロックの面からはみ出して振れないことを確認)、ゲートの近くで減速し、局所的な水面で上下・縦揺れ・横揺れし、押しのけた体積を水に戻して船首波と航跡を生みます。
- 池には 3 隻の係留されたナローボートが異なる塗装で並び、屋根には植木鉢と一匹の茶トラ猫がいて、伸縮する係留ロープで岸の杭につながれています。

生き物
- ローチ、パーチ、ブリームをボイドとして表現し、それぞれ自分の水域にとどまります(ゲートが開いている間だけポンドと閘室の間を移動できます)。水面と船体の下、水底から離れた位置を泳ぎ、ボートや水しぶきから散らばります。
- マガモ(雄と雌)と、4 羽の雛を連れてその跡を正確にたどる雌ガモ、池にはコブハクチョウのつがい。水面を漕ぎ、閘室とともに下りたり上がったりし、時折逆立ちし、ボートの進路をよけ、パンを求めて近づいてきます。
- 浅瀬を歩くか係留ボートの屋根に立つアオサギが、魚を突き(時には捕まえ)、ボートが通り過ぎたり誰かがホーンを鳴らしたりすると、羽ばたいて静かな場所へ飛び去ります。
- ボートと小屋の煙突から立ち上る煙。

UI(印刷雑誌のようなエディトリアル)
- 左上:スモールキャップスのアイブロウ「MATERIAL STUDIES」、大きなイタリック体セリフのタイトル「Lock / Jelly.」、短いサブタイトル。右上:ステータスピル「WebGPU · Live / Paused / Unavailable」。
- 右側:すりガラスのコントロールパネル(モバイルではボトムシート)。ボタン Hurry(管理人、パドル、ボートを速くする)、Toot(ホーン。Space キーでも可)、Throw bread、Rubber duck(直立して浮かぶ黄色いゴム製アヒルを落とし、拾って投げられ、ロックに乗り、ゲートに阻まれ、ボートに押される);活気メーター;カウント Trips · Lockfuls · Fed;ストーリーを段階的に伝えるステータス行「Wobble — Emptying the lock 62%」;3 つのフレーバー Greengage、Elderflower、Blackcurrant(水の色/吸収と地層を変える);スライダー Firmness、Wave damping、Paddle speed;Reset、Pause、Sound on/off、View。
- 左下:「How to play — Throw bread. Toot the horn. Hurry the keeper.」と、小さな一行の操作説明。
- 操作:水面をドラッグして波を起こし、ブロックの側面をドラッグして傾け、ゴム製アヒルを拾って投げ、何もない空間をドラッグして視点を回転させ、スクロール/ピンチでズーム;タッチ操作にも対応。
- 暖かな紙の背景にやわらかなスタジオ照明、ブロックの色付きでコースティクスがまだらに映る影;WebAudio のサウンド:ボートのホーン、ゲートが閉まる鈍い音、きしみ、ウィンドラスのラチェット、流れに合わせて大きくなる水の音。

品質
スムーズに動作させ(固定ステップの物理、1 フレームあたりの負荷を軽く)、コンソールエラーなし、ページスクロールなし、スマートフォンの幅でも動作するようにしてください。ヘッドレスでテストしてください:完全な往復が行われ、水位は正確に上流から下流へ、そして戻り、段差を越えてゲートが開くことはなく、管理人は水に入ったり障害物を通り抜けたりせず、ボートはゲートリーフに触れず、すべてのボタンが機能すること。

出典

原作者
vib3coded
公開日
2026-10-14(由推文 ID 反解)
原典
元の投稿を見る ↗
収録元
zhuyansen/awesome-opus-5.5-video · 2110329593441796383 · ライセンス未表明