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


发新话题
打印

实机格兰蒂亚果然PS秒杀SS版,更新多图

引用:
原帖由 dragonzet 于 2012-11-21 14:55 发表
月下除了棺材,几个背景3D,一些特效是用半透明做的外根本就没用3D
大量2D活动块回旋机能表现得动作
再说了这个3D半透明SS用2D半透明又不是不能做,可能过度上会突兀一些,但不是NEOGEO那种 没有2D半透明只能靠 ...
半透明不分3D半透明还是2D半透明。更何况月下里的雾变身,本就没3D什么事。
这事说白了就是SS的2D机能有缺陷,sprite如果需要变形,哪怕只是在2D方向上的拉伸(比如月下的雾变身),那么半透明就不可用,除非sprite是一个纯色块。说这是3D机能的缺失?显然站不住脚,况且无论PS还是SS,在进入光栅后,基本都是一纯2D硬件,和后来的N64与PC3D加速卡时代大不相同。
月下的雾变身用SS能不能做,也能,就是麻烦且运行效率低,既然不能让sprite变形,那就只能画一堆变形的序列帧贴图了呗。

[ 本帖最后由 hourousha 于 2012-11-21 19:11 编辑 ]


TOP

引用:
原帖由 dragonzet 于 2012-11-21 19:12 发表
3D半透明的好处是可以花很少的内存做一个漂亮的柔和的从有到无渐隐的过度效果吧,如果是2D半透明做的话每一幅都需要一张画面,就像彩京那些飞机游戏爆炸的火光一样。。。
也可以利用扩张卡然后花大量的中间副 ...
你怎么定义3D半透明的?我很费解。
用一个2D的sprite——只有XY坐标,套用一个颜色函数(只作用在2D光栅化的像素上),再套一个和帧缓存叠加的公式(PS、SS都没有达到Alpha-Blending程度的自由度,是半加、半减这种比较初级的),怎么就成了'3D'半透明了呢?3D在哪了呢?
要说3D半透明,那至少得满足下列要素之一
1:半透明贴图有深度透视矫正效果。
2:半透明的polygon有深度检测效果。
但毫无疑问,上面两条,是无论PS还是SS都没有的功能。

你说的saikyo的那些问题,说白了都是2D机能的缺失,还轮不到3D的头上。



TOP

引用:
原帖由 dragonzet 于 2012-11-21 19:32 发表
像FF8 FF9那样的各种光环粒子
一个多边形片加上贴图和ALPHA遮罩做出来,然后用机能渐隐或者渐现或者做其他XYZ(月下应该只有XY)轴向上的运动  我觉得这样的就是3D特效
难道月下不是用这种?
所以说你的定义让人费解啊。
SS不能做淡入淡出的半透明么?当然也行啊。SS不能让一个半透明sprite上下移动么?也行啊。这东西怎么就成了3D特效了呢?
月下的很简单,就是一2D的sprite,在XY方向运动的同时,它的Width和Height都也在改变。如果Width和Height不变,那么SS也可以原样实现,但因为Width和Height也变了,所以SS的半透明就用不上了,你说这和3D有啥关系?从头到尾就是2D的啊。
PS和3D有关的也就是在顶点运算部分有GTE这个几何处理单元罢了,它可以快速处理顶点的空间变换,但输入到光栅化的,都是一个个完全意义上的‘平面三角形’——连深度信息都舍弃的三角形,光栅化后也无法做深度透视矫正与深度测试(得在光栅化之前由CPU做三角形的绘制深度排序)——深度信息之前就舍弃了嘛。而半透明是发生在这之后的操作,正因为如此,PS的半透明显然与3D无关。


TOP

引用:
原帖由 dragonzet 于 2012-11-21 20:08 发表
由两个三角形组成的一个四边形多边形不算3D嘛?
我一直以为活动块或者活动块动画是2D
多边形是3D,即使它只在XY方向上运行依旧是3D
如果不算的话,以后就改称多边形特效好了
sprite(活动块)不就是一平面上的四边形么?也就是多边形的一种啊,SS里其实关于前景非点线的图形元素(叫part)就两种,带贴图的叫sprite,不带贴图的叫polygon。两种都可以变形。没有其他的了,要按照你这种分类,SS是没有2D机能的了?
相对应的,PS倒还有我猜符合你说的2D机能,因为PS前景primitive除了三角形,四边形(都可以带贴图或不带贴图,变形)外,它的sprite特指不能变形,纹理也不能缩放的长方形绘制元素。
所以,你的分类,或许是停留在过于古老时代,不用说不符合现代的标准,也已经不符合PS/SS时代的划分了。
其实PS勉强可算是2.5D的机器(至少还有一部分为3D加速而生的硬件),SS基本就可认作是一2D的机器而已,所谓2D,也自然包括2D的多边形,别把眼光局限于FC或更早的2D就是区块图案复制移动这种概念上啊。

TOP

引用:
原帖由 hein 于 2012-11-21 21:32 发表
我想问一下,10年前我用DX7,做纯2D的东西,变形就很不方便,我直接用2D动画代替,同事透明度也很难控制,而且直接导致吃机能,为求方便我同学用网格代替了,而用D3D做2的变形就方便很多透明也方便很多,所以我觉 ...
DDraw的功能其实很原始,核心也就是一个高效的区块复制(能带个ColorKey),连半透明都得用CPU来算,所以那时候很流行用MMX来优化半透明计算之类。也就是说,绝大部分功能都得CPU来算,DDraw做的也就是快速访问GPU显存这一功能。说实话,还不如SS和PS呢。
后来D3D直接把DDraw的大部分功能给整合了,从DX9开始就改叫DirectGraphic了,可以看作是DDraw和D3D的一个超集。
SS从硬件上就是有2D Sprite变形功能的,所以变形不是问题,半透明机能也有,SS的问题出在贴图处理上面,它的贴图是按变形后的一条一条边进行绘制的,所以你想象一下,如果变形后的四边形一边长一边窄,势必就要有一部分像素被重复绘制多次,于是乎,在这种情况下,如果套用半透明处理,绘制多次的像素所展现的最终颜色就会出错(因为每绘制一次,都会进行一次半透明运算,等于一个像素进行了多次叠加的半透明运算)。为了避免这种情况,SS做了‘变形Sprite不能使用半透明功能’这个限制,而PS的贴图是以每个像素进行文理坐标查询的方式进行的,也就是它只会对一个多边形里的每个像素绘制一次,因此半透明功能始终可用,此消彼长,于是就出现了‘SS半透明不如PS’的现状。所以说,这个问题不是SS的3D机能不行,而是2D方面就走错了路。
SS/PS这些平台的CPU是非常孱弱的,所以不可能指望由CPU再去完成像素方面的操作(比如半透明啦,纹理贴图啦),这点PC要容易,一台高频486加上纯2D显卡(功能还没SS的多)就可以跑比PS上还要‘正宗’的3D游戏比如Quake。所以,那时代Console基本上图形硬件的限制就是最终的限制,走错一步就得承担后果。

TOP

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