ThreeJS中创建文字的几种方法_梵醉_前端开发者

1. DOM + css

传统html5的文字实现,用于添加描述性叠加文字的方法。一般使用绝对定位,并且保证z-index够大,用于显示在3D场景之上。

优点:
与CSS3D效果一致

优点:优点:

缺点:
3d效果和运动还原不好

缺点:缺点:

2. THREE.CanvasTexture

在canvas中绘制文字,然后使用CanvasTexture作为纹理进行贴图
例子

例子

优点:
文字效果较为丰富,方便绘制。

优点:优点:

缺点:
一旦生成,分辨率固定,放大会产生失真。

缺点:缺点:

3. THREE.TextGeometry / THREE.TextBufferGeometry

使用原生的TextGeometry进行渲染生成。例子

例子

优点:
效果好,可与场景进行同步

优点:优点:

缺点:
单个字体的颜色和动画制作较为复杂,且耗费资源较大

缺点:缺点:

4. 3d字体模型

使用3d制作的字体模型,使用threejs进行加载控制。例子

例子

优点:
效果好,可定制效果

优点:优点:

缺点:
加载模型较为耗费资源,字体内容无法自定义

缺点:缺点:

5. 位图字体

通过BmpFont生成文字模板,然后进行加载显示。BMFonts (位图字体) 可以将字形批处理为单个BufferGeometry。BMFont的渲染支持自动换行、字母间距、字句调整、signed distance fields with standard derivatives、multi-channel signed distance fields、多纹理字体等特性。three-bmfont-text

three-bmfont-text

优点:
可自定义字体和效果

优点:优点:

缺点:
加载模型较为耗费资源,字体内容无法自定义

缺点:缺点:

6. Three.Sprite

Sprite加载图像纹理

优点:
永远面向相机的平面,适合作为标签显示

优点:优点:

缺点:
存在canvasTexture的问题

缺点:缺点:

» 本文来自:前端开发者 » 《ThreeJS中创建文字的几种方法_梵醉_前端开发者》
» 本文链接地址:https://www.rokub.com/73821.html
» 您也可以订阅本站:https://www.rokub.com
赞(0)
64K

评论 抢沙发

评论前必须登录!