summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrodri <rgl@antares-labs.eu>2024-07-23 15:35:16 +0000
committerrodri <rgl@antares-labs.eu>2024-07-23 15:35:16 +0000
commit2267dba0ea8f61cf4b3e51492995f8edea03dcc8 (patch)
tree9bc9f3b05decceaed33d647e3869ef739c6582e6
parent7d79c607fbc8f402b26a0032c9e29b393af801e7 (diff)
downloadlibgraphics-2267dba0ea8f61cf4b3e51492995f8edea03dcc8.tar.gz
libgraphics-2267dba0ea8f61cf4b3e51492995f8edea03dcc8.tar.bz2
libgraphics-2267dba0ea8f61cf4b3e51492995f8edea03dcc8.zip
doc: write about the scene, the viewport. organize things better.
-rw-r--r--doc/libgraphics.ms176
-rw-r--r--doc/libgraphics.pdfbin30115 -> 34494 bytes
-rw-r--r--doc/libgraphics.ps2217
3 files changed, 1314 insertions, 1079 deletions
diff --git a/doc/libgraphics.ms b/doc/libgraphics.ms
index 2fada71..f25e270 100644
--- a/doc/libgraphics.ms
+++ b/doc/libgraphics.ms
@@ -1,22 +1,82 @@
+.\" Figure management
+.nr FI 0 1
+.de FI
+.ce
+\fBFigure \\n+(FI\fR: \\$1
+..
+
.TL
libgraphics: Design and Implementation
.DA
.AU
Rodrigo G. López
rgl@antares-labs.eu
-.SH
-Introduction
-.LP
+.AB
.I Libgraphics
is a 3D computer graphics library that provides a way to set up a
scene, fill it up with a bunch of models (with their own meshes and
materials), lights and cameras, and start taking pictures at the user
request. It implements a fully concurrent retained mode software
renderer, with support for vertex and fragment/pixel shaders written
-in C (not GPU ones, at least for now), a z-buffer, front- and
+in C (not GPU ones, at least for now), and featuring a z-buffer, front- and
back-face culling, textures and skyboxes, directional and punctual
-lights, tangent-space normal mapping, ???
+lights, tangent-space normal mapping, among other things.
+.AE
.SH
+Introduction
+.LP
+.QP
+Write the intro last.
+.NH
+The scene
+.PP
+A scene is a container, represented as a graph, that hosts the
+entities that make up the world. Each of these entities has a model
+made out of a series of meshes, which in turn are made out of
+geometric primitives (only
+.I points ,
+.I lines
+and
+.I triangles
+are supported). Each model also stores a list of materials.
+.PP
+.PS
+.ps 7
+boxwid = 0.5
+boxht = 0.2
+linewid = 0.1
+lineht = 0.2
+box "Scene"
+down; line from last box.s; right; line
+box "Entity"
+down; line from last box.s; right; line
+box "Model"
+down; line from last box.s; right; line
+box dashed "Mesh"
+down; line from last box.s; right; line
+box "Primitive"
+down
+line from 2nd last line.s; line; right; line
+box "Material"
+reset
+.ps 10
+.PE
+.FI "The scene graph."
+.NH 2
+Entities
+.NH 2
+Models
+.NH 2
+Meshes
+.NH 2
+Primitives
+.NH 2
+Materials
+.NH
+Cameras
+.PP
+
+.NH
The renderer
.LP
The
@@ -31,33 +91,33 @@ themselves with shooting and “developing” a camera.
It's implemented as a tree of concurrent processes connected by
.CW Channel s—as
seen in
-.B "Figure 1" —,
+.B "Figure 2" —,
spawned with a call to
.CW initgraphics ,
each representing a stage of the pipeline:
-.IP
+.IP •
The
.B renderer
process, the root of the tree, waits on a
.CW channel
for a
.CW Renderjob
-sent by another user process, specifying a scene, a camera and a
-shader table. It walks the scene and sends each
+sent by another user process, specifying a framebuffer, a scene, a
+camera and a shader table. It walks the scene and sends each
.CW Entity
individually to the
entityproc.
-.IP
+.IP •
The
.B entityproc
receives an entity and splits its geometry equitatively among the
tilers, sending a batch for each of them to process.
-.IP
+.IP •
Next, each
.B tiler
gets to work on their subset of the geometry (potentially in
parallel)—see
-.B "Figure 2" .
+.B "Figure 3" .
They walk the list of primitives, then for each of them
apply the
.B "vertex shader"
@@ -67,24 +127,20 @@ project them into the viewport (screen space). Following this step,
they build a bounding box, used to allocate each primitive into a
rasterization bucket, or
.B tile ,
-managed by one of the rasterizers; this is illustrated in
-.B "Figure 3" .
+managed by one of the rasterizers; as illustrated in
+.B "Figure 4" .
If it spans multiple tiles, it will be copied and sent to each of
them.
-.IP
+.IP •
Finally, the
.B rasterizers
receive the primitive in screen space, slice it to fit their tile, and
-apply a rasterization routine based on its type (only
-.I points ,
-.I lines
-and
-.I triangles
-are supported). For each of the pixels, a
+apply a rasterization routine based on its type. For each of the pixels, a
.B "depth test"
is performed, discarding fragments that are further away. Then a
.B "fragment shader"
is applied and the result written to the framebuffer after blending.
+.PP
.PS
.ps 7
circlerad = 0.3
@@ -131,13 +187,7 @@ arrow from Tiler.T1 to Raster.Rd chop
arrow from Tiler.T1 to Raster.Rn chop
.ps 10
.PE
-.B "Figure 1" :
-The rendering graph for a
-.B 2n
-processor machine.
-.SH
-Tile-based rendering
-.PP
+.FI "The rendering graph for a \fB2n\fR processor machine."
.PS
.ps 7
Tiles: [
@@ -150,7 +200,7 @@ Tiles: [
Tn: box dashed "tile n"
]
box ht last [].ht+0.1 wid last [].wid+0.1 at last []
-"Screen" rjust with .se at last [].nw - (0.1,0)
+"Framebuf" rjust with .se at last [].nw - (0.1,0)
Raster: [
moveht = 0.1
down
@@ -168,8 +218,7 @@ line from Tiles.Td.e to Raster.Rd.w
line from Tiles.Tn.e to Raster.Rn.w
.ps 10
.PE
-.B "Figure 2" :
-Per tile rasterizers.
+.FI "Per tile rasterizers."
.PS
.ps 7
Tiles: [
@@ -185,7 +234,7 @@ line from last [].w + (0.1,-0.05) to last [].n - (-0.1,0.25)
line to last [].se - (0.3,-0.1)
line to 1st line
box ht last [].ht+0.1 wid last [].wid+0.1 at last []
-"Screen" rjust with .se at last [].nw - (0.1,0)
+"Framebuf" rjust with .se at last [].nw - (0.1,0)
Raster: [
moveht = 0.1
down
@@ -202,32 +251,8 @@ arrow from Tiles.Td.e to Raster.Rd.w
arrow from Tiles.Tn.e to Raster.Rn.w
.ps 10
.PE
-.B "Figure 3" :
-Raster task scheduling.
-.SH
-The scene
-.PP
-.PS
-.ps 7
-boxwid = 0.5
-boxht = 0.2
-linewid = 0.1
-lineht = 0.2
-box "Scene"
-down; line from last box.s; right; line
-box "Entity"
-down; line from last box.s; right; line
-box "Model"
-down; line from last box.s; right; line
-box "Mesh"
-down; line from last box.s; right; line
-box "Primitive"
-down
-line from 2nd last line.s; line; right; line
-box "Material"
-.ps 10
-.PE
-.SH
+.FI "Raster task scheduling."
+.NH
Frames of reference
.PP
Frames are right-handed throughout every stage.
@@ -235,31 +260,46 @@ Frames are right-handed throughout every stage.
.ps 7
RFrame: [
pi = 3.1415926535
+ deg = pi/180
circle fill rad 0.01 at (0,0)
"p" at last circle.c - (0.1,0)
- xa = -5*pi/180
+ xa = -5*deg
arrow from (0,0) to (cos(xa),sin(xa))
"bx" at last arrow.end + (0.1,0)
arrow from (0,0) to (0,1)
"by" at last arrow.end - (0.1,0)
- za = -150*pi/180
+ za = -150*deg
arrow from (0,0) to (cos(za)+0.1,sin(za)+0.1)
"bz" at last arrow.end - (0.1,0)
]
.ps 10
.PE
-.B "Figure 4" :
-Example right-handed rframe.
-.SH
+.FI "Example right-handed rframe."
+.NH
Viewports
.PP
+A
+.I viewport
+is a sort of virtual framebuffer, a device that lets users configure
+the way they visualize a framebuffer, which changes the resulting
+.I image (6)
+after a call to its
+.CW draw
+or
+.CW memdraw
+methods. As of now, the only feature available is upscaling, which
+includes user-defined filters for specific ratios, such as the family
+of pixel art filters
+.I Scale[234]x ,
+used for 2x2, 3x3 and 4x4 scaling
+.I [?] . respectively
.PS
.ps 7
View: [
boxwid = 3
boxht = 2
box with .nw at (-1,1)
- "framebuffer" at last box.s + (0,0.2)
+ "Framebuf" at last box.s + (0,0.2)
circle fill rad 0.01 at (-1,1)
"p" at last circle.c - (0.1,0)
arrow from (-1,1) to (-1,1) + (1,0)
@@ -269,5 +309,9 @@ View: [
]
.ps 10
.PE
-.B "Figure 5" :
-Illustration of a 3:2 viewport.
+.FI "Illustration of a 3:2 viewport."
+.SH
+References
+.PP
+.IP [?]
+https://www.scale2x.it/
diff --git a/doc/libgraphics.pdf b/doc/libgraphics.pdf
index 8bbe1aa..0651640 100644
--- a/doc/libgraphics.pdf
+++ b/doc/libgraphics.pdf
Binary files differ
diff --git a/doc/libgraphics.ps b/doc/libgraphics.ps
index 3bce2d2..2a4cceb 100644
--- a/doc/libgraphics.ps
+++ b/doc/libgraphics.ps
@@ -619,779 +619,763 @@ setup
mark
1 pagesetup
12 /LucidaSans-Demi f
-(libgraphics: Design and Implementation) 1642 1220 w
+(libgraphics: Design and Implementation) 1642 1230 w
10 /LucidaSans-Italic f
-(Rodrigo G. L\363pez) 2469 1480 w
-(rgl@antares-labs.eu) 2377 1620 w
+(Rodrigo G. L\363pez) 2469 1470 w
+(rgl@antares-labs.eu) 2377 1590 w
+(ABSTRACT) 2626 2030 w
+(Libgraphics) 1330 2290 w
+10 /LucidaSansUnicode00 f
+(is) 1930 2290 w
+(a) 2044 2290 w
+(3D) 2133 2290 w
+(computer) 2305 2290 w
+(graphics) 2803 2290 w
+(library) 3251 2290 w
+(that) 3596 2290 w
+(provides) 3822 2290 w
+(a) 4273 2290 w
+(way) 4363 2290 w
+(to) 4582 2290 w
+(set) 1080 2410 w
+(up) 1265 2410 w
+(a) 1431 2410 w
+(scene,) 1527 2410 w
+(fill) 1876 2410 w
+(it) 2041 2410 w
+(up) 2148 2410 w
+(with) 2314 2410 w
+(a) 2560 2410 w
+(bunch) 2656 2410 w
+(of) 2997 2410 w
+(models) 3135 2410 w
+(\(with) 3528 2410 w
+(their) 3806 2410 w
+(own) 4071 2410 w
+(meshes) 4311 2410 w
+(and) 1080 2530 w
+(materials\),) 1303 2530 w
+(lights) 1857 2530 w
+(and) 2170 2530 w
+(cameras,) 2393 2530 w
+(and) 2870 2530 w
+(start) 3093 2530 w
+(taking) 3357 2530 w
+(pictures) 3703 2530 w
+(at) 4136 2530 w
+(the) 4271 2530 w
+(user) 4470 2530 w
+(request.) 1080 2650 w
+(It) 1562 2650 w
+(implements) 1680 2650 w
+(a) 2301 2650 w
+(fully) 2408 2650 w
+(concurrent) 2669 2650 w
+(retained) 3245 2650 w
+(mode) 3696 2650 w
+(software) 4021 2650 w
+(ren\255) 4488 2650 w
+(derer,) 1080 2770 w
+(with) 1418 2770 w
+(support) 1672 2770 w
+(for) 2099 2770 w
+(vertex) 2287 2770 w
+(and) 2639 2770 w
+(fragment/pixel) 2868 2770 w
+(shaders) 3652 2770 w
+(written) 4081 2770 w
+(in) 4470 2770 w
+(C) 4611 2770 w
+(\(not) 1080 2890 w
+(GPU) 1326 2890 w
+(ones,) 1575 2890 w
+(at) 1890 2890 w
+(least) 2035 2890 w
+(for) 2316 2890 w
+(now\),) 2508 2890 w
+(and) 2825 2890 w
+(featuring) 3057 2890 w
+(a) 3550 2890 w
+(z-buffer,) 3657 2890 w
+(front-) 4152 2890 w
+(and) 4500 2890 w
+(back-face) 1080 3010 w
+(culling,) 1598 3010 w
+(textures) 1988 3010 w
+(and) 2424 3010 w
+(skyboxes,) 2639 3010 w
+(directional) 3159 3010 w
+(and) 3707 3010 w
+(punctual) 3922 3010 w
+(lights,) 4378 3010 w
+(tangent-space normal mapping, among other things.) 1080 3130 w
+10 /LucidaSans-Demi f
+(Introduction) 720 3490 w
+10 /LucidaSansUnicode00 f
+(Write the intro last.) 970 3682 w
10 /LucidaSans-Demi f
-(Introduction) 720 2280 w
+(1.) 720 3922 w
+(The scene) 873 3922 w
+10 /LucidaSansUnicode00 f
+(A) 970 4078 w
+(scene) 1072 4078 w
+(is) 1381 4078 w
+(a) 1494 4078 w
+(container,) 1582 4078 w
+(represented) 2101 4078 w
+(as) 2716 4078 w
+(a) 2855 4078 w
+(graph,) 2944 4078 w
+(that) 3293 4078 w
+(hosts) 3518 4078 w
+(the) 3814 4078 w
+(entities) 4003 4078 w
+(that) 4394 4078 w
+(make) 4619 4078 w
+(up) 4915 4078 w
+(the) 720 4198 w
+(world.) 913 4198 w
+(Each) 1286 4198 w
+(of) 1545 4198 w
+(these) 1680 4198 w
+(entities) 1979 4198 w
+(has) 2373 4198 w
+(a) 2578 4198 w
+(model) 2670 4198 w
+(made) 3009 4198 w
+(out) 3313 4198 w
+(of) 3510 4198 w
+(a) 3645 4198 w
+(series) 3737 4198 w
+(of) 4058 4198 w
+(meshes,) 4193 4198 w
+(which) 4631 4198 w
+(in) 4949 4198 w
+(turn) 720 4318 w
+(are) 977 4318 w
+(made) 1184 4318 w
+(out) 1506 4318 w
+(of) 1721 4318 w
+(geometric) 1874 4318 w
+(primitives) 2415 4318 w
+(\(only) 2950 4318 w
+10 /LucidaSans-Italic f
+(points) 3242 4318 w
+10 /LucidaSansUnicode00 f
+(,) 3538 4318 w
10 /LucidaSans-Italic f
-(Libgraphics) 720 2436 w
+(lines) 3625 4318 w
+10 /LucidaSansUnicode00 f
+(and) 3902 4318 w
+10 /LucidaSans-Italic f
+(triangles) 4137 4318 w
+10 /LucidaSansUnicode00 f
+(are) 4623 4318 w
+(sup\255) 4831 4318 w
+(ported\). Each model also stores a list of materials.) 720 4438 w
+2196 4780 2196 4636 Dl
+2196 4636 2556 4636 Dl
+2556 4636 2556 4780 Dl
+2556 4780 2196 4780 Dl
+7 /LucidaSansUnicode00 f
+(Scene) 2279 4722 w
+2376 4780 2376 4924 Dl
+2376 4924 2448 4924 Dl
+2448 4996 2448 4852 Dl
+2448 4852 2808 4852 Dl
+2808 4852 2808 4996 Dl
+2808 4996 2448 4996 Dl
+(Entity) 2534 4938 w
+2628 4996 2628 5140 Dl
+2628 5140 2700 5140 Dl
+2700 5212 2700 5068 Dl
+2700 5068 3060 5068 Dl
+3060 5068 3060 5212 Dl
+3060 5212 2700 5212 Dl
+(Model) 2777 5154 w
+2880 5212 2880 5356 Dl
+2880 5356 2952 5356 Dl
+2952 5428 2988 5428 Dl
+3033 5428 3069 5428 Dl
+3114 5428 3150 5428 Dl
+3195 5428 3231 5428 Dl
+3276 5428 3312 5428 Dl
+3312 5428 3312 5392 Dl
+3312 5374 3312 5338 Dl
+3312 5320 3312 5284 Dl
+3312 5284 3276 5284 Dl
+3231 5284 3195 5284 Dl
+3150 5284 3114 5284 Dl
+3069 5284 3033 5284 Dl
+2988 5284 2952 5284 Dl
+2952 5284 2952 5320 Dl
+2952 5338 2952 5374 Dl
+2952 5392 2952 5428 Dl
+(Mesh) 3043 5370 w
+3132 5428 3132 5572 Dl
+3132 5572 3204 5572 Dl
+3204 5644 3204 5500 Dl
+3204 5500 3564 5500 Dl
+3564 5500 3564 5644 Dl
+3564 5644 3204 5644 Dl
+(Primitive) 3237 5586 w
+3132 5572 3132 5716 Dl
+3132 5716 3132 5860 Dl
+3132 5860 3204 5860 Dl
+3204 5932 3204 5788 Dl
+3204 5788 3564 5788 Dl
+3564 5788 3564 5932 Dl
+3564 5932 3204 5932 Dl
+(Material) 3248 5874 w
+10 /LucidaSans-Demi f
+(Figure 1) 2219 6130 w
+10 /LucidaSansUnicode00 f
+(: The scene graph.) 2641 6130 w
+10 /LucidaSans-Demi f
+(1.1.) 720 6370 w
+(Entities) 962 6370 w
+(1.2.) 720 6610 w
+(Models) 962 6610 w
+10 /LucidaSansUnicode00 f
+(July 23, 2024) 2556 7680 w
+cleartomark
+showpage
+saveobj restore
+%%EndPage: 1 1
+%%Page: 2 2
+/saveobj save def
+mark
+2 pagesetup
10 /LucidaSansUnicode00 f
-(is) 1323 2436 w
-(a) 1440 2436 w
-(3D) 1532 2436 w
-(computer) 1707 2436 w
-(graphics) 2208 2436 w
-(library) 2659 2436 w
-(that) 3006 2436 w
-(provides) 3234 2436 w
-(a) 3687 2436 w
-(way) 3779 2436 w
-(to) 4000 2436 w
-(set) 4135 2436 w
-(up) 4316 2436 w
-(a) 4478 2436 w
-(scene,) 4570 2436 w
-(fill) 4916 2436 w
-(it) 720 2556 w
-(up) 821 2556 w
-(with) 980 2556 w
-(a) 1219 2556 w
-(bunch) 1308 2556 w
-(of) 1642 2556 w
-(models) 1774 2556 w
-(\(with) 2161 2556 w
-(their) 2433 2556 w
-(own) 2692 2556 w
-(meshes) 2926 2556 w
-(and) 3329 2556 w
-(materials\),) 3543 2556 w
-(lights) 4088 2556 w
-(and) 4392 2556 w
-(cameras,) 4606 2556 w
-(and) 720 2676 w
-(start) 939 2676 w
-(taking) 1199 2676 w
-(pictures) 1541 2676 w
-(at) 1971 2676 w
-(the) 2103 2676 w
-(user) 2298 2676 w
-(request.) 2548 2676 w
-(It) 3018 2676 w
-(implements) 3124 2676 w
-(a) 3733 2676 w
-(fully) 3828 2676 w
-(concurrent) 4077 2676 w
-(retained) 4641 2676 w
-(mode) 720 2796 w
-(software) 1033 2796 w
-(renderer,) 1488 2796 w
-(with) 1976 2796 w
-(support) 2221 2796 w
-(for) 2639 2796 w
-(vertex) 2818 2796 w
-(and) 3161 2796 w
-(fragment/pixel) 3380 2796 w
-(shaders) 4153 2796 w
-(written) 4571 2796 w
-(in) 4949 2796 w
-(C \(not GPU ones, at least for now\), a z-buffer, front- and back-face culling, textures) 720 2916 w
-(and) 4860 2916 w
-(skyboxes, directional and punctual lights, tangent-space normal mapping, ???) 720 3036 w
+(\255 2 \255) 2783 480 w
10 /LucidaSans-Demi f
-(The renderer) 720 3276 w
+(1.3.) 720 840 w
+(Meshes) 962 840 w
+(1.4.) 720 1080 w
+(Primitives) 962 1080 w
+(1.5.) 720 1320 w
+(Materials) 962 1320 w
+(2.) 720 1560 w
+(Cameras) 873 1560 w
+(3.) 720 1956 w
+(The renderer) 873 1956 w
10 /LucidaSansUnicode00 f
-(The) 720 3432 w
+(The) 720 2112 w
10 /LucidaSans-Italic f
-(renderer) 938 3432 w
+(renderer) 938 2112 w
10 /LucidaSansUnicode00 f
-(is) 1401 3432 w
-(the) 1518 3432 w
-(core) 1710 3432 w
-(of) 1956 3432 w
-(the) 2091 3432 w
-(library.) 2283 3432 w
-(It) 2662 3432 w
-(follows) 2766 3432 w
-(a) 3149 3432 w
+(is) 1401 2112 w
+(the) 1518 2112 w
+(core) 1710 2112 w
+(of) 1956 2112 w
+(the) 2091 2112 w
+(library.) 2283 2112 w
+(It) 2662 2112 w
+(follows) 2766 2112 w
+(a) 3149 2112 w
10 /LucidaSans-Demi f
-(retained) 3242 3432 w
-(mode) 3708 3432 w
+(retained) 3242 2112 w
+(mode) 3708 2112 w
10 /LucidaSansUnicode00 f
-(model,) 4032 3432 w
-(which) 4404 3432 w
-(means) 4723 3432 w
-(that) 720 3552 w
-(the) 955 3552 w
-(user) 1154 3552 w
-(won) 1408 3552 w
+(model,) 4032 2112 w
+(which) 4404 2112 w
+(means) 4723 2112 w
+(that) 720 2232 w
+(the) 955 2232 w
+(user) 1154 2232 w
+(won) 1408 2232 w
10 /LucidaSansUnicode20 f
-(\031) 1608 3552 w
+(\031) 1608 2232 w
10 /LucidaSansUnicode00 f
-(t) 1640 3552 w
-(get) 1721 3552 w
-(a) 1920 3552 w
-(picture) 2019 3552 w
-(until) 2402 3552 w
-(the) 2665 3552 w
-(entire) 2864 3552 w
-(scene) 3189 3552 w
-(has) 3509 3552 w
-(been) 3721 3552 w
-(rendered.) 4002 3552 w
-(Thanks) 4548 3552 w
-(to) 4942 3552 w
-(this) 720 3672 w
-(we) 944 3672 w
-(can) 1122 3672 w
-(also) 1335 3672 w
-(clear) 1576 3672 w
-(and) 1853 3672 w
-(swap) 2078 3672 w
-(the) 2369 3672 w
-(framebuffers) 2569 3672 w
-(without) 3243 3672 w
-(their) 3653 3672 w
-(intervention,) 3923 3672 w
-(they) 4584 3672 w
-(only) 4836 3672 w
-(need to concern themselves with shooting and ) 720 3792 w
+(t) 1640 2232 w
+(get) 1721 2232 w
+(a) 1920 2232 w
+(picture) 2019 2232 w
+(until) 2402 2232 w
+(the) 2665 2232 w
+(entire) 2864 2232 w
+(scene) 3189 2232 w
+(has) 3509 2232 w
+(been) 3721 2232 w
+(rendered.) 4002 2232 w
+(Thanks) 4548 2232 w
+(to) 4942 2232 w
+(this) 720 2352 w
+(we) 944 2352 w
+(can) 1122 2352 w
+(also) 1335 2352 w
+(clear) 1576 2352 w
+(and) 1853 2352 w
+(swap) 2078 2352 w
+(the) 2369 2352 w
+(framebuffers) 2569 2352 w
+(without) 3243 2352 w
+(their) 3653 2352 w
+(intervention,) 3923 2352 w
+(they) 4584 2352 w
+(only) 4836 2352 w
+(need to concern themselves with shooting and ) 720 2472 w
10 /LucidaSansUnicode20 f
-(\034) 3016 3792 w
+(\034) 3016 2472 w
10 /LucidaSansUnicode00 f
-(developing) 3053 3792 w
+(developing) 3053 2472 w
10 /LucidaSansUnicode20 f
-(\035) 3586 3792 w
+(\035) 3586 2472 w
10 /LucidaSansUnicode00 f
-(a camera.) 3655 3792 w
-(It) 720 3948 w
+(a camera.) 3655 2472 w
+(It) 720 2628 w
10 /LucidaSansUnicode20 f
-(\031) 786 3948 w
+(\031) 786 2628 w
10 /LucidaSansUnicode00 f
-(s implemented as a tree of concurrent processes) 818 3948 w
-(connected) 3217 3948 w
-(by) 3749 3948 w
+(s implemented as a tree of concurrent processes) 818 2628 w
+(connected) 3217 2628 w
+(by) 3749 2628 w
10 /LucidaTypewriter f
-(Channel) 3897 3948 w
+(Channel) 3897 2628 w
10 /LucidaSansUnicode00 f
-(s) 4401 3948 w
+(s) 4401 2628 w
10 /LucidaSansUnicode20 f
-(\024) 4452 3948 w
+(\024) 4452 2628 w
10 /LucidaSansUnicode00 f
-(as) 4552 3948 w
-(seen) 4691 3948 w
-(in) 4949 3948 w
+(as) 4552 2628 w
+(seen) 4691 2628 w
+(in) 4949 2628 w
10 /LucidaSans-Demi f
-(Figure) 720 4068 w
-(1) 1088 4068 w
+(Figure) 720 2748 w
+(2) 1088 2748 w
10 /LucidaSansUnicode20 f
-(\024) 1152 4068 w
+(\024) 1152 2748 w
10 /LucidaSansUnicode00 f
-(,) 1252 4068 w
-(spawned) 1326 4068 w
-(with) 1795 4068 w
-(a) 2042 4068 w
-(call) 2139 4068 w
-(to) 2345 4068 w
+(,) 1252 2748 w
+(spawned) 1326 2748 w
+(with) 1795 2748 w
+(a) 2042 2748 w
+(call) 2139 2748 w
+(to) 2345 2748 w
10 /LucidaTypewriter f
-(initgraphics) 2485 4068 w
+(initgraphics) 2485 2748 w
+10 /LucidaSansUnicode00 f
+(,) 3349 2748 w
+(each) 3423 2748 w
+(representing) 3689 2748 w
+(a) 4347 2748 w
+(stage) 4444 2748 w
+(of) 4746 2748 w
+(the) 4885 2748 w
+(pipeline:) 720 2868 w
+10 /LucidaSansUnicode20 f
+(") 720 3024 w
10 /LucidaSansUnicode00 f
-(,) 3349 4068 w
-(each) 3423 4068 w
-(representing) 3689 4068 w
-(a) 4347 4068 w
-(stage) 4444 4068 w
-(of) 4746 4068 w
-(the) 4885 4068 w
-(pipeline:) 720 4188 w
-(The) 970 4344 w
+(The) 970 3024 w
10 /LucidaSans-Demi f
-(renderer) 1234 4344 w
+(renderer) 1234 3024 w
10 /LucidaSansUnicode00 f
-(process,) 1761 4344 w
-(the) 2250 4344 w
-(root) 2488 4344 w
-(of) 2771 4344 w
-(the) 2952 4344 w
-(tree,) 3190 4344 w
-(waits) 3495 4344 w
-(on) 3828 4344 w
-(a) 4035 4344 w
+(process,) 1761 3024 w
+(the) 2250 3024 w
+(root) 2488 3024 w
+(of) 2771 3024 w
+(the) 2952 3024 w
+(tree,) 3190 3024 w
+(waits) 3495 3024 w
+(on) 3828 3024 w
+(a) 4035 3024 w
10 /LucidaTypewriter f
-(channel) 4174 4344 w
+(channel) 4174 3024 w
10 /LucidaSansUnicode00 f
-(for) 4762 4344 w
-(a) 4985 4344 w
+(for) 4762 3024 w
+(a) 4985 3024 w
10 /LucidaTypewriter f
-(Renderjob) 970 4464 w
+(Renderjob) 970 3144 w
10 /LucidaSansUnicode00 f
-(sent) 1670 4464 w
-(by) 1928 4464 w
-(another) 2095 4464 w
-(user) 2520 4464 w
-(process,) 2781 4464 w
-(specifying) 3238 4464 w
-(a) 3781 4464 w
-(scene,) 3887 4464 w
-(a) 4246 4464 w
-(camera) 4352 4464 w
-(and) 4754 4464 w
-(a) 4985 4464 w
-(shader) 970 4584 w
-(table.) 1338 4584 w
-(It) 1682 4584 w
-(walks) 1788 4584 w
-(the) 2098 4584 w
-(scene) 2293 4584 w
-(and) 2610 4584 w
-(sends) 2831 4584 w
-(each) 3155 4584 w
+(sent) 1667 3144 w
+(by) 1922 3144 w
+(another) 2086 3144 w
+(user) 2509 3144 w
+(process,) 2768 3144 w
+(specifying) 3223 3144 w
+(a) 3764 3144 w
+(framebuffer,) 3868 3144 w
+(a) 4526 3144 w
+(scene,) 4629 3144 w
+(a) 4985 3144 w
+(camera) 970 3264 w
+(and) 1362 3264 w
+(a) 1583 3264 w
+(shader) 1680 3264 w
+(table.) 2050 3264 w
+(It) 2396 3264 w
+(walks) 2504 3264 w
+(the) 2816 3264 w
+(scene) 3013 3264 w
+(and) 3331 3264 w
+(sends) 3553 3264 w
+(each) 3878 3264 w
10 /LucidaTypewriter f
-(Entity) 3420 4584 w
+(Entity) 4144 3264 w
10 /LucidaSansUnicode00 f
-(individually) 3893 4584 w
-(to) 4488 4584 w
-(the) 4627 4584 w
-(enti\255) 4823 4584 w
-(typroc.) 970 4704 w
-(The) 970 4860 w
-10 /LucidaSans-Demi f
-(entityproc) 1198 4860 w
+(individu\255) 4618 3264 w
+(ally to the entityproc.) 970 3384 w
+10 /LucidaSansUnicode20 f
+(") 720 3540 w
10 /LucidaSansUnicode00 f
-(receives) 1771 4860 w
-(an) 2210 4860 w
-(entity) 2374 4860 w
-(and) 2694 4860 w
-(splits) 2921 4860 w
-(its) 3228 4860 w
-(geometry) 3393 4860 w
-(equitatively) 3899 4860 w
-(among) 4504 4860 w
-(the) 4885 4860 w
-(tilers, sending a batch for each of them to process.) 970 4980 w
-(Next,) 970 5136 w
-(each) 1293 5136 w
+(The) 970 3540 w
10 /LucidaSans-Demi f
-(tiler) 1580 5136 w
+(entityproc) 1198 3540 w
10 /LucidaSansUnicode00 f
-(gets) 1854 5136 w
-(to) 2123 5136 w
-(work) 2284 5136 w
-(on) 2584 5136 w
-(their) 2770 5136 w
-(subset) 3058 5136 w
-(of) 3441 5136 w
-(the) 3602 5136 w
-(geometry) 3820 5136 w
-(\(potentially) 4342 5136 w
-(in) 4949 5136 w
-(parallel\)) 970 5256 w
+(receives) 1771 3540 w
+(an) 2210 3540 w
+(entity) 2374 3540 w
+(and) 2694 3540 w
+(splits) 2921 3540 w
+(its) 3228 3540 w
+(geometry) 3393 3540 w
+(equitatively) 3899 3540 w
+(among) 4504 3540 w
+(the) 4885 3540 w
+(tilers, sending a batch for each of them to process.) 970 3660 w
10 /LucidaSansUnicode20 f
-(\024) 1360 5256 w
+(") 720 3816 w
10 /LucidaSansUnicode00 f
-(see) 1460 5256 w
+(Next,) 970 3816 w
+(each) 1293 3816 w
10 /LucidaSans-Demi f
-(Figure) 1675 5256 w
-(2) 2053 5256 w
+(tiler) 1580 3816 w
10 /LucidaSansUnicode00 f
-(.) 2117 5256 w
-(They) 2233 5256 w
-(walk) 2518 5256 w
-(the) 2789 5256 w
-(list) 2996 5256 w
-(of) 3194 5256 w
-(primitives,) 3344 5256 w
-(then) 3908 5256 w
-(for) 4177 5256 w
-(each) 4368 5256 w
-(of) 4643 5256 w
-(them) 4792 5256 w
-(apply) 970 5376 w
-(the) 1281 5376 w
-10 /LucidaSans-Demi f
-(vertex) 1485 5376 w
-(shader) 1856 5376 w
+(gets) 1854 3816 w
+(to) 2123 3816 w
+(work) 2284 3816 w
+(on) 2584 3816 w
+(their) 2770 3816 w
+(subset) 3058 3816 w
+(of) 3441 3816 w
+(the) 3602 3816 w
+(geometry) 3820 3816 w
+(\(potentially) 4342 3816 w
+(in) 4949 3816 w
+(parallel\)) 970 3936 w
+10 /LucidaSansUnicode20 f
+(\024) 1360 3936 w
10 /LucidaSansUnicode00 f
-(to) 2257 5376 w
-(its) 2405 5376 w
-(vertices) 2572 5376 w
-(\(which) 2995 5376 w
-(expects) 3359 5376 w
-(clip) 3784 5376 w
-(space) 4006 5376 w
-(coordinates) 4332 5376 w
-(in) 4949 5376 w
-(return\),) 970 5496 w
-(perform) 1378 5496 w
-(frustum) 1813 5496 w
-(culling) 2239 5496 w
-(and) 2606 5496 w
-(clipping,) 2829 5496 w
-(back-face) 3292 5496 w
-(culling,) 3819 5496 w
-(and) 4218 5496 w
-(then) 4441 5496 w
-(project) 4701 5496 w
-(them) 970 5616 w
-(into) 1258 5616 w
-(the) 1487 5616 w
-(viewport) 1682 5616 w
-(\(screen) 2138 5616 w
-(space\).) 2528 5616 w
-(Following) 2941 5616 w
-(this) 3445 5616 w
-(step,) 3665 5616 w
-(they) 3945 5616 w
-(build) 4193 5616 w
-(a) 4480 5616 w
-(bounding) 4576 5616 w
-(box,) 970 5736 w
-(used) 1220 5736 w
-(to) 1485 5736 w
-(allocate) 1616 5736 w
-(each) 2022 5736 w
-(primitive) 2279 5736 w
-(into a rasterization bucket, or) 2741 5736 w
+(see) 1460 3936 w
10 /LucidaSans-Demi f
-(tile) 4217 5736 w
+(Figure) 1675 3936 w
+(3) 2053 3936 w
10 /LucidaSansUnicode00 f
-(, managed by) 4383 5736 w
-(one of the rasterizers; this is illustrated) 970 5856 w
-(in) 2922 5856 w
+(.) 2117 3936 w
+(They) 2233 3936 w
+(walk) 2518 3936 w
+(the) 2789 3936 w
+(list) 2996 3936 w
+(of) 3194 3936 w
+(primitives,) 3344 3936 w
+(then) 3908 3936 w
+(for) 4177 3936 w
+(each) 4368 3936 w
+(of) 4643 3936 w
+(them) 4792 3936 w
+(apply) 970 4056 w
+(the) 1281 4056 w
10 /LucidaSans-Demi f
-(Figure) 3046 5856 w
-(3) 3405 5856 w
+(vertex) 1485 4056 w
+(shader) 1856 4056 w
10 /LucidaSansUnicode00 f
-(.) 3469 5856 w
-(If) 3566 5856 w
-(it) 3665 5856 w
-(spans) 3764 5856 w
-(multiple) 4079 5856 w
-(tiles,) 4510 5856 w
-(it) 4777 5856 w
-(will) 4876 5856 w
-(be copied and sent to each of them.) 970 5976 w
-(Finally,) 970 6132 w
-(the) 1346 6132 w
+(to) 2257 4056 w
+(its) 2405 4056 w
+(vertices) 2572 4056 w
+(\(which) 2995 4056 w
+(expects) 3359 4056 w
+(clip) 3784 4056 w
+(space) 4006 4056 w
+(coordinates) 4332 4056 w
+(in) 4949 4056 w
+(return\),) 970 4176 w
+(perform) 1378 4176 w
+(frustum) 1813 4176 w
+(culling) 2239 4176 w
+(and) 2606 4176 w
+(clipping,) 2829 4176 w
+(back-face) 3292 4176 w
+(culling,) 3819 4176 w
+(and) 4218 4176 w
+(then) 4441 4176 w
+(project) 4701 4176 w
+(them) 970 4296 w
+(into) 1258 4296 w
+(the) 1487 4296 w
+(viewport) 1682 4296 w
+(\(screen) 2138 4296 w
+(space\).) 2528 4296 w
+(Following) 2941 4296 w
+(this) 3445 4296 w
+(step,) 3665 4296 w
+(they) 3945 4296 w
+(build) 4193 4296 w
+(a) 4480 4296 w
+(bounding) 4576 4296 w
+(box,) 970 4416 w
+(used) 1220 4416 w
+(to) 1485 4416 w
+(allocate) 1616 4416 w
+(each) 2022 4416 w
+(primitive) 2279 4416 w
+(into a rasterization bucket, or) 2741 4416 w
10 /LucidaSans-Demi f
-(rasterizers) 1535 6132 w
+(tile) 4217 4416 w
10 /LucidaSansUnicode00 f
-(receive) 2128 6132 w
-(the) 2503 6132 w
-(primitive) 2692 6132 w
-(in) 3155 6132 w
-(screen) 3280 6132 w
-(space,) 3631 6132 w
-(slice) 3974 6132 w
-(it) 4225 6132 w
-(to) 4326 6132 w
-(fit) 4459 6132 w
-(their) 4597 6132 w
-(tile,) 4857 6132 w
-(and) 970 6252 w
-(apply) 1187 6252 w
-(a) 1486 6252 w
-(rasterization) 1578 6252 w
-(routine) 2226 6252 w
-(based) 2611 6252 w
-(on) 2936 6252 w
-(its) 3096 6252 w
-(type) 3250 6252 w
-(\(only) 3495 6252 w
-10 /LucidaSans-Italic f
-(points) 3769 6252 w
-10 /LucidaSansUnicode00 f
-(,) 4065 6252 w
-10 /LucidaSans-Italic f
-(lines) 4134 6252 w
-10 /LucidaSansUnicode00 f
-(and) 4393 6252 w
-10 /LucidaSans-Italic f
-(triangles) 4610 6252 w
-10 /LucidaSansUnicode00 f
-(are) 970 6372 w
-(supported\).) 1160 6372 w
-(For) 1760 6372 w
-(each) 1954 6372 w
-(of) 2216 6372 w
-(the) 2352 6372 w
-(pixels,) 2545 6372 w
-(a) 2904 6372 w
-10 /LucidaSans-Demi f
-(depth) 2997 6372 w
-(test) 3333 6372 w
-10 /LucidaSansUnicode00 f
-(is) 3569 6372 w
-(performed,) 3687 6372 w
-(discarding) 4268 6372 w
-(frag\255) 4812 6372 w
-(ments) 970 6492 w
-(that) 1319 6492 w
-(are) 1560 6492 w
-(further) 1762 6492 w
-(away.) 2148 6492 w
-(Then) 2469 6492 w
-(a) 2762 6492 w
+(, managed by) 4383 4416 w
+(one) 970 4536 w
+(of) 1183 4536 w
+(the) 1315 4536 w
+(rasterizers;) 1504 4536 w
+(as) 2085 4536 w
+(illustrated) 2226 4536 w
+(in) 2750 4536 w
10 /LucidaSans-Demi f
-(fragment) 2867 6492 w
-(shader) 3391 6492 w
+(Figure) 2876 4536 w
+(4) 3237 4536 w
10 /LucidaSansUnicode00 f
-(is) 3793 6492 w
-(applied) 3923 6492 w
-(and) 4331 6492 w
-(the) 4560 6492 w
-(result) 4764 6492 w
-(written to the framebuffer.) 970 6612 w
-(July 22, 2024) 2556 7680 w
-cleartomark
-showpage
-saveobj restore
-%%EndPage: 1 1
-%%Page: 2 2
-/saveobj save def
-mark
-2 pagesetup
+(.) 3301 4536 w
+(If) 3400 4536 w
+(it) 3501 4536 w
+(spans) 3602 4536 w
+(multiple) 3919 4536 w
+(tiles,) 4352 4536 w
+(it) 4621 4536 w
+(will) 4722 4536 w
+(be) 4921 4536 w
+(copied and sent to each of them.) 970 4656 w
+10 /LucidaSansUnicode20 f
+(") 720 4812 w
10 /LucidaSansUnicode00 f
-(\255 2 \255) 2783 480 w
-1026 1992 1026 1632 Dl
-1026 1632 1566 1632 Dl
-1566 1632 1566 1992 Dl
-1566 1992 1026 1992 Dl
-7 /LucidaSansUnicode00 f
-(Renderjob) 1123 1826 w
-1566 1812 1926 1812 Dl
-1854 1830 1926 1812 Dl
-1853 1825 1925 1812 Dl
-1852 1821 1925 1812 Dl
-1851 1816 1925 1812 Dl
-1851 1812 1925 1812 Dl
-1851 1807 1925 1811 Dl
-1852 1802 1925 1811 Dl
-1853 1798 1925 1811 Dl
-1854 1794 1926 1812 Dl
-1926 1812 432 432 De
-(renderer) 1997 1826 w
-2358 1812 2718 1812 Dl
-2646 1830 2718 1812 Dl
-2645 1825 2717 1812 Dl
-2644 1821 2717 1812 Dl
-2643 1816 2717 1812 Dl
-2643 1812 2717 1812 Dl
-2643 1807 2717 1811 Dl
-2644 1802 2717 1811 Dl
-2645 1798 2717 1811 Dl
-2646 1794 2718 1812 Dl
-2718 1812 432 432 De
-(entityproc) 2763 1826 w
-3510 1056 432 432 De
-(tiler) 3626 1070 w
-(1) 3782 1070 w
-3510 1560 432 432 De
-(tiler) 3626 1574 w
-(2) 3782 1574 w
-3510 2064 432 432 De
-7 /LucidaSansUnicode20 f
-(&) 3691 2078 w
-3510 2568 432 432 De
-7 /LucidaSansUnicode00 f
-(tiler) 3627 2582 w
-(n) 3783 2582 w
-4302 1056 432 432 De
-(rasterizer) 4322 1070 w
-(1) 4670 1070 w
-4302 1560 432 432 De
-(rasterizer) 4322 1574 w
-(2) 4670 1574 w
-4302 2064 432 432 De
-7 /LucidaSansUnicode20 f
-(&) 4483 2078 w
-4302 2568 432 432 De
-7 /LucidaSansUnicode00 f
-(rasterizer) 4323 2582 w
-(n) 4671 2582 w
-3090 1662 3569 1205 Dl
-3530 1267 3569 1205 Dl
-3526 1265 3569 1205 Dl
-3522 1262 3568 1205 Dl
-3519 1259 3569 1205 Dl
-3515 1256 3569 1205 Dl
-3512 1253 3568 1206 Dl
-3510 1249 3569 1205 Dl
-3507 1245 3568 1205 Dl
-3504 1241 3568 1205 Dl
-3139 1746 3519 1626 Dl
-3456 1664 3519 1626 Dl
-3454 1660 3519 1625 Dl
-3452 1656 3519 1626 Dl
-3450 1652 3519 1626 Dl
-3449 1647 3519 1625 Dl
-3448 1643 3520 1625 Dl
-3447 1639 3519 1626 Dl
-3446 1634 3519 1625 Dl
-3445 1629 3519 1625 Dl
-3139 1877 3519 1997 Dl
-3445 1994 3519 1998 Dl
-3446 1989 3519 1998 Dl
-3447 1984 3519 1997 Dl
-3448 1980 3520 1998 Dl
-3449 1976 3519 1998 Dl
-3450 1971 3519 1997 Dl
-3452 1967 3519 1997 Dl
-3454 1963 3519 1998 Dl
-3456 1959 3519 1997 Dl
-3090 1961 3569 2418 Dl
-3504 2382 3568 2418 Dl
-3507 2378 3568 2418 Dl
-3510 2374 3569 2418 Dl
-3512 2370 3568 2417 Dl
-3515 2367 3569 2418 Dl
-3519 2364 3569 2418 Dl
-3522 2361 3568 2418 Dl
-3526 2358 3569 2418 Dl
-3530 2356 3569 2418 Dl
-3942 1056 4302 1056 Dl
-4230 1074 4302 1056 Dl
-4229 1069 4301 1056 Dl
-4228 1065 4301 1056 Dl
-4227 1060 4301 1056 Dl
-4227 1056 4301 1056 Dl
-4227 1051 4301 1055 Dl
-4228 1046 4301 1055 Dl
-4229 1042 4301 1055 Dl
-4230 1038 4302 1056 Dl
-3908 1171 4335 1443 Dl
-4265 1420 4335 1443 Dl
-4266 1416 4335 1444 Dl
-4268 1412 4334 1443 Dl
-4271 1408 4335 1444 Dl
-4273 1404 4335 1443 Dl
-4275 1400 4334 1443 Dl
-4278 1396 4335 1443 Dl
-4281 1393 4335 1443 Dl
-4284 1390 4335 1444 Dl
-3859 1225 4383 1893 Dl
-4325 1848 4383 1893 Dl
-4328 1845 4383 1893 Dl
-4332 1841 4384 1893 Dl
-4335 1838 4384 1893 Dl
-4338 1835 4384 1893 Dl
-4342 1832 4384 1893 Dl
-4345 1830 4383 1893 Dl
-4350 1828 4384 1893 Dl
-4354 1826 4384 1893 Dl
-3826 1247 4417 2376 Dl
-4368 2321 4417 2376 Dl
-4371 2318 4417 2376 Dl
-4375 2315 4417 2376 Dl
-4379 2313 4417 2376 Dl
-4383 2310 4417 2375 Dl
-4387 2308 4417 2375 Dl
-4391 2307 4416 2376 Dl
-4395 2305 4416 2376 Dl
-4400 2304 4417 2376 Dl
-3908 1444 4335 1172 Dl
-4284 1225 4335 1171 Dl
-4281 1222 4335 1172 Dl
-4278 1219 4335 1172 Dl
-4275 1215 4334 1172 Dl
-4273 1211 4335 1172 Dl
-4271 1207 4335 1171 Dl
-4268 1203 4334 1172 Dl
-4266 1200 4335 1172 Dl
-4265 1195 4335 1172 Dl
-3942 1560 4302 1560 Dl
-4230 1578 4302 1560 Dl
-4229 1573 4301 1560 Dl
-4228 1569 4301 1560 Dl
-4227 1564 4301 1560 Dl
-4227 1560 4301 1560 Dl
-4227 1555 4301 1559 Dl
-4228 1550 4301 1559 Dl
-4229 1546 4301 1559 Dl
-4230 1542 4302 1560 Dl
-3908 1675 4335 1947 Dl
-4265 1924 4335 1947 Dl
-4266 1920 4335 1948 Dl
-4268 1916 4334 1947 Dl
-4271 1912 4335 1948 Dl
-4273 1908 4335 1947 Dl
-4275 1904 4334 1947 Dl
-4278 1900 4335 1947 Dl
-4281 1897 4335 1947 Dl
-4284 1894 4335 1948 Dl
-3859 1729 4383 2397 Dl
-4325 2352 4383 2397 Dl
-4328 2349 4383 2397 Dl
-4332 2345 4384 2397 Dl
-4335 2342 4384 2397 Dl
-4338 2339 4384 2397 Dl
-4342 2336 4384 2397 Dl
-4345 2334 4383 2397 Dl
-4350 2332 4384 2397 Dl
-4354 2330 4384 2397 Dl
+(Finally,) 970 4812 w
+(the) 1346 4812 w
10 /LucidaSans-Demi f
-(Figure 1) 970 2982 w
+(rasterizers) 1535 4812 w
10 /LucidaSansUnicode00 f
-(: The rendering graph for a) 1392 2982 w
+(receive) 2128 4812 w
+(the) 2503 4812 w
+(primitive) 2692 4812 w
+(in) 3155 4812 w
+(screen) 3280 4812 w
+(space,) 3631 4812 w
+(slice) 3974 4812 w
+(it) 4225 4812 w
+(to) 4326 4812 w
+(fit) 4459 4812 w
+(their) 4597 4812 w
+(tile,) 4857 4812 w
+(and) 970 4932 w
+(apply) 1186 4932 w
+(a) 1484 4932 w
+(rasterization) 1575 4932 w
+(routine) 2222 4932 w
+(based) 2606 4932 w
+(on) 2930 4932 w
+(its) 3089 4932 w
+(type.) 3242 4932 w
+(For) 3518 4932 w
+(each) 3710 4932 w
+(of) 3970 4932 w
+(the) 4104 4932 w
+(pixels,) 4295 4932 w
+(a) 4652 4932 w
10 /LucidaSans-Demi f
-(2n) 2746 2982 w
+(depth) 4742 4932 w
+(test) 970 5052 w
10 /LucidaSansUnicode00 f
-(processor machine.) 2908 2982 w
+(is) 1215 5052 w
+(performed,) 1343 5052 w
+(discarding) 1934 5052 w
+(fragments) 2488 5052 w
+(that) 3030 5052 w
+(are) 3269 5052 w
+(further) 3469 5052 w
+(away.) 3853 5052 w
+(Then) 4172 5052 w
+(a) 4463 5052 w
10 /LucidaSans-Demi f
-(Tile-based rendering) 720 3222 w
-2070 4248 2106 4248 Dl
-2142 4248 2178 4248 Dl
-2214 4248 2250 4248 Dl
-2286 4248 2322 4248 Dl
-2358 4248 2394 4248 Dl
-2430 4248 2466 4248 Dl
-2502 4248 2538 4248 Dl
-2574 4248 2610 4248 Dl
-2646 4248 2682 4248 Dl
-2718 4248 2754 4248 Dl
-2790 4248 2826 4248 Dl
-2862 4248 2898 4248 Dl
-2934 4248 2970 4248 Dl
-2970 4248 2970 4212 Dl
-2970 4194 2970 4158 Dl
-2970 4140 2970 4104 Dl
-2970 4104 2934 4104 Dl
-2898 4104 2862 4104 Dl
-2826 4104 2790 4104 Dl
-2754 4104 2718 4104 Dl
-2682 4104 2646 4104 Dl
-2610 4104 2574 4104 Dl
-2538 4104 2502 4104 Dl
-2466 4104 2430 4104 Dl
-2394 4104 2358 4104 Dl
-2322 4104 2286 4104 Dl
-2250 4104 2214 4104 Dl
-2178 4104 2142 4104 Dl
-2106 4104 2070 4104 Dl
-2070 4104 2070 4140 Dl
-2070 4158 2070 4194 Dl
-2070 4212 2070 4248 Dl
+(fragment) 4566 5052 w
+(shader) 970 5172 w
+10 /LucidaSansUnicode00 f
+(is applied and the result written to the framebuffer after blending.) 1354 5172 w
+1026 6522 1026 6162 Dl
+1026 6162 1566 6162 Dl
+1566 6162 1566 6522 Dl
+1566 6522 1026 6522 Dl
7 /LucidaSansUnicode00 f
-(tile 1) 2435 4190 w
-2070 4392 2106 4392 Dl
-2142 4392 2178 4392 Dl
-2214 4392 2250 4392 Dl
-2286 4392 2322 4392 Dl
-2358 4392 2394 4392 Dl
-2430 4392 2466 4392 Dl
-2502 4392 2538 4392 Dl
-2574 4392 2610 4392 Dl
-2646 4392 2682 4392 Dl
-2718 4392 2754 4392 Dl
-2790 4392 2826 4392 Dl
-2862 4392 2898 4392 Dl
-2934 4392 2970 4392 Dl
-2970 4392 2970 4356 Dl
-2970 4338 2970 4302 Dl
-2970 4284 2970 4248 Dl
-2970 4248 2934 4248 Dl
-2898 4248 2862 4248 Dl
-2826 4248 2790 4248 Dl
-2754 4248 2718 4248 Dl
-2682 4248 2646 4248 Dl
-2610 4248 2574 4248 Dl
-2538 4248 2502 4248 Dl
-2466 4248 2430 4248 Dl
-2394 4248 2358 4248 Dl
-2322 4248 2286 4248 Dl
-2250 4248 2214 4248 Dl
-2178 4248 2142 4248 Dl
-2106 4248 2070 4248 Dl
-2070 4248 2070 4284 Dl
-2070 4302 2070 4338 Dl
-2070 4356 2070 4392 Dl
-(tile 2) 2435 4334 w
-2070 4536 2106 4536 Dl
-2142 4536 2178 4536 Dl
-2214 4536 2250 4536 Dl
-2286 4536 2322 4536 Dl
-2358 4536 2394 4536 Dl
-2430 4536 2466 4536 Dl
-2502 4536 2538 4536 Dl
-2574 4536 2610 4536 Dl
-2646 4536 2682 4536 Dl
-2718 4536 2754 4536 Dl
-2790 4536 2826 4536 Dl
-2862 4536 2898 4536 Dl
-2934 4536 2970 4536 Dl
-2970 4536 2970 4500 Dl
-2970 4482 2970 4446 Dl
-2970 4428 2970 4392 Dl
-2970 4392 2934 4392 Dl
-2898 4392 2862 4392 Dl
-2826 4392 2790 4392 Dl
-2754 4392 2718 4392 Dl
-2682 4392 2646 4392 Dl
-2610 4392 2574 4392 Dl
-2538 4392 2502 4392 Dl
-2466 4392 2430 4392 Dl
-2394 4392 2358 4392 Dl
-2322 4392 2286 4392 Dl
-2250 4392 2214 4392 Dl
-2178 4392 2142 4392 Dl
-2106 4392 2070 4392 Dl
-2070 4392 2070 4428 Dl
-2070 4446 2070 4482 Dl
-2070 4500 2070 4536 Dl
+(Renderjob) 1123 6356 w
+1566 6342 1926 6342 Dl
+1854 6360 1926 6342 Dl
+1853 6355 1925 6342 Dl
+1852 6351 1925 6342 Dl
+1851 6346 1925 6342 Dl
+1851 6342 1925 6342 Dl
+1851 6337 1925 6341 Dl
+1852 6332 1925 6341 Dl
+1853 6328 1925 6341 Dl
+1854 6324 1926 6342 Dl
+1926 6342 432 432 De
+(renderer) 1997 6356 w
+2358 6342 2718 6342 Dl
+2646 6360 2718 6342 Dl
+2645 6355 2717 6342 Dl
+2644 6351 2717 6342 Dl
+2643 6346 2717 6342 Dl
+2643 6342 2717 6342 Dl
+2643 6337 2717 6341 Dl
+2644 6332 2717 6341 Dl
+2645 6328 2717 6341 Dl
+2646 6324 2718 6342 Dl
+2718 6342 432 432 De
+(entityproc) 2763 6356 w
+3510 5586 432 432 De
+(tiler) 3626 5600 w
+(1) 3782 5600 w
+3510 6090 432 432 De
+(tiler) 3626 6104 w
+(2) 3782 6104 w
+3510 6594 432 432 De
7 /LucidaSansUnicode20 f
-(&) 2485 4478 w
-2070 4680 2106 4680 Dl
-2142 4680 2178 4680 Dl
-2214 4680 2250 4680 Dl
-2286 4680 2322 4680 Dl
-2358 4680 2394 4680 Dl
-2430 4680 2466 4680 Dl
-2502 4680 2538 4680 Dl
-2574 4680 2610 4680 Dl
-2646 4680 2682 4680 Dl
-2718 4680 2754 4680 Dl
-2790 4680 2826 4680 Dl
-2862 4680 2898 4680 Dl
-2934 4680 2970 4680 Dl
-2970 4680 2970 4644 Dl
-2970 4626 2970 4590 Dl
-2970 4572 2970 4536 Dl
-2970 4536 2934 4536 Dl
-2898 4536 2862 4536 Dl
-2826 4536 2790 4536 Dl
-2754 4536 2718 4536 Dl
-2682 4536 2646 4536 Dl
-2610 4536 2574 4536 Dl
-2538 4536 2502 4536 Dl
-2466 4536 2430 4536 Dl
-2394 4536 2358 4536 Dl
-2322 4536 2286 4536 Dl
-2250 4536 2214 4536 Dl
-2178 4536 2142 4536 Dl
-2106 4536 2070 4536 Dl
-2070 4536 2070 4572 Dl
-2070 4590 2070 4626 Dl
-2070 4644 2070 4680 Dl
+(&) 3691 6608 w
+3510 7098 432 432 De
7 /LucidaSansUnicode00 f
-(tile n) 2435 4622 w
-2034 4716 2034 4068 Dl
-2034 4068 3006 4068 Dl
-3006 4068 3006 4716 Dl
-3006 4716 2034 4716 Dl
-(Screen) 1774 4118 w
-3330 3636 432 432 De
-(rasterizer) 3350 3650 w
-(1) 3698 3650 w
-3330 4140 432 432 De
-(rasterizer) 3350 4154 w
-(2) 3698 4154 w
-3330 4644 432 432 De
+(tiler) 3627 7112 w
+(n) 3783 7112 w
+4302 5586 432 432 De
+(rasterizer) 4322 5600 w
+(1) 4670 5600 w
+4302 6090 432 432 De
+(rasterizer) 4322 6104 w
+(2) 4670 6104 w
+4302 6594 432 432 De
7 /LucidaSansUnicode20 f
-(&) 3511 4658 w
-3330 5148 432 432 De
+(&) 4483 6608 w
+4302 7098 432 432 De
7 /LucidaSansUnicode00 f
-(rasterizer) 3351 5162 w
-(n) 3699 5162 w
-2970 4176 3330 3636 Dl
-2970 4320 3330 4140 Dl
-2970 4464 3330 4644 Dl
-2970 4608 3330 5148 Dl
-10 /LucidaSans-Demi f
-(Figure 2) 720 5562 w
+(rasterizer) 4323 7112 w
+(n) 4671 7112 w
+3090 6192 3569 5735 Dl
+3530 5797 3569 5735 Dl
+3526 5795 3569 5735 Dl
+3522 5792 3568 5735 Dl
+3519 5789 3569 5735 Dl
+3515 5786 3569 5735 Dl
+3512 5783 3568 5736 Dl
+3510 5779 3569 5735 Dl
+3507 5775 3568 5735 Dl
+3504 5771 3568 5735 Dl
+3139 6276 3519 6156 Dl
+3456 6194 3519 6156 Dl
+3454 6190 3519 6155 Dl
+3452 6186 3519 6156 Dl
+3450 6182 3519 6156 Dl
+3449 6177 3519 6155 Dl
+3448 6173 3520 6155 Dl
+3447 6169 3519 6156 Dl
+3446 6164 3519 6155 Dl
+3445 6159 3519 6155 Dl
+3139 6407 3519 6527 Dl
+3445 6524 3519 6528 Dl
+3446 6519 3519 6528 Dl
+3447 6514 3519 6527 Dl
+3448 6510 3520 6528 Dl
+3449 6506 3519 6528 Dl
+3450 6501 3519 6527 Dl
+3452 6497 3519 6527 Dl
+3454 6493 3519 6528 Dl
+3456 6489 3519 6527 Dl
+3090 6491 3569 6948 Dl
+3504 6912 3568 6948 Dl
+3507 6908 3568 6948 Dl
+3510 6904 3569 6948 Dl
+3512 6900 3568 6947 Dl
+3515 6897 3569 6948 Dl
+3519 6894 3569 6948 Dl
+3522 6891 3568 6948 Dl
+3526 6888 3569 6948 Dl
+3530 6886 3569 6948 Dl
+3942 5586 4302 5586 Dl
+4230 5604 4302 5586 Dl
+4229 5599 4301 5586 Dl
+4228 5595 4301 5586 Dl
+4227 5590 4301 5586 Dl
+4227 5586 4301 5586 Dl
+4227 5581 4301 5585 Dl
+4228 5576 4301 5585 Dl
+4229 5572 4301 5585 Dl
+4230 5568 4302 5586 Dl
+3908 5701 4335 5973 Dl
+4265 5950 4335 5973 Dl
+4266 5946 4335 5974 Dl
+4268 5942 4334 5973 Dl
+4271 5938 4335 5974 Dl
+4273 5934 4335 5973 Dl
+4275 5930 4334 5973 Dl
+4278 5926 4335 5973 Dl
+4281 5923 4335 5973 Dl
+4284 5920 4335 5974 Dl
+3859 5755 4383 6423 Dl
+4325 6378 4383 6423 Dl
+4328 6375 4383 6423 Dl
+4332 6371 4384 6423 Dl
+4335 6368 4384 6423 Dl
+4338 6365 4384 6423 Dl
+4342 6362 4384 6423 Dl
+4345 6360 4383 6423 Dl
+4350 6358 4384 6423 Dl
+4354 6356 4384 6423 Dl
+3826 5777 4417 6906 Dl
+4368 6851 4417 6906 Dl
+4371 6848 4417 6906 Dl
+4375 6845 4417 6906 Dl
+4379 6843 4417 6906 Dl
+4383 6840 4417 6905 Dl
+4387 6838 4417 6905 Dl
+4391 6837 4416 6906 Dl
+4395 6835 4416 6906 Dl
+4400 6834 4417 6906 Dl
+3908 5974 4335 5702 Dl
+4284 5755 4335 5701 Dl
+4281 5752 4335 5702 Dl
+4278 5749 4335 5702 Dl
+4275 5745 4334 5702 Dl
+4273 5741 4335 5702 Dl
+4271 5737 4335 5701 Dl
+4268 5733 4334 5702 Dl
+4266 5730 4335 5702 Dl
+4265 5725 4335 5702 Dl
+3942 6090 4302 6090 Dl
+4230 6108 4302 6090 Dl
+4229 6103 4301 6090 Dl
+4228 6099 4301 6090 Dl
+4227 6094 4301 6090 Dl
+4227 6090 4301 6090 Dl
+4227 6085 4301 6089 Dl
+4228 6080 4301 6089 Dl
+4229 6076 4301 6089 Dl
+4230 6072 4302 6090 Dl
+3908 6205 4335 6477 Dl
+4265 6454 4335 6477 Dl
+4266 6450 4335 6478 Dl
+4268 6446 4334 6477 Dl
+4271 6442 4335 6478 Dl
+4273 6438 4335 6477 Dl
+4275 6434 4334 6477 Dl
+4278 6430 4335 6477 Dl
+4281 6427 4335 6477 Dl
+4284 6424 4335 6478 Dl
+3859 6259 4383 6927 Dl
+4325 6882 4383 6927 Dl
+4328 6879 4383 6927 Dl
+4332 6875 4384 6927 Dl
+4335 6872 4384 6927 Dl
+4338 6869 4384 6927 Dl
+4342 6866 4384 6927 Dl
+4345 6864 4383 6927 Dl
+4350 6862 4384 6927 Dl
+4354 6860 4384 6927 Dl
10 /LucidaSansUnicode00 f
-(: Per tile rasterizers.) 1142 5562 w
-(July 22, 2024) 2556 7680 w
+(July 23, 2024) 2556 7680 w
cleartomark
showpage
saveobj restore
@@ -1402,296 +1386,419 @@ mark
3 pagesetup
10 /LucidaSansUnicode00 f
(\255 3 \255) 2783 480 w
-2070 1668 2106 1668 Dl
-2142 1668 2178 1668 Dl
-2214 1668 2250 1668 Dl
-2286 1668 2322 1668 Dl
-2358 1668 2394 1668 Dl
-2430 1668 2466 1668 Dl
-2502 1668 2538 1668 Dl
-2574 1668 2610 1668 Dl
-2646 1668 2682 1668 Dl
-2718 1668 2754 1668 Dl
-2790 1668 2826 1668 Dl
-2862 1668 2898 1668 Dl
-2934 1668 2970 1668 Dl
-2970 1668 2970 1632 Dl
-2970 1614 2970 1578 Dl
-2970 1560 2970 1524 Dl
-2970 1524 2934 1524 Dl
-2898 1524 2862 1524 Dl
-2826 1524 2790 1524 Dl
-2754 1524 2718 1524 Dl
-2682 1524 2646 1524 Dl
-2610 1524 2574 1524 Dl
-2538 1524 2502 1524 Dl
-2466 1524 2430 1524 Dl
-2394 1524 2358 1524 Dl
-2322 1524 2286 1524 Dl
-2250 1524 2214 1524 Dl
-2178 1524 2142 1524 Dl
-2106 1524 2070 1524 Dl
-2070 1524 2070 1560 Dl
-2070 1578 2070 1614 Dl
-2070 1632 2070 1668 Dl
+10 /LucidaSans-Demi f
+(Figure 2) 1437 840 w
+10 /LucidaSansUnicode00 f
+(: The rendering graph for a) 1859 840 w
+10 /LucidaSans-Demi f
+(2n) 3213 840 w
+10 /LucidaSansUnicode00 f
+(processor machine.) 3375 840 w
+2070 1830 2106 1830 Dl
+2142 1830 2178 1830 Dl
+2214 1830 2250 1830 Dl
+2286 1830 2322 1830 Dl
+2358 1830 2394 1830 Dl
+2430 1830 2466 1830 Dl
+2502 1830 2538 1830 Dl
+2574 1830 2610 1830 Dl
+2646 1830 2682 1830 Dl
+2718 1830 2754 1830 Dl
+2790 1830 2826 1830 Dl
+2862 1830 2898 1830 Dl
+2934 1830 2970 1830 Dl
+2970 1830 2970 1794 Dl
+2970 1776 2970 1740 Dl
+2970 1722 2970 1686 Dl
+2970 1686 2934 1686 Dl
+2898 1686 2862 1686 Dl
+2826 1686 2790 1686 Dl
+2754 1686 2718 1686 Dl
+2682 1686 2646 1686 Dl
+2610 1686 2574 1686 Dl
+2538 1686 2502 1686 Dl
+2466 1686 2430 1686 Dl
+2394 1686 2358 1686 Dl
+2322 1686 2286 1686 Dl
+2250 1686 2214 1686 Dl
+2178 1686 2142 1686 Dl
+2106 1686 2070 1686 Dl
+2070 1686 2070 1722 Dl
+2070 1740 2070 1776 Dl
+2070 1794 2070 1830 Dl
7 /LucidaSansUnicode00 f
-(1) 2498 1610 w
-2070 1812 2106 1812 Dl
-2142 1812 2178 1812 Dl
-2214 1812 2250 1812 Dl
-2286 1812 2322 1812 Dl
-2358 1812 2394 1812 Dl
-2430 1812 2466 1812 Dl
-2502 1812 2538 1812 Dl
-2574 1812 2610 1812 Dl
-2646 1812 2682 1812 Dl
-2718 1812 2754 1812 Dl
-2790 1812 2826 1812 Dl
-2862 1812 2898 1812 Dl
-2934 1812 2970 1812 Dl
-2970 1812 2970 1776 Dl
-2970 1758 2970 1722 Dl
-2970 1704 2970 1668 Dl
-2970 1668 2934 1668 Dl
-2898 1668 2862 1668 Dl
-2826 1668 2790 1668 Dl
-2754 1668 2718 1668 Dl
-2682 1668 2646 1668 Dl
-2610 1668 2574 1668 Dl
-2538 1668 2502 1668 Dl
-2466 1668 2430 1668 Dl
-2394 1668 2358 1668 Dl
-2322 1668 2286 1668 Dl
-2250 1668 2214 1668 Dl
-2178 1668 2142 1668 Dl
-2106 1668 2070 1668 Dl
-2070 1668 2070 1704 Dl
-2070 1722 2070 1758 Dl
-2070 1776 2070 1812 Dl
-(2) 2498 1754 w
-2070 1956 2106 1956 Dl
-2142 1956 2178 1956 Dl
-2214 1956 2250 1956 Dl
-2286 1956 2322 1956 Dl
-2358 1956 2394 1956 Dl
-2430 1956 2466 1956 Dl
-2502 1956 2538 1956 Dl
-2574 1956 2610 1956 Dl
-2646 1956 2682 1956 Dl
-2718 1956 2754 1956 Dl
-2790 1956 2826 1956 Dl
-2862 1956 2898 1956 Dl
-2934 1956 2970 1956 Dl
-2970 1956 2970 1920 Dl
-2970 1902 2970 1866 Dl
-2970 1848 2970 1812 Dl
-2970 1812 2934 1812 Dl
-2898 1812 2862 1812 Dl
-2826 1812 2790 1812 Dl
-2754 1812 2718 1812 Dl
-2682 1812 2646 1812 Dl
-2610 1812 2574 1812 Dl
-2538 1812 2502 1812 Dl
-2466 1812 2430 1812 Dl
-2394 1812 2358 1812 Dl
-2322 1812 2286 1812 Dl
-2250 1812 2214 1812 Dl
-2178 1812 2142 1812 Dl
-2106 1812 2070 1812 Dl
-2070 1812 2070 1848 Dl
-2070 1866 2070 1902 Dl
-2070 1920 2070 1956 Dl
+(tile 1) 2435 1772 w
+2070 1974 2106 1974 Dl
+2142 1974 2178 1974 Dl
+2214 1974 2250 1974 Dl
+2286 1974 2322 1974 Dl
+2358 1974 2394 1974 Dl
+2430 1974 2466 1974 Dl
+2502 1974 2538 1974 Dl
+2574 1974 2610 1974 Dl
+2646 1974 2682 1974 Dl
+2718 1974 2754 1974 Dl
+2790 1974 2826 1974 Dl
+2862 1974 2898 1974 Dl
+2934 1974 2970 1974 Dl
+2970 1974 2970 1938 Dl
+2970 1920 2970 1884 Dl
+2970 1866 2970 1830 Dl
+2970 1830 2934 1830 Dl
+2898 1830 2862 1830 Dl
+2826 1830 2790 1830 Dl
+2754 1830 2718 1830 Dl
+2682 1830 2646 1830 Dl
+2610 1830 2574 1830 Dl
+2538 1830 2502 1830 Dl
+2466 1830 2430 1830 Dl
+2394 1830 2358 1830 Dl
+2322 1830 2286 1830 Dl
+2250 1830 2214 1830 Dl
+2178 1830 2142 1830 Dl
+2106 1830 2070 1830 Dl
+2070 1830 2070 1866 Dl
+2070 1884 2070 1920 Dl
+2070 1938 2070 1974 Dl
+(tile 2) 2435 1916 w
+2070 2118 2106 2118 Dl
+2142 2118 2178 2118 Dl
+2214 2118 2250 2118 Dl
+2286 2118 2322 2118 Dl
+2358 2118 2394 2118 Dl
+2430 2118 2466 2118 Dl
+2502 2118 2538 2118 Dl
+2574 2118 2610 2118 Dl
+2646 2118 2682 2118 Dl
+2718 2118 2754 2118 Dl
+2790 2118 2826 2118 Dl
+2862 2118 2898 2118 Dl
+2934 2118 2970 2118 Dl
+2970 2118 2970 2082 Dl
+2970 2064 2970 2028 Dl
+2970 2010 2970 1974 Dl
+2970 1974 2934 1974 Dl
+2898 1974 2862 1974 Dl
+2826 1974 2790 1974 Dl
+2754 1974 2718 1974 Dl
+2682 1974 2646 1974 Dl
+2610 1974 2574 1974 Dl
+2538 1974 2502 1974 Dl
+2466 1974 2430 1974 Dl
+2394 1974 2358 1974 Dl
+2322 1974 2286 1974 Dl
+2250 1974 2214 1974 Dl
+2178 1974 2142 1974 Dl
+2106 1974 2070 1974 Dl
+2070 1974 2070 2010 Dl
+2070 2028 2070 2064 Dl
+2070 2082 2070 2118 Dl
7 /LucidaSansUnicode20 f
-(&) 2485 1898 w
-2070 2100 2106 2100 Dl
-2142 2100 2178 2100 Dl
-2214 2100 2250 2100 Dl
-2286 2100 2322 2100 Dl
-2358 2100 2394 2100 Dl
-2430 2100 2466 2100 Dl
-2502 2100 2538 2100 Dl
-2574 2100 2610 2100 Dl
-2646 2100 2682 2100 Dl
-2718 2100 2754 2100 Dl
-2790 2100 2826 2100 Dl
-2862 2100 2898 2100 Dl
-2934 2100 2970 2100 Dl
-2970 2100 2970 2064 Dl
-2970 2046 2970 2010 Dl
-2970 1992 2970 1956 Dl
-2970 1956 2934 1956 Dl
-2898 1956 2862 1956 Dl
-2826 1956 2790 1956 Dl
-2754 1956 2718 1956 Dl
-2682 1956 2646 1956 Dl
-2610 1956 2574 1956 Dl
-2538 1956 2502 1956 Dl
-2466 1956 2430 1956 Dl
-2394 1956 2358 1956 Dl
-2322 1956 2286 1956 Dl
-2250 1956 2214 1956 Dl
-2178 1956 2142 1956 Dl
-2106 1956 2070 1956 Dl
-2070 1956 2070 1992 Dl
-2070 2010 2070 2046 Dl
-2070 2064 2070 2100 Dl
+(&) 2485 2060 w
+2070 2262 2106 2262 Dl
+2142 2262 2178 2262 Dl
+2214 2262 2250 2262 Dl
+2286 2262 2322 2262 Dl
+2358 2262 2394 2262 Dl
+2430 2262 2466 2262 Dl
+2502 2262 2538 2262 Dl
+2574 2262 2610 2262 Dl
+2646 2262 2682 2262 Dl
+2718 2262 2754 2262 Dl
+2790 2262 2826 2262 Dl
+2862 2262 2898 2262 Dl
+2934 2262 2970 2262 Dl
+2970 2262 2970 2226 Dl
+2970 2208 2970 2172 Dl
+2970 2154 2970 2118 Dl
+2970 2118 2934 2118 Dl
+2898 2118 2862 2118 Dl
+2826 2118 2790 2118 Dl
+2754 2118 2718 2118 Dl
+2682 2118 2646 2118 Dl
+2610 2118 2574 2118 Dl
+2538 2118 2502 2118 Dl
+2466 2118 2430 2118 Dl
+2394 2118 2358 2118 Dl
+2322 2118 2286 2118 Dl
+2250 2118 2214 2118 Dl
+2178 2118 2142 2118 Dl
+2106 2118 2070 2118 Dl
+2070 2118 2070 2154 Dl
+2070 2172 2070 2208 Dl
+2070 2226 2070 2262 Dl
7 /LucidaSansUnicode00 f
-(n) 2499 2042 w
-2142 1848 2592 1704 Dl
-2592 1704 2754 2028 Dl
-2754 2028 2142 1848 Dl
-2034 2136 2034 1488 Dl
-2034 1488 3006 1488 Dl
-3006 1488 3006 2136 Dl
-3006 2136 2034 2136 Dl
-(Screen) 1774 1538 w
-3330 1056 432 432 De
-(rasterizer) 3350 1070 w
-(1) 3698 1070 w
-3330 1560 432 432 De
-(rasterizer) 3350 1574 w
-(2) 3698 1574 w
-3330 2064 432 432 De
+(tile n) 2435 2204 w
+2034 2298 2034 1650 Dl
+2034 1650 3006 1650 Dl
+3006 1650 3006 2298 Dl
+3006 2298 2034 2298 Dl
+(Framebuf) 1675 1700 w
+3330 1218 432 432 De
+(rasterizer) 3350 1232 w
+(1) 3698 1232 w
+3330 1722 432 432 De
+(rasterizer) 3350 1736 w
+(2) 3698 1736 w
+3330 2226 432 432 De
7 /LucidaSansUnicode20 f
-(&) 3511 2078 w
-3330 2568 432 432 De
+(&) 3511 2240 w
+3330 2730 432 432 De
7 /LucidaSansUnicode00 f
-(rasterizer) 3351 2582 w
-(n) 3699 2582 w
-2970 1740 3330 1560 Dl
-3273 1608 3329 1560 Dl
-3270 1604 3329 1560 Dl
-3268 1601 3329 1560 Dl
-3265 1597 3329 1560 Dl
-3263 1593 3329 1560 Dl
-3261 1588 3329 1560 Dl
-3260 1584 3329 1560 Dl
-3258 1580 3329 1560 Dl
-3257 1575 3329 1560 Dl
-2970 1884 3330 2064 Dl
-3257 2048 3329 2063 Dl
-3258 2043 3329 2063 Dl
-3260 2039 3329 2063 Dl
-3261 2035 3329 2063 Dl
-3263 2030 3329 2063 Dl
-3265 2026 3329 2063 Dl
-3268 2022 3329 2063 Dl
-3270 2019 3329 2063 Dl
-3273 2015 3329 2063 Dl
-2970 2028 3330 2568 Dl
-3275 2518 3329 2567 Dl
-3278 2514 3329 2567 Dl
-3281 2511 3329 2567 Dl
-3285 2508 3329 2567 Dl
-3288 2506 3329 2567 Dl
-3292 2503 3329 2567 Dl
-3296 2501 3329 2567 Dl
-3300 2499 3329 2567 Dl
-3304 2498 3329 2567 Dl
+(rasterizer) 3351 2744 w
+(n) 3699 2744 w
+2970 1758 3330 1218 Dl
+2970 1902 3330 1722 Dl
+2970 2046 3330 2226 Dl
+2970 2190 3330 2730 Dl
10 /LucidaSans-Demi f
-(Figure 3) 720 2982 w
+(Figure 3) 2180 3144 w
10 /LucidaSansUnicode00 f
-(: Raster task scheduling.) 1142 2982 w
-10 /LucidaSans-Demi f
-(The scene) 720 3222 w
-2196 3564 2196 3420 Dl
-2196 3420 2556 3420 Dl
-2556 3420 2556 3564 Dl
-2556 3564 2196 3564 Dl
+(: Per tile rasterizers.) 2602 3144 w
+2070 4134 2106 4134 Dl
+2142 4134 2178 4134 Dl
+2214 4134 2250 4134 Dl
+2286 4134 2322 4134 Dl
+2358 4134 2394 4134 Dl
+2430 4134 2466 4134 Dl
+2502 4134 2538 4134 Dl
+2574 4134 2610 4134 Dl
+2646 4134 2682 4134 Dl
+2718 4134 2754 4134 Dl
+2790 4134 2826 4134 Dl
+2862 4134 2898 4134 Dl
+2934 4134 2970 4134 Dl
+2970 4134 2970 4098 Dl
+2970 4080 2970 4044 Dl
+2970 4026 2970 3990 Dl
+2970 3990 2934 3990 Dl
+2898 3990 2862 3990 Dl
+2826 3990 2790 3990 Dl
+2754 3990 2718 3990 Dl
+2682 3990 2646 3990 Dl
+2610 3990 2574 3990 Dl
+2538 3990 2502 3990 Dl
+2466 3990 2430 3990 Dl
+2394 3990 2358 3990 Dl
+2322 3990 2286 3990 Dl
+2250 3990 2214 3990 Dl
+2178 3990 2142 3990 Dl
+2106 3990 2070 3990 Dl
+2070 3990 2070 4026 Dl
+2070 4044 2070 4080 Dl
+2070 4098 2070 4134 Dl
+7 /LucidaSansUnicode00 f
+(1) 2498 4076 w
+2070 4278 2106 4278 Dl
+2142 4278 2178 4278 Dl
+2214 4278 2250 4278 Dl
+2286 4278 2322 4278 Dl
+2358 4278 2394 4278 Dl
+2430 4278 2466 4278 Dl
+2502 4278 2538 4278 Dl
+2574 4278 2610 4278 Dl
+2646 4278 2682 4278 Dl
+2718 4278 2754 4278 Dl
+2790 4278 2826 4278 Dl
+2862 4278 2898 4278 Dl
+2934 4278 2970 4278 Dl
+2970 4278 2970 4242 Dl
+2970 4224 2970 4188 Dl
+2970 4170 2970 4134 Dl
+2970 4134 2934 4134 Dl
+2898 4134 2862 4134 Dl
+2826 4134 2790 4134 Dl
+2754 4134 2718 4134 Dl
+2682 4134 2646 4134 Dl
+2610 4134 2574 4134 Dl
+2538 4134 2502 4134 Dl
+2466 4134 2430 4134 Dl
+2394 4134 2358 4134 Dl
+2322 4134 2286 4134 Dl
+2250 4134 2214 4134 Dl
+2178 4134 2142 4134 Dl
+2106 4134 2070 4134 Dl
+2070 4134 2070 4170 Dl
+2070 4188 2070 4224 Dl
+2070 4242 2070 4278 Dl
+(2) 2498 4220 w
+2070 4422 2106 4422 Dl
+2142 4422 2178 4422 Dl
+2214 4422 2250 4422 Dl
+2286 4422 2322 4422 Dl
+2358 4422 2394 4422 Dl
+2430 4422 2466 4422 Dl
+2502 4422 2538 4422 Dl
+2574 4422 2610 4422 Dl
+2646 4422 2682 4422 Dl
+2718 4422 2754 4422 Dl
+2790 4422 2826 4422 Dl
+2862 4422 2898 4422 Dl
+2934 4422 2970 4422 Dl
+2970 4422 2970 4386 Dl
+2970 4368 2970 4332 Dl
+2970 4314 2970 4278 Dl
+2970 4278 2934 4278 Dl
+2898 4278 2862 4278 Dl
+2826 4278 2790 4278 Dl
+2754 4278 2718 4278 Dl
+2682 4278 2646 4278 Dl
+2610 4278 2574 4278 Dl
+2538 4278 2502 4278 Dl
+2466 4278 2430 4278 Dl
+2394 4278 2358 4278 Dl
+2322 4278 2286 4278 Dl
+2250 4278 2214 4278 Dl
+2178 4278 2142 4278 Dl
+2106 4278 2070 4278 Dl
+2070 4278 2070 4314 Dl
+2070 4332 2070 4368 Dl
+2070 4386 2070 4422 Dl
+7 /LucidaSansUnicode20 f
+(&) 2485 4364 w
+2070 4566 2106 4566 Dl
+2142 4566 2178 4566 Dl
+2214 4566 2250 4566 Dl
+2286 4566 2322 4566 Dl
+2358 4566 2394 4566 Dl
+2430 4566 2466 4566 Dl
+2502 4566 2538 4566 Dl
+2574 4566 2610 4566 Dl
+2646 4566 2682 4566 Dl
+2718 4566 2754 4566 Dl
+2790 4566 2826 4566 Dl
+2862 4566 2898 4566 Dl
+2934 4566 2970 4566 Dl
+2970 4566 2970 4530 Dl
+2970 4512 2970 4476 Dl
+2970 4458 2970 4422 Dl
+2970 4422 2934 4422 Dl
+2898 4422 2862 4422 Dl
+2826 4422 2790 4422 Dl
+2754 4422 2718 4422 Dl
+2682 4422 2646 4422 Dl
+2610 4422 2574 4422 Dl
+2538 4422 2502 4422 Dl
+2466 4422 2430 4422 Dl
+2394 4422 2358 4422 Dl
+2322 4422 2286 4422 Dl
+2250 4422 2214 4422 Dl
+2178 4422 2142 4422 Dl
+2106 4422 2070 4422 Dl
+2070 4422 2070 4458 Dl
+2070 4476 2070 4512 Dl
+2070 4530 2070 4566 Dl
+7 /LucidaSansUnicode00 f
+(n) 2499 4508 w
+2142 4314 2592 4170 Dl
+2592 4170 2754 4494 Dl
+2754 4494 2142 4314 Dl
+2034 4602 2034 3954 Dl
+2034 3954 3006 3954 Dl
+3006 3954 3006 4602 Dl
+3006 4602 2034 4602 Dl
+(Framebuf) 1675 4004 w
+3330 3522 432 432 De
+(rasterizer) 3350 3536 w
+(1) 3698 3536 w
+3330 4026 432 432 De
+(rasterizer) 3350 4040 w
+(2) 3698 4040 w
+3330 4530 432 432 De
+7 /LucidaSansUnicode20 f
+(&) 3511 4544 w
+3330 5034 432 432 De
7 /LucidaSansUnicode00 f
-(Scene) 2279 3506 w
-2376 3564 2376 3708 Dl
-2376 3708 2448 3708 Dl
-2448 3780 2448 3636 Dl
-2448 3636 2808 3636 Dl
-2808 3636 2808 3780 Dl
-2808 3780 2448 3780 Dl
-(Entity) 2534 3722 w
-2628 3780 2628 3924 Dl
-2628 3924 2700 3924 Dl
-2700 3996 2700 3852 Dl
-2700 3852 3060 3852 Dl
-3060 3852 3060 3996 Dl
-3060 3996 2700 3996 Dl
-(Model) 2777 3938 w
-2880 3996 2880 4140 Dl
-2880 4140 2952 4140 Dl
-2952 4212 2952 4068 Dl
-2952 4068 3312 4068 Dl
-3312 4068 3312 4212 Dl
-3312 4212 2952 4212 Dl
-(Mesh) 3043 4154 w
-3132 4212 3132 4356 Dl
-3132 4356 3204 4356 Dl
-3204 4428 3204 4284 Dl
-3204 4284 3564 4284 Dl
-3564 4284 3564 4428 Dl
-3564 4428 3204 4428 Dl
-(Primitive) 3237 4370 w
-3132 4356 3132 4500 Dl
-3132 4500 3132 4644 Dl
-3132 4644 3204 4644 Dl
-3204 4716 3204 4572 Dl
-3204 4572 3564 4572 Dl
-3564 4572 3564 4716 Dl
-3564 4716 3204 4716 Dl
-(Material) 3248 4658 w
+(rasterizer) 3351 5048 w
+(n) 3699 5048 w
+2970 4206 3330 4026 Dl
+3273 4074 3329 4026 Dl
+3270 4070 3329 4026 Dl
+3268 4067 3329 4026 Dl
+3265 4063 3329 4026 Dl
+3263 4059 3329 4026 Dl
+3261 4054 3329 4026 Dl
+3260 4050 3329 4026 Dl
+3258 4046 3329 4026 Dl
+3257 4041 3329 4026 Dl
+2970 4350 3330 4530 Dl
+3257 4514 3329 4529 Dl
+3258 4509 3329 4529 Dl
+3260 4505 3329 4529 Dl
+3261 4501 3329 4529 Dl
+3263 4496 3329 4529 Dl
+3265 4492 3329 4529 Dl
+3268 4488 3329 4529 Dl
+3270 4485 3329 4529 Dl
+3273 4481 3329 4529 Dl
+2970 4494 3330 5034 Dl
+3275 4984 3329 5033 Dl
+3278 4980 3329 5033 Dl
+3281 4977 3329 5033 Dl
+3285 4974 3329 5033 Dl
+3288 4972 3329 5033 Dl
+3292 4969 3329 5033 Dl
+3296 4967 3329 5033 Dl
+3300 4965 3329 5033 Dl
+3304 4964 3329 5033 Dl
10 /LucidaSans-Demi f
-(Frames of reference) 720 5034 w
+(Figure 4) 2073 5448 w
10 /LucidaSansUnicode00 f
-(Frames are right-handed throughout every stage.) 970 5190 w
+(: Raster task scheduling.) 2495 5448 w
+10 /LucidaSans-Demi f
+(4.) 720 5688 w
+(Frames of reference) 873 5688 w
+10 /LucidaSansUnicode00 f
+(Frames are right-handed throughout every stage.) 970 5844 w
gsave
newpath
-3586 5856 m
+3586 6510 m
/inpath true def
0.7 setgray
-2790 6072 14 14 De
+2790 6726 14 14 De
gsave eofill grestore 0 setgray stroke
grestore
/inpath false def
7 /LucidaSansUnicode00 f
-(p) 2703 6086 w
-2797 6072 3514 6134 Dl
-3441 6146 3514 6135 Dl
-3441 6141 3515 6134 Dl
-3440 6137 3514 6135 Dl
-3440 6132 3514 6134 Dl
-3441 6128 3515 6134 Dl
-3441 6123 3514 6133 Dl
-3441 6119 3513 6134 Dl
-3443 6115 3514 6135 Dl
-3444 6110 3513 6134 Dl
-(bx) 3543 6148 w
-2797 6072 2797 5352 Dl
-2815 5424 2797 5352 Dl
-2811 5424 2798 5352 Dl
-2806 5425 2797 5352 Dl
-2801 5426 2797 5352 Dl
-2797 5426 2797 5352 Dl
-2793 5426 2797 5352 Dl
-2788 5425 2797 5352 Dl
-2783 5424 2796 5352 Dl
-2779 5424 2797 5352 Dl
-(by) 2685 5366 w
-2797 6072 2246 6360 Dl
-2301 6311 2246 6359 Dl
-2304 6313 2246 6359 Dl
-2307 6317 2246 6359 Dl
-2309 6321 2246 6359 Dl
-2311 6325 2246 6359 Dl
-2313 6329 2246 6359 Dl
-2315 6334 2246 6359 Dl
-2317 6338 2246 6359 Dl
-2318 6342 2246 6359 Dl
-(bz) 2132 6374 w
+(p) 2703 6740 w
+2797 6726 3514 6788 Dl
+3441 6800 3514 6789 Dl
+3441 6795 3515 6788 Dl
+3440 6791 3514 6789 Dl
+3440 6786 3514 6788 Dl
+3441 6782 3515 6788 Dl
+3441 6777 3514 6787 Dl
+3441 6773 3513 6788 Dl
+3443 6769 3514 6789 Dl
+3444 6764 3513 6788 Dl
+(bx) 3543 6802 w
+2797 6726 2797 6006 Dl
+2815 6078 2797 6006 Dl
+2811 6078 2798 6006 Dl
+2806 6079 2797 6006 Dl
+2801 6080 2797 6006 Dl
+2797 6080 2797 6006 Dl
+2793 6080 2797 6006 Dl
+2788 6079 2797 6006 Dl
+2783 6078 2796 6006 Dl
+2779 6078 2797 6006 Dl
+(by) 2685 6020 w
+2797 6726 2246 7014 Dl
+2301 6965 2246 7013 Dl
+2304 6967 2246 7013 Dl
+2307 6971 2246 7013 Dl
+2309 6975 2246 7013 Dl
+2311 6979 2246 7013 Dl
+2313 6983 2246 7013 Dl
+2315 6988 2246 7013 Dl
+2317 6992 2246 7013 Dl
+2318 6996 2246 7013 Dl
+(bz) 2132 7028 w
10 /LucidaSans-Demi f
-(Figure 4) 720 6558 w
+(Figure 5) 1897 7212 w
10 /LucidaSansUnicode00 f
-(: Example right-handed rframe.) 1142 6558 w
-10 /LucidaSans-Demi f
-(Viewports) 720 6798 w
-10 /LucidaSansUnicode00 f
-(July 22, 2024) 2556 7680 w
+(: Example right-handed rframe.) 2319 7212 w
+(July 23, 2024) 2556 7680 w
cleartomark
showpage
saveobj restore
@@ -1702,49 +1809,133 @@ mark
4 pagesetup
10 /LucidaSansUnicode00 f
(\255 4 \255) 2783 480 w
-1836 2352 1836 912 Dl
-1836 912 3996 912 Dl
-3996 912 3996 2352 Dl
-3996 2352 1836 2352 Dl
+10 /LucidaSans-Demi f
+(5.) 720 840 w
+(Viewports) 873 840 w
+10 /LucidaSansUnicode00 f
+(A) 970 996 w
+10 /LucidaSans-Italic f
+(viewport) 1084 996 w
+10 /LucidaSansUnicode00 f
+(is) 1547 996 w
+(a) 1673 996 w
+(sort) 1774 996 w
+(of) 2010 996 w
+(virtual) 2154 996 w
+(framebuffer,) 2505 996 w
+(a) 3161 996 w
+(device) 3262 996 w
+(that) 3615 996 w
+(lets) 3852 996 w
+(users) 4071 996 w
+(configure) 4378 996 w
+(the) 4885 996 w
+(way) 720 1116 w
+(they) 940 1116 w
+(visualize) 1183 1116 w
+(a) 1639 1116 w
+(framebuffer,) 1730 1116 w
+(which) 2375 1116 w
+(changes) 2691 1116 w
+(the) 3125 1116 w
+(resulting) 3315 1116 w
+10 /LucidaSans-Italic f
+(image) 3779 1116 w
+10 /LucidaSansUnicode00 f
+(\(6\)) 4076 1116 w
+(after) 4240 1116 w
+(a) 4501 1116 w
+(call) 4591 1116 w
+(to) 4790 1116 w
+(its) 4923 1116 w
+10 /LucidaTypewriter f
+(draw) 720 1236 w
+10 /LucidaSansUnicode00 f
+(or) 1046 1236 w
+10 /LucidaTypewriter f
+(memdraw) 1187 1236 w
+10 /LucidaSansUnicode00 f
+(methods.) 1730 1236 w
+(As) 2256 1236 w
+(of) 2415 1236 w
+(now,) 2552 1236 w
+(the) 2823 1236 w
+(only) 3017 1236 w
+(feature) 3260 1236 w
+(available) 3643 1236 w
+(is) 4105 1236 w
+(upscaling,) 4224 1236 w
+(which) 4759 1236 w
+(includes) 720 1356 w
+(user-defined) 1174 1356 w
+(filters) 1859 1356 w
+(for) 2190 1356 w
+(specific) 2380 1356 w
+(ratios,) 2798 1356 w
+(such) 3155 1356 w
+(as) 3432 1356 w
+(the) 3589 1356 w
+(family) 3795 1356 w
+(of) 4141 1356 w
+(pixel) 4289 1356 w
+(art) 4577 1356 w
+(filters) 4760 1356 w
+10 /LucidaSans-Italic f
+(Scale[234]x) 720 1476 w
+10 /LucidaSansUnicode00 f
+(, used for 2x2, 3x3 and 4x4 scaling respectively) 1277 1476 w
+10 /LucidaSans-Italic f
+([?]) 3621 1476 w
+10 /LucidaSansUnicode00 f
+(.) 3733 1476 w
+1836 3150 1836 1710 Dl
+1836 1710 3996 1710 Dl
+3996 1710 3996 3150 Dl
+3996 3150 1836 3150 Dl
7 /LucidaSansUnicode00 f
-(framebuffer) 2714 2222 w
+(Framebuf) 2755 3020 w
gsave
newpath
-2916 2208 m
+2916 3006 m
/inpath true def
0.7 setgray
-1828 912 14 14 De
+1828 1710 14 14 De
gsave eofill grestore 0 setgray stroke
grestore
/inpath false def
-(p) 1742 926 w
-1836 912 2556 912 Dl
-2484 930 2556 912 Dl
-2483 925 2555 912 Dl
-2482 921 2555 912 Dl
-2481 916 2555 912 Dl
-2481 912 2555 912 Dl
-2481 907 2555 911 Dl
-2482 902 2555 911 Dl
-2483 898 2555 911 Dl
-2484 894 2556 912 Dl
-(bx) 2513 854 w
-1836 912 1836 1632 Dl
-1818 1560 1836 1632 Dl
-1822 1559 1835 1631 Dl
-1826 1558 1835 1631 Dl
-1831 1557 1835 1631 Dl
-1836 1557 1836 1631 Dl
-1840 1557 1836 1631 Dl
-1845 1558 1836 1631 Dl
-1849 1559 1836 1631 Dl
-1854 1560 1836 1632 Dl
-(by) 1724 1646 w
+(p) 1742 1724 w
+1836 1710 2556 1710 Dl
+2484 1728 2556 1710 Dl
+2483 1723 2555 1710 Dl
+2482 1719 2555 1710 Dl
+2481 1714 2555 1710 Dl
+2481 1710 2555 1710 Dl
+2481 1705 2555 1709 Dl
+2482 1700 2555 1709 Dl
+2483 1696 2555 1709 Dl
+2484 1692 2556 1710 Dl
+(bx) 2513 1652 w
+1836 1710 1836 2430 Dl
+1818 2358 1836 2430 Dl
+1822 2357 1835 2429 Dl
+1826 2356 1835 2429 Dl
+1831 2355 1835 2429 Dl
+1836 2355 1836 2429 Dl
+1840 2355 1836 2429 Dl
+1845 2356 1836 2429 Dl
+1849 2357 1836 2429 Dl
+1854 2358 1836 2430 Dl
+(by) 1724 2444 w
+10 /LucidaSans-Demi f
+(Figure 6) 1932 3348 w
+10 /LucidaSansUnicode00 f
+(: Illustration of a 3:2 viewport.) 2354 3348 w
10 /LucidaSans-Demi f
-(Figure 5) 720 2550 w
+(References) 720 3588 w
10 /LucidaSansUnicode00 f
-(: Illustration of a 3:2 viewport.) 1142 2550 w
-(July 22, 2024) 2556 7680 w
+([?]) 720 3780 w
+(https://www.scale2x.it/) 970 3780 w
+(July 23, 2024) 2556 7680 w
cleartomark
showpage
saveobj restore