PlayStation 板


LINE

再怎麽好的硬体,没有好好撰写的游戏软体搭配,也是白搭 高档的硬体,也可以因为游戏开发者的没有好好优化 而展现低档次的效能 PC的硬体组合五花八门 其实对PC游戏开发者而言是很辛苦的 (就像Android手机对游戏开发者一样) 唯一能够广为人接受的方式 就是提供各种不同的游戏设定 让玩家调整出最适合自己PC的组态 暴风雪算是很有良心的了 不但针对各种视觉特效提供不同等级的设定 每个项目还有说明文字,告诉玩家各选项是针对什麽硬体做调整 他们大可像大部分的游戏一样 简单提供Low, Medium, High三种Graphics Settings选项即可 如同bachelorwhc说的一样 可以把游戏主机当作人家帮你组好的套装机 或许综合性能没有办法比过顶尖的PC 但是由於硬体规格统一 游戏开发者可以针对单一硬体组态而做出最佳的优化选择 主机独占的游戏更不用说 硬体固然重要 但是能够发挥出的效能,完全取决於游戏开发者 DirectX或OpenGL是为了减轻开发者的负担 而设计出的高阶图像API 其中不乏针对硬体指令操作不当的防呆机制 例如还没有绑定shader program就发出绘图指令 DirectX会直接当机加上输出错误讯息 OpenGL则是透过函式回传错误代码 高阶图像API到头来还是需要把高阶的函式呼叫 转换成GPU懂的机器语言代码串流,包成封包喂给GPU 对於开发者固然是方便 但是多了至少一层的抽象层,就是代表效能的损失 顽皮狗不用考虑跨平台,所以可以完全针对PS4的硬体做优化 GPU方面 不使用DirectX或OpenGL这种高阶API 而直接生成GPU的机器语言代码串流封包,喂给GPU CPU方面 不像PC开发者,无法事先得知总共有几个可用的CPU核心 PS4的CPU核心就是八个,两个被OS占去,所以游戏可用的是六个 顽皮狗的做法是生成六个常驻thread 透过设定CPU核心亲和力,一个thread绑定一个核心 这样可以省去透过OS层来分配thread执行时间的效能损失 每一个thread不停地把工作序列里面的工作提出来执行 这些thread不太会被OS从CPU核心上换掉(因为一个核心就是绑定一个thread) 所以不会有context switch的效能损失 记忆体方面 对DirectX或OpenGL有经验的人应该知道 如果要建构vertex buffer或texture 需要在main memory先把资料建构好 然後透过高阶API的函式呼叫,把资料复制到video memory 这个两段式的写入,其实是浪费时间,因为写入资料是一模一样的 PC硬体由於可以自行搭配,main memory和video memory通常是分开的 main memory就是大家平常简称的"记忆体" video memory则是跟绘图卡绑定的GPU专用记忆体 PS4是统一规格,所以没有必要把main memory和video memory分开 总共的记忆体就是8GB,被OS用掉2.5GB,所以游戏可以用5.5GB 这5.5GB是可以CPU和GPU共用的 (unified memory) CPU建构好vertex buffer或texture之後 只要把指标传给GPU,GPU就可以对这些资料做存取 不像一般PC需要把同样的资料写入两次 PS4相关的硬体组态和其他软体优化重点 可以参考顽皮狗的Jaon Gregory在XXI SINFO的演讲 https://www.youtube.com/watch?v=f8XdvIO8JxE
bachelorwhc也提到了GI (Global Illumination) 我把我所知道的一些GI技术分享一下 如果有学过电脑图学 一开始通常是教phong shading之类的渲染技术 这种渲染方式是所谓的Local Illumination 因为单一个表面,只考虑光源直接对它的照明,而忽略周围环境的影响 所谓的Global Illumination就是把环境的影响也考虑进去 如影子、环境遮蔽、环景反射 说起来容易,但是要在即时运算的速度下运算正确的GI结果是不可能的 连offline render的GI都是用离散的光子模拟的了,更别说即时运算 所以游戏开发者必须用其他方式,做出很像是GI的效果来"骗"玩家 影子基本是必备的GI效果 在low-poly的时代,还可以使用shadow volume这个技术 但是随着现代游戏模型面数的增加,shadow volume也失去了实用性 现在流行的技术是shadow map,比较不会因为模型面数而拖垮效能 然而缺点是影子的品质取决於shadow map的解析度 解析度过低的shadow map,就会让玩家看出放大的影子像素 为了避免这个问题,要嘛提高shadow map的解析度 要嘛对影子进行柔化的後制处理 环境遮蔽(ambient occlusion,简称AO)则是另外一个AAA游戏必备的GI效果 之前也说过了,用离散光子模拟太慢了 现在的主流技术是一开始由Crytech提出的SSAO (Screen-Space AO) 利用Z-buffer周边像素的资讯 来近似每一个像素因环境遮蔽而失去的漫射光量 这是全萤幕的後制特效 所以跟场景上的物件数和面数没有关系 至於环境反射,通常是用一个反射environment map来蒙混过去 拿The Last of Us做例子 大楼的窗户和地上的积水所反射出来的环境并不是真正周遭的环境 而是一个是先准备好的environment map 由於有经过模糊处理,没有仔细观察是不会发现的 有些赛车游戏为了要真的在车身上做出真实环境反射的效果 必须以车身为中心,额外对周围全场景做多次渲染 效能消耗取决於周围环境和模型的复杂度 额外的draw call也是很贵的 最近有一个流行的环境反射"骗术" 是使用含有normal资讯的render target、main render target和Z-buffer 取得每一个像素一次光反射於main render target上的"着弹点" 用这个颜色资讯来模拟一次光反射的效果 这个技术叫做Screen-Space Ray-Traced Reflection,简称SSRR 如同SSAO,此技术为全萤幕後制特效 跟场景上的物件数和面数没有关系 缺点是有时候反光着弹点不在main render target上 这个时候就会出现资料缺乏而反光资讯不完整的瑕疵 但是通常SSRR的反光会做模糊处理,所以玩家不太会注意到 PC版的Assasin's Creed IV就有使用SSRR 嗯...其实我写到後来也忘记我一开始的主题是什麽了 就当作是brain dump好了 以上 -- Ming-Lun "Allen" Chou Physics / Graphics / Procedural Animation / Visuals Web http://AllenChou.net Twitter http://twitter.com/TheAllenChou LinkedIn http://www.linkedin.com/in/MingLunChou --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 172.248.143.89
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/PlayStation/M.1402883888.A.7F1.html cjcat2266:转录至看板 GameDesign 06/16 09:58
1F:推 sugizo0:(!)我妈问我为何要跪着上PTT... 06/16 10:01
2F:推 cbahsasn7250:看到一半才发现作者原来是CJCAT大 推推 06/16 10:02
3F:推 globe1022:翻译官~翻译官!请求支援....这是哪国语言,看无阿囧rz 06/16 10:04
4F:推 eipduolc:豪门深似海... 06/16 10:06
5F:推 marsdora:??? 06/16 10:08
6F:推 windfeather:专业推 06/16 10:08
7F:推 SHwEE:XD看来多玩本家的游戏就会知道PS4的能耐在哪了 06/16 10:11
8F:→ SHwEE:是说德瑞克脸上那只苍蝇实在是满厉害的(? 06/16 10:13
9F:推 thesky14:原PO看来是射後不理 不用这麽认真拉XD 06/16 10:13
10F:推 opoppp:推! 06/16 10:16
11F:推 Kamikiri:最近的看门狗室内景也有用到骗术 但不知道是不是同种类 06/16 10:18
12F:→ Kamikiri:感觉骗术是未来趋势(?) 06/16 10:18
13F:→ strike519:你帮他把期末作业作完了 至少讨杯50岚ㄅ 06/16 10:22
14F:推 Hua0722:很多中文字不是吗,怎麽看不懂QAQ 06/16 10:31
15F:推 b2284446:是顽皮狗员工耶!(跪) 06/16 10:35
16F:推 crassus7217:完全看不懂 06/16 10:36
17F:推 jetalpha:长知识推! 06/16 10:38
18F:推 bachelorwhc:我也跪下来了 竟然是CJ Cat大大 06/16 10:39
19F:推 tim971715:快推假装看的懂 06/16 10:40
20F:推 uyry6:GTA V 跟 看门狗 是不是窗户反射方法不同 GTA好像是真反射 06/16 10:40
21F:→ cjcat2266:不可能是真反射,因为真反射意味着每一片窗户都需要 06/16 10:41
22F:→ cjcat2266:^从窗户的角度对整个场景重新做渲染,太贵了 06/16 10:42
23F:→ cjcat2266:不过我也无法回答实际做法是如何,因为我还没有玩... 06/16 10:42
24F:→ cjcat2266:不过Remember Me和The Bureau: XCOM Declassified的地板 06/16 10:44
25F:→ cjcat2266:是真反射,因为只有地板有反射,只需要渲染场景两次 06/16 10:44
26F:→ cjcat2266:缺点是场景主体精致程度就无法冲高,因为要渲染两次 06/16 10:45
27F:→ cjcat2266:如果是整个场景有多个反射体,使用SSRR的机率很高 06/16 10:45
28F:推 LOXAERIC:专业推!! 06/16 10:49
29F:推 ggyyggy:嗯嗯…说的有道理 06/16 11:40
30F:→ Bigcookie2:不懂装懂中 推 06/16 12:06
31F:推 kusanagi7331:神人出没快朝拜!台湾之光! 06/16 12:21
32F:推 tp950016:只能推啦 06/16 12:23
33F:推 ggBird:我都看懂,但还是进不了顽皮狗 06/16 12:30
34F:推 NakedSnake:推! 06/16 12:34
35F:推 zorroptt:原来是这样呀 嗯嗯嗯嗯嗯 06/16 12:34
36F:推 simongarden:还好我只要负责玩就好了.... 06/16 12:36
37F:推 mihonisizumi:推 太强了! 06/16 12:55
38F:推 XGOAT:我是原PO 感谢各位大大愿意花时间解答 虽然专业部分不太懂 06/16 12:56
39F:→ XGOAT: 玩主机比PC省事这原则我一直都在实践 期待顽皮狗大能带来 06/16 12:56
40F:→ XGOAT:更多神作造福玩家! 06/16 12:56
41F:推 mikeneko:嗯嗯,跟我想的一样 06/16 13:05
42F:推 a83a83cjcj:专业推!! 06/16 13:08
43F:推 wjuiahb:写的真好,我也这样认为 06/16 13:14
44F:推 nomorepipe:跪了 06/16 13:18
45F:推 godrong95:有神快拜 06/16 13:19
46F:推 igarasiyui:请教大大 ICE team有在测试PS4的hUMA是真的吗 06/16 13:42
47F:推 wuliou:我室友问我为什麽跪着看PTT 06/16 13:50
48F:推 nvidiaxp:我同事问我为什麽流泪了 06/16 13:57
49F:推 nightdragen:我妈问我为什麽要跪着滑手机OTL 06/16 13:59
※ 编辑: cjcat2266 (172.248.143.89), 06/16/2014 14:16:57
50F:→ cjcat2266:ICE team的工作内容保密,所以我不知道他们现在在干嘛.. 06/16 14:17
51F:→ cjcat2266:虽然说ICE跟ND使用同个工作空间,但是他们还是待在一个 06/16 14:18
52F:→ cjcat2266:神秘小房间里面,只有吃午餐的时候会出来晃而已 06/16 14:18
53F:→ cjcat2266:话说回来,就算我知道,有Sony的NDA也什麽都不能说啊 :/ 06/16 14:19
54F:推 LOXAERIC:CPU GPU共用记忆体其实对於异质运算架构感觉是有满大帮助 06/16 14:23
55F:→ LOXAERIC:最近在使用CUDA,有时候光传资料到GPU就占了一堆时间Orz 06/16 14:25
56F:推 cash35:PS3的设计是主记忆体与视讯记忆体分开 360则是共用记忆体 06/16 14:52
57F:→ cash35: 这种设计差异也会影响跨平台游戏的设计吧 06/16 14:52
58F:推 chocoboex:推 06/16 15:39
59F:→ callmelanpo:我居然看得懂= = 06/16 15:47
60F:推 Porianesu:完全看不懂 不过看到大神id只能推了orz 06/16 16:22
61F:推 sthho:看到神id推 06/16 16:52
62F:推 ivan4161:太猛了 06/16 17:07
63F:推 yuyuliu:看不懂没关系,只要会玩游戏就好 06/16 17:14
64F:推 chigo0123:看到最後,脑中一直浮现尘土记,真的是长知识了 06/16 18:31
65F:推 olddadwind:有神快拜 06/16 18:50
66F:推 dimrain:原以为是老梗PC和CONSOLE战文结果却是专业神回覆讨论串 06/16 18:53
67F:推 realfade:双腿不自主的跪下来了 这篇文跟台科学生证差不多...... 06/16 19:17
68F:推 dukemon:这篇请M吧... 06/16 19:23
69F:推 ivan761016:还没看内文看到id就跪一半了 06/16 19:25
70F:推 chiyosuke:(拜 06/16 19:37
71F:推 angus4003:认真分析推 06/16 20:55
72F:推 shark0321:推专业大大专业回文,专有名词都看不懂.. 06/16 21:57
73F:推 arty:长知识了 推推! 06/16 22:29
74F:推 h51206yk:专业推 06/16 22:58
75F:推 CrazyMika:专业推~ 06/16 23:06
76F:推 topless:专业推~~~ 06/16 23:14
77F:推 CALLING:看不懂 但有道光 06/16 23:57
78F:推 talan:虽然能进顽皮狗的程式设计师都一定很强 06/17 00:15
79F:→ talan:但想知道Corrinne Yu是不是真的如传说中那麽神 06/17 00:15
80F:→ cjcat2266:不太清楚,我跟她唯一的交集是一起吃过一次咖哩饭XD 06/17 00:19
81F:→ talan:她会说中文吗 听说是香港出身的? 06/17 00:21
82F:→ cjcat2266:从她的英文口音听起来,英文的确不是她的母语 06/17 00:25
83F:→ cjcat2266:所以应该会说中文没错,虽然我本人没听过就是了... 06/17 00:26
84F:→ cjcat2266:ND华人不少啊,周三有华人外食团,当然会有非华人乱入 06/17 00:26
85F:→ cjcat2266:就我所知,美术有一个台湾人,ICE也有一个 06/17 00:27
86F:→ cjcat2266:程式部门就我一个,剩下还有没有不清楚,之後慢慢找... 06/17 00:27
87F:→ cjcat2266:顺带一提,周二是程式部门的咖哩外食团,据说这个传统 06/17 00:29
88F:→ cjcat2266:已经实施了十年了...每周二都去同一家日式咖哩店 06/17 00:29
89F:→ cjcat2266:说实在的,House牌的佛蒙特咖哩块还比较好吃 06/17 00:30
90F:→ cjcat2266:不过我也不好意思一语道破,毕竟这是超过十年的传统... 06/17 00:30
91F:→ cjcat2266:我也不知道为什麽他们那麽爱吃,有一次一周还去四次 06/17 00:31
92F:推 talan:推 很有趣的内幕花絮 希望多听一点 XDDD 06/17 00:33
93F:→ igarasiyui:HOUSE wwwwww 06/17 00:33
94F:推 LOXAERIC:吃咖哩XD 一周连续吃4次感觉好腻.. 06/17 00:42
95F:→ llwopp:大概外国人比较少吃到东洋的食物 感觉很神奇吧 XD 06/17 00:44
96F:推 zerosaviour:推一下认真的顽皮狗台湾人 06/17 01:29
97F:推 OGoTTe:来朝圣一下Orz 06/17 01:40
98F:推 fhjqwefs:有神拜就对了 06/17 08:43
99F:推 sisik:ICE team的任务不就是打造第一方专用引擎,这之前就有透露了 06/17 10:22
100F:→ sisik:不需要保密. 06/17 10:23
101F:推 LonelyLove:朝圣... 06/17 10:23
102F:→ cjcat2266:我指的是ICE详细在做的事情 06/17 10:41
103F:→ sisik:PS4的专用引擎吧? 从之前的访谈推测. 06/17 10:49
104F:→ sisik:若SONY自己提供PS4的专用引擎给第三方用, 06/17 10:50
105F:→ sisik:第三方就不用被游戏引擎商抽一笔费用, 06/17 10:51
106F:→ sisik:与其被游戏引擎商抽,不如由SONY抽,这样搞限时独占也容易. 06/17 10:53
107F:推 Aqery:有神快拜 XD 06/17 13:32
108F:推 bimmer3:m(._.)m 06/17 14:16
109F:推 saedn:这篇好强大!! 太厉害了!! (跪) 06/17 15:52
110F:→ HolyBugTw:为什麽是绑定thread而非process? 06/17 16:46
111F:→ HolyBugTw:啊,白问了,access memory... 06/17 17:04
112F:推 Zsanou:专业推 06/17 18:11
113F:推 cjodagiri:我妈问我为什麽要跪着上大号 06/17 20:00
114F:推 cocowing:太专业了! 06/17 21:49
115F:→ Kamikiri:有点好奇怎麽跪着上大号 有真相吗? 06/17 23:47
116F:推 forgenius:我比较想问...为什麽你上大号你妈会进来... 06/18 00:56
117F:推 KirinP: (跪 06/18 05:57
118F:推 MACROSS2K:好强大 06/18 08:23
119F:推 nfsong:m(._.)m 06/21 12:02
120F:推 darkhit:专业~(跪) 06/21 18:51







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP