学习累了 想玩塞尔达,口袋要回一类的经典游戏,哪位大神指导怎么下载怎么玩(Mac上面)

塞尔达传说网页版|塞尔达传说 30周年纪念版下载3D网页版_西西游戏下载
西西软件园多重安全检测下载网站、值得信赖的软件下载站!
相关软件 11.1M/中文/ 11.7M/中文/ 1.37G/中文/ 57.8M/中文/ 80.3M/中文/ 7.4M/中文/ 6.4M/中文/ 128.0M/中文/ 26.3M/中文/ 15M/中文/顶好评:50%踩坏评:50请简要描述您遇到的错误,我们将尽快予以修正。轮坛转帖HTML方式轮坛转帖UBB方式
传说可谓是全球最为著名的一个冒险游戏了吧,该有在今天已经快30周年了,作为任天堂旗下经典的动作角色扮演游戏,《塞尔达传说》系列曾给玩家们带来过无数欢乐,粉丝们对它的喜爱自然不言而喻。本次就为大家带来最新的塞尔达传说30周年,又国外的两位粉丝程序员Scott Lininger和美工Mike Magee就别出心裁,亲自制作了一款以《塞尔达传说》系列初代为蓝本的小游戏,并且还能够在网页上游玩。想体验的玩家赶紧试试吧!游戏特点:这款3D版的《塞尔达传说》游戏采用了更加立体的3D效果,进入游戏后仿佛令人置身于复古的3D塞尔达世界中,而且游戏的配乐和音效也取材于原版游戏。仅用浏览器进行游戏就能够带来如此优秀的效果,实在是得赞赏他们两位的才华。此外,这款复古画面的游戏已经可以进行免费试玩,只需要打开浏览器就能进入游戏。使用说明:1、等待载入2、开始游戏
塞尔达传说是任天堂的一个传奇的动作冒险类型的电视游戏系列,宫本茂是这个系列的创始人。游戏融合了动作冒险解谜角色扮演,还包含了少量的平台跳跃,潜入,竞速等等的元素。是任天堂的招牌系列之一,在全球有很大的
中文 / 1.37G塞尔达传说风之杖中文版在window
中文 / 128.0M&塞尔达传说时之笛的故事开
中文 / 7.4M这是一部非常优秀的动作冒险游戏
中文 / 57.8M《塞尔达传说:风之杖》的故事结
中文 / 80.3M《塞尔达传说:灵魂轨迹》是《塞
中文 / 26.3M玩过塞尔达传说的童鞋都知道,《
塞尔达传说 30周年纪念版 3D网页版
下载帮助西西破解版软件均来自互联网, 如有侵犯您的版权, 请与我们联系。热门车型:
努力加载数据中,请稍后...
热门品牌:
热门关注:
手机配件:
热门品牌:
热门关注:
电脑整机:
笔记本配件:
热门品牌:
热门关注:
热门关注:
智能穿戴:
智能家居:
装机硬件:
外设配件:
热门品牌:
热门关注:
相机配件:
数码产品:
数码配件:
热门品牌:
热门关注:
平板电视:
家庭影音:
白色家电:
厨卫/小家电:
办公打印:
投影设备:
网络设备:
无线网络:
汽车电子:
各地报价:
热门车系:
商家促销:
 |  |  |
