中国科技大学《计算机图形学》2024年春夏学期课程项目展示
 

项目4:多视角三维重建与

USTC Genshin Impact

方志通(PB21081567)1

袁心瀚(PB21051055)1

王曹励文(PB21010479)1

1数学科学院2021级

指导老师:刘利刚



Figure 1

图 1: 进入游戏场景图

Figure 1

图 2: USTC主场景图

Figure 1

图 3: 卡牌游戏示例

 

项目简介:

本项目首先完成了多视角重建的SFM_MVS方法,利用给定的有序图像序列重建三维物体的点云和网格,我们进行了多组数据的测试,其中包含我们利用视频抽帧制作的数据,并将我们的结果与其余集成软件或其余方法进行了对比。

本项目其次完成了USTC Genshin Impact开放世界类游戏,实现了比较美观的进入场景、利用航拍数据生成的USTC校园模型主场景,并且在其中完成了仿照杀戮尖塔的卡牌游戏。玩家将漫步于拥有昼夜系统的USTC世界中,回忆计算数学的培养历程,并找寻“计算机图形学”的真相。主要工具:Unity

 

项目视频:


 

下载专区:

  • 视频链接:下载    提取码:hl3i

  • 报告链接:下载    提取码:54c2

  • 项目文件:下载    提取码:gqdj

项目分工:

  • 方志通:基础UI的创建、MATLAB框架加速方法的修改、网格重建;传送门视图的创建和实时更新、传送效果的实现,铃芽之旅与科大场景合并时音乐、环境等的衔接,场景中一些触发器的搭建,第一人称移动和飞行以及拍照功能的完善,开头视频的插入和基本UI设置。

  • 袁心瀚:SFM与MVS算法的设计与部分实现、模型设计部分实验报告的撰写。:USTC CARD卡牌游戏策划,卡牌卡面美术设计,卡牌游戏地图与战斗UI搭建与脚本控制,卡牌交互音效的搭载;游戏内场景跳转逻辑构建,跨场景交互与信息传递的实现;三维粒子特效构建;

  • 王曹励文:MATLAB框架的部分修改、MATLAB框架、Colmap、Context Capture、Neus代码的配置、运行与结果呈现;科大东区模型的建立与完善,场景的渲染,昼夜变化、灯光、天空效果的实现,第一人称飞行的实现;进入游戏铃芽之旅场景的搭建与渲染,天空变化、音乐的实现,第一人称漫游与弹跳重力效果的实现;场景拍照功能的实现;人物动画的发掘;开头视频的制作与剪辑。

感想与不足:

  • 对于我们完成的三维重建任务,对于相机的建模过于理想。事实上相机是一个较为复杂的光学模型,我们仅仅是将其简单地定义为小孔成像模型,而忽略了可能的畸变。这可能会影响相机的内参数。我们的模型多次采用优化的手段,尤其是非线性优化,对于具体的非线性优化问题,可能会有更稳定,结果更好的数值解决方案,这一点我们并没有进行探究;我们的模型在重建网格时,多数采用了调库的手段,但是发现重建的效果并没有非常理想,可能由于环境噪声过多,在重建网格前,应该可以尝试对现有的稠密点云模型进行噪声处理。

  • 对于开放类世界游戏制作任务,开场的动画本来打算用blender对于场景渲染生成,但是时间太长了,因此直接采用了一段素材。

  • 然后确实仍然有一些当初的设想没有完成,例如2D和3D的打斗小游戏,以及与人物进行交互,或者更完善的故事体系,确实时间比较紧张了。

  • 除去开场动画之外,我还为游戏创建了开始菜单和暂停菜单(虽然是同一个),这看似简单的功能却在周日晚上耗费了我们的不少心神,我们一开始是想要创建鼠标控制的基础UI的,结果鼠标因为莫名的原因在游戏内隐藏了,让它显现之后点击按钮也没有效果,迫于时间原因我们通过PS创建了一张图片作为菜单,通过按键控制;然后在测试过程中,发现从卡牌游戏切换到主场景时时间发生了暂停,同时开场动画又被重新播放了,又调了开场动画的设置和跳转的实现;而在几次测试中,我们又发现刚进入游戏时,并不会一进去就播放开场动画,而是短暂地显示主场景中的景色……我们在添加简单功能后陷入了调Bug->发现新Bug->调Bug的痛苦循环。本来想着是一晚上做一个菜单,优势在我,不料是本组成员所到之处,Bug竭诚欢迎,差点沦为了我们的葬身之地,各种曲折,难以论说。

  • 我们也尝试过在场景中加入人物角色,进行交互,类似于一个凯瑟琳的模式,但是最终因为时间紧张没办法设计的很完善就取消了,最终其实在USTC中加入了一个人,这个人是用asset中的一个插件进行操作的,放入的这个人是按照组员王曹励文的形象设计的。

致谢:

  • 我们要感谢张举勇老师提供的中科大东区校园航拍数据集以及USTC3DV实验室提供的服务器,本文涉及的某些代码运算量是极大的,在我们自己的笔记本电脑上需要消耗的时间过长;如果没有张老师提供的航拍数据集,可能自己拍摄需要不短的时间,且如何进行正确地拍摄也会消耗一部分精力;本文的建模运算量也是极大的,在3060算力的电脑下运行,需要一天外加17h的时间。
  • 我们还要感谢刘老师开设的这门计算机图形学课程,以及三位助教的辛勤付出。本门课程为我们打开了图形学的大门,让我们领略了丰富多彩的世界,甚至与当前世界的“运作”息息相关。这也是我们不止于实现一个三维重建的理论建模的原因,图形学远比“理论”丰富多彩。

 





返回项目主页

 


Copyright © 2024 GCL , USTC