« Dreamcast架构 (index)

Dreamcast架构

Chapter 4: 图形


目录

  1. 架构
  2. 构建
    1. 图块加速器
    2. PowerVR2 核心
  3. 全景
  4. 获取细节
  5. 视频模式

GPU封装是一个名为Holly的定制芯片,运行频率为100 MHz。 与以前的内部设计不同,世嘉现在与VideoLogic(现称为Imagination Technologies)合作,由他们提供具有竞争力的3D加速器。

Image
Holly芯片(移除散热垫后)和视频编码器。

在Holly内部,我们可以找到VideoLogic的独家图形电路,称为PowerVR2(也称为"PowerVR Series2"和"CLX2"),它基于他们之前的PowerVR GPU,但是是专为Dreamcast量身定制的。

架构

VideoLogic选择了一种替代方法来构建他们的3D引擎,称为基于图块的延迟渲染(TBDR)。

TBDR不是一次渲染整个帧(如传统的即时模式渲染器或'IMR'做),而是将渲染区域划分为称为"图块"的多个部分。 然后,它对每个图块单独执行渲染过程,并将结果组合起来形成最终帧。

Image
索尼克大冒险(1999)。

这种创新的设计带来了一些有趣的优势:

毫不奇怪,Imagination将这项高效技术向前推进,构建了4系列的PowerVR内核,为数量惊人的设备提供动力,包括第一代iPhone、iPhone3G、诺基亚N95和戴尔的Axim x51。

构建

让我们来看看Dreamcast的GPU的两个主要组件:

图块加速器

Image
图块加速器架构。

在渲染过程开始之前,称为图块加速器的组件执行预处理。 它首先分配了几个32x32的图块容器,几何图形将会被渲染到这些容器中。

然后,图块加速器将:

  1. 获取CPU发出的几何数据和绘图命令(使用DMA或传统传输)。
  2. 将此数据转换为内部格式。
  3. 根据其坐标将几何分布到每个容器。 被裁剪的几何图形也会被丢弃。
  4. 生成生成的显示列表。

然后由3D引擎解释这些显示列表:PowerVR2。

PowerVR2 核心

Image
PowerVR2 核心架构。

在这里图形被赋予了生命,从TA(译注:纹理地址单元/Texture Address Unit)接收到的显示列表告诉核心使用内部帧缓冲区 来渲染单个图块的几何图形。 过程如下:

  1. 图像合成处理器或"ISP"获取基元(三角形或四边形)并执行隐藏表面去除以去除看不见的多边形。 然后,在计算其Z轴缓冲区和模板缓冲区后,数据通过深度测试以避免渲染会出现在其他多边形后面的多边形,如果它们位于2D多边形后面则不可见的几何图形(也称为遮罩),就会通过模板测试以剔除。
    • 请注意这些测试是如何在管道开始时有效执行的。 与之相对的,以前的主机 使用懒加载z轴缓冲在管道末端丢弃几何形状。 ISP可以防止处理最终将被丢弃的几何图形,从而节省资源。
  2. 纹理和阴影处理器或"TSP"在图块区域上应用着色、阴影和多种效果。
    • 在导出图块之前不会应用纹理,这意味着出现的重绘(如果有)不会降低填充率。

这些操作完成后,渲染好的图块被写入VRAM中的主帧缓冲区。 这一过程将一直重复直到所有图块都得到处理为止。 一旦完成,生成的帧缓冲区由视频编码器拾取并通过视频信号发送。

全景

除了明显的架构差异之外,纹理和着色处理器还具有许多功能,可以让人们了解这台游戏机与旧的土星差距多大。 以下是一些值得注意的例子:

获取细节

Holly现在可以绘制比其前代多10倍的多边形,这里有一个之前和之后示例,展示了模型设计如何不再受限制。 试着调整他们!

3D model 3D model 3D model
"现代版本"中可用的互动模型
土星的索尼克竞速(1997)。
286个三角形(或185个四边形)。

3D model 3D model 3D model
"现代版本"中可用的互动模型
Dreamcast的索尼克大冒险(1999)。
1001个三角形。

视频模式

视频系统被设计为支持多种类型的屏幕和格式,因此视频编码器输出到一个统一形状的插口,该插口支持以下类型的信号:

Dreamcast 无法同时对所有这些信号进行编码,因此 GPU 和音频处理器包含了一个名为 图像模式 的寄存器,用于协调哪些视频/音频总线会被激活以生成所需的信号。 CPU检测插入的电缆类型(通过检查视频连接器的哪些"选择位"处于活动状态)并将所需值写入GPU。 最后,这些值被转发到音频处理器。

由于VGA严格来说是一种逐行信号(与传统的隔行扫描相反),因此仅为隔行扫描视频设计的游戏会出现一些兼容性问题。 这些游戏会在其代码中明确声明不会在VGA上显示,这将让CPU阻止游戏执行,直到用户将VGA电缆换成另一种类型。


Previous: 3. 中央处理器 (CPU)

Next: 5. 音频


Rodrigo Copetti © 2026 RSS Feed

切换至现代版

主页 · 文章 · 支持 · 关于作者 · 关于此网站