~ubuntu-branches/ubuntu/natty/mesa/natty-proposed

« back to all changes in this revision

Viewing changes to progs/demos/README

  • Committer: Bazaar Package Importer
  • Author(s): Robert Hooker, Robert Hooker, Christopher James Halse Rogers
  • Date: 2010-09-14 08:55:40 UTC
  • mfrom: (1.2.28 upstream)
  • Revision ID: james.westby@ubuntu.com-20100914085540-m4fpl0hdjlfd4jgz
Tags: 7.9~git20100909-0ubuntu1
[ Robert Hooker ]
* New upstream git snapshot up to commit 94118fe2d4b1e5 (LP: #631413)
* New features include ATI HD5xxx series support in r600, and a vastly
  improved glsl compiler.
* Remove pre-generated .pc's, use the ones generated at build time
  instead.
* Remove all references to mesa-utils now that its no longer shipped
  with the mesa source.
* Disable the experimental ARB_fragment_shader option by default on
  i915, it exposes incomplete functionality that breaks KDE compositing
  among other things. It can be enabled via driconf still. (LP: #628930).

[ Christopher James Halse Rogers ]
* debian/patches/04_osmesa_version.diff:
  - Refresh for new upstream
* Bugs fixed in this release:
  - Fixes severe rendering corruption in Unity on radeon (LP: #628727,
    LP: #596292, LP: #599741, LP: #630315, LP: #613694, LP: #599741).
  - Also fixes rendering in gnome-shell (LP: #578619).
  - Flickering in OpenGL apps on radeon (LP: #626943, LP: #610541).
  - Provides preliminary support for new intel chips (LP: #601052).
* debian/rules:
  - Update configure flags to match upstream reshuffling.
  - Explicitly remove gallium DRI drivers that we don't want to ship.
* Update debian/gbp.conf for this Maverick-specific packaging
* libegl1-mesa-dri-x11,kms: There are no longer separate kms or x11 drivers
  for EGL, libegl1-mesa-drivers now contains a single driver that provides
  both backends.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
INTRODUCTION
2
 
------------
3
 
 
4
 
This directory is usually included in the Mesa demos distribution or
5
 
in the GLUT distribution.
6
 
 
7
 
I have written the demos included in this directory mainly for showing
8
 
the capabilities of the Mesa library when using the Voodoo driver.
9
 
However all the demos are written using the GLUT and OpenGL so they
10
 
work with any GLUT/OpenGL platform (tested: Linux+Mesa+Voodoo driver,
11
 
Linux+Mesa+X11 driver, Win95+Mesa+Voodoo driver and SGI Onyx IR thanks
12
 
to Mark Kilgard).
13
 
 
14
 
All the demos make an heavy use of texture mapping, blending, etc. so
15
 
you _need_ some kind of hardware support for the OpenGL otherwise they
16
 
will run at ~1fps. You need also a OpenGL 1.1 compliant library.
17
 
 
18
 
You can find some screenshot of these demos at
19
 
http://www-hmw.caribel.pisa.it/fxmesa/fxdemos.hmtl
20
 
 
21
 
Write me if you find some bug in the demos.
22
 
 
23
 
David Bucciarelli (tech.hmw@plus.it)
24
 
 
25
 
Humanware s.r.l.
26
 
Via XXIV Maggio 62
27
 
Pisa, Italy
28
 
Tel./Fax +39-50-554108
29
 
email: info.hmw@plus.it
30
 
www: www-hmw.caribel.pisa.it
31
 
 
32
 
 
33
 
A BRIEF DESCRIPTION OF THE DEMOS
34
 
--------------------------------
35
 
 
36
 
 
37
 
IPERS
38
 
-----
39
 
 
40
 
Sources: ipers.c image.c
41
 
 
42
 
A nice spinning fractal object.
43
 
 
44
 
 
45
 
RAY
46
 
---
47
 
 
48
 
Sources: ray.c
49
 
 
50
 
I'm using ray tracing to dynamically generate texture maps with
51
 
specular, diffuse, shadows, and mirror colors. Each frame the texture
52
 
maps of the plane and of the sphere are partially updated.  With this
53
 
technique you can obtain true mirrors, shadows, specular highlights,
54
 
bump mapping, etc. in realtime.  This demo is really CPU intensive
55
 
(~25fps on a PentiumII@300MHz with a Pure3D).  Support on-the-fly
56
 
switching between fullscreen and in-window rendering under Linux/Mesa
57
 
(start your X server in 16 bpp mode and press the spacebar).
58
 
 
59
 
 
60
 
TUNNEL
61
 
------
62
 
 
63
 
Sources: tunnel.c image.c sources.c
64
 
Data: bw.rgb tile.rgb
65
 
 
66
 
The model was designed and prelighted with Alias|Wavefront
67
 
PowerAnimator V8. Triangle strips were built with a tool written by me
68
 
and then statically included in the sources.  This demo doesn't
69
 
require the ZBuffer and use antialiased polygons.  Support on-the-fly
70
 
switching between fullscreen and in-window rendering under Linux/Mesa
71
 
(start your X server in 16 bpp mode and press the spacebar).
72
 
 
73
 
 
74
 
TUNNEL2
75
 
------
76
 
 
77
 
Sources: tunnel2.c image.c sources.c
78
 
Data: bw.rgb tile.rgb
79
 
 
80
 
The some tunnel demo but with two output channels. A nice
81
 
example of the Mesa/Voodoo support for multiple boards in
82
 
the some PC.
83
 
 
84
 
 
85
 
TEAPOT
86
 
------
87
 
 
88
 
Sources: teapot.c image.c dteapot.c shadow.c
89
 
Data: bw.rgb tile.rgb
90
 
 
91
 
The shadow is drawn projecting the teapot geometry over the plane. All
92
 
other light effects are drawn using the standard OpenGL capabilities.
93
 
Support on-the-fly switching between fullscreen and in-window
94
 
rendering under Linux/Mesa (start your X server in 16 bpp mode and
95
 
press the spacebar).
96
 
 
97
 
 
98
 
FIRE
99
 
----
100
 
 
101
 
Sources: fire.c image.c
102
 
Data: s128.rgb tree2.rgb
103
 
 
104
 
The demo use a small particle system to draw some nice visual effect.
105
 
You can interactively change many parameters of the particle system
106
 
and you can choose the number of particles at the startup ('fire
107
 
4000').  This demo should be called fountain.  Support on-the-fly
108
 
switching between fullscreen and in-window rendering under Linux/Mesa
109
 
(start your X server in 16 bpp mode and press the spacebar).
110
 
 
111
 
 
112
 
TERRAIN
113
 
-------
114
 
 
115
 
Sources: mesaland.c
116
 
 
117
 
This demo is base on another demo written by Mikael SkiZoWalker.  I
118
 
have added the capabilities to freely fly around, view culling and
119
 
some nice color.  Support on-the-fly switching between fullscreen and
120
 
in-window rendering under Linux/Mesa (start your X server in 16 bpp
121
 
mode and press the spacebar).
122
 
 
123
 
 
124
 
GLTEST
125
 
------
126
 
 
127
 
Sources: gltest.c
128
 
 
129
 
This is a simple benchmark suite that I'm using in the development of
130
 
the Mesa/Voodoo driver. Type 'gltest >my.res' and you will get some
131
 
data about the performances of your OpenGL. Follow the results with my
132
 
PC (Linux+Mesa-2.6+PentiumII@300MHz+Pure3D):
133
 
 
134
 
Simple Points
135
 
587900.080674 Pnts/sec
136
 
 
137
 
Smooth Lines
138
 
SIZE=480 => 39007.426183 Lins/sec
139
 
SIZE=250 => 74575.016485 Lins/sec
140
 
SIZE=100 => 179734.882409 Lins/sec
141
 
SIZE=050 => 183987.795297 Lins/sec
142
 
SIZE=025 => 183820.086309 Lins/sec
143
 
 
144
 
 
145
 
ZSmooth Triangles
146
 
SIZE=480 => 784.954997 Tris/sec
147
 
SIZE=250 => 2862.325889 Tris/sec
148
 
SIZE=100 => 17779.492938 Tris/sec
149
 
SIZE=050 => 159339.829844 Tris/sec
150
 
SIZE=025 => 428602.984008 Tris/sec
151
 
 
152
 
 
153
 
ZSmooth Tex Blend Triangles
154
 
SIZE=480 => 784.473931 Tris/sec
155
 
SIZE=250 => 2853.781513 Tris/sec
156
 
SIZE=100 => 17598.252146 Tris/sec
157
 
SIZE=050 => 152632.578337 Tris/sec
158
 
SIZE=025 => 377584.760048 Tris/sec
159
 
 
160
 
 
161
 
ZSmooth Tex Blend TMesh Triangles
162
 
SIZE=400 => 563.900695 Tris/sec, MPixel Fill/sec: 45.112056
163
 
SIZE=250 => 1449.777225 Tris/sec, MPixel Fill/sec: 45.305538
164
 
SIZE=100 => 8702.869121 Tris/sec, MPixel Fill/sec: 43.514346
165
 
SIZE=050 => 31896.867466 Tris/sec, MPixel Fill/sec: 39.871084
166
 
SIZE=025 => 114037.262894 Tris/sec, MPixel Fill/sec: 35.636645
167
 
SIZE=010 => 220494.235839 Tris/sec, MPixel Fill/sec: 11.024712
168
 
SIZE=005 => 225615.506651 Tris/sec, MPixel Fill/sec: 2.820194
169
 
SIZE=002 => 225607.681439 Tris/sec, MPixel Fill/sec: 0.451215
170
 
 
171
 
 
172
 
Color/Depth Buffer Clears
173
 
295.042474 Clrs/sec, MPixel Fill/sec: 90.553256
174
 
 
175
 
 
176
 
Follow the results with my
177
 
PC (Linux+Mesa-3.0beta5+PentiumII@300MHz+Voodoo2):
178
 
 
179
 
 
180
 
Simple Points
181
 
1620113.525130 Pnts/sec
182
 
 
183
 
Smooth Lines
184
 
SIZE=480 => 73841.166065 Lins/sec
185
 
SIZE=250 => 140794.035316 Lins/sec
186
 
SIZE=100 => 344185.242157 Lins/sec
187
 
SIZE=050 => 420399.008289 Lins/sec
188
 
SIZE=025 => 420261.389773 Lins/sec
189
 
 
190
 
 
191
 
ZSmooth Triangles
192
 
SIZE=480 => 1434.668506 Tris/sec
193
 
SIZE=250 => 5228.449614 Tris/sec
194
 
SIZE=100 => 46603.815842 Tris/sec
195
 
SIZE=050 => 325757.045961 Tris/sec
196
 
SIZE=025 => 589022.403336 Tris/sec
197
 
 
198
 
 
199
 
ZSmooth Tex Blend Triangles
200
 
SIZE=480 => 1414.900041 Tris/sec
201
 
SIZE=250 => 5006.055235 Tris/sec
202
 
SIZE=100 => 43602.252031 Tris/sec
203
 
SIZE=050 => 303497.092692 Tris/sec
204
 
SIZE=025 => 517087.428669 Tris/sec
205
 
 
206
 
 
207
 
ZSmooth Tex Blend TMesh Triangles
208
 
SIZE=400 => 1023.273112 Tris/sec, MPixel Fill/sec: 81.861849
209
 
SIZE=250 => 2595.692121 Tris/sec, MPixel Fill/sec: 81.115379
210
 
SIZE=100 => 15788.198912 Tris/sec, MPixel Fill/sec: 78.940995
211
 
SIZE=050 => 58784.121300 Tris/sec, MPixel Fill/sec: 73.480152
212
 
SIZE=025 => 244233.873481 Tris/sec, MPixel Fill/sec: 76.323085
213
 
SIZE=010 => 474995.004191 Tris/sec, MPixel Fill/sec: 23.749750
214
 
SIZE=005 => 475124.354163 Tris/sec, MPixel Fill/sec: 5.939054
215
 
SIZE=002 => 474959.089503 Tris/sec, MPixel Fill/sec: 0.949918
216
 
 
217
 
 
218
 
Color/Depth Buffer Clears
219
 
478.654830 Clrs/sec, MPixel Fill/sec: 146.906826
220
 
 
221
 
 
222
 
PALTEX and GLBPALTX
223
 
-------------------
224
 
 
225
 
Sources: paltex.c and glbpaltx.c
226
 
 
227
 
The PALTEX example was written by Brian Paul and it shows the
228
 
capabilities of the GL_EXT_paletted_texture extension.  I have written
229
 
the other example in order to show the capabilities of the
230
 
gl3DfxSetPaletteEXT() (it used only by GLQuake and Quake2).