File: display.html

package info (click to toggle)
vrweb 1.5-11
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 14,360 kB
  • ctags: 26,143
  • sloc: cpp: 133,581; ansic: 87,373; sh: 936; makefile: 444; perl: 347; csh: 26
file content (316 lines) | stat: -rw-r--r-- 12,009 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
<HTML>
<HEAD>
<TITLE>VRweb Display Settings</TITLE>
</HEAD>
<BODY background="vrwebbg.gif">
<H1>VRweb Display Settings</H1>
<p>
<IMG ALT="VRweb" WIDTH="129" HEIGHT="40" SRC="vrwebsmall.gif">
<p>
Jump to: <A href="#style">Drawing Style</A>, <A
href="#rendering">Render Mode</A>/<A href="#stereo">Stereo
Rendering</A>, <A href="#options">Display Options</A>, <A
href="#lighting">Lighting Options</A>, <A href="#gamma">Gamma
Correction</A>, <A href="#transparency">Transparency</A>, <A
href="#texturing">Texturing</A>, <A href="#anchors">Anchor
Settings</A>, <A href="#colors">Color Selection</A>
<p>
<HR>
<p>
<A name="style"></A>
<H2>Drawing Style</H2>
<p>
In the first part of the Display menu you can select the display mode:
<p>
<UL>
<LI>Wireframe <i>(accelerator key ctrl-w)</i>
<LI>Hidden Line <i>(accelerator key ctrl-h)</i>
<LI>Flat Shading <i>(accelerator key ctrl-f)</i>
<LI>Smooth Shading <i>(accelerator key ctrl-s)</i>
<LI>Texturing <i>(accelerator key ctrl-t)</i>
</UL>
<p>
A similar pullright menu is available for the <b>interactive display
mode</b>, which is applied during navigation.<br> <i>(use the
accelerator keys above, holding both the shift and ctrl key)</i>
<p>
An extra item "the same" uses the same display mode during navigation
and for still images.<br>
<i>(accelerator key ctrl-u)</i>
<p>
The default display mode is Smooth Shading, meaning you have to change
to <b>Texturing</b> yourself to display or load <A
HREF="display.html#texturing">textures</A>. The Mesa version by default
uses Flat Shading and Wireframe during navigation.
<p>
<HR>
<p>
<A name="rendering"></A>
<H2>Render Mode</H2>
<p>
You can choose between (classical) Depth Buffer Rendering
<i>(accelerator key shift-D or shift-Z)</i> and (new) <b>BSP</b> Tree
<i>(accelerator key shift-B)</i>. BSP (Binary Space Partitioning) does
a presorting of all polygons to eliminate Z-buffer usage and therefore
gains speed.
<p>
The first two BSP alternatives differ in rendering of two-sided or
single-sided polygons. The third one, Shadow Volume BSP, incorporates
visibility calculations to render only that part of the scene which is
in the current field of view and not hidden by other polygons (see
also <A href="navigate/index.html#settings">navigation settings</A>).
<p>
There are still some bugs in the BSP implementation and not all VRweb
features are supported in BSP mode (e.g. no texture mapping, no
AsciiText).
<p>
<A name="stereo"></A>
<H2>Stereo Rendering</H2>
<p>
Stereo rendering via red-green (actually red-cyan) images can be
activated with the <i>accelerator key shift-S</i> or in the render
mode pullright. To view it you need a pair of red-green or red-blue
glasses (use the <i>red</i> glass for the <i>left</i> eye, or specify
Xattributes otherwise).
<p>
Eye convergence and distance can be configured in the <A
href="navigate/index.html#settings">navigation settings</A> dialog.
<p>
Normally, the red and cyan parts of all colors are filtered out, so
that you get a (reduced) color impression of the original drawing
(including shading and textures). Only wireframes in the Mesa version
are drawn as plain red/cyan lines for speed (which you can also
achieve selecting the "no materials" option of the <A
href="#lighting">lighting options</A>). Background color is
automatically switched to black.
<p>
<HR>
<p>
<A name="options"></A>
<H2>Display Options</H2>
<p>
<UL>
<LI><b>Line Antialiasing</b> <i>(accelerator key ctrl-L)</i>
<p>
toggles line (wireframe) antialiasing, a feature currently not
supported by Mesa.
<p>
<LI><b>Polygon Antialiasing</b> <i>(accelerator keys ctrl-P, ctrl-Q)</i>
<p>
Polygon antialiasing (only available in the OpenGL version) can be
activated in one of two ways. The simpler one (<i>ctrl-P</i>) works on
any OpenGL display, but has visible seams at adjacent polygons (you
can reduce them by switching to <A href="#rendering">BSP</A> rendering).
<p>
The second method (<i>ctrl-Q</i>) looks really nice, but has some
limitations: you need a GLX visual with Alpha-bitplanes (vrweb
-alphaplanes), which is not available on all OpenGL X-displays
(xglinfo or glxinfo). It also only works for <A
href="#rendering">BSP</A> mode (slower for OpenGL, not all VRweb
features) and black background.
<p>
<LI><b>Texture Antialiasing</b> <i>(accelerator keys ctrl-M, ctrl-N)</i>
<p>
VRweb lets you control texture antialiasing (filtering and
mipmapping), supported by OpenGL (default on) and Mesa 2.0 (default
off for speed). To turn it on (best quality) use the shortcut
<i>^M</i> (shift-ctrl-M). To turn it off (faster, aliasing effects
during motion) <i>^N</i> (shift-ctrl-N).<br>There are also 4 intermediate
levels available; you might try the first one, which does linear
filtering, but no mipmapping.
<p>
<LI><b>Show Framerate</b>
<p>
displays the time it took to draw the last image and the
frame-per-second rate. The time is measured from the completion of one
drawing to the next and therefore also includes the time for putting
the image on screen and event processing.
<p>
<LI><b>Show Title</b>
<p>
switches back to the title or URL in the status line if hidden by
navigation hints.
<p>
<LI><b>Two-sided Polygons</b>
<p>
in VRML polygons are visible from both sides by default and there is a
ShapeHint for showing polygons from the front only. Single-sided
polygon rendering (known as backface culling) is faster (because only
half of the polygons are visible), but requires properly oriented
facets. With setting "on" or "off" you can force two-sided or
single-sided polygons. The default "auto" tracks the ShapeHint.
</UL>
<p>
<HR>
<p>
<A name="lighting"></A>
<H2>Lighting Options</H2>
<p>
<UL>
<LI><b>Lighting Calculations</b>
<p>
normally, under VRML, lighting calculations are always
performed. However they can be computationally expensive and therefore
there is a LightModel extension node to VRML, which is recognized by
VRweb on setting "auto". With "on" or "off" you can force lighting
calculations to be made always or never. Lighting calculations are
usually turned off for prelit scenes. This yields faster rendering,
but causes unrealistic effects in other scenes.
<p>
When the <b>"no materials"</b> option is active, all material
information of the scene is ignored, so you get a white/grey
scene. You may choose this for white wireframes or to do texturing
calculations using the texture color only (still shaded, but not
colored by the base material).
<p>
<LI><b>... on texturing</b>
<p>
The color of a texture map can be combined with the material color (if
this option is active), or mapped directly to the object ignoring the
material color (if this option is inactive). In the latter case
lighting calculations are turned off for textures. Future versions
may support a third option for performing light calculations using
the color of the texture (selecting "no materials" also applies to
non-textured faces). See also <A href="#transparency">Transparency</A>
- on texturing.
<p>
<LI><b>Viewing Light</b>
<p>
toggles the use of an additional headlight, a light source shining in
the current view direction. When viewing scenes that contain no light,
the headlight is turned on automatically and this switch has no
influence. Of course, when lighting calculations are turned off, light
sources (incl. the headlight) have no influence.  You can change the
intensity or <A HREF="display.html#colors">color</A> of the headlight
(see below).
<p>
Additionally, you can change the <b>ambient light</b>
intensity/color. This is a global, undirected light added to the
scene. Instead of brightening up colors (like the headlight) however,
it usually increases the intensity by a grey level (based on the
ambient material coefficients).
</UL>
<p>
<A name="gamma">
<H2>Gamma Correction</H2>
<p>
If you use the Mesa version, you can set up gamma correction to
brighten up the drawings. You have to set the environment variable
<code>MESA_GAMMA</code> before starting VRweb. Some examples for
uniform and non-uniform (RGB separately) gamma correction and
deactivating it (depends on shell used):
<p>
<pre>
   [csh/tcsh etc.:]  setenv MESA_GAMMA 2.0
                     setenv MESA_GAMMA "1.6 1.7 1.9"
                     unsetenv MESA_GAMMA
