» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


 17 12
发新话题
打印

[专题讨论] 【视频】活用改造SS模拟器,彻底检证 SEGA SATURN 半透明机能!

引用:
原帖由 md2 于 2015-3-13 15:51 发表
因为SS的多边形是2D活动块模拟的
所以用负责图像处理的VDP活动块处理能力倒推出SS的最大多边形数量
SS的每秒处理像素是2400万,假设一个多边形是16X16的活动块模拟的,那60分之一秒就是1500个,也就是说SS最多可以给9万多边形贴材质。

负责矩阵计算的是SH2,它完成一个完整的顶点运算需要150周期,也就是说极限只能支撑19万个顶点,而换算成四边形可能要减半。
最理想状况下,考虑到还需要处理游戏其他程序,SS的多边形数应该在10万左右。
考虑到双CPU的因素可以认为是20万。
而PS是36万。
SS不光只有SH2可以负责矩阵计算,还配有SCU的DSP来处理矩阵,并且速度要比SH2快的多。

另外,用顶点简单除以4来计算四边形的数量只能统计独立的四边形个数,但是如果是有一条公用边的2个相连的四边形,那么这2个四边只需要6个顶点就可以了。所以PS2的那6600万的理论三角形性能就是这么出来的。

[ 本帖最后由 lemonninja 于 2015-3-19 00:33 编辑 ]


TOP

引用:
原帖由 asdqwe 于 2015-3-13 20:58 发表
posted by wap, platform: Windows
双cpu应该是15万吧
链接里的翻1下吧
我感觉这个链接里的资料有误。i960和i860这两款都是超标量cpu,理论指标非常强大,当年ss之所以没有采用,我觉得应该主要原因是价格问题,sh2的性价比高。
连接里面说ss和model1比,model1的cpu速度慢,但是要知道model1可是带有专门的浮点运算协处理器的啊,并且model1用的v60本身也具有浮点运算的能力,这和ss ps之流用的定点小数完全不是一个级别的。同时modle11还有z-buffer、透视矫正等对当时来说是高级的3D功能,可以说除了不支持纹理贴图以外简直完爆ps ss甚至是namco的高端机板system22。

[ 本帖最后由 lemonninja 于 2015-3-19 00:57 编辑 ]



本帖最近评分记录
  • md2 激骚 +2 疯狂厨房 2015-3-19 14:32

TOP

引用:
原帖由 asdqwe 于 2015-3-18 15:30 发表
posted by wap, platform: Windows
当年土星用r3000的话会怎么样?
不会怎么样,当年SONY用的r3000是定制,里面包含有专门用来处理矩阵的GTE单元(相当于现在gpu里面顶点处理单元),普通的r3000和sh2没啥两样。


TOP

引用:
原帖由 快乐猪头 于 2015-3-13 17:28 发表
posted by wap, platform: OPPO FIND 7 标准版
PS的36万是理想值,MODEL2的30万是实际值,差别很明显。PS实际值应该不到20万,SS估计15万都没有
model2用的是浮点运算,不是一个级别的。在没有一个统一标准测试的环境情况下看多少多少多边形每秒完全没有意义,而当年这些厂商完全都是避重就轻的

TOP

引用:
原帖由 werety 于 2015-3-19 10:03 发表

GTE单元并不是集成在R3000内的,而是一块独立的芯片,就在主板上能看到,比R3000还大了一号。
我们经常会在PS游戏里看到画面出现多边形位移、碎裂、缝隙等等情况,也是因为GTE的运算精度有限。
另外GTE的顶点处理 ...
你说的那个不是GTE,那个是用来做纹理和像素绘图以及Sprite的芯片,类似于SS上的VDP1。GTE是和R3000集成在一起的。
硬件T&L早在上世纪70年代就有了,只不过都大多都用在高端的图形工作站上。
GTE的全称是Geometry Transformation Engine几何转换引擎,和T&L的意思Transforming & Lighting转换与光照是一样的。GTE和GPU都是用矢量的方法来处理顶点,有什么不一样?只不过 GTE使用16bit定点小数,精度上自然比不上后来使用32bit浮点小数的GPU。如果你说32bit的cpu是cpu,那么难道16bit的cpu就不是cpu了?
PS上使用的是sgi在80年代初期的图形工作站的硬件,而同世代3D基板基本采用的都是90年代的硬件,相差了不是一点点。
另外值得一提的是SS也有一个和GTE功能相同的DSP 来负责处理T&L。

