infinityops ops 在游戏里面怎么切换武器。切换武器按键在哪,求解?

Infinity Ops手游下载|Infinity Ops游戏1.1.5 最新版下载_东坡手机下载
InfinityOps游戏,全新的枪战厮杀手游,游戏中具有灵活的使用机枪的各种特性,合理的搭配战术的运用,拥有四个职业进行协调作战,快来展现你的技术吧!InfinityOps游戏简介InfinityOps游戏,一款科幻多人射击游戏!&
Infinity Ops游戏,全新的枪战厮杀手游,游戏中具有灵活的使用机枪的各种特性,合理的搭配战术的运用,拥有四个职业进行协调作战,快来展现你的技术吧!Infinity Ops游戏简介Infinity Ops游戏,一款科幻多人!&游戏的背景设置于遥远的未来,此时人类已突破了科技的限制并陷入混乱的星球战争之中!玩家扮演如招募者、破坏者、坦克与突击兵等职业进行团队PvP战斗!每个职业都有各自的特色与技能。游戏模式团队死亡竞赛两队比拼,回合结束时拥有最高分的队伍获胜;死亡竞赛混战模式。各自为己而战。回合结束时拥有最高分的玩家获胜;硬核通过两倍伤害来体现更真实的战斗体验;为真正的高手而打造的模式!自定义游戏自己打造游戏规则。游戏攻略战队&创建你自己的战队并邀请其他用户或是好友们一起游戏!&武器&游戏中有各种武器供您挑选,像是突击兵的等离子步枪、激光机枪或是榴弹发射器!每种武器都有自己独特的属性与特色。&材质互动&低引力将让玩家们能够跳得又高又远,而万有引力将会影响奔跑速度!&喷射背包&使用个人飞行装置来更快速、更有效率地进行战斗任务。&绚丽的3d画面&绚丽、精致的3D角色与地图模型。&针对性能较低的设备进行优化&此游戏已经优化以配合拥有较低性能的设备。玩家评价1、说说优点,首先呢,这个游戏里对手和队友百分之90是小学生,基本都不会走位,排位团竞拿把大机枪自动开火在那扫,让你先练练手也是不错;2、在对手手里没有高级氪金武器的情况下,技术流大佬应该可以纯虐(如果在这游戏的操作手感下你依旧能使出技术的话);3、我每捡一把新的枪,我都会试一下它是怎么用的,有什么功能,准心调整,可以不断的打磨的自己技术!里面的武器设定还是很丰富的哦!
大家还下载了这些:Infinity Ops游戏下载_Infinity Ops游戏官网中文版下载 v1.1.5 - 嗨客手机站
嗨客手机站:值得大家信赖的手机软件游戏站!
关注嗨客手机游戏礼包、游戏、app应有尽有
网络游戏单机游戏手游合集
您的位置: →
→ Infinity Ops游戏官网中文版下载 v1.1.5
扫一扫下载到手机
160MB/ 动作射击 /5.0
193MB/ 动作射击 /5.0
120MB/ 动作射击 /5.0
51MB/ 动作射击 /5.0
下载总览游戏礼包游戏截图视频演示猜你喜欢下载地址相关文章玩家评论
Infinity Ops游戏是一款的竞技游戏,游戏被设定在遥远的未来世界,人类此时已经脱离了地球表面,并且来到太空当中展开了一场史无前例的太斗。玩家们将会在游戏中玩家扮演如招募者、破坏者、与突击兵等战士来参与战斗,以团队式竞技为主要玩法,不但如此,游戏中还包括了更多主流射击游戏中才会有的玩法模式。
Infinity Ops游戏特色:
1、游戏中有各种武器供您挑选,等离子步枪、激光机枪或是榴弹发射器等多种风格的先进武器选择;
2、玩家们可以来使用个人装置来更快速、更有效率地进行战斗任务,在游戏中玩家们可以操作的更加多;
3、创建你自己的战队并邀请其他用户或是好友们一起游戏,或者一起来举行一场战队之间的友谊赛。
Infinity Ops游戏评测:
给我最大的感受就是。。熟悉,这熟悉的操作手感,这熟悉的UI,这熟悉的载具,甚至是熟悉的氪金套路,这完全就是《》的科幻翻版,
毫无诚意的换皮游戏,虽说是换皮之作,但还是有很多可圈可点之处,譬如这作终于加进来了跃系统,还能二连跳。。。蹦哒蹦哒的还挺有意思的。
其次对于BB弹级的威力也有所改进,原来三四个弹匣打死一个人,现在只要两三个弹匣就够了。。。好像改进不是很大。
载具挺炫酷的,但感觉不如《》里的载具手感舒服,打不死个人,估计是因为地图剧烈缩水的缘故,
地图太小了(没玩几把,唯一遇到有坦克的是真的小,不知道别的地图是不是能好点)。。。。亦或是可以蹦哒蹦哒的二连跳系统,
玩家们的灵活性提高了不少,满天乱飞,打死个人都成奢望,坦克完全成了一个活靶子,任由敌人摧残。
然后我一直有一点不明白,为什么都未来了,枪还制式的使用机械瞄具呢 ?外表看着挺科幻的,还以为能配个高端大气上档次的高配版全息瞄准镜,
基本上是科幻游戏的标配啊,怎么到这就成了寒酸的机械瞄具呢,难道是为了多加一个氪金点吗。
Infinity Ops安装说明:
下载压缩包,解压,得到APK文件和Android文件夹,安装APK文件,然后把Android文件夹复制到SD卡的根目录。
Infinity Ops游戏介绍:
游戏没有跳跃键,不过遇到障碍的时候会自动越过,但是千万不要当着敌人的面越障碍,因为越过时射击有后摇射击精度不高,
特别是飞檐走壁时,那酸爽。射击方面的话建议新手用自动射击方便快捷;高手的话还是推荐手动的,因为自动射击因为有的角色射程不够所以不会射击,
但其实子弹能过去的,只是精准度低.另外那个玩枪的角色用手动射击能提前瞄准(具体操作游戏中大家自己尝试,楼主文采不好,这里说不出个所以然)。
如果大家不氪金的话,建议只一个角色(这里不用多解释了吧)前期角色等级优势还没有出来,后面就不一定了,只是猜测。
刚刚的游戏体验中发现,除了有红外线的那个角色,其他可以精瞄的角色,不精瞄扫射10打9空(特进距离除外)。中近距离看似不用精瞄,实际飘成狗。
猜你喜欢射击科幻第一视角3D
动作射击游戏是每个男生的最爱,这里有高清逼真的打斗场面,热血沸腾的人物情节,相比第一人称游戏增加了更多的动作元素,比如翻滚、攀爬、疾跑、格斗等,在使用各种技能的...9.7专区6.7专区开测9.3专区10专区9.79.91010专区开测9.9专区5.0开测5.0开测5.0105.0专区65.05.0专区10专区开测9.9专区开测109.89.89.2专区开服开测9.8
Infinity Ops游戏官网中文版下载 v1.1.5
包含 Infinity Ops 的游戏集
<img src="/images/chakan.png" alt="3
<img src="/images/chakan.png" alt="1
<img src="/images/chakan.png" alt="1
<img src="/images/chakan.png" alt="1
<img src="/images/chakan.png" alt="
<img src="/images/chakan.png" alt="
下载帮助嗨客手机站软件均来自互联网, 如有侵犯您的版权, 请点击网站底部在线QQ进行联系。
1.嗨客手机站所有软件和游戏都经过严格安装检测,保证不会有任何病毒木马等信息,请大家放心使用;
2.大家在安装软件的时候注意每个步骤,注意包含安装插件信息,推荐使用下载本站软件以获取最佳的下载速度。
3.如果您觉得嗨客还不错, 以便下一次的访问.
4.嗨客QQ群:应用软件交流群:
手机游戏交流:
(满),加入二群:穿越火线新重返巨人城版本下载,穿越火线新重返巨人城版本更新下载地址 v1.0.28.210 - 游戏鸟
官方版安全无广告需网络
画面风格:
游戏玩法:
当前版本:v1.0.28.210
游戏小编:
游戏厂商:
运营状态:
同厂商游戏&p&这两个引擎为什么市场占有率较高,&b&首先有一个共同点就是起步免费&/b&。&/p&&p&Unity分为个人版,加强版和专业版三个版本。个人版是完全免费的,就算使用个人版发布商业项目也是不收费的。但当你年收入或者启动资金超过了10万美金,则需要去购买加强版或者专业版。(引擎购买费用相较于收入限制也算比较便宜了)&/p&&p&虚幻4也是一开始完全免费,当发布的项目收入超过3000美金则收取5%的版权费用。&/p&&p&试想你是一个刚入门的游戏开发者或者一个小团队,相较于什么都还没做出来就要花一比不小的开支去购买引擎的使用权,相信大部分人还是倾向使用免费的。&/p&&p&&b&其次是引擎的功能是否强大&/b&。&/p&&p&Unity的自定义功能很强大,而且上手门槛不高,不少人都可以自己发布自己的插件。关于画面上有个误区:Unity的画面不如UE4,其实只是由于Unity关照移动平台比较多,默认的画面表现力较弱,真要做大型游戏还真不能一概而论。(Unity也能做出表现力极佳的游戏,比如&逃离塔科夫&)&/p&&figure&&img src=&https://pic1.zhimg.com/50/v2-b47a8f742393_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&925& data-rawheight=&485& data-default-watermark-src=&https://pic1.zhimg.com/50/v2-23d936bdb94c2aa3827e_b.jpg& class=&origin_image zh-lightbox-thumb& width=&925& data-original=&https://pic1.zhimg.com/50/v2-b47a8f742393_r.jpg&&&/figure&&p&Unity依靠易用性实现了弯道超车,哪怕一个编程都没学过的新手鼓捣一段时间也能搞出点东西来,加之国内游戏开发者做手游这种较小的项目的人比较多,手机上游戏的表现力就不像电脑上要求的那么高,因此用的人也比较多。&/p&&p&相比之下虚幻4的使用门槛就比较高,虽然也有蓝图系统这样的可视化编程工具,但终究还是更庞大一些,学习成本也高一些。&/p&&p&但是虚幻4也有它的优点,它是开源的,自定义性极强。而且在画面表现力方面,虚幻4使用自带的工具就能实现3A级游戏的效果。&/p&&p&&br&&/p&&p&如果不用它们,用什么引擎呢?&/p&&p&常见的有&b&MonoGame、Love2D&/b&等等,很多有名的独立游戏是用MonoGame做的。&/p&&p&说实话,这些“引擎”相比Unity或者UE4功能实在太弱了,所有模块基本都需要自己学习、封装后使用,对学习编程来说很有用;但是真做游戏的话,周期较长,很容易变成“从入门到放弃”。&/p&&p&总的来说引擎的选择其实就是游戏市场选择的结果,现在国内开发小项目Unity基本同级横扫,开发大型项目虚幻4又有比较大的优势,所以这两个引擎用的人多也不奇怪了。&/p&&p&&/p&&p&&/p&
这两个引擎为什么市场占有率较高,首先有一个共同点就是起步免费。Unity分为个人版,加强版和专业版三个版本。个人版是完全免费的,就算使用个人版发布商业项目也是不收费的。但当你年收入或者启动资金超过了10万美金,则需要去购买加强版或者专业版。(引擎…
&figure&&img src=&https://pic1.zhimg.com/v2-ddd14aea9dd57caed12428_b.jpg& data-rawwidth=&1920& data-rawheight=&1080& class=&origin_image zh-lightbox-thumb& width=&1920& data-original=&https://pic1.zhimg.com/v2-ddd14aea9dd57caed12428_r.jpg&&&/figure&&p&&b&brief&/b& &br&siggraph17, cod13是infinity ward开发的,技术是多方合作出来的,这篇presentation是activition central tech两个哥们带来; &br&是16年的cod年货,是由cod4的开发商infinity ward承办,全球截止到17年10月,3平台有1千2百万套+的销量; &br&其中的光照技术等也在持续的进步,早先在treyarch开发的black ops系列,光照技术聊的比较多,也是PBR的早期使用者(直接导致《天涯明月刀OL》在11年时候做了使用PBR的技术方向),目前看来可能是central tech的存在让技术探索在activition多个团队联合起来推动技术发展;&/p&&p&links: &br&一些brief和演讲者的介绍
&a href=&http://link.zhihu.com/?target=http%3A//advances.realtimerendering.com/s2017/index.html& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&advances.realtimerendering.com&/span&&span class=&invisible&&/s2017/index.html&/span&&span class=&ellipsis&&&/span&&/a& &br&presentation链接:
&a href=&http://link.zhihu.com/?target=http%3A//advances.realtimerendering.com/s2017/Precomputed%2520Lighting%2520in%2520CoD%2520IW_20_PPS.pptx& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&advances.realtimerendering.com&/span&&span class=&invisible&&/s2017/Precomputed%20Lighting%20in%20CoD%20IW_20_PPS.pptx&/span&&span class=&ellipsis&&&/span&&/a&&/p&&p&&b&sum&/b& &/p&&figure&&img src=&https://pic4.zhimg.com/v2-881aa69b57d4ec838e2ae3_b.jpg& data-caption=&& data-rawwidth=&1595& data-rawheight=&1339& class=&origin_image zh-lightbox-thumb& width=&1595& data-original=&https://pic4.zhimg.com/v2-881aa69b57d4ec838e2ae3_r.jpg&&&/figure&&p&如上图是一个本文聊的主要内容。 &br&cod13的光照这里主要介绍的是prelighting,也就是:&/p&&ul&&li&静态mesh–lightmap&/li&&li&动态mesh–probe lighting &br&本文更多的聚焦在probe lighting上面。 &br&probe lighting可以说是有将近20年历史的技术了,到了这里有3点处理的比较好:&/li&&li&在受光的dynamic mesh上面decouple visibility并离线bake&/li&&li&在probe的放置上面使用专门的算法,来做到一个自适应的保持质量基础上最少probe数量的产生&/li&&li&triangular depth map:处理probe之间在有occluder的时候常遇的问题:漏光&/li&&/ul&&p&&br&&/p&&p&&b&dynamic mesh visibility&/b&&/p&&p&&br&&/p&&figure&&img src=&https://pic1.zhimg.com/v2-8e66c3fde2cb990c70dff5a2ed63abfc_b.jpg& data-caption=&& data-rawwidth=&979& data-rawheight=&561& class=&origin_image zh-lightbox-thumb& width=&979& data-original=&https://pic1.zhimg.com/v2-8e66c3fde2cb990c70dff5a2ed63abfc_r.jpg&&&/figure&&p&所谓的probe lighting visibility就是可以认为在dynamic mesh上面加上针对probe lighting的ao的东西。 &br&只是这个过程是&/p&&ul&&li&离线生成的&/li&&li&纯3d空间的,不是常用的screenspace ao技术,类似voxel based ao技术 &br&在bake的过程中,是在object space中进行:&/li&&li&将信息bake在vertex上面&/li&&li&使用一个椎体来描述受光的情况&/li&&/ul&&p&&br&&/p&&figure&&img src=&https://pic3.zhimg.com/v2-ece4af29482aebb7d00cde_b.jpg& data-caption=&& data-rawwidth=&286& data-rawheight=&255& class=&content_image& width=&286&&&/figure&&p&由于probelighting描述的也是一个低频光照信息,所以这个visibility信息就做一个大幅度简化,使用一个椎体描述一个顶点上主要受光的信息,这个椎体包括:&/p&&ul&&li&主要受光的方向:dir&/li&&li&受光的范围:radius&/li&&li&受光的强度:scale–这个scale主要是当一个点受到光是断断续续的时候,可以使用这个&/li&&/ul&&p&中间还有一些小trick,比如做一些后处理来处理noise,处理透明部分等等。 &br&以及使用多个probe来产生丰富的lighting,这个在之前的paper中大量都有,不在赘述。&/p&&p&&b&probe 分布&/b& &br&这个就是一个probe在场景里自动摆放的问题,现在不再会有人手动放了,但是平均的生成量太大,也没必要,空浪费bake time和内存。&/p&&p&activision使用tetrahedralize(四面体) voxelize的算法来做这个最优分布。
&/p&&figure&&img src=&https://pic2.zhimg.com/v2-d9ca486b609_b.jpg& data-caption=&& data-rawwidth=&1136& data-rawheight=&325& class=&origin_image zh-lightbox-thumb& width=&1136& data-original=&https://pic2.zhimg.com/v2-d9ca486b609_r.jpg&&&/figure&&p&道理和四叉树也是一样的,只是这个是使用四面体来做subdivision的树状结构,细分就是根据我们需要,比如是否包含geometry,是否有navmesh,是否是我们gameplay中的重要的点等等。 &br&选用tetrahedralize的原因是,这个是三维空间里面最简单的“体”,类似三角形是2维空间中最小的体。 &br&tetrahedra的插值也是最简单的。 &br&出来的tet mesh这样的:
&/p&&figure&&img src=&https://pic3.zhimg.com/v2-3cd04ce20dcca839d65de_b.jpg& data-caption=&& data-rawwidth=&1547& data-rawheight=&870& class=&origin_image zh-lightbox-thumb& width=&1547& data-original=&https://pic3.zhimg.com/v2-3cd04ce20dcca839d65de_r.jpg&&&/figure&&p&最后的probe 分布:
&/p&&figure&&img src=&https://pic3.zhimg.com/v2-21bb8ca2ee_b.jpg& data-caption=&& data-rawwidth=&1547& data-rawheight=&870& class=&origin_image zh-lightbox-thumb& width=&1547& data-original=&https://pic3.zhimg.com/v2-21bb8ca2ee_r.jpg&&&/figure&&p&&br&&/p&&p&&b&probe漏光问题解决&/b&&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-4845efcf555fe6570482b_b.jpg& data-caption=&& data-rawwidth=&1193& data-rawheight=&494& class=&origin_image zh-lightbox-thumb& width=&1193& data-original=&https://pic4.zhimg.com/v2-4845efcf555fe6570482b_r.jpg&&&/figure&&p&这个是indirectlighting常出现的问题,本质就是sample点的密度还是太低(低频),导致无法描述高频信息
&/p&&figure&&img src=&https://pic1.zhimg.com/v2-e0aa425d_b.jpg& data-caption=&& data-rawwidth=&957& data-rawheight=&486& class=&origin_image zh-lightbox-thumb& width=&957& data-original=&https://pic1.zhimg.com/v2-e0aa425d_r.jpg&&&/figure&&p&解决办法是做了一个triangular depth map,把四面体每个部分的triangle细分出来15个点,然后存一个被挡住的深度,比如0.6的地方被挡住了,就来一个深度。 &br&这样4个dword就能存好,精度也是足够的。&/p&&p&&b&小结&/b& &br&本文在probe lighting方面几个探索是非常可圈可点的,visibility bake和tet mesh都是非常喜欢的想法。 &br&一些数学细节没有太多覆盖,里面数学其实是不少的,一定程度上也显示activision在这个方面的积累是不错的。&/p&&p&//----------------------&/p&&p&文章结尾放招聘链接,腾讯北极光工作室群,客户端程序:&/p&&p&&a href=&https://zhuanlan.zhihu.com/p/& class=&internal&&[招聘贴]求给力开发者一起hardcore&/a&&/p&
brief siggraph17, cod13是infinity ward开发的,技术是多方合作出来的,这篇presentation是activition central tech两个哥们带来; 是16年的cod年货,是由cod4的开发商infinity ward承办,全球截止到17年10月,3平台有1千2百万套+的销量; 其中的光照技术…
&h2&&b&背景&/b&&/h2&&p&
之前在《Houdini技术体系 过程化地形系统(一):Far Cry5的植被系统分析》一文中已经对AAA游戏中过程化植被的需求有了一定的定义,后续工作就是如何用Houdini开发功能需求定义的节点,以及对应UE4的Houdiin Engine来制定过程化管线。Houdini的HDA的开发放在过程化地形系统部分讲解,这里主要是讲解工作流程的制定。FC5的分析之前,也大致介绍了UE4的植被系统。这里再确定下植被系统工作流方面的需求:&/p&&ul&&li&&b&Houdini Input&/b&:UE4 要输入什么给Houdini&/li&&ul&&li&所选择Landscape Component部分的地形信息&/li&&li&美术提供的选择区域,可以是绘制的Mask,也可以是Curve的选框&/li&&li&与HDA中对应的植被资源参数,简单的可以用Houdini Engine ,完善一些的话最好是一个json或xml的描述文件,或者UE4的DataTabel。&/li&&li&除了HeightMap外的Mask信息,还有峭壁,湖泊,电线杆,栅栏等不能摆放植被的区域Mask&/li&&/ul&&li&&b&Houdini Ouptut&/b&:Houdini要输出什么给UE4&/li&&ul&&li&Entity Point Cloud:每个点包含了对应的植被实体,以及实体的Positon,Rotation,Scale等Transform信息&/li&&li&Terrain
Data:例如树根对地形隆起的变化,树根部分对地表材质Mask的影响,地表的颜色等&/li&&li&Mask Data:草体布局信息的Mask贴图&/li&&/ul&&li&&b&UE4植被系统的支持&/b&&/li&&ul&&li&Houdini Instance与UE4 Foliage Type的Instance的对应&/li&&li&Houdini Biome Mask与UE4 Grass Type的对应&/li&&li&Houdini闭环修改与UE4 Foliage System的对应。&/li&&/ul&&/ul&&figure&&img src=&https://pic4.zhimg.com/v2-ac156ea3b64e54d4dc031b_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&813& data-rawheight=&368& class=&origin_image zh-lightbox-thumb& width=&813& data-original=&https://pic4.zhimg.com/v2-ac156ea3b64e54d4dc031b_r.jpg&&&/figure&&p&那么,这里就以实现这些需求为目标,介绍下实现基于Houdini的UE4植被系统的基础管线所要注意的事项。&/p&&h2&&b&Houdini的Input设置&/b&&/h2&&p&
在之前FC5的植被系统的需求分析中也可以得知,最新的AAA游戏中,一平方公里场景里就有60w左右的植被实体,而最近的一些UE4大世界游戏和手游,也通常在6x6~8x8km左右。在策划和美术的迭代开发中,每次都要生成整个场景的植被再看效果的话,会极大的影响开发效率,对大团队的多人协作开发也很不友好。所以这里也要像之前的地形管线一样,以FC5的过程化系统为原型,可以支持美术或策划来选择和绘制生成区域,让Houdini的过程化生成只影响这一部分选择区,这样不但可以利用UE4的WorldComposition的功能多人工作,也可以通过UE4自带的绘制Selection Region Tool,让美术更进一步的控制过程化的影响区域,减少生成时间,提升迭代效率。&/p&&p&如下图所示,FC5的植被系统,支持类似UE4的Component和Paint Region来作为Terrain Data,&/p&&figure&&img src=&https://pic1.zhimg.com/v2-2dc464a1b460a94bd02efa828c48855c_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1280& data-rawheight=&720& class=&origin_image zh-lightbox-thumb& width=&1280& data-original=&https://pic1.zhimg.com/v2-2dc464a1b460a94bd02efa828c48855c_r.jpg&&&/figure&&figure&&img src=&https://pic2.zhimg.com/v2-c55ad6ec2c2ea6dcbb79_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1280& data-rawheight=&720& class=&origin_image zh-lightbox-thumb& width=&1280& data-original=&https://pic2.zhimg.com/v2-c55ad6ec2c2ea6dcbb79_r.jpg&&&/figure&&figure&&img src=&https://pic1.zhimg.com/v2-bfe7fd772a13caa5a66e063dd1dcd304_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1091& data-rawheight=&608& class=&origin_image zh-lightbox-thumb& width=&1091& data-original=&https://pic1.zhimg.com/v2-bfe7fd772a13caa5a66e063dd1dcd304_r.jpg&&&/figure&&p&&br&&/p&&p&在上文中,也总结到UE4里FC5植被系统的Input,有以下几项:&/p&&ul&&li&所选择Landscape Component部分的地形信息&/li&&li&美术提供的选择区域,可以是绘制的Mask,也可以是Curve的选框&/li&&li&与HDA中对应的植被资源参数,简单的可以用Houdini Engine ,完善一些的话最好是一个json或xml的描述文件,或者UE4的DataTabel。&/li&&li&除了HeightMap外的Mask信息,还有峭壁,湖泊,电线杆,栅栏等不能摆放植被的区域Mask&/li&&/ul&&p&
关于如何确定Input Terrain Data,Landscape Component的选择在地形管线部分已经几次讲到了。幸运的是,UE4除了Component Select Tool之外,在Terrain Sculpt Tool里提供Region Selection Tool的功能,这个要比Component Select Tool更加灵活和便捷。但和Component Select Tool一样,这个功能对原生的Houdini Engine并不适用...&/p&&figure&&img src=&https://pic3.zhimg.com/v2-bf7ad37a4a5e_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1158& data-rawheight=&648& class=&origin_image zh-lightbox-thumb& width=&1158& data-original=&https://pic3.zhimg.com/v2-bf7ad37a4a5e_r.jpg&&&/figure&&p&
如上图所示,Region Selection Tool是Terrain Sculpt Tool里的功能,不过可以借用这个功能来作为Input的Mask Paint来使用。接下来看下怎么扩展Houdini Engine把这个Mask作为Input传到Houdini里去。&/p&&p&
Region Selection Tool绘制的Mask的方式,当使用者绘制时,会在FLandscapeToolStrokeMask::Apply函数里根据笔触和权重值,把绘制值添加到class ULandscapeInfo的TMap&FIntPoint,float& SelectedRegion 里的,只有绘制过的区域才会保存在SelectedRegion里,其中FIntPoint代表的是在Landscape里的XY位置信息,作为整型保存,而float为绘制Mask的权重。&/p&&p& 拿到了SelectedRegion后,就是要在Houdini Engine里把它作为Mask,输入到HDA中进行处理。Houdini Engine是在FHoudiniLandscapeUtils::CreateHeightfieldFromLandscapeComponent函数里对Height Data和Mask Data进行Input打包的,这里选择在这个函数里加入SelectedRegion的Mask的打包工作。&/p&&p&
首先,是根据Houdini里一个Landscape Component的大小MaxX x MaxY,创建出对应的SelectedRegion大小的Mask数组。在LandscapeInfo的SelectedRegion里查找每个点的信息,如果有就复制到对应位置,没有则设置为0。这样,提供给Houdini使用的SelectedRegionData就完成了。&/p&&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&
TArray&float& SelectedRegionD
  for (int32 X = MinX; X &= MaxX; X++)
      for (int32 Y = MinY; Y &= MaxY; Y++)
      {
        float RegionSelect =
        LandscapeInfo-&SelectedRegion.FindRef(FIntPoint(X, Y));
        SelectedRegionData.Add(RegionSelect);
      }
&/code&&/pre&&/div&&p&
接下里,跟LayerMask同样的方式,通过C++代码创建一个名为SelectedRegion的Mask节点,并跟其他的Volume Merge到一起。&/p&&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&  FString LayerName = &SelectedRegion&;
  HAPI_NodeId LayerVolumeNodeId = -1;
  if (!CreateVolumeInputNode(LayerVolumeNodeId, LayerName, ParentId))
  HAPI_PartId CurrentPartId = 0;
  if (!SetHeighfieldData(LayerVolumeNodeId, CurrentPartId,
    SelectedRegionData, SelectedRegionLayerVolumeInfo, LayerName,
    ComponentIndex))
      
  if (!CommitVolumeInputNode(LayerVolumeNodeId, InputMergeNodeId,
    MergeInputIndex))
  MergeInputIndex++;
&/code&&/pre&&/div&&p&
另外,ULandscapeInfo提供了把绘制的SelectedRegion转为Selected Component的功能,这样绘制过过程化的影响区域后,就不用再选择一次Landscpe Component了。这个修改也很简单,在FHoudiniEngineUtils::HapiCreateInputNodeForLandscape函数里,当没有selected components时,就把绘制的区域转换成SelectedComponents。&/p&&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&if ( LandscapeInfo )
  // Get the currently selected components
  SelectedComponents = LandscapeInfo-&GetSelectedComponents();
  // 如果没有selected components,则从绘制区域获取selected components
  if (SelectedComponents.Num() == 0)
    SelectedComponents = LandscapeInfo-&GetSelectedRegionComponents();
&/code&&/pre&&/div&&p&
把名为“SelectedRegion”的Mask作为Input输入到HDA后,需要在HDA里对应这个Mask Layer来识别。在HDA的Heightfield Noise节点里,把SelectedRegion作为Mask Layer来使用&/p&&figure&&img src=&https://pic3.zhimg.com/v2-18e69b9c9c3d9645a32bff3df0b830f2_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&432& data-rawheight=&584& class=&origin_image zh-lightbox-thumb& width=&432& data-original=&https://pic3.zhimg.com/v2-18e69b9c9c3d9645a32bff3df0b830f2_r.jpg&&&/figure&&p&&br&&/p&&p&
这样HeightField只有在有Mask的部分会有Noise的效果,这个同样也可以用在植被的Entity Point Cloud的生成上。&/p&&figure&&img src=&https://pic3.zhimg.com/v2-2d2a0c55d4d18f1fc2b6_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&917& data-rawheight=&642& class=&origin_image zh-lightbox-thumb& width=&917& data-original=&https://pic3.zhimg.com/v2-2d2a0c55d4d18f1fc2b6_r.jpg&&&/figure&&p&下图的效果,就是在绘制的'X'的区域内,对9个Landscape Component产生噪声变化。&/p&&figure&&img src=&https://pic2.zhimg.com/v2-29a27cd3db0d940bddb5_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&782& data-rawheight=&974& class=&origin_image zh-lightbox-thumb& width=&782& data-original=&https://pic2.zhimg.com/v2-29a27cd3db0d940bddb5_r.jpg&&&/figure&&p&
绘制选区通常是控制比较大的区域,而如果是要生成小范围的区域,建议像下图这样用Curve Input来控制区域了。&/p&&figure&&img src=&https://pic4.zhimg.com/v2-f9ca6397bd95f_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&921& data-rawheight=&670& class=&origin_image zh-lightbox-thumb& width=&921& data-original=&https://pic4.zhimg.com/v2-f9ca6397bd95f_r.jpg&&&/figure&&p&
如何创建一个Curve Input的方法,在Houdini技术体系 基础管线(三) :UE4以选择区域的方式对地形做生成和更新 上篇 和官方文档 &a href=&http://link.zhihu.com/?target=https%3A//www.sidefx.com/docs/unreal/_curves.html& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://www.&/span&&span class=&visible&&sidefx.com/docs/unreal/&/span&&span class=&invisible&&_curves.html&/span&&span class=&ellipsis&&&/span&&/a&里都有详细介绍,也是有创建SOP或添加Operate Path两种方法。这里就不多做叙述了。&/p&&figure&&img src=&https://pic4.zhimg.com/v2-4f9cf8bad27717daa050664aca1109b7_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&925& data-rawheight=&336& class=&origin_image zh-lightbox-thumb& width=&925& data-original=&https://pic4.zhimg.com/v2-4f9cf8bad27717daa050664aca1109b7_r.jpg&&&/figure&&p&
除了HeightData选区外,Input还需要有摆放的UE4植被列表(Biomes List),植被列表通常是用xml,json,或者ue4的datatable来记录每种植被在HDA节点里属性以及在UE4中使用资源的对应关系。然后在HDA里通过Python脚本来加载读取,即便是比下图FC5用例更复杂的HDA节点串联和配置,也可以借助Python自动化,完全摆脱人力基于配置文件自动化的创建和连接。Houdini的Python脚本使用在后续的基础管线部分讲解,本节出于篇幅关系,使用Geometry Input作为简化版的Biome Input。&/p&&figure&&img src=&https://pic1.zhimg.com/v2-7ca7f6ba731fafe20fa7a0bf3b103c30_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1087& data-rawheight=&608& class=&origin_image zh-lightbox-thumb& width=&1087& data-original=&https://pic1.zhimg.com/v2-7ca7f6ba731fafe20fa7a0bf3b103c30_r.jpg&&&/figure&&p&
而类似各种像湖泊,峭壁,电线杆等的Mask过程化生成的Mask,这里假设你已经通过其他方式导出了Mask图,或者准备在Houdini里通过Mask By Feature或Mask By Object来生成。在管线部分也就不浪费篇幅了,会在之后具体的地形篇的植被制作部分再做详细介绍。&/p&&h2&&b&HDA的制作以及Ouput的对应&/b&&/h2&&p&FC5的HDA的Output分为两大类&/p&&ul&&li&Entity Point Cloud&/li&&li&Terrain Data&/li&&/ul&&p&
基于Input生成Entity Point Cloud的原理非常简单,在去年的在 Houdini HIVE at SIGGRAPH 2017上,Procedural Scattering in Houdini Engine and Unity 的Talk上介绍的就涵盖了全部的基础知识。就如下图所示,根据Terrain,Curve以及资源实体的Inptu,按一定规则在引擎里进行过程化摆放。&/p&&figure&&img src=&https://pic4.zhimg.com/v2-92bbc780109b_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1062& data-rawheight=&592& class=&origin_image zh-lightbox-thumb& width=&1062& data-original=&https://pic4.zhimg.com/v2-92bbc780109b_r.jpg&&&/figure&&p&
视频链接:&a href=&http://link.zhihu.com/?target=https%3A//vimeo.com/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://&/span&&span class=&visible&&vimeo.com/&/span&&span class=&invisible&&&/span&&/a&
,对应hda的下载地址:&a href=&http://link.zhihu.com/?target=https%3A//www.dropbox.com/s/iv840ldw5tn4lw1/scatter_tool.hda%3Fdl%3D0& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://www.&/span&&span class=&visible&&dropbox.com/s/iv840ldw5&/span&&span class=&invisible&&tn4lw1/scatter_tool.hda?dl=0&/span&&span class=&ellipsis&&&/span&&/a& 。虽然跟FC5的实现相比还有不小的差距,在管线篇中作为基础参考绰绰有余,有兴趣的可以下载来看看。这里也借用它简单介绍下使用的相关节点和功能。&/p&&p&
下图中,Setup中的三个Input,分别对应的Terrain Data,Curve Select和Biome Instance。&/p&&figure&&img src=&https://pic1.zhimg.com/v2-40ce0e49198ffe9369cb0_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&609& data-rawheight=&325& class=&origin_image zh-lightbox-thumb& width=&609& data-original=&https://pic1.zhimg.com/v2-40ce0e49198ffe9369cb0_r.jpg&&&/figure&&p&这里先创建个临时的Terrain和Curve来做测试使用。&/p&&figure&&img src=&https://pic3.zhimg.com/v2-e08a407be75c6513b6cafb6_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&435& data-rawheight=&284& class=&origin_image zh-lightbox-thumb& width=&435& data-original=&https://pic3.zhimg.com/v2-e08a407be75c6513b6cafb6_r.jpg&&&/figure&&p&
结果就是在Curve选择范围的Terrain上,随机Scatter了一定数量的Entity,这里用红色的Box作为代理体显示。&/p&&figure&&img src=&https://pic3.zhimg.com/v2-fb7f9ea1d847ba5e114fe_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1101& data-rawheight=&788& class=&origin_image zh-lightbox-thumb& width=&1101& data-original=&https://pic3.zhimg.com/v2-fb7f9ea1d847ba5e114fe_r.jpg&&&/figure&&p&这里参数不变,把scatter换成heightfield scatter&/p&&figure&&img src=&https://pic3.zhimg.com/v2-6b6d66dca6b76_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&546& data-rawheight=&342& class=&origin_image zh-lightbox-thumb& width=&546& data-original=&https://pic3.zhimg.com/v2-6b6d66dca6b76_r.jpg&&&/figure&&p&这样,只有绘制了Mask的红色区域才会被放置Entity。&/p&&figure&&img src=&https://pic4.zhimg.com/v2-0c578fd576cdc8fd3637_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1038& data-rawheight=&773& class=&origin_image zh-lightbox-thumb& width=&1038& data-original=&https://pic4.zhimg.com/v2-0c578fd576cdc8fd3637_r.jpg&&&/figure&&p&
但是示例的这个Scatter Tool也有不适用的地方。首先就是把物体赋予到Entity Point Cloud的Copy节点,并不能对应UE4的Instanced Mesh,这样Output到UE4里的话,每个树木实体都会创建为一个Static mesh,会让过程化生成和最后运行的效率都变得非常差。最好映照按照官方文档的建议,用支持Instance的Copy to Point节点替换掉Copy Stamp节点。&/p&&figure&&img src=&https://pic4.zhimg.com/v2-79a281cdcbd5a8e8347883_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&623& data-rawheight=&398& class=&origin_image zh-lightbox-thumb& width=&623& data-original=&https://pic4.zhimg.com/v2-79a281cdcbd5a8e8347883_r.jpg&&&/figure&&p&这里根据地形坡度生成mask,然后把Mask转为Point Cloud来摆放树木,来比较Copy to Point节点和Copy Stamp节点的区别。&/p&&p&这里使用heightfield_mask by feature,取出Slope为20~70范围的Mask。在一块小的地形上生成100颗树来对比下生成效果。&/p&&figure&&img src=&https://pic3.zhimg.com/v2-8b4fb9565a_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1043& data-rawheight=&601& class=&origin_image zh-lightbox-thumb& width=&1043& data-original=&https://pic3.zhimg.com/v2-8b4fb9565a_r.jpg&&&/figure&&p&
首先是用Copy Stamp节点,选择好地形和植被实体后,经过20~30秒的卡顿后,有90多个植被生成出来。这个生成的时间和植被数量比,使用体验很难让场景美术接受。&/p&&figure&&img src=&https://pic2.zhimg.com/v2-beef3f75f89b65a0bce5f64fcb5221c1_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1043& data-rawheight=&652& class=&origin_image zh-lightbox-thumb& width=&1043& data-original=&https://pic2.zhimg.com/v2-beef3f75f89b65a0bce5f64fcb5221c1_r.jpg&&&/figure&&p&
不论是Bake成BP还是Actor,所有的树都会被Batch成一个Static Mesh,这样对图形程序做植被渲染优化也非常不友好&/p&&figure&&img src=&https://pic1.zhimg.com/v2-d9e05ceeafa7ee88061b3c_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1258& data-rawheight=&764& class=&origin_image zh-lightbox-thumb& width=&1258& data-original=&https://pic1.zhimg.com/v2-d9e05ceeafa7ee88061b3c_r.jpg&&&/figure&&p&
和Copy Stamp那20多秒的处理时间相比。。替换为Copy to Point节点,在选择完Input的植被实体和地形后的瞬间(1秒内),几乎没有感觉到任何延迟的,就完成了100颗树木实例的摆放工作。&/p&&figure&&img src=&https://pic4.zhimg.com/v2-2e24fe81b6c695fb0b645c3_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1040& data-rawheight=&651& class=&origin_image zh-lightbox-thumb& width=&1040& data-original=&https://pic4.zhimg.com/v2-2e24fe81b6c695fb0b645c3_r.jpg&&&/figure&&p&
把植被Bake成一个BP后,可以看到所有的树木被Bake到一个Instanced Static Mesh组件里,而每颗树作为一个Instance保存。也正是因为它采用的Instance的方式,才会有那么快捷的生成速度。这个效率对场景美术迭代来说足够了,但InstancedStaticMesh并不支持LOD模式,用来批量放置的植被实体原有的LOD信息也丢失了。这里应该是创建HierarchicalInstancedStaticMeshComponent才能支持LOD。&/p&&figure&&img src=&https://pic2.zhimg.com/v2-7e1dbcadf5444d_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1258& data-rawheight=&764& class=&origin_image zh-lightbox-thumb& width=&1258& data-original=&https://pic2.zhimg.com/v2-7e1dbcadf5444d_r.jpg&&&/figure&&p&
如何生成HierarchicalInstancedStaticMeshComponent的Actor或BP,可以参考 void UHoudiniAssetInstanceInputField::AddInstanceComponent( int32 VariationIdx )的函数。当Static Mesh有多个LOD时,Houdini Engine会用HierarchicalInstancedStaticMeshComponent替换Instanced Static Mesh&/p&&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&UInstancedStaticMeshComponent * InstancedStaticMeshComponent =
if ( StaticMesh-&GetNumLODs() & 1 )
// If the mesh has LODs, use Hierarchical ISMC
InstancedStaticMeshComponent = NewObject& UHierarchicalInstancedStaticMeshComponent &(
RootComp-&GetOwner(), UHierarchicalInstancedStaticMeshComponent::StaticClass(), NAME_None, RF_Transactional);
// If the mesh doesnt have LOD, we can use a regular ISMC
InstancedStaticMeshComponent = NewObject& UInstancedStaticMeshComponent &(
RootComp-&GetOwner(),UInstancedStaticMeshComponent::StaticClass(), NAME_None, RF_Transactional );
&/code&&/pre&&/div&&p&这里保证树的实体有LOD,并且在HDA Input 勾选Export LODs
&/p&&figure&&img src=&https://pic3.zhimg.com/v2-dcf1ade6516e_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1233& data-rawheight=&746& class=&origin_image zh-lightbox-thumb& width=&1233& data-original=&https://pic3.zhimg.com/v2-dcf1ade6516e_r.jpg&&&/figure&&p&再次Bake,可以看到是HierarchicalInstancedStaticMeshComponent,每个Instance也有之前的LOD信息了。&/p&&figure&&img src=&https://pic4.zhimg.com/v2-d8aba831a50fb128f1a8bc356d2c32ab_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1246& data-rawheight=&753& class=&origin_image zh-lightbox-thumb& width=&1246& data-original=&https://pic4.zhimg.com/v2-d8aba831a50fb128f1a8bc356d2c32ab_r.jpg&&&/figure&&p&
姑且算是支持了最基础的Entity Cloud Point的Output,但距离实际项目需求还很遥远,就像Input需要支持Biomes List配置表的读取一样,Output出于维护和调试的考虑,最好也是能支持Biomes List的输出,而且,虽然提供给场景美术绘制影响区域的功能,但BP的保存方式,对Houdini的闭环迭代也并不足够的友好,当美术需要对一些细小地区做频繁迭代时,新生成的植被如何去替换BP里已经生成植被也是个问题,解决方法只能整个BP对应区域重新生成一次。这需要美术在设计初期就对植被布局策略和种类考虑清楚。还有就是UE4除了Foliage Type外,还有Grass Type的植被的支持。这些会放在之后如何UE4植被系统整合的部分来讲解。&/p&&p&FC5的植被系统除了Entity Cloud Point之外,还有以下的Terrain Data的Output。&/p&&figure&&img src=&https://pic4.zhimg.com/v2-0f786e9fdd0e539a00b3_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1094& data-rawheight=&614& class=&origin_image zh-lightbox-thumb& width=&1094& data-original=&https://pic4.zhimg.com/v2-0f786e9fdd0e539a00b3_r.jpg&&&/figure&&p&
其中Terrain HeightMap和Forest Mask,都可以通过之前地形管线中介绍的方法传递给UE4,而Texture ID,因为FC5的地形渲染有TextureArray支持,而UE4则受限于每个Component4个Landscape Layer的限制,所以Layer与Texture的对应又是在Mateiral里绑定的,需要修改UE4引擎源码才能支持,但这就超出Houdini技术体系范畴了。这里介绍一个临时的折中办法,通过直接去修改约定好的对应的Layer的Mask权重的方式,来实现UE4里要根据输出的Houdini Output的去改变Layer的Texture ID的需求。&/p&&p&首先,用RegionTool绘制一块区域来生成植被&/p&&figure&&img src=&https://pic4.zhimg.com/v2-f7fb292bfe5a7dbc7f87_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1044& data-rawheight=&656& class=&origin_image zh-lightbox-thumb& width=&1044& data-original=&https://pic4.zhimg.com/v2-f7fb292bfe5a7dbc7f87_r.jpg&&&/figure&&p&这里就只简单的根据绘制的Mask部分Scatter生成Point Cloud,效果如下&/p&&figure&&img src=&https://pic3.zhimg.com/v2-963d55e4e2e7a8fa5529fae_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1038& data-rawheight=&656& class=&origin_image zh-lightbox-thumb& width=&1038& data-original=&https://pic3.zhimg.com/v2-963d55e4e2e7a8fa5529fae_r.jpg&&&/figure&&p&
接下来实现一下Terrain Data的Output的功能,不论是Terrain Texture还是Terrain Deformation的输出原理上都是在植被一定范围内生成Mask,再把这个Mask转化为Layer Data或者Height Data,传递给UE4。&/p&&figure&&img src=&https://pic3.zhimg.com/v2-a715b406ecef_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1090& data-rawheight=&604& class=&origin_image zh-lightbox-thumb& width=&1090& data-original=&https://pic3.zhimg.com/v2-a715b406ecef_r.jpg&&&/figure&&figure&&img src=&https://pic3.zhimg.com/v2-118cf99886fca2c0ead8a02_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1089& data-rawheight=&613& class=&origin_image zh-lightbox-thumb& width=&1089& data-original=&https://pic3.zhimg.com/v2-118cf99886fca2c0ead8a02_r.jpg&&&/figure&&p&
出于跑通管线的目的,这里在HDA里做一个简单的实现。在houdini里根据Scatter生成的Point Cloud,使用Sphere来生成出Mask,再根据这个Mask来提升地形高度,并把Mask输出位树根部所对应的Landscape Material Layer的值。&/p&&figure&&img src=&https://pic3.zhimg.com/v2-98bec4ce24efd70cf5faee_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&859& data-rawheight=&622& class=&origin_image zh-lightbox-thumb& width=&859& data-original=&https://pic3.zhimg.com/v2-98bec4ce24efd70cf5faee_r.jpg&&&/figure&&p&在测试场景上选择一个生成区域&/p&&figure&&img src=&https://pic3.zhimg.com/v2-9b712ee1ec386_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1049& data-rawheight=&660& class=&origin_image zh-lightbox-thumb& width=&1049& data-original=&https://pic3.zhimg.com/v2-9b712ee1ec386_r.jpg&&&/figure&&figure&&img src=&https://pic3.zhimg.com/v2-44bf878c054a_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1047& data-rawheight=&655& class=&origin_image zh-lightbox-thumb& width=&1047& data-original=&https://pic3.zhimg.com/v2-44bf878c054a_r.jpg&&&/figure&&p&有摆放植被的周围地形改为了另外一种Layer。&/p&&figure&&img src=&https://pic1.zhimg.com/v2-69e8894844addd134eac06b4a2d57600_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1045& data-rawheight=&654& class=&origin_image zh-lightbox-thumb& width=&1045& data-original=&https://pic1.zhimg.com/v2-69e8894844addd134eac06b4a2d57600_r.jpg&&&/figure&&p&树根附近的地表高度也被提升了。和FC5那种按照树根形状来提升高度的效果相比还是有差距。&/p&&figure&&img src=&https://pic3.zhimg.com/v2-dcf03dc1636_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1043& data-rawheight=&651& class=&origin_image zh-lightbox-thumb& width=&1043& data-original=&https://pic3.zhimg.com/v2-dcf03dc1636_r.jpg&&&/figure&&h2&&b&总结&/b&&/h2&&p&上篇中,简单的介绍了如何在UE4里实现类似FC5植被系统的管线,但还有问题等待解决&/p&&ul&&li&虽然植被实体可以被Bake为HierarchicalInstancedStaticMeshComponent或InstancedStaticMeshComponent来近似UE4Foliage Type的渲染方式,但并不支持GrassType的类型。&/li&&li&Point Cloud生成的植被只能Bake为场景中的Actor或BP而不是Foliage Type,并不能与UE4的Foliage System融合,在迭代和修改中增加了额外的负担。&/li&&li&示例中的HDA只支持1种植被,生成策略也非常简单,而且也不支持BiomeList的读取,和FC5有相当大的差距。&/li&&/ul&&p&对于前两点,会在Houdini驱动的UE4植被系统 下篇中有进一步解决方案的介绍,只有整条UE4的植被基础管线完成后,才能把鱼FC5近似的Houdini功能集成到UE4里,这部分HDA的制作会在地形系统篇中进行具体讲解。&/p&
背景 之前在《Houdini技术体系 过程化地形系统(一):Far Cry5的植被系统分析》一文中已经对AAA游戏中过程化植被的需求有了一定的定义,后续工作就是如何用Houdini开发功能需求定义的节点,以及对应UE4的Houdiin Engine来制定过程化管线。Houdini的HDA的开…
&p&能做出这类风格独特的游戏画面,开发人员(尤其是美术)应该是对自己水平是相当自信的才敢剑走偏锋吧,否则做出来不伦不类,还不如走传统美术风格或者pbr。基于这几家公司已发布的技术讲解猜测下可能会用到的几种技术:&/p&&p&1.FireWatch所使用的分层雾&/p&&br&&figure&&img data-rawwidth=&600& data-rawheight=&337& src=&https://pic4.zhimg.com/50/v2-b3610deb7e7f03c79a7c56_b.jpg& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&https://pic4.zhimg.com/50/v2-b3610deb7e7f03c79a7c56_r.jpg&&&/figure&&p&基本原理:取相机深度图做深度分离(类似色调分离,也可以加上Gamma与反Gamma),然后用UV坐标(深度,0.5)去采样渐变图,最后作为后处理来染色。Pixel Shader中代码:&/p&&figure&&img data-rawwidth=&665& data-rawheight=&254& src=&https://pic2.zhimg.com/50/v2-db50cb29b3b377d145e4ea_b.jpg& class=&origin_image zh-lightbox-thumb& width=&665& data-original=&https://pic2.zhimg.com/50/v2-db50cb29b3b377d145e4ea_r.jpg&&&/figure&&p&相机深度图分离&/p&&br&&figure&&img data-rawwidth=&969& data-rawheight=&353& src=&https://pic4.zhimg.com/50/v2-3f325f388ec6b044d963befe47246ece_b.jpg& class=&origin_image zh-lightbox-thumb& width=&969& data-original=&https://pic4.zhimg.com/50/v2-3f325f388ec6b044d963befe47246ece_r.jpg&&&/figure&&p&另外网上有人提到用sobel算子做深度处理,边缘会更精确。&/p&&br&&figure&&img data-rawwidth=&968& data-rawheight=&352& src=&https://pic2.zhimg.com/50/v2-0affc5df293db9e83ab6_b.jpg& class=&origin_image zh-lightbox-thumb& width=&968& data-original=&https://pic2.zhimg.com/50/v2-0affc5df293db9e83ab6_r.jpg&&&/figure&&p&深度分层染色图&/p&&br&&figure&&img data-rawwidth=&600& data-rawheight=&251& src=&https://pic2.zhimg.com/50/v2-c9c3a6430e7bbac98a1b1634_b.jpg& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&https://pic2.zhimg.com/50/v2-c9c3a6430e7bbac98a1b1634_r.jpg&&&/figure&&br&&p&我用Unity做的简化版,有点类似,但是细节上还差很多。&/p&&br&&figure&&img data-rawwidth=&938& data-rawheight=&493& src=&https://pic1.zhimg.com/50/v2-879b88eaef23ae_b.jpg& class=&origin_image zh-lightbox-thumb& width=&938& data-original=&https://pic1.zhimg.com/50/v2-879b88eaef23ae_r.jpg&&&/figure&&p&2.Inside所使用渲染&/p&&p&PlayDead在GDC上有个讲解&a href=&//link.zhihu.com/?target=http%3A//gdcvault.com/play/1023783/Low-Complexity-High-Fidelity-INSIDE& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Inside渲染技术的视频&/a&,一个多小时内容,细节很多。&/p&&figure&&img data-rawwidth=&603& data-rawheight=&320& src=&https://pic4.zhimg.com/50/v2-fe2ff3d30_b.jpg& class=&origin_image zh-lightbox-thumb& width=&603& data-original=&https://pic4.zhimg.com/50/v2-fe2ff3d30_r.jpg&&&/figure&&br&&figure&&img data-rawwidth=&864& data-rawheight=&482& src=&https://pic3.zhimg.com/50/v2-bb4e13f38c6c206e6696cfbe77911da0_b.jpg& class=&origin_image zh-lightbox-thumb& width=&864& data-original=&https://pic3.zhimg.com/50/v2-bb4e13f38c6c206e6696cfbe77911da0_r.jpg&&&/figure&&br&&figure&&img data-rawwidth=&908& data-rawheight=&484& src=&https://pic3.zhimg.com/50/v2-c74e23bf2ea70a09fac72_b.jpg& class=&origin_image zh-lightbox-thumb& width=&908& data-original=&https://pic3.zhimg.com/50/v2-c74e23bf2ea70a09fac72_r.jpg&&&/figure&&br&&figure&&img data-rawwidth=&866& data-rawheight=&485& src=&https://pic1.zhimg.com/50/v2-c6a0ee884dc3ea18f622eee5c417db75_b.jpg& class=&origin_image zh-lightbox-thumb& width=&866& data-original=&https://pic1.zhimg.com/50/v2-c6a0ee884dc3ea18f622eee5c417db75_r.jpg&&&/figure&&br&&figure&&img data-rawwidth=&866& data-rawheight=&480& src=&https://pic2.zhimg.com/50/v2-546da3a27d4cbbe25fd3e0f71d4e0be0_b.jpg& class=&origin_image zh-lightbox-thumb& width=&866& data-original=&https://pic2.zhimg.com/50/v2-546da3a27d4cbbe25fd3e0f71d4e0be0_r.jpg&&&/figure&&br&&figure&&img data-rawwidth=&866& data-rawheight=&482& src=&https://pic1.zhimg.com/50/v2-b60356dda9cfd9d0833c_b.jpg& class=&origin_image zh-lightbox-thumb& width=&866& data-original=&https://pic1.zhimg.com/50/v2-b60356dda9cfd9d0833c_r.jpg&&&/figure&&br&&figure&&img data-rawwidth=&867& data-rawheight=&478& src=&https://pic3.zhimg.com/50/v2-39abd4f8ea0cf_b.jpg& class=&origin_image zh-lightbox-thumb& width=&867& data-original=&https://pic3.zhimg.com/50/v2-39abd4f8ea0cf_r.jpg&&&/figure&&br&&figure&&img data-rawwidth=&862& data-rawheight=&482& src=&https://pic2.zhimg.com/50/v2-f93b9769d6feb88dfc1490a_b.jpg& class=&origin_image zh-lightbox-thumb& width=&862& data-original=&https://pic2.zhimg.com/50/v2-f93b9769d6feb88dfc1490a_r.jpg&&&/figure&&br&&figure&&img data-rawwidth=&867& data-rawheight=&488& src=&https://pic4.zhimg.com/50/v2-635ae2befc487fb11a2d5260cdc78e80_b.jpg& class=&origin_image zh-lightbox-thumb& width=&867& data-original=&https://pic4.zhimg.com/50/v2-635ae2befc487fb11a2d5260cdc78e80_r.jpg&&&/figure&&br&&figure&&img data-rawwidth=&869& data-rawheight=&486& src=&https://pic4.zhimg.com/50/v2-ba5aeadee525d410631f_b.jpg& class=&origin_image zh-lightbox-thumb& width=&869& data-original=&https://pic4.zhimg.com/50/v2-ba5aeadee525d410631f_r.jpg&&&/figure&&p&另外还有专门优化的TAA:&a href=&//link.zhihu.com/?target=https%3A//github.com/playdeadgames/temporal& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&playdeadgames/temporal&/a&&/p&&p&3.That Dragon ,Cancer所使用的Low polygon风格,下面是我存笔记中的,不知道从哪里找到的了。&/p&&br&&figure&&img data-rawwidth=&564& data-rawheight=&1782& src=&https://pic4.zhimg.com/50/v2-8f0bdf1a333af32c3d4ade_b.jpg& class=&origin_image zh-lightbox-thumb& width=&564& data-original=&https://pic4.zhimg.com/50/v2-8f0bdf1a333af32c3d4ade_r.jpg&&&/figure&
能做出这类风格独特的游戏画面,开发人员(尤其是美术)应该是对自己水平是相当自信的才敢剑走偏锋吧,否则做出来不伦不类,还不如走传统美术风格或者pbr。基于这几家公司已发布的技术讲解猜测下可能会用到的几种技术:1.FireWatch所使用的分层雾 基本原理:…
&figure&&img src=&https://pic3.zhimg.com/v2-a6c9cbfff1c367a469feb_b.jpg& data-rawwidth=&1920& data-rawheight=&1015& class=&origin_image zh-lightbox-thumb& width=&1920& data-original=&https://pic3.zhimg.com/v2-a6c9cbfff1c367a469feb_r.jpg&&&/figure&&p&“原画师”其实不是“画师”,这是一个很含混的名称,这个岗位更准确的称呼应该是“游戏角色原画设计师”,不信你看一下招聘网站的岗位信息:&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-c2e02d1f4e8fea2181a2ea_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&263& data-rawheight=&353& class=&content_image& width=&263&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&所以,这个岗位不是“画师”,而是“设计师”。&/p&&p&&br&&/p&&p&既然你未来要做的是“设计师”,所以,一定要明白自己的学习方向,游戏公司除了基本的画功要求,你的竞争力更多体现在能不能画出有意思的设计。在游戏研发公司里,这个岗位做的最多的是三视图,不需要你细化太深,看重你作品的设计逻辑。&/p&&p&&br&&/p&&p&最常见的三视图&/p&&p&&br&&/p&&figure&&img src=&https://pic2.zhimg.com/v2-00c8ddc2cb5eb_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1080& data-rawheight=&875& class=&origin_image zh-lightbox-thumb& width=&1080& data-original=&https://pic2.zhimg.com/v2-00c8ddc2cb5eb_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic3.zhimg.com/v2-712fbbdaf276ac9d21d8ab8ee8c0ff35_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1080& data-rawheight=&814& class=&origin_image zh-lightbox-thumb& width=&1080& data-original=&https://pic3.zhimg.com/v2-712fbbdaf276ac9d21d8ab8ee8c0ff35_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic1.zhimg.com/v2-bac655a0b6339cd49fbd3c05796bbfda_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1080& data-rawheight=&822& class=&origin_image zh-lightbox-thumb& width=&1080& data-original=&https://pic1.zhimg.com/v2-bac655a0b6339cd49fbd3c05796bbfda_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&今天,请来原画人的角色设计讲师育宏,以刺客类型的角色为例,阐述设计观念及设计的步骤,希望对大家的角色设计有所帮助。&/p&&p&&br&&/p&&p&女刺客&/p&&p&&br&&/p&&figure&&img src=&https://pic3.zhimg.com/v2-fee3769f_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1080& data-rawheight=&1660& class=&origin_image zh-lightbox-thumb& width=&1080& data-original=&https://pic3.zhimg.com/v2-fee3769f_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&如果要做出一个有特色、有差异的刺客,你应该从哪里入手呢?&/p&&p&&br&&/p&&p&&b&第一步,思考人物的个性。&/b&&/p&&p&刺客常贴的 Tag 有:反派、气场、魅力、狡诈、聪明、气场。根据这些关键词发散思维。&/p&&p&&br&&/p&&figure&&img src=&https://pic1.zhimg.com/v2-9bb8db96db3f078cc6fc68_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&381& data-rawheight=&310& class=&content_image& width=&381&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&&b&第二步,设置形象&/b&&/p&&p&logo 方面:符号“X” 有坏、反面、不正确的含义&/p&&p&&br&&/p&&figure&&img src=&https://pic1.zhimg.com/v2-f4f9b42d9ed07df74ada05_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&613& data-rawheight=&175& class=&origin_image zh-lightbox-thumb& width=&613& data-original=&https://pic1.zhimg.com/v2-f4f9b42d9ed07df74ada05_r.jpg&&&/figure&&p&&br&&/p&&p&胸口三个 X 传达出来想要的感觉(表达出关键词):坏的、反面、不正确。&/p&&p&&br&&/p&&p&&b&第三步,选择颜色&/b&&/p&&p&我用了紫色,表达出:不乖,比较皮,魅惑的感觉。&/p&&p&&br&&/p&&figure&&img src=&https://pic2.zhimg.com/v2-77c2ce25ab8de4bab9181bba386518fd_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&378& data-rawheight=&91& class=&content_image& width=&378&&&/figure&&p&&br&&/p&&p&其他地方主要用黑色,凸显出气场,给人很凶很恶的感觉。&/p&&p&&br&&/p&&p&&b&第四步,造型元素&/b&&/p&&p&为了突出狡诈的特点,我借用了狐狸的元素来设计肩甲造型&/p&&p&&br&&/p&&figure&&img src=&https://pic1.zhimg.com/v2-ada1aba7c17_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&560& data-rawheight=&198& class=&origin_image zh-lightbox-thumb& width=&560& data-original=&https://pic1.zhimg.com/v2-ada1aba7c17_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&添加尖刺外轮廓凸显出攻击性,服装采用朋克摇滚风的皮衣、皮裤和赛博朋克的机械元素。&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-4bed3461f02ccfde7ec79cd3cbf5e1c4_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&226& data-rawheight=&130& class=&content_image& width=&226&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&&br&&/p&&p&拥有上面的想法之后,就可以开始动草稿。&/p&&p&&br&&/p&&figure&&img src=&https://pic1.zhimg.com/v2-ad5b0d71fab8ffaafd3e9_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&658& data-rawheight=&466& class=&origin_image zh-lightbox-thumb& width=&658& data-original=&https://pic1.zhimg.com/v2-ad5b0d71fab8ffaafd3e9_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&左图版本 1,很古典的刺客设计,有披肩,下摆,不过衣服显得太过死板,这个草稿设计比较失败,所以放弃。&/p&&p&&br&&/p&&p&中图版本 2:加了黑色皮裤,背心外套,袖子翻折显得现代,到这一步就比较确定怎么画出需要的角色,再起稿&/p&&p&&br&&/p&&p&右图版本 3:放弃上版本 2的立领,因为那个立领看起来很“路边摊”,让层次感看起来会比较特别,加上紧身短 T,胸前的 X元素等。加入很多形象性的东西,比如狐、X 元素等。&/p&&p&&br&&/p&&p&武器我设计成折叠式,看起来短,打开后有朋克摇滚风的电子波浪,攻击性变强。&/p&&p&&br&&/p&&figure&&img src=&https://pic3.zhimg.com/v2-d69c4c8f1fb3f40c304bff_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&468& data-rawheight=&612& class=&origin_image zh-lightbox-thumb& width=&468& data-original=&https://pic3.zhimg.com/v2-d69c4c8f1fb3f40c304bff_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&这是女刺客的三视图&/p&&p&&br&&/p&&figure&&img src=&https://pic2.zhimg.com/v2-9e4a67bd0b901cee772f4_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1080& data-rawheight=&814& class=&origin_image zh-lightbox-thumb& width=&1080& data-original=&https://pic2.zhimg.com/v2-9e4a67bd0b901cee772f4_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&总结起来,就是设计最基本的五大步骤:&/p&&p&&br&&/p&&p&1,定义主题。想要做一个什么样的主题。&/p&&p&2,发散。依照主题发散思维想象。&/p&&p&3,收敛。剃掉多余的元素。&/p&&p&4,开始design。出三到五个草稿。&/p&&p&5,验证。检查作品传达的感觉与主题是否搭配。&/p&&p&&br&&/p&&p&我觉得一个厉害的游戏概念设计师,在“收敛”和“验证”上的能力很突出。很多同学设计一个东西可能会一直往上面加部件,东西越多别人越难理解这个设计,所以让别人知道你的想法你的出发点才是一个好的设计 Less is More 东西越少别人越容易理解!&/p&&p&&br&&/p&&p&最后,出一个课外作业:&/p&&p&比如我们要设计一个NPC“光明骑士”,下面是我分析的特点&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-7da8ce3ea419e991f5b3a96c616d8d62_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&906& data-rawheight=&531& class=&origin_image zh-lightbox-thumb& width=&906& data-original=&https://pic4.zhimg.com/v2-7da8ce3ea419e991f5b3a96c616d8d62_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&网络上我搜了一些角色图,你来分析一下哪一张最符合设定?&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-392b492f6a96cda54d3a71_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&694& data-rawheight=&615& class=&origin_image zh-lightbox-thumb& width=&694& data-original=&https://pic4.zhimg.com/v2-392b492f6a96cda54d3a71_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&&br&&/p&&p&更多角色设计公开课视频,可以加我索取。QQ:&/p&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-ddd3e83aabb3bb49e89b48_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&720& data-rawheight=&1683& class=&origin_image zh-lightbox-thumb& width=&720& data-original=&https://pic4.zhimg.com/v2-ddd3e83aabb3bb49e89b48_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&老师作品&/p&&p&&br&&/p&&figure&&img src=&https://pic3.zhimg.com/v2-baa8792b23addb13b55a6e2d60d2eca6_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&720& data-rawheight=&4286& class=&origin_image zh-lightbox-thumb& width=&720& data-original=&https://pic3.zhimg.com/v2-baa8792b23addb13b55a6e2d60d2eca6_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-fa59cf7ba5a66e4cb7c35ae88a6a5373_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1080& data-rawheight=&1493& class=&origin_image zh-lightbox-thumb& width=&1080& data-original=&https://pic4.zhimg.com/v2-fa59cf7ba5a66e4cb7c35ae88a6a5373_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic3.zhimg.com/v2-e086a81c753445ccc08b47da0f37b19e_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1080& data-rawheight=&570& class=&origin_image zh-lightbox-thumb& width=&1080& data-original=&https://pic3.zhimg.com/v2-e086a81c753445ccc08b47da0f37b19e_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic1.zhimg.com/v2-3f6c285aac32dde5c65f85caf97ecf1f_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&848& data-rawheight=&1200& class=&origin_image zh-lightbox-thumb& width=&848& data-original=&https://pic1.zhimg.com/v2-3f6c285aac32dde5c65f85caf97ecf1f_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic3.zhimg.com/v2-f77a9cbbfddce_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&848& data-rawheight=&1200& class=&origin_image zh-lightbox-thumb& width=&848& data-original=&https://pic3.zhimg.com/v2-f77a9cbbfddce_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic3.zhimg.com/v2-9e94f3a619c04bb3829c_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&865& data-rawheight=&1200& class=&origin_image zh-lightbox-thumb& width=&865& data-original=&https://pic3.zhimg.com/v2-9e94f3a619c04bb3829c_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic1.zhimg.com/v2-bda8d699e1b032fd755810_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&848& data-rawheight=&1200& class=&origin_image zh-lightbox-thumb& width=&848& data-original=&https://pic1.zhimg.com/v2-bda8d699e1b032fd755810_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-5ceba76e8baa85a32883_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1080& data-rawheight=&1131& class=&origin_image zh-lightbox-thumb& width=&1080& data-original=&https://pic4.zhimg.com/v2-5ceba76e8baa85a32883_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic2.zhimg.com/v2-a6344aefb295b904ef27ee4ab4e10457_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&974& data-rawheight=&1200& class=&origin_image zh-lightbox-thumb& width=&974& data-original=&https://pic2.zhimg.com/v2-a6344aefb295b904ef27ee4ab4e10457_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic3.zhimg.com/v2-d06c9f36c250a9fc1969_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&924& data-rawheight=&1200& class=&origin_image zh-lightbox-thumb& width=&924& data-original=&https://pic3.zhimg.com/v2-d06c9f36c250a9fc1969_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic3.zhimg.com/v2-adeaa9675b1e_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1066& data-rawheight=&1200& class=&origin_image zh-lightbox-thumb& width=&1066& data-original=&https://pic3.zhimg.com/v2-adeaa9675b1e_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic1.zhimg.com/v2-dacc2cedbca7dfb094f14f_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&981& data-rawheight=&1200& class=&origin_image zh-lightbox-thumb& width=&981& data-original=&https://pic1.zhimg.com/v2-dacc2cedbca7dfb094f14f_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-c4c3b0ecc602a_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1049& data-rawheight=&1200& class=&origin_image zh-lightbox-thumb& width=&1049& data-original=&https://pic4.zhimg.com/v2-c4c3b0ecc602a_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic3.zhimg.com/v2-f390fc144a27c32dc3d81bdc_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1008& data-rawheight=&1200& class=&origin_image zh-lightbox-thumb& width=&1008& data-original=&https://pic3.zhimg.com/v2-f390fc144a27c32dc3d81bdc_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic2.zhimg.com/v2-6c9b11ca5f3cb4b4b27bd73e111c13e5_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&720& data-rawheight=&4055& class=&origin_image zh-lightbox-thumb& width=&720& data-original=&https://pic2.zhimg.com/v2-6c9b11ca5f3cb4b4b27bd73e111c13e5_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&&b&课程目录&/b&&/p&&p&&br&&/p&&figure&&img src=&https://pic2.zhimg.com/v2-56c5aba710f70dee95b878f55e682176_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&720& data-rawheight=&2672& class=&origin_image zh-lightbox-thumb& width=&720& data-original=&https://pic2.zhimg.com/v2-56c5aba710f70dee95b878f55e682176_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&figure&&img src=&https://pic1.zhimg.com/v2-bbc1f888eedbe164be2671_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&720& data-rawheight=&3501& class=&origin_image zh-lightbox-thumb& width=&720& data-original=&https://pic1.zhimg.com/v2-bbc1f888eedbe164be2671_r.jpg&&&/figure&&p&&br&&/p&&p&&br&&/p&&p&更多角色设计公开课视频,可以加我索取。QQ:&/p&
“原画师”其实不是“画师”,这是一个很含混的名称,这个岗位更准确的称呼应该是“游戏角色原画设计师”,不信你看一下招聘网站的岗位信息: 所以,这个岗位不是“画师”,而是“设计师”。 既然你未来要做的是“设计师”,所以,一定要明白自己的学习方向…
&figure&&img src=&https://pic4.zhimg.com/bd41d3a5cbfde185dbed77d_b.jpg& data-rawwidth=&724& data-rawheight=&391& class=&origin_image zh-lightbox-thumb& width=&724& data-original=&https://pic4.zhimg.com/bd41d3a5cbfde185dbed77d_r.jpg&&&/figure&&p&放置类游戏,是一种非常奇特的游戏形态。&/p&&p&在玩放置类游戏时,你几乎是不需要对游戏进行任何操作的。在大多数的游戏时间里,你只是在“看”,看你的游戏角色在那儿自顾自的成长发展,消灭敌人,在冒险的旅途上耀武扬威。&/p&&p&这几乎是“反游戏”的。&/p&&p&我们知道,大多数情况下,我们会认为游戏的核心体验是各种“操作—&反馈”的集合。而放置类游戏,似乎在用“边缘化游戏操作”的方式,来挑战这种说法。&/p&&p&那么,所谓的放置类游戏,是否还能称得上是游戏的一种?而当我们在玩所谓的放置类游戏时,我们到底在玩什么?&/p&&p&我们来试着分析一下。&/p&&h3&1.反游戏吗?&/h3&&p&放置类游戏并没有真正的脱离“操作—&反馈”这一基础游戏体验设计的原则。&/p&&p&即便在放置类游戏中,由玩家来操作内容很少,但很难说的上是被边缘化,反而是操作行为的结果一般都会被极端强调:或是影响整个游戏进程的策略性选择、或是对当前场景下角色行为结果的极端强化、或是对一整段游戏流程的总结性验收。&/p&&p&游戏进程中,脱离玩家操作的自发性游戏行为,大多数都是以如下形式来定位的:&/p&&ul&&li&用于表现玩家的策略性选择的结果,作为用户操作行为的一个长期性反馈;&/li&&li&用于衬托玩家操作行为的极端有效性,强化玩家操作内容的反馈力度;&/li&&li&为玩家的后续操作行为做预备性工作,说明玩家操作内容的合理性;&/li&&/ul&&p&所以放置类游戏的设定,并不会存在任何“反游戏”的设计思路。&/p&&h3&2.玩什么呀!&/h3&&p&当前所谓的玩放置类游戏,其核心设计思路是,极端强调玩家角色的(数值)成长性内容,并将与其无关的玩法系统全部边缘化处理掉。&/p&&p&角色的数值成长,包括成长的方式和途径,以及成长结果的反馈,在不同的(放置类)游戏中会有不同的表达方式,但基本思路都是一样的。&/p&&p&角色数值成长的表现机制,加上玩家操作对于游戏进程的影响机制,这两点就是放置类游戏的核心设计要点。&/p&&blockquote&&p&像在《冒险与挖矿》中,角色的数值成长方式基本表现为冒险队伍中每个伙伴的获得和等级提升;&/p&&p&在《Nonstop Knight》中表现为骑士的等级、装备和技能的获取和提升;&/p&&p&而《TapTitans》则略微复杂,表现为主角的等级提升、装备获取、一大帮子帮手们的数量增加和等级提升,以及玩家本身可用操作的基础点击伤害和技能伤害等;&/p&&/blockquote&&p&而对于玩家来说,玩的就是游戏中角色数值的成长。&/p&&h3&3.为什么好玩?&/h3&&p&放置类游戏为什么好玩?虽然我们已经弄明白,当前玩家们在玩放置类游戏时,玩的就是游戏内角色的数值成长;&/p&&p&可这种游戏体验,并非仅仅是放置类游戏才能提供的独特性玩法,事实上在现在的游戏之中,成长性元素可以说是最为常见的游戏设计元素之一,为什么放置类游戏会让人觉得好玩呢?&/p&&p&我认为,最核心的原因是,放置类游戏的&b&低投入度需求&/b&。&/p&&p&简单来说,&b&投入度&/b&需求越高,往往玩家期望获得的反馈质量也越高;而&b&投入度&/b&需求越低,相应的玩家对于反馈质量的预期也会越低。&/p&&p&近些年&b&低投入度设计&/b&几乎可以说是一股潮流,在影响着整个业界的游戏设计思路,并有愈演愈烈的趋势。&/p&&p&端游MMORPG时代,低投入度设计思路的代表是征途这类自动寻路自动打怪的挂机式体验,但仍有大量MMOPRG游戏是坚持去自动化的,比如WOW、GW2、梦幻这些;到了页游所谓的ARPG时代,自动化设计几乎已经是标配了,甚至交接任务都不需要手动处理,放置类游戏的基础体验初见端倪;例子我就不举了,俯拾皆是;而目前的手游时代,但凡重度一些的RPG网游,自动化设计也早已成为标配了,并且冒出来一种更为极端的低投入度游戏:放置类游戏这一奇葩。&/p&&p&(低投入度设计思路,能够兴起并愈演愈烈的)原因是什么?&/p&&p&我觉得,是玩家群体的分流、以及玩家行为模式的分流(本来想在这儿展开讨论的,但考虑了一下之后,觉得这个论题太大,展开的话肯定会影响本文所述主题。恩我们以后再细说吧)。&/p&&p&总而言之呢,就是越来越多的玩家,更倾向于在移动终端上,玩到投入度需求更低的游戏。但投入度需求低,意味着产品本身粘着度也会变弱、玩家也更容易离开;所以游戏的反馈质量却要求越高越好。&/p&&p&所以放置类游戏的核心出发点是,在降低用户的投入度的前提下,给予用户足够出色的反馈内容;目前来说,这种反馈多数聚焦在玩家角色的数值成长方面。&/p&&h3&4.前景如何?&/h3&&p&目前来看,放置类游戏的市场容量并不是非常大。但我看好这类游戏的发展前景。&/p&&p&因为顺应潮流。&/p&&p&目前来看,放置类游戏的表现形式仍然比较固化。在没有更好的表现形式的前提下,或许放置类游戏的市场容量不会有太大改观;但我看好这类游戏的发展前景。&/p&&p&因为顺应潮流。&/p&&p&只是要记住,放置类游戏的核心出发点是,降低用户的&b&投入度&/b&需求。&/p&
放置类游戏,是一种非常奇特的游戏形态。在玩放置类游戏时,你几乎是不需要对游戏进行任何操作的。在大多数的游戏时间里,你只是在“看”,看你的游戏角色在那儿自顾自的成长发展,消灭敌人,在冒险的旅途上耀武扬威。这几乎是“反游戏”的。我们知道,大多…
&figure&&img src=&https://pic1.zhimg.com/v2-494ff181cc_b.jpg& data-rawwidth=&1800& data-rawheight=&1000& class=&origin_image zh-lightbox-thumb& width=&1800& data-original=&https://pic1.zhimg.com/v2-494ff181cc_r.jpg&&&/figure&&blockquote&在这家页游公司上班是何种体验?&br&“点一下,上一年&br&工资攒不下一分钱”&/blockquote&&h2&&b&大家好我是渣渣辉&/b&&/h2&&figure&&img src=&https://pic4.zhimg.com/v2-a7059464bcb155f50822f4fdbb990e1b_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&2551& data-rawheight=&1134& class=&origin_image zh-lightbox-thumb& width=&2551& data-original=&https://pic4.zhimg.com/v2-a7059464bcb155f50822f4fdbb990e1b_r.jpg&&&/figure&&p&我毕业于985,先前在上海做了三年游戏,中途换了三家公司。&/p&&p&&br&&/p&&p&中国游戏行业的烂,是大多都烂,不管是做端游手游还是网页游戏,能说的上好的大厂凤毛麟角,而页游,却是这其中最烂的没有之一。&/p&&p&&br&&/p&&p&我这几年做过端游、手游,但除了一个手游,公司勉强收回了成本以外,经历过的项目都死了。&/p&&p&&br&&/p&&p&在国内游戏能不能成,游戏质量只是一方面,而更多的则是玄学,讲究天时地利人和。&/p&&p&而成功项目经历是衡量一个游戏策划水平的关键,毕竟游戏策划也是一个玄学职业,国内既没有大学有该专业,又没有什么简单评判的标准。&/p&&p&&br&&/p&&p&以我这三年的简历,想找一个大厂是难上加难了。&/p&&p&于去年,我只身来到了深圳福田区,花了一千八租了个小房间,面试进了一家页游公司。&/p&&p&&br&&/p&&p&对,就是做类似“大家好我是渣渣辉,点一下,玩一年,装备不花一分钱”那种页游的公司,但远不如人家有名气。&/p&&p&&br&&/p&&p&&b&这是三年前的我根本想也没想到的事情。&/b&&/p&&p&&br&&/p&&h2&&b&企鹅来的程序员&/b&&/h2&&figure&&img src=&https://pic3.zhimg.com/v2-dd7cf677c391c997e085f9_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&2551& data-rawheight=&1134& class=&origin_image zh-lightbox-thumb& width=&2551& data-original=&https://pic3.zhimg.com/v2-dd7cf677c391c997e085f9_r.jpg&&&/figure&&p&&br&&/p&&p&这是一家将近一百人的公司,里面有4个项目。这在福田这块,算是大规模了。但是一走进去,氛围和我之前呆过的公司都不一样。&/p&&p&&br&&/p&&p&你要说他是卖保险,或者搞培训的都没问题,至于游戏公司是真看不出来。大家排排坐在一个个单元格里,最左边的墙壁上还贴了个员工守则,爱岗敬业四个大红字特别显眼,房间里采光不好,白天也开着灯,气氛沉闷。&/p&&p&&br&&/p&&p&我项目的老大也是大有来头,之前是企鹅的一个程序员,据说还管着十几号人。&/p&&p&&b&虽然没人知道他之前干了什么项目,但是一听是企鹅的,大家就觉得大厂来的就是不一样。&/b&&/p&&p&&br&&/p&&p&不过我对他却无好感,人长的普普通通,却不知为何有假笑的习惯,阿谀奉承和面冷言横切换自如。&/p&&p&&br&&/p&&p&面试的时候,前两轮都很顺利,待我觉得万事妥当之后,他作为最终面又故意刁难,生生砍了我2千工资。&/p&&p&“你看从211毕业后,几年了没有一个好的项目经历,这里其实也是一个你机会,呵呵。”他假笑道。&/p&&p&&br&&/p&&p&“我希望你能好好做几年,这样你的成长也有帮助。”&/p&&p&&br&&/p&&p&明眼人早就知道他话里有话,我的情况简历上清清楚楚,他早已了解却又拐弯抹角,这又是何必。&/p&&p&&br&&/p&&p&最痛苦的是,他一个程序员出生,却是我们的项目的制作人。&/p&&p&&br&&/p&&h2&&b&大作玩的就是美术&/b&&/h2&&figure&&img src=&https://pic4.zhimg.com/v2-14fe70b4c58edfb066af9_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&2551& data-rawheight=&1134& class=&origin_image zh-lightbox-thumb& width=&2551& data-original=&https://pic4.zhimg.com/v2-14fe70b4c58edfb066af9_r.jpg&&&/figure&&p&说起游戏制作人,咱别提小岛秀夫、宫崎英高这种大佬,至少应该以做出一款好游戏为使命,再不济也应该热爱这个行业。&/p&&p&&br&&/p&&p&而我们项目的制作人和他们相比,可以说是人和动物的区别。&/p&&p&有一回加班到十点准备回家,一进公司的电梯,发现制作人也在里头,电梯门一关,只有我们俩场面有些尴尬。&/p&&p&&br&&/p&&p&“我最近在玩黑暗之魂,挺难的,不过很有成就感。”我闲扯了一个话题。&/p&&p&“呵呵,这些大作玩的就是个美术。”制作人惯用的假笑浮上了脸。&/p&&p&&br&&/p&&p&这天没法聊了。&/p&&p&&br&&/p&&p&说到美术,页游惯用的套路就是大翅膀、全身金闪闪、武器超大走路带光,女性角色就是露大腿,不成比例的大胸,讲究的就是个性感,这在我们项目也一样。&/p&&p&盯着显示器上了一天班,我闭上眼睛脑海里都是金色}

我要回帖

更多关于 荒古武器开魔能按键 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信