[sh/ksh/bash etc.:]  MESA_GAMMA=2.0 ; export MESA_GAMMA
                     MESA_GAMMA="1.6 1.7 1.9" ; export MESA_GAMMA
                     unset MESA_GAMMA
</pre>
<p>
SGI supports gamma correction via the Xserver (see man gamma), so
there is no need to do it in Software. <i>OpenGL</i> itself provides
no way to change gamma.
</UL>
<p>
<HR>
<p>
<A name="transparency"></A>
<H2>Transparency</H2>
<p>
You may choose between the two transparency methods "stipple" and
"blending" or ignore any transparency information (<b>off</b>). You
may also toggle transparency calculations for texture images.
<UL>
<LI><b>stipple transparency</b>
<p>
This is a computationally inexpensive method, which uses polygon
stipples for transparent polygons. Works well in (normal) depth buffer
rendering mode.
<p>
<LI><b>blended transparency</b>
<p>
This method blends the color of transparent objects with anything that
can be seen through it (looks nicer). To work properly you should
switch to <A href="#rendering">BSP</A> rendering for polygon sorting
or results are undefined.
<p>
<LI><b>... on texturing</b>
<p>
Texture maps in GIF or PNG format (and also inline textures) may
contain transparency information, which is used unless you turn off
this option. You must also have turned on texture lighting to have
transparent textures (otherwise you see the untextured face through
parts where the texture is transparent).
</UL>
<p>
<HR>
<p>
<A name="texturing"></A>
<H2>Texturing</H2>
<p>
Supported texture image formats are JPEG, GIF, TIFF, PNG, and VRML
inline-textures. Transparent textures (GIF, PNG, inline) are supported
also.
<p>
Common platform specific formats like SGI/RGB and BMP may be supported
in a future version - their use is discouraged for cross platform
portability and because of their poor compression (also TIFF falls
into this category).
<p>
Texture transfer is initiated when switching the drawing mode to
texturing (ctrl-t). The right field of the status line contains the
hint "textured" if there are any texture references in the scene. For
more details on transfer issues see description for <A
HREF="anchors.html#inlines">inline</A> scenes. For <A
HREF="#options">antialiasing</A>, <A HREF="#lighting">lighting</A>,
and <A href="#transparency">transparency</A> settings for textures see
above.
<p>
<HR>
<p>
<A name="anchors"></A>
<H2>Anchor Settings</H2>
<p>
These options concern <A HREF="anchors.html#anchors">anchor</A>
display and appearance.
<p>
<b>Display</b> <i>(accelerator key F9)</i> toggles anchor
highlighting.<br><i>Also available as button in the toolbar.</i>
<p>
The effect of the different hightlighting methods are also described on
the <A HREF="anchors.html#anchors">anchor</A> page.
<p>
<HR>
<p>
<A name="colors"></A>
<H2>Color Selection</H2>
<p>
Via <b>Choose...</b> you can open a dialog for interactive color
selection. In the listbox in the top-right select the color you wish
to change:
<p>
<UL>
<LI>Background: scene background color
<LI>Heads-up Display: color of heads-up UI elements
<LI>Anchor Faces: anchor highlighting in mode color code
<LI>Viewing Light: intensity/color of the headlight
<LI>Ambient Light: intensity/color of a global ambient light
</UL>
<p>
You can use the RGB or HLS color space for selections. Values can be
changed with the sliders or by typing in the new values and entering
Return. The field on the left side contains a predefined color map to
choose from. With the <b>Apply</b> button you can test the changes;
when finished, confirm them with <b>OK</b> or press <b>Cancel</b> to
reject all changes.
<p>
The other menu items contain a few predefined colors, e.g. for quick
change of the background color to black, grey, lightgrey or white.
<p>
<HR>
<p>
<A HREF="display.html">Top</A> of page.<br>
Back to <A HREF="vrwebhlp.html">overview</A>.
</BODY>