gzz-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gzz-commits] manuscripts/Paper paper.tex


From: Tuomas J. Lukka
Subject: [Gzz-commits] manuscripts/Paper paper.tex
Date: Mon, 31 Mar 2003 09:06:02 -0500

CVSROOT:        /cvsroot/gzz
Module name:    manuscripts
Changes by:     Tuomas J. Lukka <address@hidden>        03/03/31 09:06:02

Modified files:
        Paper          : paper.tex 

Log message:
        HW accel -section

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/manuscripts/Paper/paper.tex.diff?tr1=1.90&tr2=1.91&r1=text&r2=text

Patches:
Index: manuscripts/Paper/paper.tex
diff -u manuscripts/Paper/paper.tex:1.90 manuscripts/Paper/paper.tex:1.91
--- manuscripts/Paper/paper.tex:1.90    Mon Mar 31 08:44:31 2003
+++ manuscripts/Paper/paper.tex Mon Mar 31 09:06:02 2003
@@ -41,17 +41,10 @@
 
 NO NEED FOR PERFECT RECALL - JUST A CUE
 
-WHY HW ACCEL NEEDED - PIXELLATION - NO SAVING!
+% WHY HW ACCEL NEEDED - PIXELLATION - NO SAVING!
 
 NO SEMANTIC CORRELATIONS!!!!!!!
 
-IMAGE: RENDERING MODES, TEXTURE COORDINATES!
-
-SPARSE CODING: A TEXTURE CONTAINING BOTH YELLOW TRIANGLE AND
-RED SQUARE MIXES WITH ONE CONTAINING RED TRIANGLE AND YELLOW SQUARE
-\cite{olson02vstm}
-PREATTENTIVE FEATURES IN FEATURE VECTOR!!!
-
 TJL
 
 We present a perceptually designed hardware-accelerated
@@ -962,23 +955,26 @@
 \subsection{Basis textures}
 
 The shapes of the final background texture are generated
-entirely from a small set of {\em basis textures}. 
+entirely from a small set of static {\em basis textures}. 
 Even though the basis
 textures are RGB textures, they contain no color information:
 they are simply treated as 3- or 4-vectors to be used in 
 various ways to create shapes, and color is added
-by the register combiners. 
+by the register combiners using the palette selected as described above. 
 
 % In order to avoid shapes or features from the basis textures becoming 
 % identifiable, the basis textures should be relatively uniform.
-We have obtained good results with a mix of
+We have obtained good results with the basis textures
+in Fig.~\ref{fig-basis}:
+a mix of
 small textures with uniformly random texels, 
 larger textures with noise or turbulence\cite{perlin-noise-intro}, 
 and simple geometric images 
-(e.g., checkerboard, see Fig.~\ref{fig-basis}).
+(e.g., checkerboard).
 
 As for the selection of basis textures for each paper, 
-the principle of ``saving recognitive power'' applies:
+the principle of limiting the number of different
+features in each texture applies here as well:
 we use hyperparameters for each background texture 
 to control the probabilities of
 selecting different basis textures so 
@@ -990,14 +986,16 @@
 
 \subsection{Texture coordinates}
 
-XXX More
-
 % Texture coordinates define the mapping of the basis textures 
 % to paper coordinates.
 
-The choice of the repeating unit fixes an absolute scale for the paper.
-The repeating unit should be relatively isotropic to avoid 
-the degeneration of textures to diagonal lines.
+The choice of the geometry of the
+repeating unit (a parallelogram) fixes an absolute scale for the paper.
+The repeating unit should be fairly isotropic to avoid 
+the degeneration of textures to diagonal lines, and
+the units for different textures should be relatively similar in size.
+The repeating unit is chosen
+from a heuristic distribution satisfying these criteria.
 % We choose the repeating unit from a heuristic distribution
 % created from these criteria.
 
@@ -1008,35 +1006,51 @@
 with the selected repeating unit. For example, a texture can
 repeat multiple times inside the repeating unit, or can be skewed
 w.r.t.~the repeating unit. 