[ 本帖最后由 lemonninja 于 2015-3-19 22:51 编辑 ]

TOP

引用:
原帖由 KainX 于 2015-3-23 02:36 发表

Model1没有perspective correction和z-buffering,全特效有18万/秒多边形,也就比土星强点。
Model1有N块Fujitsu TGP MB86233浮点协处理器,每一块理论上都能有16MFLOPS的32bit单精度浮点运算,这可不是比SS强点,完全是法拉利和桑塔纳的差距。基本上估计model1的计算力能有早期model2的70%左右(早期的model2用的是MB86234协处理器),如果说连model1这种精度和算力都无法实现z-buffer,那么ss ps可以说是连实现3D多边形的计算力都没有了。要知道无论SS PS还是n64用的都是16bit定点运算,在精度和速度上都被这种兽级的基板完爆,那么n64都可以做一定程度的z-buffer,换成精度和速度更高的model1反而做不到?

附上model1基板的pcb布局

https://github.com/mamedev/mame/ ... me/drivers/model1.c

[ 本帖最后由 lemonninja 于 2015-3-24 00:06 编辑 ]

TOP

引用:
原帖由 qyqgpower 于 2015-3-23 01:59 发表
posted by wap, platform: iPhone
R3000架构是88年公布的,用在了很多工作站和服务器上,改进型R3000A是89年。
所以94年上市(起码92年就开始开发了吧)的PS自称游戏工作站一点都不为过。

何况PS用的R3000A还整合 ...
无论是PS的GTE,还是SS的SCU DSP,甚至N64的RSP都是16bit定点小数的矢量处理器,而同时时代的主流图形工作站早就广泛采用32bit浮点数了,对工作站而言这些家用机的硬件完全属于淘汰货。家用机是直到98年底的DC开始才广泛使用浮点运算的。

[ 本帖最后由 lemonninja 于 2015-3-24 01:06 编辑 ]

TOP

过去那些电软的文章就能拿来消遣消遣好了,不必当真。那个时候没有互联网,加上国内获取信息的渠道有限,资料错误在所难免,而且再说那个时候电软的读者大多都不具备计算机的基本知识,看的也似懂非懂。

技术发展都是一步一个脚印,没有什么特别神棍的东西,SONY也不是从天顶星来的,没有什么黑科技。只不过是拿了一些已经成熟的技术让PS达到了成本和性能的平衡,实时3D处理简单划分也就这么几个步骤,顶点生成 顶点变换 光栅化 像素or纹理操作 输出,所有操作都是数学公式的表达,那么就需要依赖相应的计算力,像PS这种CPU+GTE+GPU非常简单,性能也容易发挥。SS最大的问题还是结构太复杂,要达到ps相同的水准需要费很大的功夫,但是理论计算力一点都不弱。世嘉的野心太大,一心想把SS搞成街机那样的怪物,但又不得不屈服于成本,所以就弄巧成拙了。而且sega早期自己提供的开发工具也不成熟,要利用scu的dsp(SS版的GTE)还必须要用汇编,相比PS只要有C语言就可以可以为GTE编程了,自然是给PS写程序容易多了。
N64作为家用机同样也在性能和成本上做出了妥协,要知道N64要是采用高精度算法,多边形直接下降到不到10万个/秒,还不如model1呢,不过要比PS SS强多了。

[ 本帖最后由 lemonninja 于 2015-3-24 23:16 编辑 ]

TOP

引用:
原帖由 KainX 于 2015-3-24 15:02 发表

LOL没有任何资料显示Model1有z-buffer,机能强大与没有z-buffer并不冲突,这个不能靠猜。
什么叫靠猜?所谓的z-buffer就是完全依靠性能来支撑的,换句话说只要有足够的性能就可以用z-buffer,机能强大与没有z-buffer并不冲突都是什么乱七八糟的。理论上像ss ps都可以用z-buffer,只不过帧率要掉到个位数,分辨率要下降一倍以上,所以不具备实际意义。