热门地区推荐经销商
努力加载数据中,请稍后...
玩转IT必须懂
随着三大运营商的流量之争日趋激烈,为抢夺新用户,迎合客户需求,联通纷纷联合各大互联网...
看到“iPhoneX黄牛只加价100”的新闻后,某张姓小编感叹了一句:4-5周发货,赚了...
苹果电池膨胀事件还在不断发酵,到底是5%范围内的可接受意外,还是去年三星Note7爆炸门的...
努力加载数据中,请稍后...
公众号推荐
微信名:VR饭
简介:虚拟现实?福利资源?VR眼镜?你想知道的都在VR饭!
微信名:摄影部落
简介:欣赏数百套精美摄影作品,海量摄影技巧及PS教程分享
微信名:VRfine
简介:分享和推荐最好玩的VR玩法!
微信名:聚超值
简介:致力于帮助广大网友,买到更有性价比网购产品的分享平台
微信名:太平洋电脑网
简介:DIY装机进“数码帮”,发名称可查数码产品参数和报价
您可能感兴趣的车
努力加载数据中,请稍后...
太平洋电脑网
太平洋汽车网
太平洋时尚网
太平洋亲子网
太平洋家居网6013被浏览1248001分享邀请回答2.3K469 条评论分享收藏感谢收起13417 条评论分享收藏感谢收起查看更多回答&p&&a href=&///?target=http%3A///forum/showthread.php%3Ft%3D1303431& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Nintendo First-Party Thread: The Teams, The Games, The Future&i class=&icon-external&&&/i&&/a&,这是NEOGAF论坛对任天堂目前第一方开发组的总结(不保证准确性和实效性)。概括来说,君岛社长把原来的EAD和SPD合并成了EPD,而EAD和SPD底下的小组也就变成了现在EPD的小组。&/p&&p&从人员构成上看大体是这样,也有一些变动,比方说原来EAD东京的小泉欢晃现在是manager,原EAD东京的那个组的负责人现在是林田宏一(Captain Toad开始的制作人,之前是3D马系列的director,奥德赛目前看来毫无他的痕迹让我很期待会不会有captain toad 2)。再比方说野上恒是第二组的负责人(曾经的EAD第二组),他们一直在做动森和splatoon。&/p&&p&但是需要指出的是,这11个小组里面有一个小组是负责手游的(Nintendo EPD Smart Device Production Group),另外还有主要负责与第三方进行接洽和技术支持的小组。当然今后这些小组会负责什么还要等明年和后年任天堂的lineup出来才能确定。&/p&&p&以下是那个上面那个网址里我认为是近期会有第一方作品的组(也是我比较熟悉他们作品的组,其他的组确实不太了解)的详细,再次声明不保证准确性和实效性:&/p&&p&EPD第二组:&/p&&p&
负责人:野上恒&/p&&p&
主要作品:动物之森,splatoon&/p&&br&&p&EPD第三组:&/p&&p&
负责人:青沼英二&/p&&p&
主要作品:各种塞尔达&/p&&br&&p&EPD第四组:&/p&&p&
负责人:木村浩之(不确定)&/p&&p&
主要作品:2D马里奥,皮克敏,马里奥制造(大概是宫本茂直系?)&/p&&br&&p&EPD第六组:&/p&&p&
负责人:河本浩一&/p&&p&
主要作品:1-2 switch,miitopia&/p&&br&&p&EPD第七组&/p&&p&
负责人:山野勝也(不确定,以及感谢评论指出翻译)&/p&&p&
主要作品:节奏天国,miitomo,朋友聚会(坂本贺勇的组)&/p&&br&&p&EPD第八组(东京)&/p&&p&
负责人:林田宏一&/p&&p&
主要作品:3D马里奥,蘑菇队长&/p&&br&&p&EPD第九组&/p&&p&
负责人:矢吹光佑&/p&&p&
主要作品:马里奥赛车,ARMS&/p&&br&&p&EPD智能设备组(手游组)&/p&&p&
负责人:紺野秀樹&/p&
,这是NEOGAF论坛对任天堂目前第一方开发组的总结(不保证准确性和实效性)。概括来说,君岛社长把原来的EAD和SPD合并成了EPD,而EAD和SPD底下的小组也就变成了现在EPD的小组。从人员构成上…
&p&&b&时隔一年,刷新一下:加了目录,更新生活&/b&&/p&&p&&b&1、万卷书&/b&&/p&&p&&b&2、万里路&/b&&/p&&p&&b&3、练练字&/b&&/p&&p&&b&4、学美食&/b&&/p&&p&&b&5、多考证&/b&&/p&&p&&b&6、万部剧&/b&&/p&&p&&b&7、信用消费&/b&&/p&&p&&b&8、信息储备&/b&&/p&&p&&b&9、运动健身&/b&&/p&&p&&b&10、 提高效率&/b&&/p&&p&&b&11、 英语打卡&/b&&/p&&p&&b&12、 生活贴士&/b&&/p&&p&&b&13、 简化生活&/b&&/p&&p&&b&14、 时间观念&/b&&/p&&p&&b&15、 平淡朴实&/b&&/p&&p&&b&16、 关心身边人&/b&&/p&&p&&b&17、单身幸福感&/b&&/p&&p&&b&一、 万卷书。读万卷书,就近办一张图书卡,我办的是安徽省图书证。平常主要看期刊杂志,特别是数码科技一类,经常看做笔记(图片剪辑保存、ECXEL统计)。其它类似推荐,慕课和kindle,它们都是为了便携高效学习。&/b&&/p&&img src=&/v2-34adeed27d13ebf7a2d279c22ef83724_b.png& data-caption=&& data-rawwidth=&600& data-rawheight=&452& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&/v2-34adeed27d13ebf7a2d279c22ef83724_r.png&&&img src=&/dc82c060fccccfeecb6722_b.png& data-caption=&& data-rawwidth=&1205& data-rawheight=&899& class=&origin_image zh-lightbox-thumb& width=&1205& data-original=&/dc82c060fccccfeecb6722_r.png&&&img src=&/v2-a89d2baf73a3e2a72df53cee46de34ed_b.png& data-caption=&& data-rawwidth=&1080& data-rawheight=&1920& class=&origin_image zh-lightbox-thumb& width=&1080& data-original=&/v2-a89d2baf73a3e2a72df53cee46de34ed_r.png&&&img src=&/v2-8dca72a43ee16d2ab29ef8507fad3146_b.jpg& data-caption=&& data-rawwidth=&1514& data-rawheight=&868& class=&origin_image zh-lightbox-thumb& width=&1514& data-original=&/v2-8dca72a43ee16d2ab29ef8507fad3146_r.jpg&&&img src=&/v2-bcdf73ccc895_b.png& data-caption=&& data-rawwidth=&1328& data-rawheight=&1259& class=&origin_image zh-lightbox-thumb& width=&1328& data-original=&/v2-bcdf73ccc895_r.png&&&img src=&/v2-339b37ed22dbce_b.png& data-caption=&& data-rawwidth=&2279& data-rawheight=&1257& class=&origin_image zh-lightbox-thumb& width=&2279& data-original=&/v2-339b37ed22dbce_r.png&&&img src=&/v2-cdc0dd2acdec707f434a6ff_b.png& data-caption=&& data-rawwidth=&1891& data-rawheight=&934& class=&origin_image zh-lightbox-thumb& width=&1891& data-original=&/v2-cdc0dd2acdec707f434a6ff_r.png&&&p&&b&二、 万里路。行万里路,每月集中休假一次,正好可以外出旅途。结交不同朋友,品尝各种美食,游览美丽风景,我办的是国际青年旅舍会员卡。各种旅游,各种笔记,各种总结。现在工作不忙时候,想学习一些摄影和图像技术,记录不同地方精彩瞬间。&/b&&/p&&img src=&/v2-d4c2cf84c8848dda5975_b.jpg& data-caption=&& data-rawwidth=&1861& data-rawheight=&852& class=&origin_image zh-lightbox-thumb& width=&1861& data-original=&/v2-d4c2cf84c8848dda5975_r.jpg&&&img src=&/v2-fbf_b.png& data-caption=&& data-rawwidth=&2471& data-rawheight=&1222& class=&origin_image zh-lightbox-thumb& width=&2471& data-original=&/v2-fbf_r.png&&&img src=&/v2-06ac722d7ea0014de26eea_b.png& data-caption=&& data-rawwidth=&1401& data-rawheight=&1251& class=&origin_image zh-lightbox-thumb& width=&1401& data-original=&/v2-06ac722d7ea0014de26eea_r.png&&&p&&b&三、练练字。下班练练字,抄抄诗歌散文。养成良好习惯,锻炼科学思维,培养一定审美。充实生活,增加人生厚度。&/b&&/p&&img src=&/v2-f3c6a75ddbd9d07ef1bf_b.png& data-caption=&& data-rawwidth=&1357& data-rawheight=&965& class=&origin_image zh-lightbox-thumb& width=&1357& data-original=&/v2-f3c6a75ddbd9d07ef1bf_r.png&&&p&&b&练习小楷&/b&&/p&&img src=&/v2-405f44f7a6dfebaf1d3fe7_b.png& data-caption=&& data-rawwidth=&760& data-rawheight=&925& class=&origin_image zh-lightbox-thumb& width=&760& data-original=&/v2-405f44f7a6dfebaf1d3fe7_r.png&&&p&&b&练习书籍&/b&&/p&&img src=&/v2-d027dcd1f3_b.png& data-caption=&& data-rawwidth=&1570& data-rawheight=&844& class=&origin_image zh-lightbox-thumb& width=&1570& data-original=&/v2-d027dcd1f3_r.png&&&p&&b&练习笔记&/b&&/p&&p&&b&四、学美食&/b&&/p&&img src=&/v2-c3ca4c8ac01f51e7c6a3e9eb5dd23fd8_b.png& data-caption=&& data-rawwidth=&1746& data-rawheight=&853& class=&origin_image zh-lightbox-thumb& width=&1746& data-original=&/v2-c3ca4c8ac01f51e7c6a3e9eb5dd23fd8_r.png&&&p&&b&美食计划&/b&&/p&&img src=&/v2-ccb8f68af1a688a0dfe5c89_b.png& data-caption=&& data-rawwidth=&1444& data-rawheight=&757& class=&origin_image zh-lightbox-thumb& width=&1444& data-original=&/v2-ccb8f68af1a688a0dfe5c89_r.png&&&p&&b&譬如披萨&/b&&/p&&img src=&/v2-cce3ce3f1a29_b.png& data-caption=&& data-rawwidth=&974& data-rawheight=&731& class=&origin_image zh-lightbox-thumb& width=&974& data-original=&/v2-cce3ce3f1a29_r.png&&&p&&b&下班煲粥&/b&&/p&&img src=&/v2-aaacf2c9cf0_b.jpg& data-caption=&& data-rawwidth=&1348& data-rawheight=&1011& class=&origin_image zh-lightbox-thumb& width=&1348& data-original=&/v2-aaacf2c9cf0_r.jpg&&&p&&b&第一次下厨&/b&&/p&&p&&b&五、多考证。考需要证,以考助学,分清轻重缓急,列出清单时间,我买的是百川考试软件。今年二级建造师(市政)过了两门,助理会计师没过。因为5月同时考两门专业,时间准备不足。未来两年内,有读在职研究生和MBA计划,所以前阵子买了书备考。&/b&&/p&&img src=&/fe809d7c651d67a551d8e_b.png& data-caption=&& data-rawwidth=&857& data-rawheight=&703& class=&origin_image zh-lightbox-thumb& width=&857& data-original=&/fe809d7c651d67a551d8e_r.png&&&img src=&/98a56c3a0f386e7be196_b.png& data-caption=&& data-rawwidth=&1271& data-rawheight=&936& class=&origin_image zh-lightbox-thumb& width=&1271& data-original=&/98a56c3a0f386e7be196_r.png&&&img src=&/3ad287b4f3e7b83cbcd5d47a2d659ab2_b.png& data-caption=&& data-rawwidth=&1661& data-rawheight=&1069& class=&origin_image zh-lightbox-thumb& width=&1661& data-original=&/3ad287b4f3e7b83cbcd5d47a2d659ab2_r.png&&&img src=&/a56c5dc9c35b13ab73f01fc83dad8064_b.png& data-caption=&& data-rawwidth=&986& data-rawheight=&732& class=&origin_image zh-lightbox-thumb& width=&986& data-original=&/a56c5dc9c35b13ab73f01fc83dad8064_r.png&&&img src=&/v2-f1d6b8c7a42b09d4bdc33ed_b.png& data-caption=&& data-rawwidth=&1731& data-rawheight=&708& class=&origin_image zh-lightbox-thumb& width=&1731& data-original=&/v2-f1d6b8c7a42b09d4bdc33ed_r.png&&&img src=&/v2-49dbd4e17b8e44bdd2ba_b.png& data-caption=&& data-rawwidth=&2425& data-rawheight=&1127& class=&origin_image zh-lightbox-thumb& width=&2425& data-original=&/v2-49dbd4e17b8e44bdd2ba_r.png&&&img src=&/v2-fb6fbd90b672e28ff8ec906c28d1b731_b.png& data-caption=&& data-rawwidth=&810& data-rawheight=&930& class=&origin_image zh-lightbox-thumb& width=&810& data-original=&/v2-fb6fbd90b672e28ff8ec906c28d1b731_r.png&&&p&&b&六、万部剧。从淘宝入手,工具是百度网盘、360网盘,纪录片、电影、美剧等,多看多消化。今年花了两个月下班时间,看完了豆瓣300部电影,豆瓣200多张专辑,都做了笔记,剩下的豆瓣300本书籍和豆瓣300部电视剧,能看多少是多少。纪录片(BBC和环球地理),有选择的看了几百集。&/b& &/p&&p&&b&我追剧比较快:一是速度1.5—2倍速度追剧,看后做笔记;二是经常等人等车,都在追剧。主要是时间,要挤总是有的。听音乐专辑,大部分一首歌听到50%,感兴趣收藏,不感兴趣跳过。&/b&&/p&&img src=&/39ad5de9ed8_b.png& data-caption=&& data-rawwidth=&1080& data-rawheight=&418& class=&origin_image zh-lightbox-thumb& width=&1080& data-original=&/39ad5de9ed8_r.png&&&img src=&/3fe0a37fe5f96f66b66f_b.png& data-caption=&& data-rawwidth=&769& data-rawheight=&573& class=&origin_image zh-lightbox-thumb& width=&769& data-original=&/3fe0a37fe5f96f66b66f_r.png&&&img src=&/5e2d6e4dbdb54_b.png& data-caption=&& data-rawwidth=&1845& data-rawheight=&709& class=&origin_image zh-lightbox-thumb& width=&1845& data-original=&/5e2d6e4dbdb54_r.png&&&img src=&/v2-f0e15a458e1f0cabe849e1308daf5250_b.jpg& data-caption=&& data-rawwidth=&1798& data-rawheight=&872& class=&origin_image zh-lightbox-thumb& width=&1798& data-original=&/v2-f0e15a458e1f0cabe849e1308daf5250_r.jpg&&&img src=&/v2-eabbab24_b.png& data-caption=&& data-rawwidth=&1672& data-rawheight=&993& class=&origin_image zh-lightbox-thumb& width=&1672& data-original=&/v2-eabbab24_r.png&&&img src=&/v2-ca6870addbc_b.png& data-caption=&& data-rawwidth=&1187& data-rawheight=&967& class=&origin_image zh-lightbox-thumb& width=&1187& data-original=&/v2-ca6870addbc_r.png&&&img src=&/v2-7cd4fd92eaedf8a92ac91e_b.png& data-caption=&& data-rawwidth=&1272& data-rawheight=&714& class=&origin_image zh-lightbox-thumb& width=&1272& data-original=&/v2-7cd4fd92eaedf8a92ac91e_r.png&&&p&&b&七、 信用消费。一般单身都是20出头,所以大多手头不宽裕,因此办一张信用卡,科学合理使用很重要。毕业后第一个超极本电脑和苹果手机,来自于招商银行分期。第一个大屏显示器和魅族PRO5,来自于京东白条分期。适度超前消费,给自己加倍努力理由!&/b&&/p&&img src=&/fe8d6fedeca19a92f3f6d9dae7c20a7b_b.png& class=&content_image&&&img src=&/v2-3bfe18ffdc9a63c4305bb_b.png& data-caption=&& data-rawwidth=&716& data-rawheight=&564& class=&origin_image zh-lightbox-thumb& width=&716& data-original=&/v2-3bfe18ffdc9a63c4305bb_r.png&&&img src=&/v2-1dbad86c5ebdcda9e52e38_b.png& data-caption=&& data-rawwidth=&1080& data-rawheight=&1236& class=&origin_image zh-lightbox-thumb& width=&1080& data-original=&/v2-1dbad86c5ebdcda9e52e38_r.png&&&img src=&/v2-841ea70c927dc6e6da69_b.png& data-caption=&& data-rawwidth=&480& data-rawheight=&640& class=&origin_image zh-lightbox-thumb& width=&480& data-original=&/v2-841ea70c927dc6e6da69_r.png&&&p&&b&八、信息储备。很早我就买了移动硬盘,算是第二个大脑。平常多积累些生活、工作、学习资源,将来用处很大。&/b&&/p&&img src=&/cecfe64e7456b6dbff7f91bb_b.png& data-caption=&& data-rawwidth=&1211& data-rawheight=&899& class=&origin_image zh-lightbox-thumb& width=&1211& data-original=&/cecfe64e7456b6dbff7f91bb_r.png&&&img src=&/0f72d178d65161efe3614_b.png& data-caption=&& data-rawwidth=&866& data-rawheight=&962& class=&origin_image zh-lightbox-thumb& width=&866& data-original=&/0f72d178d65161efe3614_r.png&&&p&&b&九、运动健身。健身卡太贵了,而且有使用地点限制,所以买一个智能手环和便携式健身设备很重要。养成良好生活习惯,追求健康生活方式。参加集体活动,锻炼和放松身心。连续两年通过中国马拉松联赛(第5站),2015年、2016年合肥国际马拉松!&/b&&/p&&img src=&/v2-608e1de139e18617e0ed_b.png& data-caption=&& data-rawwidth=&807& data-rawheight=&555& class=&origin_image zh-lightbox-thumb& width=&807& data-original=&/v2-608e1de139e18617e0ed_r.png&&&p&&b&卧室健身&/b&&/p&&img src=&/v2-b26fbbd1f0bf357efb75f8_b.png& data-caption=&& data-rawwidth=&1093& data-rawheight=&816& class=&origin_image zh-lightbox-thumb& width=&1093& data-original=&/v2-b26fbbd1f0bf357efb75f8_r.png&&&p&&b&连续两届&/b&&/p&&img src=&/v2-beea7a4f079e281daaea0_b.jpg& data-caption=&& data-rawwidth=&1368& data-rawheight=&918& class=&origin_image zh-lightbox-thumb& width=&1368& data-original=&/v2-beea7a4f079e281daaea0_r.jpg&&&p&&b&将要三届&/b&&/p&&img src=&/v2-e904b46ca7844_b.png& data-caption=&& data-rawwidth=&664& data-rawheight=&1080& class=&origin_image zh-lightbox-thumb& width=&664& data-original=&/v2-e904b46ca7844_r.png&&&p&&b&保持肌肉&/b&&/p&&p&&b&十、 提高效率。单身在外,不可能天天出去看电影,买一个大屏显示器,既能外接电脑使用,也能提升观影体验。提高生活品质,提升学习效率,我买的是华硕2300元,2K分辨率25寸显示器。&/b&&/p&&img src=&/v2-3c577dc6798be86abc70_b.png& data-caption=&& data-rawwidth=&1190& data-rawheight=&885& class=&origin_image zh-lightbox-thumb& width=&1190& data-original=&/v2-3c577dc6798be86abc70_r.png&&&p&&b&大屏显示&/b&&/p&&img src=&/635ef6f4f997c6c304190bfadbda88d8_b.png& data-caption=&& data-rawwidth=&1483& data-rawheight=&1046& class=&origin_image zh-lightbox-thumb& width=&1483& data-original=&/635ef6f4f997c6c304190bfadbda88d8_r.png&&&p&&b&多屏显示&/b&&/p&&img src=&/00fee4b4ff4e47000a0d_b.png& data-caption=&& data-rawwidth=&1200& data-rawheight=&876& class=&origin_image zh-lightbox-thumb& width=&1200& data-original=&/00fee4b4ff4e47000a0d_r.png&&&p&&b&2K显示&/b&&/p&&p&&b&十一、 英语打卡。现在每天用一个小时,背扇贝单词。用久了就会习惯,而良好的习惯可以成就人的一生。没有应试压力,单纯为了追剧。每天抽出一小时,刷刷单词,为了遇到更大的世界。&/b& &/p&&img src=&/7fbef123ab781b9a815c6de5c1b14b3a_b.png& data-caption=&& data-rawwidth=&644& data-rawheight=&1169& class=&origin_image zh-lightbox-thumb& width=&644& data-original=&/7fbef123ab781b9a815c6de5c1b14b3a_r.png&&&p&&b&扇贝单词&/b&&/p&&img src=&/40f9344eebd0947eee072cdcecfb0b38_b.png& data-caption=&& data-rawwidth=&1514& data-rawheight=&1096& class=&origin_image zh-lightbox-thumb& width=&1514& data-original=&/40f9344eebd0947eee072cdcecfb0b38_r.png&&&p&&b&托福词表&/b&&/p&&p&&b&十二、生活贴士。一个人吃东西,水果啊饭菜啊!可以用保鲜膜!文件书籍保存,可以保鲜膜,而且透明可见!除此之外,数码手机、个人养护等,都可以用保鲜膜!平均下来,几分钱一个!&/b&&/p&&img src=&/9b92ec2eb9a7_b.png& data-caption=&& data-rawwidth=&498& data-rawheight=&388& class=&origin_image zh-lightbox-thumb& width=&498& data-original=&/9b92ec2eb9a7_r.png&&&p&&b&保鲜食物&/b&&/p&&img src=&/4a3c157ebca805f3fd7a5342_b.png& data-caption=&& data-rawwidth=&379& data-rawheight=&275& class=&content_image& width=&379&&&p&&b&保护电器&/b&&/p&&img src=&/7fe17fdc95af934c019d_b.png& data-caption=&& data-rawwidth=&627& data-rawheight=&401& class=&origin_image zh-lightbox-thumb& width=&627& data-original=&/7fe17fdc95af934c019d_r.png&&&p&&b&美食健身&/b&&/p&&p&&b&十三、简化生活。数码产品多,买USB插座!买多合一数据线!电脑USB接口少,买USBHUB!手机存储不够,买手机U盘!单身在外,买USB灯等。最后还要列一个清单,使生活和工作更加清晰!&/b&&/p&&img src=&/f14c60ad876ff73beeeda3e47973b61a_b.png& data-caption=&& data-rawwidth=&442& data-rawheight=&701& class=&origin_image zh-lightbox-thumb& width=&442& data-original=&/f14c60ad876ff73beeeda3e47973b61a_r.png&&&p&&b&USB插座&/b&&/p&&img src=&/efd694d99a46a905b47bd_b.png& data-caption=&& data-rawwidth=&445& data-rawheight=&638& class=&origin_image zh-lightbox-thumb& width=&445& data-original=&/efd694d99a46a905b47bd_r.png&&&p&&b&多合一数据线&/b&&/p&&img src=&/741bbbaf2d5fff_b.png& data-caption=&& data-rawwidth=&450& data-rawheight=&661& class=&origin_image zh-lightbox-thumb& width=&450& data-original=&/741bbbaf2d5fff_r.png&&&p&&b&USB—HUB&/b&&/p&&img src=&/4eb7a8ff069827fde6bdffd_b.png& data-caption=&& data-rawwidth=&447& data-rawheight=&702& class=&origin_image zh-lightbox-thumb& width=&447& data-original=&/4eb7a8ff069827fde6bdffd_r.png&&&p&&b&两用U盘&/b&&/p&&img src=&/42fd68040c_b.png& data-caption=&& data-rawwidth=&452& data-rawheight=&672& class=&origin_image zh-lightbox-thumb& width=&452& data-original=&/42fd68040c_r.png&&&p&&b&便携台灯&/b&&/p&&img src=&/244f2b0d21afec_b.png& data-caption=&& data-rawwidth=&1266& data-rawheight=&1019& class=&origin_image zh-lightbox-thumb& width=&1266& data-original=&/244f2b0d21afec_r.png&&&p&&b&居住清单&/b&&/p&&p&&b&十四、 时间观念。安卓名称,何时APP。单身在外,时间观念很重要,它可以告诉我何时该做什么。何时只有安卓版,具体操作:长按桌面,添加插件。&/b& &/p&&img src=&/0ecaf368f1d10a184b28_b.png& data-caption=&& data-rawwidth=&600& data-rawheight=&864& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&/0ecaf368f1d10a184b28_r.png&&&p&&b&一年时间&/b&&/p&&img src=&/v2-3ed815e76a53b790ec65acae29b12a65_b.png& data-caption=&& data-rawwidth=&1080& data-rawheight=&1438& class=&origin_image zh-lightbox-thumb& width=&1080& data-original=&/v2-3ed815e76a53b790ec65acae29b12a65_r.png&&&p&&b&倒计时APP,何时&/b&&/p&&p&&b&十五、平淡朴实。附一波照片,单身日常生活。阳光静好,五彩四季!&/b&&/p&&img src=&/v2-3cdb460c80a87d2fd5724_b.png& data-caption=&& data-rawwidth=&795& data-rawheight=&594& class=&origin_image zh-lightbox-thumb& width=&795& data-original=&/v2-3cdb460c80a87d2fd5724_r.png&&&img src=&/v2-605b82bc5edcd9e05bffc79a937365ce_b.png& data-caption=&& data-rawwidth=&727& data-rawheight=&544& class=&origin_image zh-lightbox-thumb& width=&727& data-original=&/v2-605b82bc5edcd9e05bffc79a937365ce_r.png&&&img src=&/v2-db31f9b3bdda6e5de28bdf12f2543175_b.png& data-caption=&& data-rawwidth=&504& data-rawheight=&667& class=&origin_image zh-lightbox-thumb& width=&504& data-original=&/v2-db31f9b3bdda6e5de28bdf12f2543175_r.png&&&img src=&/v2-0ce927dbfc78d_b.png& data-caption=&& data-rawwidth=&715& data-rawheight=&535& class=&origin_image zh-lightbox-thumb& width=&715& data-original=&/v2-0ce927dbfc78d_r.png&&&img src=&/v2-c399cc78cbacc183d215c75d_b.png& data-caption=&& data-rawwidth=&726& data-rawheight=&531& class=&origin_image zh-lightbox-thumb& width=&726& data-original=&/v2-c399cc78cbacc183d215c75d_r.png&&&img src=&/v2-0c5caf0e10c6ac3cd72385e_b.png& data-caption=&& data-rawwidth=&826& data-rawheight=&612& class=&origin_image zh-lightbox-thumb& width=&826& data-original=&/v2-0c5caf0e10c6ac3cd72385e_r.png&&&img src=&/v2-ae177c160cf48906abf592b47135af87_b.png& data-caption=&& data-rawwidth=&334& data-rawheight=&593& class=&content_image& width=&334&&&img src=&/v2-60bb85d9094dacb8220cd3_b.png& data-caption=&& data-rawwidth=&591& data-rawheight=&342& class=&origin_image zh-lightbox-thumb& width=&591& data-original=&/v2-60bb85d9094dacb8220cd3_r.png&&&img src=&/v2-c53c10f9a35b2efa6ac4dea_b.png& data-caption=&& data-rawwidth=&736& data-rawheight=&552& class=&origin_image zh-lightbox-thumb& width=&736& data-original=&/v2-c53c10f9a35b2efa6ac4dea_r.png&&&img src=&/v2-3da2969b_b.png& data-caption=&& data-rawwidth=&495& data-rawheight=&672& class=&origin_image zh-lightbox-thumb& width=&495& data-original=&/v2-3da2969b_r.png&&&p&&b&十六、关心身边人&/b&&/p&&img src=&/v2-0ec4a5c05f7_b.png& data-caption=&& data-rawwidth=&1641& data-rawheight=&861& class=&origin_image zh-lightbox-thumb& width=&1641& data-original=&/v2-0ec4a5c05f7_r.png&&&p&&b&为父母要做的事&/b&&/p&&img src=&/v2-2f133520abba72c1fc76f0716adf9395_b.png& data-caption=&& data-rawwidth=&600& data-rawheight=&401& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&/v2-2f133520abba72c1fc76f0716adf9395_r.png&&&p&&b&督促他们预防三高&/b&&/p&&img src=&/v2-cee8ce522d365cfe99fb3_b.png& data-caption=&& data-rawwidth=&1853& data-rawheight=&493& class=&origin_image zh-lightbox-thumb& width=&1853& data-original=&/v2-cee8ce522d365cfe99fb3_r.png&&&p&&b&给家人建立,健康档案&/b&&/p&&p&&b&十七、单身幸福感&/b&&/p&&p&&b&最后,最大的幸福感和很高的生活质量是:生活的充实,精神的愉悦。忙一点可以!累一点可以!因为单身,因为年轻,所以奋斗!&/b&&/p&&p&&b&就这样慢慢积累,时间两年左右。虽说缘分不等人,但我还是希望先充实和提高自己,以便拥有更好的她、更好的生活。&/b&&/p&&img src=&/v2-a5a788cfed44f7aef4658_b.png& data-caption=&& data-rawwidth=&635& data-rawheight=&1030& class=&origin_image zh-lightbox-thumb& width=&635& data-original=&/v2-a5a788cfed44f7aef4658_r.png&&&p&&b&一路跑来,争分夺秒!&/b&&/p&&img src=&/v2-cc525cff23e8aff31b12dca4ea6a4262_b.png& data-caption=&& data-rawwidth=&1920& data-rawheight=&1080& class=&origin_image zh-lightbox-thumb& width=&1920& data-original=&/v2-cc525cff23e8aff31b12dca4ea6a4262_r.png&&&p&&b&华裔林书豪是偶像,学他一边打球,一边读书&/b&&/p&
时隔一年,刷新一下:加了目录,更新生活1、万卷书2、万里路3、练练字4、学美食5、多考证6、万部剧7、信用消费8、信息储备9、运动健身10、 提高效率11、 英语打卡12、 生活贴士13、 简化生活14、 时间观念15、 平淡朴实16、 关心身边人17、单身幸福感一、 …
&img src=&/50/v2-876cf09d2b7ff50df1bfa3f_b.png& data-rawwidth=&1892& data-rawheight=&817& class=&origin_image zh-lightbox-thumb& width=&1892& data-original=&/50/v2-876cf09d2b7ff50df1bfa3f_r.png&&&p&Dota2的美术效果一直是所有moba类型游戏的标杆,如果你不是很服这句话的话,请看下面的几个皮肤感受下&br&&/p&&img src=&/v2-bdc47ae296de7eb078ddd0b5dfbf0ddd_b.png& data-rawwidth=&1305& data-rawheight=&850& class=&origin_image zh-lightbox-thumb& width=&1305& data-original=&/v2-bdc47ae296de7eb078ddd0b5dfbf0ddd_r.png&&&br&&p&&img src=&/v2-8552ebf1b31c5e_b.png& data-rawwidth=&1131& data-rawheight=&720& class=&origin_image zh-lightbox-thumb& width=&1131& data-original=&/v2-8552ebf1b31c5e_r.png&&比XX荣耀还是高明到不知道哪里去了吧。&/p&
&br&&p&对于Dota2美术详细的解释可以看v社的&a href=&/?target=https%3A///kb_article.php%3Fref%3D9334-YDXV-8590& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&角色设计指南&i class=&icon-external&&&/i&&/a&,知乎上也有对应的翻译。&/p&&p&环境:Unity5.3.8&/p&
&h2&&b&资源概览&/b&&/h2&
&p&在建模的时候,脚部的多边形面數最低,而头部和躯干上部用到最密集的面。&br&每一个三角面都不要浪费!每一个多边形面都要能对表现轮廓有所帮助,同时(或者)对于表现体积的变化有所助益。避免创建过长的三角面,因为这样的面往往会造成阴影计算错误,特别是在角色运动过程中。&/p&
&p&比如食人魔法师&/p&&img src=&/v2-5f541fb903caefaa150bdadbe710fe5a_b.png& data-rawwidth=&646& data-rawheight=&591& class=&origin_image zh-lightbox-thumb& width=&646& data-original=&/v2-5f541fb903caefaa150bdadbe710fe5a_r.png&&&br&&p&对称建模,然后加入独立的元素打破对称(例如:臂带,护膝等),镜像贴图会有助于你在有限贴图上获得更多的表现空间。例如大圣身上的贴图。&/p&
&p&整个模型分了很多个submesh,目测是为了方便做avatar,每个部位都可以作为皮肤的一部分替换。&/p&&img src=&/v2-fb5c8ad56ef695fdec2ddd_b.png& data-rawwidth=&1045& data-rawheight=&369& class=&origin_image zh-lightbox-thumb& width=&1045& data-original=&/v2-fb5c8ad56ef695fdec2ddd_r.png&&&br&&p&任何不对称建模部分,无论在游戏画面或角色画面下都应该造成最大的可见影响。&br&独立元素也被用于定义清晰的边缘,这是创造一个细节更为丰富形象的非常厉害的一招。&/p&
&p&尽可能使用镜像贴图。&/p&
&p&不对称贴图要留给那些在整体形象或游戏画面中最突出的部分。在右图例子中,所有绿色填充区域的贴图都是对称镜像的。&/p&
&p&脸部的UV应该占整个身体贴图的至少25%,这样才能保证形象有足够的细节。&/p&
&p&所有单独使用(同时可用于其他角色)的小物品贴图应当新建一张单独的贴图。&/p&
&p&UV贴图也有分布梯度,脚部需要分配的UV面积应该最小而头部\躯干上部分配的贴图面积最大。&/p&
&p&眼睛应该是一个独立的UV在规划整张贴图上的各区域时,在各区域之间不会过于密集的前提下,尽可能减少各部分贴图之间的浪费空间。各分块之间确保留下约5~10像素的距离(一些引擎在会在某些情况下压缩贴图,导致贴图分块区域间未留出足够空间的情况产生接缝)&/p&
&p&把颜色相似的分块排布在贴图中接近的区域,有助于加载较小版本纹理时保持颜色。&/p&&img src=&/v2-813f532bc848fbe26f4d190e718c85bc_b.png& data-rawwidth=&572& data-rawheight=&566& class=&origin_image zh-lightbox-thumb& width=&572& data-original=&/v2-813f532bc848fbe26f4d190e718c85bc_r.png&&&br&&p&对于mask贴图,是存在两张mask贴图的rgba通道里面的,减少采样次数。&/p&&img src=&/v2-32dde3edd83_b.png& data-rawwidth=&1236& data-rawheight=&586& class=&origin_image zh-lightbox-thumb& width=&1236& data-original=&/v2-32dde3edd83_r.png&&&br&&p&然而官方给的贴图都是分开的(为了好理解?)。&/p&&br&&h2&写Shader&/h2&
&p&&b&基础Shader&/b&&/p&
&p&由于并不是正真的pbr,所以基础的还是原始的Blinn-Phong模型,然后慢慢的加上tricks。&/p&
&p&下面来一点点搞个最基本的Blinn-Phong模型的 diffuse + normal + specular shader,那jugg的模型为例。&/p&
&p&只绘制albedo贴图&/p&&img src=&/v2-9cf7cdbdaa74a48bda7328_b.png& data-rawwidth=&1118& data-rawheight=&627& class=&origin_image zh-lightbox-thumb& width=&1118& data-original=&/v2-9cf7cdbdaa74a48bda7328_r.png&&&p&带上normal map 和 diffuse&/p&&img src=&/v2-ab6abed56dafc5bfc52a7_b.png& data-rawwidth=&1115& data-rawheight=&628& class=&origin_image zh-lightbox-thumb& width=&1115& data-original=&/v2-ab6abed56dafc5bfc52a7_r.png&&&p&加最后加上油腻的高光&/p&&img src=&/v2-a9c2a5fc92fd07b6bb5f9_b.png& data-rawwidth=&1115& data-rawheight=&626& class=&origin_image zh-lightbox-thumb& width=&1115& data-original=&/v2-a9c2a5fc92fd07b6bb5f9_r.png&&&p&可以加个wrap diffuse 不要那么黑&/p&
&p&基础shader的代码&/p&
&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&Shader &Custom/DotaHero&
Properties
_MainColor(&Main Color&, Color) = (0.5, 0.5, 0.5, 0.5)
_MainTex(&Main Color Texture&, 2D) = &white& {}
_Wrap(&Light Wrap&, float) = 0.25
_NormalMap(&Normal Map&, 2D) = &bump& {}
_BumpDepth(&Bump Depth&, Range(0.1, 4.0)) = 1
Tags{ &LightMode& = &ForwardBase& }
#pragma vertex vert
#pragma fragment frag
#pragma target 3.0
#pragma multi_compile_fwdadd_fullshadows
#include &UnityCG.cginc&
#include &AutoLight.cginc&
//user defined
uniform sampler2D _MainT
uniform sampler2D _NormalM
uniform float4 _MainTex_ST;
uniform float4 _NormalMap_ST;
uniform float4
uniform float _W
uniform float
//unity defined
uniform float4
_LightColor0;
//base input struct
struct vertexInput
float4 vertex : POSITION;
float3 normal : NORMAL;
float4 texcoord : TEXCOORD0;
float4 tangent : TANGENT;
struct vertexOutput
float4 pos : SV_POSITION;
float4 tex : TEXCOORD0;
float4 posWorld : TEXCOORD1;
float3 normalWorld : TEXCOORD2;
float3 tangentWorld : TEXCOORD3;
float3 binormalWorld : TEXCOORD4;
LIGHTING_COORDS(5,6)
//vertex function
vertexOutput vert (vertexInput v)
float4x4 modelMatrix
= _Object2W
float4x4 modelMatrixInverse = _World2O
o.normalWorld = normalize(mul(float4(v.normal, 0.0), _World2Object).xyz);
o.tangentWorld = normalize(mul(_Object2World, half4(half3(v.tangent.xyz), 0)));
o.binormalWorld = normalize(cross (o.normalWorld, o.tangentWorld) * v.tangent.w);
o.posWorld = mul(_Object2World, v.vertex);
o.pos = mul(UNITY_MATRIX_MVP, v.vertex);
o.tex = v.
TRANSFER_VERTEX_TO_FRAGMENT(o); // for shadows
//take a -1 to 1 range and fit it 0 to 1
float clamp01 (float toBeNormalized)
return toBeNormalized * 0.5 + 0.5;
float3 calculateAmbientReflection( float3 rsrm , float texM )
mask = (rsrm.x + rsrm.y + rsrm.z) * 0.33;
float3 amb
= UNITY_LIGHTMODEL_AMBIENT.
float3 (1.5 * rsrm * amb + amb * 0.5 * texM);
//fragment function
float4 frag(vertexOutput i) : COLOR
float shadAtten = LIGHT_ATTENUATION(i);
float4 tex = tex2D(_MainTex,
i.tex.xy * _MainTex_ST.xy
+ _MainTex_ST.zw);
float4 texN = tex2D(_NormalMap, i.tex.xy * _NormalMap_ST.xy + _NormalMap_ST.zw);
float nDepth = 8 / (_BumpDepth * 8);
//Unpack Normal
half3 localCoords = half3(2.0 * texN.ag - float2(1.0, 1.0), 0.0);
localCoords.z = nD
//normal transpose matrix
float3x3 local2WorldTranspose = float3x3
i.tangentWorld,
i.binormalWorld,
i.normalWorld
//Calculate normal direction
float3 normalDir = normalize( mul( localCoords, local2WorldTranspose));
float3 N = normalize( normalDir);
float3 V = normalize( _WorldSpaceCameraPos.xyz - i.posWorld.xyz);
float3 fragmentToLight = _WorldSpaceLightPos0.xyz - i.posWorld.
distanceToLight = length(fragmentToLight);
atten = pow(2, -0.1 * distanceToLight * distanceToLight) * _WorldSpaceLightPos0.w + 1 - _WorldSpaceLightPos0.w; // (-0.1x^2)^2 for pointlights 1 for dirlights
float3 L = (normalize(fragmentToLight)) * _WorldSpaceLightPos0.w + normalize(_WorldSpaceLightPos0.xyz) * (1 - _WorldSpaceLightPos0.w);
float3 H = normalize( V + L );
float3 worldReflect = reflect(V,N);
//lighting
float NdotL
= dot(N,L);
float NdotV
= 1 - max(0.0, dot(N,V));
float NdotH
= clamp(dot(N,H), 0, 1);
float VdotL
= clamp01(dot(V,L));
float wrap
= clamp(_Wrap, -0.25, 1.0);
float4 texdesat = dot(tex.rgb, float3(0.3, 0.59, 0.11));
float3 difftex = tex.
= pow(VdotL, 0.85);
float bellclamp = (1 / (1 + pow(0.65 * acos(dot(N,L)), 16)));
float3 spec = NdotH;
pow (spec, 32.0);
float3 diff = max(0, (pow(max(0, (NdotL * (1-wrap)+wrap)), (2 * wrap + 1))));
diff *= lerp(shadAtten, 1, wrap) * atten * difftex.xyz * _LightColor0.
return float4 (atan(clamp(spec + diff, 0, 2)), 1); //this is used to round off values above one and give better color reproduction in bright scenes
Fallback &Diffuse&
&/code&&/pre&&/div&&br&&p&虽说直接用unity 的built in shader 拖两下也能得到一样的效果,但是自己用vertex+fragment搞一边就没那么简单了,需要去了解tagent space,需要去了解forward 渲染内部的各个pass… 虽然比较基础,但是有不明白的最好还是google搞清楚。&/p&
&p&后面的内容都是基于上面的情况进行修改。&/p&
&p&&b&Alpha
mask&/b&&/p&
&p&Dota2中用一张贴图来决定皮肤上某个像素是可见的还是不可见的,这样贴图是黑白的,没有灰度&/p&&img src=&/v2-007e4c0d0b90c90af84d82c1bbdcfd66_b.png& data-rawwidth=&870& data-rawheight=&213& class=&origin_image zh-lightbox-thumb& width=&870& data-original=&/v2-007e4c0d0b90c90af84d82c1bbdcfd66_r.png&&&br&&p&比如下面是大圣的披风,没有mask的话是这样&/p&&img src=&/v2-24b6ff763ec64db2e7c1a_b.png& data-rawwidth=&1034& data-rawheight=&579& class=&origin_image zh-lightbox-thumb& width=&1034& data-original=&/v2-24b6ff763ec64db2e7c1a_r.png&&&p&Mask是这样的&br&&img src=&/v2-2e520744efc999a952e058e5c1d81ec2_b.png& data-rawwidth=&1033& data-rawheight=&579& class=&origin_image zh-lightbox-thumb& width=&1033& data-original=&/v2-2e520744efc999a952e058e5c1d81ec2_r.png&&&/p&
&p&而且披风为了实现双面的cutoff,是有两个mesh的&br&&/p&&img src=&/v2-2a71f1bcb8eca43cf16852_b.png& data-rawwidth=&854& data-rawheight=&491& class=&origin_image zh-lightbox-thumb& width=&854& data-original=&/v2-2a71f1bcb8eca43cf16852_r.png&&&p&这里为了简单就直接用discard来处理了(discard在移动端貌似性能貌似不佳,最好用alpha blend来实现,但是这个时候又要注意渲染次序了)。&/p&
&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&float4 texTransparency = tex2D(_TransparencyTex, i.tex.xy * _TransparencyTex_ST.xy + _TransparencyTex_ST.zw);
if (texTransparency.r & 0.5)
// yes: discard this fragment
&/code&&/pre&&/div&&br&&p&结果&/p&&img src=&/v2-4dc43dd02a0a847e3419_b.png& data-rawwidth=&1036& data-rawheight=&581& class=&origin_image zh-lightbox-thumb& width=&1036& data-original=&/v2-4dc43dd02a0a847e3419_r.png&&&p&还有头发这里&/p&&img src=&/v2-a560ebe239517_b.png& data-rawwidth=&1035& data-rawheight=&558& class=&origin_image zh-lightbox-thumb& width=&1035& data-original=&/v2-a560ebe239517_r.png&&&p&Jugg的模型里面没有需要做透明处理的部分。&/p&
&p&&b&Specular
Mask&/b&&/p&
&p&有了Specular Mask 就不会所有地方都油腻腻了。比如剑圣面具,上边是albedo,下边是specular mask&/p&&img src=&/v2-7b6d47e0ecf_b.png& data-rawwidth=&422& data-rawheight=&423& class=&origin_image zh-lightbox-thumb& width=&422& data-original=&/v2-7b6d47e0ecf_r.png&&&img src=&/v2-ba74b143da074dda4a8e432_b.png& data-rawwidth=&419& data-rawheight=&421& class=&content_image& width=&419&&&br&&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&float texSpecular = tex2D(_SpecularMask, i.tex.xy * _SpecularMask_ST.xy + _SpecularMask_ST.zw);
texSpecular *= _SpecularP
&/code&&/pre&&/div&&p&算specular的时候&br&&/p&
&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&float3 spec = NdotH;
pow (spec, 32.0) * texS
&/code&&/pre&&/div&
&p&皮带的部分就比较明显了&/p&&img src=&/v2-460098bcdcc61ec83b3c8_b.png& data-rawwidth=&1038& data-rawheight=&585& class=&origin_image zh-lightbox-thumb& width=&1038& data-original=&/v2-460098bcdcc61ec83b3c8_r.png&&&p&&b&Specular
Exponent&/b&&b&贴图&/b&&/p&
&p&Specular Exponent值用来控制表面specular高光的的大小,越黑表示表面越粗糙,越白表示表面越光滑,对于不同的材质&/p&
&p&金属:高specular,中Exponent&/p&
&p&羽毛:中specular,高Exponent&/p&
&p&木头:低specular,超低Exponent&/p&
&p&如下图所示&/p&&img src=&/v2-8941dcac3b3e140f96c22c_b.png& data-rawwidth=&664& data-rawheight=&611& class=&origin_image zh-lightbox-thumb& width=&664& data-original=&/v2-8941dcac3b3e140f96c22c_r.png&&&p&这个值其实就是Unity中standard shader中的Smoothness,不过这里是用一张贴图来控制。比如剑圣的身上的肌肉&/p&&img src=&/v2-3bc581a86f9aeb_b.png& data-rawwidth=&482& data-rawheight=&220& class=&origin_image zh-lightbox-thumb& width=&482& data-original=&/v2-3bc581a86f9aeb_r.png&&&br&&p&加了贴图控制之后,可以看到胸肌部分是“比较Spec“的。&/p&&img src=&/v2-0aca79a28b55f8fba42cd2db2bab73dc_b.png& data-rawwidth=&1035& data-rawheight=&580& class=&origin_image zh-lightbox-thumb& width=&1035& data-original=&/v2-0aca79a28b55f8fba42cd2db2bab73dc_r.png&&&br&&p&&b&Matalness
Mask&/b&&/p&
&p&这个mask和specularmask类似,在Unity的standard shader中,Matalness和specular是作为两种不同的处理方案,在Dota2中,两种贴图都用到了。&/p&
&p&Metalness Mask的作用是用来模拟真实世界的金属效果,主要做的就是让diffuse和rimlight更黑一些。&/p&
&p&金箍棒的Albedo和Metalness如下&/p&&img src=&/v2-13b50daf1cec3db1f4112_b.png& data-rawwidth=&685& data-rawheight=&339& class=&origin_image zh-lightbox-thumb& width=&685& data-original=&/v2-13b50daf1cec3db1f4112_r.png&&&br&&p&采样的时候这样处理一下&/p&
&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&float texMatal = tex2D(_MetalnessMask, i.tex.xy * _MetalnessMask_ST.xy + _MetalnessMask_ST.zw);
texMatal = min(texMatal + _MetalnessPower, 1.0);
&/code&&/pre&&/div&&p&在算diffuse和rim的时候把texMatal乘进去就可以了。&br&&/p&
&p&对比一下&/p&
&p&Diffuse + specular + rim&/p&&img src=&/v2-b45be7eb49ffd_b.png& data-rawwidth=&1030& data-rawheight=&576& class=&origin_image zh-lightbox-thumb& width=&1030& data-original=&/v2-b45be7eb49ffd_r.png&&&p&+Matalness&/p&&img src=&/v2-f62e383c8f33e76b23fb9cb40ce65469_b.png& data-rawwidth=&1030& data-rawheight=&579& class=&origin_image zh-lightbox-thumb& width=&1030& data-original=&/v2-f62e383c8f33e76b23fb9cb40ce65469_r.png&&&br&&p&&b&Self
Illumination Mask&/b&&/p&
&p&自发光贴图用来控制颜色由albedo贴图决定的程度,比如jugg的面具,白色的部分即使在很暗的灯光下也会很亮。原理就是标记的地方不受光照影响,直接使用albedo贴图采样出来的颜色。&/p&&img src=&/v2-698efe1b35befcbb4b3e8b2_b.png& data-rawwidth=&419& data-rawheight=&420& class=&content_image& width=&419&&&p&首先是采贴图&/p&
&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&float texEmmision = tex2D(_EmissionMask, i.tex.xy * _EmissionMask_ST.xy + _EmissionMask_ST.zw);
texEmmision *= _EmissionI
&/code&&/pre&&/div&&br&&p&然后在算diffuse的时候把emmision加上去&/p&
&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&float3 diff = max(0, (pow(max(0, (NdotL * (1-wrap)+wrap)), (2 * wrap + 1))));
diff *= lerp(shadAtten, 1, wrap) * atten * difftex.xyz * _LightColor0.rgb * 2 * _LightColor0.rgb * difftex.
diff += difftex.xyz * texE
&/code&&/pre&&/div&&br&&p&在光照强度很暗的情况下,有emmision和没emmsion还是区别很大的&/p&&img src=&/v2-16581ead36a72eb58bbfede9f8630575_b.png& data-rawwidth=&1098& data-rawheight=&618& class=&origin_image zh-lightbox-thumb& width=&1098& data-original=&/v2-16581ead36a72eb58bbfede9f8630575_r.png&&&p&&b&Rim light&/b&&/p&
&p&Rimlight是用来给角色轮廓光的,可以让角色在复杂环境中很容易辨识出来&/p&
&p&最简单的rim&/p&
&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&//Rim term
float rimPower = 1;
float3 rim = rimPower * saturate(1 - saturate(dot(N, V))*1.8);
&/code&&/pre&&/div&&p&Rim mask用来精细地控制rim的强度,越黑的地方rim越强&br&&/p&&img src=&/v2-d773f9bb85ac4e51f252bce04ab1ccfb_b.png& data-rawwidth=&516& data-rawheight=&599& class=&origin_image zh-lightbox-thumb& width=&516& data-original=&/v2-d773f9bb85ac4e51f252bce04ab1ccfb_r.png&&&br&&p&Jugg的面部的rim mask如下&/p&&p&&img src=&/v2-a7fe4ac039d37848ed2f_b.png& data-rawwidth=&419& data-rawheight=&426& class=&content_image& width=&419&&对比有没有mask和有mask的情况&/p&&img src=&/v2-139f5c3b5a910cfcddc96530_b.png& data-rawwidth=&570& data-rawheight=&520& class=&origin_image zh-lightbox-thumb& width=&570& data-original=&/v2-139f5c3b5a910cfcddc96530_r.png&&&br&&img src=&/v2-88e5cbb743c23f098e0a4d84ab92e8c9_b.png& data-rawwidth=&609& data-rawheight=&537& class=&origin_image zh-lightbox-thumb& width=&609& data-original=&/v2-88e5cbb743c23f098e0a4d84ab92e8c9_r.png&&&br&&p&最后的结果&/p&&img src=&/v2-fc60e728cfeac2813cbd59c_b.png& data-rawwidth=&1104& data-rawheight=&621& class=&origin_image zh-lightbox-thumb& width=&1104& data-original=&/v2-fc60e728cfeac2813cbd59c_r.png&&&p&&b&BaseTint
Mask&/b&&br&&/p&
&p&BaseTint Mask用来控制受speccular light影响的地方specular的颜色,比如黄金的spec的颜色就是黄色的白银的spec的颜色就是白色,用于模拟光穿透物质表面然后反射出来物质的颜色,可以让表面表现得更加丰满。&/p&&img src=&/v2-7d43a2f18e3dea63a27a8f_b.png& data-rawwidth=&591& data-rawheight=&445& class=&origin_image zh-lightbox-thumb& width=&591& data-original=&/v2-7d43a2f18e3dea63a27a8f_r.png&&&br&&p&越黑的地方表示albedo贴图对spec影响得越多。&/p&
&p&之前的specular的颜色是这样的&/p&
&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&float3 specColor = _LightColor0.
&/code&&/pre&&/div&
&p&现在要这样算&/p&
&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&float3 specColor = (1 - texSpecularTint) * _LightColor0.rgb + texSpecularTint * difftex.
&/code&&/pre&&/div&
&p&对比下&/p&&img src=&/v2-b62fa886f81e6a8d4f72aeec5fe96324_b.png& data-rawwidth=&1028& data-rawheight=&577& class=&origin_image zh-lightbox-thumb& width=&1028& data-original=&/v2-b62fa886f81e6a8d4f72aeec5fe96324_r.png&&&img src=&/v2-8c0fba6ec0_b.png& data-rawwidth=&1029& data-rawheight=&577& class=&origin_image zh-lightbox-thumb& width=&1029& data-original=&/v2-8c0fba6ec0_r.png&&&br&&p&&b&基于Cubemap&/b&&b&的reflection&/b&&/p&
&p&通过读一张cubemap来作为反射部分。&/p&
&p&反射和metalness还有smoothness都有关。Cubemap贴图要设定一下&/p&&img src=&/v2-8e21df6b61fd9be739ffb7_b.png& data-rawwidth=&485& data-rawheight=&228& class=&origin_image zh-lightbox-thumb& width=&485& data-original=&/v2-8e21df6b61fd9be739ffb7_r.png&&&br&&p&采样非常简单&/p&
&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&float3 reflection = texCUBE(_ReflectionMap, worldReflect);
&/code&&/pre&&/div&
&p&单纯输出reflection&/p&&img src=&/v2-b4ca42d2f7bbffdaf7aa457b94b48a49_b.png& data-rawwidth=&1030& data-rawheight=&577& class=&origin_image zh-lightbox-thumb& width=&1030& data-original=&/v2-b4ca42d2f7bbffdaf7aa457b94b48a49_r.png&&&br&&p&将roughness加入,通过采样不同的mipmap的cubemap来达到roughness的效果,&/p&&img src=&/v2-c5f1bd2bb963c9751bfaf6_b.jpg& data-rawwidth=&1475& data-rawheight=&230& class=&origin_image zh-lightbox-thumb& width=&1475& data-original=&/v2-c5f1bd2bb963c9751bfaf6_r.jpg&&&br&&p&调用的采样接口是&/p&
&p&texCUBElod :Samples a cube
texture with mipmaps. The mipmap LOD is specified in t.w.&/p&
&p&采样lod8的效果如下&/p&&img src=&/v2-c6ae73c85aa4bd8e2622ef_b.png& data-rawwidth=&1031& data-rawheight=&577& class=&origin_image zh-lightbox-thumb& width=&1031& data-original=&/v2-c6ae73c85aa4bd8e2622ef_r.png&&&p&完成之后要将relection和之前的合在一起,按照近似的经验公式,就是直接和diffuse lerp一下。多谢&a href=&/people/218edbbdfe340bfceb5ab1& data-hash=&218edbbdfe340bfceb5ab1& class=&member_mention& data-editable=&true& data-title=&@易恺铭& data-hovercard=&p$b$218edbbdfe340bfceb5ab1&&@易恺铭&/a& 的提示。 &/p&
&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&float3 reflection = texCUBElod(_ReflectionMap, float4(worldReflect, roughness * 8)) * texS
…//calculate diffuse
diff = lerp(diff, reflection, matalValue * _Reflectance).
&/code&&/pre&&/div&
&p&Masked&/p&&img src=&/v2-665a93b18dadca_b.png& data-rawwidth=&1028& data-rawheight=&575& class=&origin_image zh-lightbox-thumb& width=&1028& data-original=&/v2-665a93b18dadca_r.png&&&p&Combined加上之前的部分,一起调整一下&/p&&img src=&/v2-ced_b.png& data-rawwidth=&1031& data-rawheight=&577& class=&origin_image zh-lightbox-thumb& width=&1031& data-original=&/v2-ced_r.png&&&br&&p&&b&Wrap
diffuse mask&/b&&/p&
&p&这个在TF2的那篇论文中有提到过。&/p&
&p&最简单的wrap diffuse就是half lambert,&/p&
&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&half diffuse = dot( normal, lightDir )*wrapAmount + (1 - wrapAmount);
&/code&&/pre&&/div&
&p&如果用一张一维的Wrap diffuse贴图来处理的话,diffuse值就是从&/p&
&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&texture1D rampT
float DiffuseCoeff(in float3 pos, in float3 normal, in float3 lightPos) {
float3 lightDir = lightPos -
lightDir.normalize();
// Map value from [-1, 1] to [0, 1]
float rampCoord = Dot(lightDir, normal) * 0.5 + 0.5;
return tex1D(rampTex, rampCoord);
&/code&&/pre&&/div&&p&Dota2中rampTex变成了一张二维的图&br&&/p&
&p&通过不同的mask来控制采样的位置。&/p&&img src=&/v2-e459f35f6ff63df621ba3_b.png& data-rawwidth=&1489& data-rawheight=&718& class=&origin_image zh-lightbox-thumb& width=&1489& data-original=&/v2-e459f35f6ff63df621ba3_r.png&&&br&&p&加上自阴影,最后调一个炫酷的剑圣&/p&&img src=&/v2-c6d6d2729492afaf4fb38dec7182555f_b.png& data-rawwidth=&1750& data-rawheight=&983& class=&origin_image zh-lightbox-thumb& width=&1750& data-original=&/v2-c6d6d2729492afaf4fb38dec7182555f_r.png&&&img src=&/v2-44d95b30b26db367dfdede_b.png& data-rawwidth=&1753& data-rawheight=&985& class=&origin_image zh-lightbox-thumb& width=&1753& data-original=&/v2-44d95b30b26db367dfdede_r.png&&&br&&h2&&b&小结&/b&&/h2&
&p&利用家里蹲的这段时间把这篇文章给写出来了,撒花.&/p&
&p&PBR有待更加深入的学习。&/p&
&p&还有很多可以深入学习的地方,比如各种trick的性能profile,比如放到移动端会是怎样,怎么在低端机上也能跑。&/p&&p&再次感谢恺大和申屠小羊同学。&/p&&br&&h2&&b&参考&/b&&/h2&&p&&a href=&/?target=http%3A//gypsumlabs.github.io//unity-dota2-shader/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&在Unity中复刻基于PBS的Dota2着色器&i class=&icon-external&&&/i&&/a&
&p&&a href=&/?target=http%3A///bearworks/p/5267350.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Unity Skin Shader Optimized&i class=&icon-external&&&/i&&/a& //&/p&
&p&&a href=&/?target=https%3A///kb/3081-QUXN-6209/dota-2-workshop-item-shader-masks& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Dota 2 Workshop
- Item Shader Masks&i class=&icon-external&&&/i&&/a& //&/p&
&p&&a href=&/?target=http%3A//blog.csdn.net/stalendp/article/details/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&【OpenGL】Dota2 Shader分析(1)&i class=&icon-external&&&/i&&/a&
&p&&a href=&/?target=https%3A///threads/game-shaders-volume-1-dota-2-released.242636/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Game Shaders
Volume 1 - Dota 2 [Released]&i class=&icon-external&&&/i&&/a& //&/p&
&p&&a href=&/?target=http%3A////extension-to-energy-conserving-wrapped-diffuse/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Extension to
Energy-Conserving Wrapped Diffuse&i class=&icon-external&&&/i&&/a& //&/p&
&p&&a href=&/?target=https%3A///kb/9334-YDXV-8590/dota-2-workshop-character-art-guide& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Dota 2 Workshop
- Character Art Guide&i class=&icon-external&&&/i&&/a& //&/p&
&p&&a href=&/?target=http%3A///how-to-explore-unity-5s-shader-system-code-iv-global-illumination-code-overview/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&How to Explore
Unity 5's Shader System Code - IV - Global Illumination code overview&i class=&icon-external&&&/i&&/a&
&p&&a href=&/?target=http%3A///TracePlus/p/4133551.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&翻译 Tri-Ace:在Shader里近似渲染公式&i class=&icon-external&&&/i&&/a&//&/p&
&p&&a href=&/?target=http%3A//www.codinglabs.net/article_physically_based_rendering_cook_torrance.aspx& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Coding Labs :: Physically Based Rendering&i class=&icon-external&&&/i&&/a&
&p&&a href=&/?target=http%3A///index.php/Physically-inspired_Shader& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Physically-inspired
Shader&i class=&icon-external&&&/i&&/a& //&/p&
&p&&a href=&/?target=http%3A///ibl/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Technical Graphic Director&i class=&icon-external&&&/i&&/a& //&/p&
&p&&a href=&/?target=http%3A///unity/tutorials/rendering/part-8/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Rendering 8,
Reflections, a Unity C# Tutorial&i class=&icon-external&&&/i&&/a& //&/p&
&p&Dota2ShaderMaskGuide //&/p&
&p&&a href=&/?target=https%3A///sharedfiles/filedetails/%3Fid%3D& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Blender GLSL
viewport shader&i class=&icon-external&&&/i&&/a& //&/p&
&p&&a href=&/?target=https%3A///questions/51063/what-is-ramp-shading-or-lighting& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&What is Ramp
Shading or Lighting?&i class=&icon-external&&&/i&&/a& //&/p&
&p&&a href=&/?target=https%3A///forums/discussion/1919/guide-on-creating-modifying-status-effects-with-template& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Guide on
creating/modifying Status Effects (with Template)&i class=&icon-external&&&/i&&/a& //&/p&
&p&GPU GEM4 Practical Planar
Reflections Using Cubemaps and Image Proxies //&/p&
Dota2的美术效果一直是所有moba类型游戏的标杆,如果你不是很服这句话的话,请看下面的几个皮肤感受下 比XX荣耀还是高明到不知道哪里去了吧。
对于Dota2美术详细的解释可以看v社的,知乎上也有对应的翻译。环境:Unity5.3.8
&img src=&/50/v2-4e2a2cea05d640aa81c885a_b.jpg& data-rawwidth=&846& data-rawheight=&418& class=&origin_image zh-lightbox-thumb& width=&846& data-original=&/50/v2-4e2a2cea05d640aa81c885a_r.jpg&&&p&本文译自2017年GDC上的演讲,演讲人Richard Carrillo是育碧蒙特利尔的游戏总监。&/p&&p&我在这里做这个演讲的目的不是为了告诉你们“嘿,我是一个超牛逼的面试官,你们应该按照我说的去做。”当然,看完演讲以后如果你们这么认为,我觉得也没问题。我的目标是&strong&分享我和我的工作室在招聘的过程中遇到的问题,&/strong&你们也有可能遇到同样的问题。&/p&&p&在过去的五年,我在育碧面试了很多人。在这个过程中,我们的规模从150人扩张到了500人。我面试过新人,也面试过行业内的专家。五年后,我依然会继续面试更多人。有时候,我遇到的问题是这样的:我觉得这个面试者根本就不算游戏设计师,但其他的面试官,比如其他游戏总监或者是高级游戏设计师都觉得这个面试者不错。&/p&&p&这时候我会想,怎么办?他们问了什么样的问题带来这么积极的结果,而我问的又是什么样的问题,带来了这么差的评价?我深入研究了我们工作室的面试流程,希望别的工作室可以学习我的经验,也希望面试者们可以了解面试的过程中会发生什么,以及要对这份工作怀有什么样的期待。&/p&&p&&strong&我做的第一件事情就是观察他们的面试过程。他们问了什么样的问题,期待的回答又是什么?&/strong&他们有这么几个非常标准的目标:&/p&&h2&&strong&经验&/strong&&/h2&&p&首先,很多面试官会非常深入地去考察面试者的背景。&/p&&p&简历陷阱:他们真的做了这些吗?&/p&&p&面试官们喜欢从上到下查看面试者的简历,并且询问他们感兴趣的问题。这里就会出现我称之为“简历陷阱”的东西。面试者们喜欢把所有他们能够夸夸其谈的东西放进简历里,面试官们就会花费大量的时间去考察面试者们是否真的做过他们声称自己做过的事情。但&strong&即使你知道他们真的有经验,你也无法判断他们到底是不是好的游戏设计师——你只知道他们有经验,仅此而已。&/strong&&/p&&h2&&strong&流程和文档&/strong&&/h2&&p&同时,我还发现很多人会问关于流程和文档的问题。我实在不太能明白这类问题的意义,通常来说,得到的回答是“在完美的情况下,我的流程是……”大部分关于流程的问题的答案听起来都没什么差别。这类问题没法用于甄别面试者。&/p&&h2&&strong&游戏的想法/点子&/strong&&/h2&&p&很多面试官会问这样的问题:“你能不能为你喜欢的游戏提一个点子”或者是“你能不能为我们的游戏出个主意”。每个人都有点子。&strong&游戏设计师的工作不是想点子。我们的工作是从参考的游戏里、从团队的不同人那里获取点子,然后把它们做成游戏里的系统,并且确保这些东西都能正常工作。&/strong&所以当你在面试里要求游戏设计师出点子的时候,你很难分辨他到底是个游戏设计师,还是只是个很热爱游戏的玩家。&/p&&h2&&strong&测试面试者的面试技巧&/strong&&/h2&&p&这是最重要的一个。&strong&很多时候面试官花费了大量时间,测试的只是面试者的面试技巧。&/strong&许多问题都是开放式的,比如“你追求的是什么?”这些问题非常差劲,它们测试的只是面试者是否能知道面试官想要什么答案,然后能否借此控制整个对话。&strong&很多非常棒的游戏设计师不是很好的面试者,而很多很差的游戏设计师很擅长应付面试。&/strong&&/p&&p&我发现了我们的面试中存在很多问题,这些是主要的问题。很多面试官都和一个核心问题擦肩而过,但很少人真的问出来了。这个问题是:&/p&&p&你是一个游戏设计师吗?(Are you a game designer? )&/p&&p&这差不多是最重要的问题,也是你想要从面试中得知的东西。重复一遍,他们可能有经验,可能知道流程,也可能有很多想法,但这些都不能让他成为一个优秀的游戏设计师。所以你要怎么问这个问题呢?这是我最关注的事情,也是我最想解决的问题。&/p&&p&首先,&strong&你要知道什么是游戏设计,并且在你的工作室之内为其做出定义。&/strong&这是我们工作室的定义——不同工作室可能有不同的定义,有些工作室可能希望游戏设计师的技术水平更高一些,有些工作室可能会把关卡设计和游戏设计合并在一起。&/p&&p&&strong&1. 游戏设计师设计系统,而不是产生想法。&/strong&&/p&&p&我已经说过这一点了。一个系统是一系列的机制,而机制由一系列的想法组成。所以当你找到一个游戏设计师,说:“嘿,我有一个超酷的想法……”然后游戏设计师用看疯子一样的眼神看着你。这个想法会怎么改变对应的机制?机制的改变怎么反映在系统的变化上?这个系统的变化如何影响游戏?这才叫游戏设计。这不是每个人都能做到的事情。&/p&&p&&strong&2. 游戏设计师是问题解决者,不是批评家。&/strong&&/p&&p&为了解决问题,你需要了解系统,定位问题,当然还有提出解决方案。批评游戏设计?你只需要表现得不喜欢某个东西就可以了。&/p&&p&&strong&3. 我们专注于游戏体验,而不是关卡设计。&/strong&&/p&&p&区别在于,虽然关卡设计也是游戏体验的重要部分,但他们专注于设计让人投入的空间,以及在这个空间里的玩家行动。而游戏设计师们则专注于设计游戏的玩法循环,保持吸引玩家的注意力,让他们持续投入时间。&/p&&p&这就是我对游戏设计师的定义。再次强调,不同工作室对此的定义可能会不一样,但对我来说,首先要找到这个定义,然后作为一个面试官,要去问那些能测试面试者符合不符合这个定义的问题。&/p&&h2&&strong&Part 1&/strong&&/h2&&p&现在我们开始过一遍每个部分。&strong&我们从基本系统开始。&/strong&这部分的目标是确保面试者理解系统设计的基础。我会给你们在我的调查过程中发现的好问题和坏问题的例子,这样你会更好地理解我们的工作室所存在的问题。&/p&&p&坏问题:你最喜欢的游戏是什么,你会怎么改进这个游戏?&/p&&p&这个问题有非常非常多的不同版本。这个问题的最大问题在于,它的本质是“我想让你一直说,说到我听到什么有趣的东西为止。”如果面试者真的说了什么有意思的东西,那可能会有机会更深入地讨论某个系统。&/p&&p&但&strong&我们真的想要的答案是让他们深入到他们所喜爱的某个游戏的系统中,找到一些存在的问题,然后提出一些解决方案。&/strong&这个问题的常见回答是“我很喜欢这个游戏,但我希望能有更多的角色。”这和游戏设计没有一点关系。你得到这样差劲的答案,首先是因为你问了这种开放式的问题。&/p&&p&你在准备面试的时候,最好花点时间先坐下来,自己写一个回答这个问题的好答案,一个坏答案。如果你做不到,那么这个问题就是个坏问题。自己都写不出来好答案和坏答案,你要怎么分辨面试者的答案是好是坏呢?&/p&&p&如果面试者说的游戏你不知道怎么办?我就在面试里遇到过这个问题。他说了个我完全没听过,但是他非常喜欢的独立游戏。我坐在那儿听了五分钟,心里想:“老天啊,我完全跟不上他了。”这个问题太糟糕了,我再也不会问了。&/p&&p&解决方案是什么呢?我试着找出通过微调改进这个问题的方法。我希望改进后的问题既能保持一定的开放性,又能正确地引导面试者去谈论一个具体的系统,这样我可以知道他们是否真的了解游戏系统的设计。但我发现,&strong&考察面试者是否真的能了解一个系统的方式是问他们关于一个具体的系统,或者是问他们能否添加/删除某个系统,&/strong&来看他们是否真的了解这个系统。&/p&&p&改进后的好问题:&/p&&p&现在你是游戏《石头,剪子,布》的开发者。你的创意总监希望你从玩家可能选择的三个选项中移除一个,这样他们就只有两个可以选择了。&strong&这时候你脑子里想的是什么?&/strong&&/p&&p&这个问题非常清晰。《石头,剪子,布》也是最广为人知的游戏之一,不会产生任何困惑。如果你在游戏设计的面试里表示没听说过这个游戏——你挂了。你的创意总监希望你移除一个选项,这对机制产生了影响,&strong&我希望看到面试者是否清楚这对游戏产生什么样的影响。&/strong&然后我的问题是,“你的脑子里想的是什么?”通常来说,我不是很在意他们的答案是否正确,我想听到的是他们的思考过程。这是游戏设计的关键。&/p&&p&这个问题实际上是我在一次面试的过程中想到的。这个面试者看起来不像游戏设计师,他更像是个项目管理者。他们不真地设计系统,而是把人们聚集到一起,让他们来设计系统。因此他们不能真的自己来解决问题。我想,《石头,剪子,布》这个问题是最好的鉴别工具了。&/p&&p&他给出了一个坏答案:&/p&&p&“我想问他(创意总监)为什么想要做出这个改动……”&/p&&p&这个答案非常差。我不得不扮演创意总监的角色,去解释一大堆总监的意图。&/p&&p&“我不喜欢拿掉玩家的选择……”&/p&&p&我不在乎你喜欢的是什么。你根据自己的感受做出选择,你是个玩家还是个游戏设计师?你只是因为希望有更多的选项,还是觉得拿掉一个选择不利于建立让人沉浸的游戏系统?我没法从你的答案里判断出来。&/p&&p&“我会试着去说服他不要这样做……”&/p&&p&我不得不再次扮演总监,告诉他我并没有被说服。&/p&&p&“我会召开会议,讨论解决方案……”&/p&&p&这时候我一般会觉得,面试结束了,你不合格。你根本就不懂系统是如何工作的。你只想着怎么管理团队,怎么影响其他人。&/p&&p&“我会拿掉布……”&/p&&p&我真的听到过这个答案。&br&&/p&&p&好的答案是什么样的呢?&/p&&p&“根本不可能!”&/p&&p&这实际上是我们工作室的一个游戏设计师的第一反应。我觉得可能是问题本身有问题,决定问其他游戏设计师同样的问题,用这样的方法来测试迭代。&/p&&p&“这会打破游戏的平衡。”这是从系统的角度思考问题。&/p&&p&“如果拿掉了布,那么石头会一直赢。”&/p&&p&“你不可能在《石头,剪子,布》里只保留两个选项。有一种选择会一直赢,游戏会陷入僵局。”&/p&&p&然后我会追问,你会怎么回应你的创意总监?&/p&&p&你要理解问题的本质。创意总监不是要你告诉他什么可行,什么不可行,他要的是一个双选项系统。我会设计一个新游戏,叫做《奇数和偶数》。游戏的一开始玩家需要选择奇数或者偶数,然后他们选择伸出一只手指(代表1)或者两只手指(代表2)。把两个人伸出的手指数相加,如果是奇数,那么选择奇数的玩家获胜;反之则选择偶数的玩家获胜。&/p&&img src=&/v2-caf4e7fcee07_b.jpg& data-rawwidth=&585& data-rawheight=&294& class=&origin_image zh-lightbox-thumb& width=&585& data-original=&/v2-caf4e7fcee07_r.jpg&&&p&这个游戏比《石头,剪子,布》多了一个选择的步骤,因此复杂度稍有上升,但它满足了创意总监削减选项的要求。这是最好的答案。&/p&&p&因此,当你想通过问题来测试面试者是否了解游戏系统和游戏循环时,要注意:&/p&&ul&&li&&p&&strong&不要问开放式问题。&/strong&开放式问题会带来他们的观点或是很奇怪的答案,这无法判断他们是否适合这个职位。&/p&&/li&&li&&p&&strong&了解好答案和坏答案。&/strong&这样你才能判断面试者的答案是好还是坏。&/p&&/li&&li&&p&&strong&要求玩家增加或者删除系统,来判断他们是否了解系统。&/strong&&/p&&/li&&/ul&&h2&Part 2&/h2&&p&系统相关的基础问题后,我会问他们一些工作中可能真的会遇到的问题,目的在于确保他们能够针对玩家的体验来解决真实存在的问题。我们从坏问题开始:&/p&&p&&strong&你需要为一个游戏设计一个新的NPC。你会怎么开始?&/strong&&/p&&p&我在面试里看到别的面试官问的这个问题。我非常困惑,他想从这个问题中得到什么答案?关于流程吗?还是要求面试者解决一个问题?在我看来,这个问题就像是“现在开始设计点什么!”本质上,这还是个“我想听你开口说话”的开放式问题。&/p&&p&这种问题的好答案不是真的走一边你的设计流程。这种回答太无聊了,没人会真的上心。&strong&好的回答是,回到玩家的体验上,谈谈你设计这个NPC的时候是怎么想的,为什么要这么设计。这才是面试官想要的东西。&/strong&&/p&&p&如果面试官真的想了解这些内容,好问题应该是这样的:&/p&&p&现在你在《孤岛惊魂》的项目团队里,创意总监希望你能设计一种敌方的坦克。设计的时候,你需要记住两点:&/p&&p&1. 《孤岛惊魂》是一个开放世界游戏,创意总监系统这辆坦克是四处巡逻的NPC,这样玩家会在任何时间、任何地点遭遇它。&/p&&p&2. 《孤岛惊魂》里有许多不同的玩法风格,从偷偷摸摸的弓箭手到正面战斗的硬汉。每一种玩法风格都应该可以用来对付这个敌人。&/p&&p&当你接到这个任务的时候,你的脑海中闪现的第一个念头是什么?&/p&&p&首先,这次问的是一个关于育碧旗下的游戏的问题。这是育碧旗下很重要的一个游戏系列,而你现在要来应聘这个游戏的设计师。如果你没玩过这个游戏——我确实遇到过完全没有玩过对应游戏的游戏设计应聘者——那你有什么资格来参与这个游戏的改进和后续的开发呢?&/p&&p&其次,我问的是设计一个坦克,而不是一个巨大的龙boss这样复杂的东西。我想保持问题简洁,因为我在乎的是我列出的这两个要点。&/p&&p&对于第一个要点,《孤岛惊魂》是一个开放世界游戏,这意味着我们希望遭遇战发生在开放的世界里,而不是封闭的竞技场里——比如我们很熟悉的场景,玩家走进一个竞技场,四面的墙角斗放着RPG,你会知道哦,我们要用RPG去摧毁什么东西。这不是我们要的东西。我们想要的是一个在开放世界里游荡的敌人。&/p&&p&对于第二个要点,《孤岛惊魂》里都有哪些玩法风格?你要怎么去应对它们?再次强调,&strong&我想听到的是思考的过程。&/strong&我更想把面试变成一个设计测试。面试测试的是面试技巧;而设计测试则测试面试者的工作技巧。他们在设计测试中表现越好,对他们的评价就越高。&/p&&p&我们从坏答案开始:&/p&&p&“好的,我们要摧毁一辆坦克。加一点难度吧,两辆坦克?”听到这种答案我差点暴跳如雷。你差不多跳过了所有的东西。这个面试者完全不懂什么是游戏设计。&/p&&p&我还遇到过一个面试者,花了五分钟时间讨论怎么开坦克,这完全不是问题的目的,他在回避问题。&/p&&p&还有一种情况是,他们找了很多参考例子——参考通常来说是很棒的,但如果你列了一堆参考以后不回头来解决问题,这些参考就都毫无意义。&/p&&p&有些面试者甚至完全不理解问题。他们抓不住问题的关键(开放世界和玩法风格)。&/p&&p&好的答案是什么样的呢?&/p&&ul&&li&&p&提到了开放世界,知道这不是在封闭空间里的战斗,并且让玩家寻找解决方案&/p&&/li&&li&&p&能列出并照顾所有的玩法风格,对于特定的玩法风格,这个坦克对他们的挑战是什么,他们解决坦克的机会在哪里?这里的风险是可能会变成一个头脑风暴的会议,所以作为面试官,你的工作是追问他们:&/p&&/li&&/ul&&p&&strong&1. 你的想法带来的新的问题是什么?&/strong&&/p&&p&&strong&2. 准备一个坏想法,问他们这个想法怎么样,看他们能否意识到。&/strong&&/p&&ul&&li&&p&最重要的是,这样的NPC敌人可能会让潜行风格的玩家很难克服。好答案必须提到怎么解决这个问题。&/p&&/li&&/ul&&p&最好的答案:&/p&&p&有一个面试者一开始不太适应这个问题,直到某一个瞬间,他意识到这是个设计测试,于是他的紧张一扫而空,开始游刃有余地回答问题。他提到了《分裂细胞》,说游戏里有个场景有巡逻的NPC,如果他们端着武器一直巡逻,那么感觉会很不真实;因此游戏里有一些丰富的细节:有时NPC会抽烟或者是和别的NPC聊天,他们的武器会被放在桌子上或者墙角边,不在他们手上。如果这时候你跳出来,他们会吓一大跳,然后慌乱地去拿武器,给你更多的时间来将他们击倒。&/p&&p&他引用了这个参考,并且应用到了《孤岛惊魂》的设计里。这个坦克敌人会在世界四处巡逻,有时候他们会停下坦克,爬出来抽根烟聊聊天。这样的设计既允许玩家正面作战,也允许玩家趁NPC爬出坦克的时候摸过去解决他们。&/p&&img src=&/v2-87300abfb7ba425c88862b_b.jpg& data-rawwidth=&590& data-rawheight=&260& class=&origin_image zh-lightbox-thumb& width=&590& data-original=&/v2-87300abfb7ba425c88862b_r.jpg&&&p&在这个答案里,面试者提供了一种革新的方案。他设计的不是一个单纯的坦克,而是一个有两个人在里面的坦克。对于潜入的玩法来说,这一点非常关键——潜入游戏的要点在于操控NPC,而你很难操控冷冰冰的坦克;但一旦你知道坦克里有两个人,你就会开始想要怎么把这两个人从坦克里弄出来。这让整个设计变得活了起来。这让我觉得我可以和这个人一起工作,我们可以一起想出非常棒的游戏设计,也可以一起解决问题。&/p&&p&所以,要点在于:&/p&&p&&strong&1. 不要问他们会怎么设计,而是提供一个带有问题的情景。&/strong&&/p&&p&&strong&2. 把面试变成一个设计测试。&/strong&&/p&&p&&strong&3. 保持对话在正轨上,让面试者明确:你要解决的问题是什么?解决方案是否会带来新的问题?&/strong&&/p&&h2&Part 3&/h2&&p&《石头,剪子,布》的问题是给入门的游戏设计师的,而坦克问题是面向高级游戏设计师的。那么设计总监呢?我会再举一个问题的例子。&/p&&p&首先&strong&我们要明确的是,我们需要的技能是什么样的。&/strong&这个人要能在更高的层面指导方向,同时他要知道怎么建立品牌。我们从坏问题开始:&/p&&p&你会让下一代的《孤岛惊魂》发生在什么地方?&/p&&p&这个问题依然太过开放。问这个问题相当于问:“你有什么好想法吗?”这恰恰是我们要极力避免的。&/p&&p&好的问题是这样的:&/p&&p&有很多批评提到育碧的游戏系列——比如《刺客信条》或者《孤岛惊魂》——的体验趋于雷同。这样的批评的来由是什么?这些品牌之间有何不同,在未来的开发里,你会做什么来帮助增加品牌的差异性?&/p&&p&让我再对今天的内容做一个总结。对于面试官:&/p&&p&&strong&1. 定义游戏设计。&/strong&&/p&&p&你在寻找什么样的人?你想要什么样的技能?&/p&&p&&strong&2. 准备直接的问题。&/strong&&/p&&p&知道好答案/坏答案是什么样的。&/p&&p&&strong&3. 把面试变成设计测试。&/strong&&/p&&p&你要测试的是工作技巧,而不是面试技巧。&/p&&p&&strong&4. 持续改进你的面试流程。&/strong&&/p&&p&如果我们都能筛选出合格的人,提高游戏设计师的门槛,那么我们就提高了整个游戏产业的游戏质量。&/p&&p&对于面试者:&/p&&p&&strong&1. 游戏设计师是一个职业,不是一个爱好。&/strong&&/p&&p&玩所有的相关游戏,参考所有的相关设计&/p&&p&&strong&2. 游戏设计非常沉闷。&/strong&&/p&&p&一个很简单的例子,叫“门的问题”。&/p&&p&前提:你正在设计一个游戏。&/p&&p&那么:&/p&&p&你的游戏里有门吗?&/p&&p&玩家能打开这些门吗?&/p&&p&玩家能打开游戏里的每一扇门吗?&/p&&p&是不是有些门只是装饰?&/p&&p&玩家怎么分辨出它们的不同?&/p&&p&能打开的门是绿色的,不能打开的是红色的?不能打开的门前面会堆着垃圾吗?&/p&&p&门可以上锁和解锁吗?&/p&&p&怎么让玩家知道某扇门是可以上锁和解锁的,怎么和他们永远也不能打开的门区分?&/p&&p&玩家知道怎么开锁吗?需要钥匙吗?需要黑进控制台吗?需要解决谜题吗?还是等待某个故事的时刻到来?&/p&&p&有没有可以打开但玩家永远不能进入的门?&/p&&p&敌人从哪里来?他们从门里跑出来吗?这些门后来会锁上吗?&/p&&p&玩家们怎么开门?他们走过去门就会向侧面滑开吗?还是向玩家打开?玩家开门需要按按钮吗?&/p&&p&玩家进门以后,门会锁上吗?&/p&&p&如果有两个玩家怎么办,是不是只有在两个玩家都进门以后才会锁上?&/p&&p&……&/p&&p&(这是个非常经典的设计问题,篇幅所限,仅列出前面的一半。)&/p&&p&&strong&3. 大声说出你的思路。&/strong&&/p&&p&你的思考过程是我们在意的东西。我不在乎你的答案,反正我也不会用。我在乎的是你的思路。&/p&&p&&strong&4. 游戏设计和你的点子毫无关系。&/strong&&/p&&p&&u&本文首发于游戏葡萄微信公众号(youxiputao),转载请后台联系授权。&/u&&/p&
本文译自2017年GDC上的演讲,演讲人Richard Carrillo是育碧蒙特利尔的游戏总监。我在这里做这个演讲的目的不是为了告诉你们“嘿,我是一个超牛逼的面试官,你们应该按照我说的去做。”当然,看完演讲以后如果你们这么认为,我觉得也没问题。我的目标是分享…
&img src=&/50/v2-c1c94cb54e522f33af10f3b3612c5bbb_b.jpg& data-rawwidth=&1920& data-rawheight=&1066& class=&origin_image zh-lightbox-thumb& width=&1920& data-original=&/50/v2-c1c94cb54e522f33af10f3b3612c5bbb_r.jpg&&&b&是的,我们可能正逐渐成为“没有成长感,游戏就玩不下去”的玩家。&/b&&br&&br&&br&&p&(题图似乎是一个&a href=&/?target=https%3A///en/nightlife/level-up.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&娱乐厅&i class=&icon-external&&&/i&&/a&的广告,但小字部分倒是意外符合了这篇文章想要传达的内容Level-up:The New Face In Entertainment 成长感,是游戏在现代的一副新面孔 )&/p&&br&&br&&h2&&b&至少有三种“成

我要回帖

 

随机推荐