本帖最后由 n805 于 2025-1-4 22:10 编辑 . L% f8 d. T0 z2 d* Y8 \: U5 p( P7 g
: O; z' T7 t1 o# ~* \) c
PS可以使用3角型和四边形。一个四边形可以用两个三角形来组成,只是多绘制两个图形那当然还是绘制一个图形需要的运算更少。所以大部分情况下还是会使用四边形。
$ z4 ~" u4 s5 r, e2 ?6边形和8边形分别可以用两个或者三个四边形来组成。问题在于7边形。7边形无论如何都会需要一个三角形。
( `4 D" V' h* O( J在这种情况下,PS可以使用三角形的多边形。土星则通过将一个四边形的两个顶点重合(分享一个顶点)来让一个四边形变形成三角形。换句话说就是让四边形的两个顶点都用相同的坐标数据。所以无论是哪个平台都可以显示相同的多边形。虽然方法上有区别,但是没有优劣。
, u+ F, t4 [) r2 M/ M接下来说下材质贴图。+ i0 w' D* N4 l7 \' {3 I
假设我们有下图的这样一个立体多边形,一个六棱柱。我们给他附上贴图,来表现一个饮料罐。六棱柱本身是一个简单的图形,一共12个顶点,需要的算量不大,所以在当时经常会被用到。 L$ M; r) E1 Q) b0 X
* ?1 q9 w+ L5 H" C7 r* G附到图形上的贴图是这样一个图案。
0 Q4 |/ Y/ O% s3 p) @$ _0 BPS可以对这个图像进行设定,指定罐子的各个顶点在这个图像上的对应位置,也就是设定坐标(UV坐标)。于是贴图就可以绕着图形贴上去。1 l) F% P6 D* N. Y
0 g0 v$ x( d8 \. ^: E. i5 I% r# _土星需要事先将材质贴图的图像分割。
% m: S j+ b8 R' V- {4 F4 X. Z* _. x7 @
PS像是将材质贴图贴上去。土星则更像是将分割好的材质做为面板围着图形搭起来。* p. @6 O8 A, M+ r0 |- F/ L0 V
这只是一个相对简单的例子。只要对材质进行分割就可以,不需要太复杂的操作,使用工具软件就可以完成。那接下来我们再进一步细化我们的这个饮料罐。我们在它顶面的六边形上绘制一个拉环。6 E9 Z9 h. H' ]! ^: m4 H @9 ^
可以使用uv坐标的话(PS之流),我们可以先绘制一个四边形,然后在四边形的材质上通过设置UV坐标来将四边形剪裁成六边形,贴附在图形上,一个拉环就完成了。
3 n( b2 R+ G5 \: K) L: C但是如果是土星的话,材质会先被剪裁成四边形,并被变形。所以在绘制材质的时候就要首先考虑到变形这一点,绘制变形后比例正常的土星。也就是说准备贴图的过程会变得很麻烦。6 U: M* N" r, V) L" A* s' O; C, [
乍一看PS的3D十分好用,实际运用时也并非如此。1 l( {& T& J: h( `& p
解释起来有些麻烦的问题。实际上UV坐标的各个点和点之间的连线是直线。既然要贴图,就需要读取由点阵图绘制的材质,于是材质的边缘就会出现折线,形状会稍有扭曲。接下来的贴图的过程,根据立体多边形的形状确定贴图的区域,点阵图的像素会被写入。这里又会出现扭曲。这是PS的材质扭曲的另外一个原因。
6 c% }" F" F3 @- V众所周知,PS的材质会扭曲,这是PS的一大弱点。土星在读取材质是不会发生扭曲,只有在最后显示图形的时候才会出现扭曲。绘制变形后比例正常材质虽然麻烦,但并不困难。PS的做法在材质非常大时,扭曲的影响会相对变小,甚至可以忽略。但实际上PS的内存很小,无法使用如此之大的贴图,所以这个问题无法绕过。
; D h- F; ^% R( y, Z% X H7 QPS可以说是一个标准的、教科书式的3D硬件,却没有重视实现上的现实问题。土星虽然是生硬的在一个2D硬件里建立了3D功能,但比PS重视实现上的现实问题。如此看来,双方也没有什么优劣之分。
. x( }/ k0 H$ Q; _0 i. o立体多边形(polygon)只是一个概念,而不是什么技术。不是三角形;不是通过UV坐标贴图;不是硬件计算……甚至没有明确的定义。所以,「假多边形」之类的说法在我看来也无法理解。: v' [8 H1 D! e0 r5 a' i" {6 o( ~
|