中国科技大学《计算机图形学》2024年春夏学期课程项目展示 |
|
项目4:多视角三维重建与
USTC Genshin Impact
方志通(PB21081567)1
袁心瀚(PB21051055)1
王曹励文(PB21010479)1
1数学科学院2021级
指导老师:刘利刚
|
|
图 1:
进入游戏场景图
图 2: USTC主场景图
图 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中的一个插件进行操作的,放入的这个人是按照组员王曹励文的形象设计的。
|
致谢:
|
|
返回项目主页 |