代码改变世界

WebGL学习笔记(十四):一些零碎的记录

2019-09-06 12:15 阿诚de窝 阅读(...) 评论(...) 编辑 收藏

HUD和Billboard

这两个名词都指向同一种东西,即始终面向摄像机的面片,该技术在游戏中大量使用,比如UI的绘制、模型头顶的名称和血条等等都需要使用到。

交换缓冲区

在PC上使用的OpenGL开发时,会存在两个缓冲,前台缓冲和后台缓冲,其中前台缓冲用来显示屏幕上的图像,后台缓冲则是用来绘制的,即后台缓冲先绘制好,然后后台缓冲变为前台缓冲进行显示,此时之前的前台缓冲变成了后台缓冲,等待下次的绘制操作;之所以这么麻烦,是因为直接在前台缓冲绘制时,会出现闪烁的问题;

而在WebGL中,则不需要双缓冲来避免绘制的闪烁问题,我们可以简单的理解为WebGL的底层中已经帮我们处理过这个问题了,直接在前台缓冲绘制即可。

左手坐标系还是右手坐标系

大部分的3D编辑器和引擎采用的都是右手坐标系,右手坐标系使用得比较多,但并不是必须使用右手坐标系,下面我们看看常见的编辑器和引擎选择的坐标系:

编辑器

  • Blender:右手坐标系;
  • 3D Max:右手坐标系;
  • Maya:右手坐标系;

引擎

  • Unity 3D:左手坐标系;
  • Unreal Engine:左手坐标系;

我们发现流行的引擎和编辑器使用的坐标系是不一致的,所以编辑器导出模型时需要转换一下坐标系。