本帖最后由 n805 于 2025-1-4 22:10 编辑 6 [" S+ c6 c! V/ {6 b1 h
" T& L6 _8 f0 M7 O4 gPS可以使用3角型和四边形。一个四边形可以用两个三角形来组成,只是多绘制两个图形那当然还是绘制一个图形需要的运算更少。所以大部分情况下还是会使用四边形。 u2 D4 ~5 u/ s z9 J; J
6边形和8边形分别可以用两个或者三个四边形来组成。问题在于7边形。7边形无论如何都会需要一个三角形。5 U, l+ K& B* Q. z4 {; X* \& ~
在这种情况下,PS可以使用三角形的多边形。土星则通过将一个四边形的两个顶点重合(分享一个顶点)来让一个四边形变形成三角形。换句话说就是让四边形的两个顶点都用相同的坐标数据。所以无论是哪个平台都可以显示相同的多边形。虽然方法上有区别,但是没有优劣。 ?& J" J; d, K0 z2 P3 C# e4 _
接下来说下材质贴图。
& B8 J1 r+ _5 K3 o/ D& A假设我们有下图的这样一个立体多边形,一个六棱柱。我们给他附上贴图,来表现一个饮料罐。六棱柱本身是一个简单的图形,一共12个顶点,需要的算量不大,所以在当时经常会被用到。
$ P: S9 p0 c8 h5 Q/ h/ `; \% ?% ? ^/ n
附到图形上的贴图是这样一个图案。
! x3 l2 Y; B8 ?PS可以对这个图像进行设定,指定罐子的各个顶点在这个图像上的对应位置,也就是设定坐标(UV坐标)。于是贴图就可以绕着图形贴上去。! v: m5 M; }# C. J
+ P" M# |3 j, P- o
土星需要事先将材质贴图的图像分割。 , u7 v. m# V% S
' @8 v M# P' ePS像是将材质贴图贴上去。土星则更像是将分割好的材质做为面板围着图形搭起来。% u1 ]0 m* U8 W5 G( m5 g$ q6 A
这只是一个相对简单的例子。只要对材质进行分割就可以,不需要太复杂的操作,使用工具软件就可以完成。那接下来我们再进一步细化我们的这个饮料罐。我们在它顶面的六边形上绘制一个拉环。+ c$ Y7 ?5 U x
可以使用uv坐标的话(PS之流),我们可以先绘制一个四边形,然后在四边形的材质上通过设置UV坐标来将四边形剪裁成六边形,贴附在图形上,一个拉环就完成了。
; ~) _6 f+ }! @. b# K9 m. q3 F8 S但是如果是土星的话,材质会先被剪裁成四边形,并被变形。所以在绘制材质的时候就要首先考虑到变形这一点,绘制变形后比例正常的土星。也就是说准备贴图的过程会变得很麻烦。; K5 f* g; I4 O/ Q/ Z# F- {
乍一看PS的3D十分好用,实际运用时也并非如此。: P, }) J* w' W' a0 Y
解释起来有些麻烦的问题。实际上UV坐标的各个点和点之间的连线是直线。既然要贴图,就需要读取由点阵图绘制的材质,于是材质的边缘就会出现折线,形状会稍有扭曲。接下来的贴图的过程,根据立体多边形的形状确定贴图的区域,点阵图的像素会被写入。这里又会出现扭曲。这是PS的材质扭曲的另外一个原因。
# h0 _4 b7 X2 P2 O) c众所周知,PS的材质会扭曲,这是PS的一大弱点。土星在读取材质是不会发生扭曲,只有在最后显示图形的时候才会出现扭曲。绘制变形后比例正常材质虽然麻烦,但并不困难。PS的做法在材质非常大时,扭曲的影响会相对变小,甚至可以忽略。但实际上PS的内存很小,无法使用如此之大的贴图,所以这个问题无法绕过。$ B' ?6 ^& n3 I: D1 u
PS可以说是一个标准的、教科书式的3D硬件,却没有重视实现上的现实问题。土星虽然是生硬的在一个2D硬件里建立了3D功能,但比PS重视实现上的现实问题。如此看来,双方也没有什么优劣之分。
! c! k0 K, ~) @% u# B3 d, K1 \立体多边形(polygon)只是一个概念,而不是什么技术。不是三角形;不是通过UV坐标贴图;不是硬件计算……甚至没有明确的定义。所以,「假多边形」之类的说法在我看来也无法理解。+ h) I! B" S1 N9 K3 ]: M7 \
|