+Again, a heuristic distribution is used which does not skew or scale
+the basis texture too much too often.
 
 % These are also randomly chosen
 % from an ad hoc distribution.
 
 \subsection{Texture shading}
 
-XXX More
+%XXX More
 
 On the NV25 architecture,
 the texture accesses can be customized further by the use of texture 
 shading: the texture coordinates used by a texture unit can be made
 to depend on the result of a previous texture unit.
 This can be used to create a large variety of shapes\cite{perlin-noise-intro}.
-% So far, we have only used offset textures with random
-% offset matrices, but even they
-% do improve the quality of the output.
+So far, we have only used offset textures with random
+offset matrices, but even they
+do improve the quality of the output.
 % The textures used for offsetting are the same as the
 % basic textures, but loaded as higher precision two-component HILO textures.
 
 
 \subsection{Register combiners}
 
-Because
-the unextended OpenGL texture environment stage is inflexible,
-we use the NVIDIA register combiners extension
+The NVIDIA register combiners extension is used
 to combine the
 the 3- and 4-vectors obtained from the basis textures 
 and 
 the palette colors into the final fragment color.
+Our need for the combiners is rather unconventional:
+we want to lose most of the original shapes of the basis textures
+in order to create new, different shapes 
+from the interaction of the basis texture values and
+combiner parameters chosen randomly
+from the seed number.
+For this,
+we use dot products of texture values with each other 
+and with random constant vectors, and scale up with
+the register combiner output mappings to sharpen the result
+(see Fig.~\ref{fig-regcomb}).
+The resulting values are used for interpolating between
+the palette colors. 
+Because some basis textures have blurrier edges than others,
+the output scalings need to be adjusted depending on the basis
+textures selected.
 
 
 % Register combiners are used for fusing together the values read
@@ -1053,21 +1067,6 @@
 % There is also a small set of simple input and output mappings 
 % for the registers, such as invert ($1-A$).
 
-Our need for the combiners is rather unconventional:
-we want to lose most of the original shapes of the basis textures
-(again the ``saving recognitive power'' argument)
-and create new, different shapes 
-from the interaction of the basis texture values and
-the floating-point combiner parameters chosen randomly
-from the seed number.
-For this,
-we use dot products of texture values with each other 
-and with random constant vectors, and scaling up with
-the register combiner output mappings to sharpen the result
-(see Fig.~\ref{fig-regcomb}).
-The resulting values are used for interpolating between
-the palette colors. 
-
 % % XXX: either (texture \cdot texture) or (texture \cdot constant)
 % Because the numeric range of all register values is $[-1,1]$, 
 % the complete shape of a basis texture may easily be carried on 
@@ -1077,10 +1076,6 @@
 % the gradients and to diminish the area from which the features
 % of a single basis texture are extracted.
 
-Because some basis textures have blurrier edges than others,
-the output scalings need to be adjusted depending on the basis
-textures selected.
-
 % New shapes can be created by computing polynomials of the real values
 % extracted from the basis textures.
 % For example, the zero value contour of a real value can be obtained
@@ -1145,17 +1140,17 @@
 }
 \end{figure}
 
-\subsection{Multiple passes}
-
-Because there are only two general register combiner 
-stages on the NV10 architecture, a single rendering pass cannot
-produce a satisfactory background texture.
-The register combiners can be used to compute a varying alpha
-value and use it for blending over previous passes.
-The same color palette and repeating unit
-are used for all passes.
-
-Currently, we use 3 passes on the NV10 and 2 passes on the NV25. 
+% \subsection{Multiple passes}
+% 
+% Because there are only two general register combiner 
+% stages on the NV10 architecture, a single rendering pass cannot
+% produce a satisfactory background texture.
+% The register combiners can be used to compute a varying alpha
+% value and use it for blending over previous passes.
+% The same color palette and repeating unit
+% are used for all passes.
+% 
+% Currently, we use 3 passes on the NV10 and 2 passes on the NV25. 
 
 \begin{figure*}
 \centering




reply via email to

[Prev in Thread] Current Thread [Next in Thread]