TOP

引用:
原帖由 KainX 于 2015-3-24 15:03 发表

N64多边形输出能力不如PS。
开什么玩笑。至少2.5倍~3倍的多边形性能。

TOP

引用:
原帖由 KainX 于 2015-3-25 14:47 发表

哎呦,高论呐,原来z-buffer是这么来的,你都说这话了我就不贴z-buffer的计算公式和使用条件了,“理论上”你很强大。
那要怎么来?你告诉我80年代的3D硬件是如何做z-buffer的?

TOP

引用:
原帖由 KainX 于 2015-3-25 14:57 发表

这个是理论值,N64有个非常可笑的的4K容量贴图限制,实际游戏中根本用不到大量多边形。
我想你说的应该是N64那个4K纹理cache吧,这个不光是n64有,就连现代的GPU也都有,比如最新的GTX980总共也就是1M的纹理cache,那么难不成GTX980只能存放1M的纹理不成?还不如voodoo1??再说这个又和多边形的输出能力有哪门子关系啊。能否先去理清楚一下概念?

TOP

引用:
原帖由 KainX 于 2015-3-26 14:13 发表

80年代的Z-buffering和100年以后的Z-buffering不会有区别:http://en.wikipedia.org/wiki/Z-buffering

凡是硬件支持上链接中算法(所谓硬件支持就是针对这种算法特殊设计的处理器)、才能叫支持Z-buffering,没 ...
“硬件支持“和”软件支持”并没有那么泾渭分明,所谓硬件方法就是用一块或者一群处理器来把相关的任务单独分离出来而已,也就是分担运算,后来又有了单独针对某一算法而优化的专用芯片。早期的3D显卡的硬件都是一块一块的独立处理器,有光栅化的、有处理纹理的、有顶点运算的,有zbuffer的等,用来计算的处理器既可以是通用处理器,也可以是定制的ASIC。这就是硬件支持。后来集成度提高了,就把各种处理器都集成到同一块芯片中去了,再之后就演变成现在GPU的内部管线了。即便是在为单一算法优化的专用集成电路上一样都是通过软件来实现的。

TOP

引用:
原帖由 KainX 于 2015-3-26 15:06 发表

4K纹理的结果就是N64的机能被填充率限制,进而限制了几何机能(多边形)。http://en.wikipedia.org/wiki/Nin ... ing_characteristics

我简单说下上链接重点:
“N64在实际游戏中的可用多边形大概 ...
我理解你的意思,但是直接造成n64瓶颈的并不是这区区4k的cache,而是捉襟见肘的内存带宽以及较高的内存延迟,所以才会变成大大依赖这个cache的作用。现代GPU也仅仅只有1M左右的纹理cache,这个cache相比PS SS来说已经是进了一大步了。N64真正的问题是没有平衡好整个系统导致的(可能控制成本的缘故)。但不管怎么样,瘦死的骆驼要比马大,同样是10万多边形质量却是不同的。N64要进行纹理过滤等高级特性,要是换成低精度模式,50万个多边形是PS望尘莫及的。不在同一个标准下的评判没有任何意义的,让一个跑弯道的成绩和一个跑直道的成绩对比没有意义。

[ 本帖最后由 lemonninja 于 2015-3-27 00:43 编辑 ]

TOP

引用:
原帖由 KainX 于 2015-3-27 15:51 发表

N64没有什么低精度模式,把所有特效都去掉它也只有4K贴图;也没有任何N64游戏用了50万多边形,还是那句话——别靠猜。

不要总拿什么“同一个标准下”当挡箭牌,有一个标准高于一切,叫做现实——实际游戏中的多边形使用量就是最终解释。
就你自己贴的链接里都有
SGI's default microcode for Nintendo 64 is called "Fast3D", which some developers noted was poorly profiled for use in games. Although it allows more than 100,000 high accuracy polygons per second, this microcode is optimized more for accuracy than for speed, and performance may suffer as a result. Nintendo's own "Turbo3D" microcode allows 500,000–600,000 normal accuracy polygons per second.

照你这种说法,n64完全可以用低精度把PS秒杀,那些开发者何苦死死守着10万多边形不放。

TOP

 17 12
发新话题
     
官方公众号及微博