加入收藏 | 设为首页 | 会员中心 | 我要投稿 二游网_345游戏网 (https://www.345youxi.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 游戏资讯 > 国外资讯 > 正文

《闪耀暖暖》进化之旅 如何实现从2D到3D的演变?

发布时间:2019-05-20 01:28:24 所属栏目:国外资讯 来源:新浪游戏
导读:副标题#e# 导语:暖暖系列,对于国内玩家而言,十分熟悉。在《闪耀暖暖》之前,暖暖系列都是基于2D技术所开发,而《闪耀暖暖》,作为暖暖系列的第四代产品,却跳出了以往的做法,以一款3D手游呈现在玩家面前。无疑,建立在3D技术之上的《闪耀暖暖》为玩家呈

导语:针对这个问题,团队制定了一套工作流来进行标准化,首先是色块填充构成底色,平铺布纹,接下来印花,最后是风格化处理。对于复杂的服装,可以灵活变通,实现精度的最大化。 对于一些用贴图也达不到预期精度,团队会

  针对这个问题,团队制定了一套工作流来进行标准化,首先是色块填充构成底色,平铺布纹,接下来印花,最后是风格化处理。对于复杂的服装,可以灵活变通,实现精度的最大化。

《闪耀暖暖》进化之旅 如何实现从2D到3D的演变?

  对于一些用贴图也达不到预期精度,团队会通过程序化方式进行细节补充,比如珍珠和宝石等。

  2,关于光照系统,由三部分组成,预烘焙的环境光、主灯以及轮廓光。

  团队希望有更丰富的光照变化,单LightProbe的效果太单调,没有场景,只能烘焙一个预设的Cubemap。解决方法是沿竖直方向增加LightProbe采样点,让美术增加点光源和方向光作为额外光源,将其直接关照和Cubemap一起合并到环境SH,运行时根据世界坐标的高度在vs中进行插值计算环境光。

  轮廓光方面,可以强调角色轮廓,增强体积感。

  在使用轮廓光的时候,很多衣服存在漏光的问题,这是因为轮廓光没有ShadowMap计算。注意到漏光区域主要是局部形体,可以对Mesh静态结构进行预计算。在模型导入在T-pose下后计算网格每个顶点的遮挡信息。对于每个顶点,在其球面上发射若干条阴影光线,进行碰撞测试。对于每条阴影光线,将其转化到对应顶点的切空间,并将阴影测试的结果累计入2阶SH中。最终结果是4个浮点数,可以把结果存到顶点色中。运行时把轮廓光转换到切空间采样SH进行遮挡判断。

《闪耀暖暖》进化之旅 如何实现从2D到3D的演变?

  3,阴影处理。由于Unity5的阴影不支持半透明物件投影和受影的,团队自定义了shadow pass。同时根据相机与人物的关系可以提升ShadowMap的利用率。把人物的包围体按竖直方向细分,根据相机和每个小段的相交结果,调整的投影矩阵。

  角色的面部是一个重点关注区域,头发尤其是刘海处的投影如果用不透明方式处理会显得过于生硬。处理方式是使用Screendoor Depth,每4×4像素为一个tile,每像素根据透明度值来顺序丢弃写深度操作。可以看到最后得到的ShadowMap,头发末端有一个点阵的状态。再用一个单独的四分之一大小RT,对皮肤做屏幕阴影蒙版,再进行模糊处理,以获得半透明的阴影效果。

《闪耀暖暖》进化之旅 如何实现从2D到3D的演变?

  第二,穿搭组合自由度(游戏可玩性的支持)

  绑定设计分为基础骨架和扩展骨架两个部分。基础骨架确定以后,可以在其基础上编辑人物的碰撞体配置,而扩展骨架则需要设置其物理参数。两部分数据合在一起,在运行时,由物理系统计算其动态效率。

《闪耀暖暖》进化之旅 如何实现从2D到3D的演变?

  由于移动平台性能有限,暖暖系列衣服复杂度又比较高,即使是PC平台也无法完全使用布料系统来做到想要的效果。物理系统是一个链式迭代的质点系统,粒子之间可以添加弹簧,用这种方式可以做到简单的布料模拟。

《闪耀暖暖》进化之旅 如何实现从2D到3D的演变?

  关于碰撞处理,粒子和弹簧都可以作为碰撞处理对象。《闪耀暖暖》碰撞体有两类,第一类由跟随基础骨架,包括平面碰撞体和胶囊碰撞体。胶囊碰撞体可以调整两端的大小,让它更贴合人的形体。

  在处理腿与裙子的碰撞时,当腿的移动范围较小的时候,能够正确往外推裙子。而腿移动量较大时,腿反而会向内压裙子。解决方法是用弹簧方向和粒子链方向的叉乘向量,作为弹簧的碰撞主方向,当弹簧与胶囊体发生碰撞时,优先朝主方向那一侧推。这样效果更为稳定。

  第二类碰撞体跟随扩展骨架。根据服装的骨骼链和邻居结构可以构建出虚拟的网格碰撞体。

  在运行时,可以查找粒子所最接近的虚拟网格中的三角形,用这个三角形作为平面碰撞。《闪耀暖暖》使用八叉树管理网格碰撞体中的所有三角形,方便运行时快速查找。网格碰撞体的三角形比较大,过渡比较剧烈,在某些情况下可能会抖动,允许在运行时动态取最近的四个三角形,根据距离权重插值进行平滑处理。

《闪耀暖暖》进化之旅 如何实现从2D到3D的演变?

  网格碰撞体的另一个作用是可以处理部件间的碰撞,团队为每类部件可以取一个别名,粒子设置它与哪个别名进行碰撞。如图我们设置头发与“裙子”进行碰撞,接下来我们切裙子的时候,只要通过别名,就可以动态寻找到当前所穿的究竟是哪个裙子,这个裙子针对的网格碰撞体是怎样的,可以实时调整头发与网格碰撞体的碰撞。

《闪耀暖暖》进化之旅 如何实现从2D到3D的演变?

  除了物理系统,《闪耀暖暖》中还有美术修正的方式,如图中这个外套,形状复杂且不规则,如果用物理和碰撞表现会非常差。团队对骨骼用关键帧rbf驱动。下面是四个关键帧,手臂不同朝向情况下,其他五个骨骼对应的位置与旋转的关系。在运行时,可以根据手臂的实际朝向,在这些关键帧中线性插值。

《闪耀暖暖》进化之旅 如何实现从2D到3D的演变?

(编辑:二游网_345游戏网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读