YL

INTERACTION · 单文件 HTML

Raycaster 点击拾取Raycaster mesh picking

鼠标点击用 Raycaster 命中 mesh,高亮或弹出信息。

旗舰完整演示

可交互场景(拖拽旋转;部分演示支持键盘)。下方提示词用于让 Agent 生成同级成品。

预期产出 · Returns

单 HTML:点击 mesh 变色或显示 name 标签;miss 时恢复。

适合用在哪

数字孪生点位、展厅展品、地图标注等需要「点选物体」的交互。

容易踩的坑

  • OrbitControls 拖拽会误触发 click,需移动阈值判断。

提示词 · Prompt

单文件 HTML + Three.js: 1) 场景内随机放置 8 个不同颜色的 Box 或 Sphere,每个 userData.label 不同; 2) 使用 Raycaster + 归一化设备坐标处理 pointerdown; 3) 命中时:被点 mesh emissive 高亮,页面固定 div 显示 label;未命中清空高亮; 4) 同时使用 OrbitControls,注意 pointer 事件不要与拖拽冲突(可用 click 阈值区分); 5) 中文注释解释 NDC 计算与 intersectObjects 顺序。 交付完整 HTML。
Single HTML: Raycaster picking on click, emissive highlight, label overlay, OrbitControls without drag/click conflict.

相关提示词

标签