renderer、raytracer、powercaster 和 powertracer

用途

renderer 在命令行中通过 Alias 场景描述语言文件创建光线投射或光线追踪的图像文件。Alias 渲染器程序创建的图像文件如下:

Alias Renderer for Windows 是用于渲染 Alias 文件的命令行工具。渲染的文件生成一个可以作为动画回放的图像序列。

如果您尚未购买,系统中可能不存在 powercaster 和 powertracer 功能。

说明

全部四个渲染器程序使用相同的参数。renderer、raytracer、powercaster 或 powertracer 的用法语句的介绍如下。

<command> [-a#] [-b#] [-B#] [-c <quantized_output_file>] [-C <color_map_filename>] [-d <filename>] [-e#] [-E#] [-f <script>] [-h#] [-H] [-J] [-k] [-K#] [-m <filename>] [-p <filename>] [-P] [-q#] [-Q#] [-r#] [-R#] [-s#] [-S#] [-t#] [-T#] [-w#] [-W#] [-x#] [-y#] [-Y#] [<sdl_filename>]  
<command> 是 renderer、raytracer、powercaster 或 powertracer
-a# 将抗锯齿级别 (aalevel) 设置为整数 #。aalevel 是每个像素的最高抗锯齿级别。
-b# 将动画序列的按帧编号设置为浮点数 #。
-B# 将动画序列的按扩展名设置为整数 #。
-c <quantized_output_file> 在每个帧后将量化的图像输出到 <quantized_output_file> 文件。
-C color_map_filename 在每个帧后,使用 SGI 图像格式的文件 <color_map_filename> 作为要为量化引用的颜色贴图。*
-d <filename> 使用 <filename> 作为深度文件名。
-e# 将动画序列的结束帧编号设置为浮点数 #。
-E# 将动画序列的扩展名大小设置为整数 #,其中 # 表示扩展名编号前面填充的零数。例如,-E 4 生成形如 <file>.0001 的文件扩展名,表示帧 1。
-f <script> 在每个帧后调用 <script> 程序。
-h# 将要渲染的局部图像的图像高度设置为整数 #,而不更改视口。但是,要渲染的这个子区域始终源自图像的左下方。整数 # 绕着视口移动此窗口的原点。
-H 显示联机帮助。
-J 创建一个称为“timing”的深度文件,表示每个像素的时间。
-k 读取一次深度贴图后,即将其保留在内存中。**
-K# 将磁盘使用率的深度贴图切换为 #。0 代表 OFF。任何非零数字均代表 ON。***
-m <filename> 生成遮片文件,并使用 <filename> 作为文件名。
-n# 将渲染要使用的处理器数设置为整数 #。此选项只适用于 powertracer 和 powercaster。
-p <filename> 使用 <filename> 作为 pix 文件名。
-P 保留无光晕图像(除非启用了 DOF 或 Quantize)。通过此选项可以将有光晕和无光晕的图像均保存在磁盘上。无光晕图像将与有光晕图像同名,但后缀是 .ng。
-q# 将静默标志设置为 #。# 可以是 0、1 或 2。
-Q# 将 X 方向和视口中的分辨率设置为整数 #。此选项可以用于覆盖给定 SDL 文件中指定的分辨率。例如,可以用于在渲染 NTSC 和 1/4 NTSC 之间切换,以便进行快速预览渲染。
-r# 将纵横比设置为浮点数 #。
-R# 将 Y 方向和视口中的分辨率设置为整数 #。此选项可以用于覆盖给定 SDL 文件中指定的分辨率。例如,可以用于在渲染 NTSC 和 1/4 NTSC 之间切换,以便进行快速预览渲染。
-s# 将动画序列的开始帧编号设置为浮点数 #。
-S# 将动画序列的开始扩展名设置为整数 #。
-t# 将 aathreshold 设置为整数 #。aathreshold 是抗锯齿阈值,根据颜色差异对像素进行适应性超级采样。该值越高,超级采样对颜色差异就越敏感。
-T# 将平铺中的 Y 像素数设置为整数 #。平铺是指要一起渲染的一行像素。使用此选项的主要原因是通过降低 Y 值来减少所使用的内存量。此选项控制为进行渲染将图像拆分成的平铺大小,对最终图像或其分辨率没有任何影响。
-v 通常在视口区域之外进行渲染
-V 使用隐藏线渲染图像
-w# 将要渲染的局部图像的图像宽度设置为整数 #,而不更改视口。但是,要渲染的这个子区域始终源自图像的左下方。整数 # 绕着视口移动此窗口的原点。
-W# 将背景的 ylow 设置为 #。ylow 和 yhigh 定义应出现背景的渲染区域(以像素为单位指定)。
-x# 将 xleft 设置为整数 #。xleft 是要渲染的局部图像的左角。
-y# 将 ylow 设置为整数 #。ylow 是要渲染的局部图像的左角。
-Y# 将背景的 yhigh 设置为 #。ylow 和 yhigh 定义应出现背景的渲染区域(以像素为单位指定)。
sdl_filename 将 SDL 文件名设置为特定的文件名。如果未指定任何文件名,将使用标准输入。

* 如有要求,渲染器将在渲染图像之后进行量化。选项 -C 允许使用以前生成的颜色表对图像进行量化。但是,aquant 对图像进行量化的速度要快得多。

** 通常,如果为阴影聚光灯指定了 depth_input 文件,每个帧均将读取该文件。-k 强制渲染器只在渲染第一个帧期间读取阴影贴图一次。

*** 若要将 depth_input 或 depth_output 命令添加到阴影聚光灯中,而不必编辑 SDL 文件,可以使用此命令行选项。如果设置为非零值(例如 -K 1),渲染器将自动在当前目录中创建深度输出文件(以聚光灯命名),如果这些文件已存在,将使用相应文件。

使用上述任意选项将覆盖 SDL 文件中任何相应的 SDL 关键字设置。

示例

下列示例说明如何使用渲染实用程序:

以下命令:

renderer testframe.sdl

渲染名为 testframe.sdl 的 SDL 文件。将使用 SDL 文件中设置的所有参数和关键字。如果缺少任何关键字并且要求提供值,将使用该参数的默认值。

以下命令:

renderer -a0 -s1 -b2 -e20 -p testpix -q0 -h512 -w512 -x0 -y0 scene.sdl

渲染名为 scene.sdl 的 SDL 文件。要渲染的场景是动画。

通过将 aalevelmax 设置为 0,可禁用抗锯齿。SDL 文件中指定的动画通过指定 -s1 -b2 -e20 被覆盖,动画的前 20 个帧使用帧步长 2 进行渲染。将输出正常消息,且测试图像的大小为 512x512 像素的正方形。动画序列将输出到以名称 testpix 开头的一系列文件。

以下命令:

renderer -s 1.5 -e 3.5 -b .25 -S 1 -B 2 -E 3 sdl/foo

生成以下内容:

foo.001 (a snap shot of the animation at time 1.5) foo.003 (a snap shot of the animation at time 1.75) foo.005 (a snap shot of the animation at time 2.0)  ... foo.019 (a snap shot of the animation at time 3.25) foo.021 (a snap shot of the animation at time 3.5)

假定是 512x512 图像,以下命令:

renderer -h 255 -w 255 -x 255 -y 255 sdl/foo

生成原始图像右上角的 255 x 255 像素区域的图像。

重要说明

保存的几何体与运动模糊不兼容。

不能停止和启动使用保存的几何体的渲染器进程,也不能保留保存的几何体。

保存的几何体会占用大量内存。在尝试使用之前,应至少有 100 MB 的可用交换空间。

Alias 背景在当前渲染像素跨距的顶部和底部之间(Y 方向)进行插值。如果要只渲染某个子区域,可能不希望这样做,因为背景将在 Y 方向重复出现多次。因此,使用选项 -W 和 -Y 指定 Alias 可用于计算背景位置的最终分辨率。

文件格式

SDL 文件是二进制文件,可以跨平台兼容。若要编辑 SDL 文件,必须先使用独立实用程序 bsdl 将其转化为文本。TIFF 文件格式是一种图像显示格式,也可以跨平台兼容。所有其他图像格式均可自动读取并保存为 SGI 图像格式。

在渲染任何纹理贴图文件之前,必须进行解压缩。