CSS 元素
CSS2D / CSS3D
你将学到什么
- CSS2DObject — DOM 始终面向相机(billboard 标签)
- CSS3DObject — DOM 参与 3D 变换(可旋转进场景)
- 三渲染器同帧:
WebGLRenderer+css2DRender+css3DRender
效果说明
5 组标签沿 Z / Y 排列:2D 标签 平贴屏幕方向,3D 标签 缩小后立在场景中,可看出透视差异。
核心概念
js
// 每帧必须三个都 render
renderer.render(scene, camera);
css3DRender.render(scene, camera);
css2DRender.render(scene, camera);CSS 层叠在 WebGL canvas 之上,通过 position:relative; top:-height 与 canvas 对齐。pointerEvents: 'none' 避免挡住 WebGL 操作(2D 标签可单独 auto 接收点击)。
对比 screenCoord 手算投影,本方案由引擎处理矩阵。
小结
基础案例 · Three.js · 22/35
