Photogrammetry在游戏中的应用
前言:
04年开始学习三维动画相关的知识,并接触了早期的次世代游戏制作。
07年开始三维美术师的职业生涯。
也正是由于日常三维模型制作的需求,使用了各种三维制作软件。
机缘巧合,第一次接触Photogrammetry这种技术是2012年,当时使用了Autodesk的123D。用当时的手机拍摄了中式茶杯的一些相片,在上传之后生成一个粗略的三维模型。当时觉得特神奇,虽然不知道是什么实现的。
时间推移到2014年,由于电影项目的需求,第一次接触Artec Eva,为制作previs,拿到了角色人模的三维扫描数据。
那时候开始在业余时间学习Agisoft Photoscan,现在改名叫Agisoft Metashape的软件学习和使用,差不多将Photogrammetry在模型制作中能使用到的情况都测试了一遍。
最近很有幸,重回一线为一些AAA级游戏提供TA相关的技术支持。也是更加深切地在游戏中使用这一技术,并通过项目优化流程与制作效果。
---------------------接下来是技术分享---------------------
首先,还是要介绍一些Photogrammerty是什么?
其实Photogrammetry一般翻译为摄影测量,是一门科学技术。
但是,我要提的是Photogrammetry在游戏中的应用,翻译成照相制图法会更加准确。
这是制作流程决定的,
照 光照下拍摄(避免过曝高光区,避免光比强烈形成的阴影区)
相 数字相片(Raw格式,更准确的颜色供矫正,确切的镜头参数供矫正)
制 软件转制(软件计算,联机计算,按流程自动计算)
图 图像数据(三维点云,三维网格,点着色,投射贴图纹理)
法 科学方法 (根据需求,定制方案)
其次,设备?到底要什么设备?很贵吗?
这是我网上发布第一个扫描全流程教程收到冷遇之后,得到的反馈:我们网站的用户大都对这个技术需要用到设备表示疑问。大多数人觉得,这个太高端了,肯定需要上百万的设备来做扫描,因为我们看到太多视效大片的主角有3D扫描虚拟替身。
之所以,我会对这项技术的感兴趣,也是乐观的认为,以后可以更加方便采集图像,因为智能手机行业的进步,现在手机的拍摄能力已经非常强了。现在的普通手机都能拍摄出比我当时测试123D时用的数码相机更好的图像。
那到底需要什么样子的设备呢?在回答这个问题之前,要考虑的是你需要拍摄什么样的被摄物体,也就是你到底要扫个啥?
我简单归类几种扫描对象:
静态对象(可以环拍 不能环拍 不透明 很透明 有反光 无反光)
动态对象
作为入门,用手机就能拍摄的是可以环拍、不透明、无反光的物体。
但绝对不是拿个手机随便拍,由于算法的原因,去除被摄物体以外的背景是很关键的一步操作,这样可以减少软件对于相片特征点识别的计算范围,从而有效地计算出空间点云。
要注意的是:
光照,由于环境遮蔽地存在,物体或多或少会被环境光照影响,所以在相片中产生一些物体上光照地偏差,或暗或亮,最好能避免。
颜色,摄影里常说地颜色还原,也是因为环境地影响,使得相片地颜色出现色调上地变化,这也是需要修正地。
(当然,只是想试试流程,尽管拍,大不了,算出来稀烂嘛…跑个流程还是可以地。)
以上两点会对应CG里常用的两个技术,IBL和HDRI,当然还涉及另外一个技术De-Lighting。