Compare commits
878 Commits
mesa_7_1
...
intel_2009
Author | SHA1 | Date | |
---|---|---|---|
|
f535de8721 | ||
|
1db913f687 | ||
|
0e5d1f43af | ||
|
09c587ae55 | ||
|
775d8431e9 | ||
|
3217ea8a1d | ||
|
00aea5853d | ||
|
20d34b50b5 | ||
|
9cff0acb36 | ||
|
791b59493f | ||
|
7dff7029fa | ||
|
f8fd9bc46b | ||
|
53f0e141c0 | ||
|
14a794300e | ||
|
912ec292c1 | ||
|
e814b5ae2f | ||
|
0fea05915a | ||
|
dfa44f0ff9 | ||
|
f850ff2bcc | ||
|
66f972ab55 | ||
|
17db2db9dc | ||
|
dba79af9bc | ||
|
b009a32bf4 | ||
|
7122490982 | ||
|
6ada1d47d9 | ||
|
55865335f4 | ||
|
918e5221ef | ||
|
9feb26584a | ||
|
a8528a2e86 | ||
|
119360cccd | ||
|
ac2216542d | ||
|
37e5c057f1 | ||
|
4d9b8e0f93 | ||
|
c1b71f46b5 | ||
|
4a25ac9564 | ||
|
35d965b39b | ||
|
d0aab00609 | ||
|
ef33d0f103 | ||
|
349b819768 | ||
|
50443db882 | ||
|
c503cacb53 | ||
|
e862b4e38f | ||
|
e9dfc858fb | ||
|
5efbca1e21 | ||
|
d6d8663a88 | ||
|
13990bd98a | ||
|
def630d0a2 | ||
|
ca2564f1e6 | ||
|
711a57f7c7 | ||
|
058cf2fff1 | ||
|
715f509c5d | ||
|
e704e6c6f3 | ||
|
01f34e667a | ||
|
4d0a7b33c5 | ||
|
fb1d2ed34c | ||
|
9395fedf98 | ||
|
9abc0d80af | ||
|
90e89c01df | ||
|
790d93e362 | ||
|
e9f3783169 | ||
|
e41780fedc | ||
|
d0edbbb3f3 | ||
|
e10119c23e | ||
|
208c087f39 | ||
|
0c8b40b42b | ||
|
5199f451bb | ||
|
dd7cde5230 | ||
|
ab5746e5d8 | ||
|
3bd446c0ab | ||
|
9b78402ee4 | ||
|
cf1ef0f308 | ||
|
fd1f65ba61 | ||
|
967345b497 | ||
|
41ad853a6a | ||
|
842baa29cb | ||
|
9556d870a1 | ||
|
42ce790086 | ||
|
b17769af42 | ||
|
9030277b0d | ||
|
a37a9bf769 | ||
|
8afb8a8145 | ||
|
801f933694 | ||
|
75ecd6ebbf | ||
|
1cd7317fdb | ||
|
1865291701 | ||
|
3edbcce7d5 | ||
|
b1fb34d0ac | ||
|
606099f545 | ||
|
32e3142071 | ||
|
66eea4e104 | ||
|
e428cf3afd | ||
|
842b5164d2 | ||
|
a6f7e909a7 | ||
|
ca87e5a7bd | ||
|
45c4b4dfbd | ||
|
2adaec1226 | ||
|
549586c319 | ||
|
463ac421a5 | ||
|
6801240205 | ||
|
a22088b7d5 | ||
|
e89c49147f | ||
|
67634240d1 | ||
|
819b028a8e | ||
|
a43c30ef41 | ||
|
b65bfde84d | ||
|
c39e6917ac | ||
|
c79079895f | ||
|
4480e631cd | ||
|
c32661c3ce | ||
|
d5c06bb812 | ||
|
9d5aa36239 | ||
|
e3050c1777 | ||
|
06295ddbdd | ||
|
e2092bb23c | ||
|
528836d0ad | ||
|
3511442e43 | ||
|
d20c53b511 | ||
|
091cc122ad | ||
|
c983abbb9e | ||
|
a0a81204c2 | ||
|
409d4f839c | ||
|
0ab36958ea | ||
|
c2445f43a3 | ||
|
f3d1c136b7 | ||
|
dd10a8b09d | ||
|
dd312366da | ||
|
d2fe466ef3 | ||
|
fe5328bfad | ||
|
c0891dde07 | ||
|
0e6d9c1a55 | ||
|
5f74a66132 | ||
|
46f8b62d5f | ||
|
3e3e80c431 | ||
|
0486d117e4 | ||
|
29981c14da | ||
|
98d5efb2c5 | ||
|
77a44aafaf | ||
|
8278c70716 | ||
|
ac0955f5e2 | ||
|
4130c35ca8 | ||
|
d440647eb8 | ||
|
7e8f2c56c0 | ||
|
a0880a152f | ||
|
4608a9172f | ||
|
d0e38f7ec0 | ||
|
a69bdbbbdd | ||
|
88c97a2662 | ||
|
ce9c69ddbc | ||
|
e430fcb716 | ||
|
11a363e632 | ||
|
41e63fbdb2 | ||
|
b543401a5c | ||
|
8c4f08fbad | ||
|
f3081a34d2 | ||
|
7b1d3cf392 | ||
|
25515b557e | ||
|
51625ff86e | ||
|
4d8f661726 | ||
|
efa69a2f66 | ||
|
30a6dd78d5 | ||
|
9f75836308 | ||
|
609cc9c139 | ||
|
e5aa89386d | ||
|
5a45897711 | ||
|
faa6d8af59 | ||
|
b6c41fd933 | ||
|
b8bd0b0ddc | ||
|
fc3971d800 | ||
|
046e88fc0b | ||
|
194d039f1e | ||
|
470e10dfaa | ||
|
8c7135ee14 | ||
|
4683cab29a | ||
|
787a001a67 | ||
|
dd92f483b0 | ||
|
65118a51b6 | ||
|
ab9b4e1f59 | ||
|
39e6d0d810 | ||
|
b5da7feee0 | ||
|
0f548dbc98 | ||
|
9d216be8cf | ||
|
eb26cc6cf5 | ||
|
bb63a663b1 | ||
|
dace4e3e2a | ||
|
bbda892c55 | ||
|
61a387dca1 | ||
|
437fa85ba3 | ||
|
b00477acf3 | ||
|
7374285f07 | ||
|
5c84a1032c | ||
|
dbda49a9e6 | ||
|
11351f0c8a | ||
|
a5b5bc9f95 | ||
|
f97792421b | ||
|
396711b840 | ||
|
dbd8e4066b | ||
|
b7f802eca2 | ||
|
a61a1a8181 | ||
|
345a08a77f | ||
|
12c6d28cc7 | ||
|
e442fe5ba5 | ||
|
66a4f5cf9a | ||
|
a740858fc0 | ||
|
e7c988d065 | ||
|
4a8356209d | ||
|
e1ba29ea19 | ||
|
fbf13bcb8a | ||
|
8f8435637d | ||
|
7d08091767 | ||
|
b5f32e1d5a | ||
|
0dffd22349 | ||
|
947d1c5b2a | ||
|
c7f43543af | ||
|
5912cdff3e | ||
|
03188b09e0 | ||
|
fae9604727 | ||
|
aac4a0509e | ||
|
b5f89e5f17 | ||
|
c12d24b513 | ||
|
2549c26a8b | ||
|
a98dccca36 | ||
|
1b3e3e6b84 | ||
|
49b53407c7 | ||
|
d911e3e24f | ||
|
658ab3c3ae | ||
|
8f7349dbb4 | ||
|
d687476edd | ||
|
c157a5bb91 | ||
|
14eca6b573 | ||
|
ef0e0f2550 | ||
|
34d17d2bdc | ||
|
01a0938776 | ||
|
1f47388dfe | ||
|
34500a6da5 | ||
|
00c02626d8 | ||
|
eeeed45c2c | ||
|
3a5463d158 | ||
|
de35989cde | ||
|
29f603a270 | ||
|
7f7fc3e3af | ||
|
a0318d7f8e | ||
|
06fdb6a74c | ||
|
88fdddcbbe | ||
|
1598be5083 | ||
|
436024561a | ||
|
0f0922f93c | ||
|
33f6dc3c33 | ||
|
356428d4e4 | ||
|
b4866f8a52 | ||
|
297a9606ea | ||
|
44557bf065 | ||
|
f1455ca5f4 | ||
|
834db82153 | ||
|
ef193c10e7 | ||
|
c3a00a728b | ||
|
287102ddcc | ||
|
f5979b0c15 | ||
|
d25cc16efa | ||
|
1636328b0a | ||
|
2c56dd7757 | ||
|
6333005f7a | ||
|
1d352b42a1 | ||
|
9939a306f7 | ||
|
ca03e881a8 | ||
|
4497a5a57d | ||
|
f7b4c2cca9 | ||
|
08fdc741bc | ||
|
d0c2cbd257 | ||
|
acd99f67cc | ||
|
0713e9da73 | ||
|
2c0ce92e8a | ||
|
1ed9b1ec90 | ||
|
11ade9a3d1 | ||
|
730a407ca2 | ||
|
19c877c327 | ||
|
83a74521cf | ||
|
6d2cf395f4 | ||
|
8fb727548a | ||
|
b9b482bd8d | ||
|
f68f94c2bc | ||
|
bc7d2c4f51 | ||
|
9629be5e07 | ||
|
176464b14b | ||
|
d1860bcd0a | ||
|
95fa98d61a | ||
|
8112c9e2cc | ||
|
f53d9913ac | ||
|
b3c7f7466c | ||
|
510ed7f51e | ||
|
a8542200b3 | ||
|
cea7f7b763 | ||
|
1a414a4dbe | ||
|
0b0d0dcdef | ||
|
1fa978c891 | ||
|
338ae34d22 | ||
|
814bc5ccda | ||
|
a8ee35c1c5 | ||
|
f1f022dbb1 | ||
|
241c0bfc98 | ||
|
7627c7f5df | ||
|
c5c9241cca | ||
|
9736d8f033 | ||
|
0d797365de | ||
|
4469355df2 | ||
|
724ed5b84b | ||
|
1fad6ccb75 | ||
|
4a6ad999ea | ||
|
3b891a502b | ||
|
32e03c4a2f | ||
|
e262da8040 | ||
|
914fcbafdb | ||
|
131ac5b465 | ||
|
23b0ad4d7e | ||
|
1d03f2834f | ||
|
46b8fe00c9 | ||
|
dfada459aa | ||
|
e9b34885b8 | ||
|
bfebeffc00 | ||
|
e1a9217554 | ||
|
e8d7db31e2 | ||
|
c6537ac8b8 | ||
|
ca0540e25c | ||
|
6f346ec0b8 | ||
|
432e9fa852 | ||
|
49a3fabed8 | ||
|
c9122072fc | ||
|
0c4346e632 | ||
|
6c01500228 | ||
|
c40cd2ccdd | ||
|
0674a23854 | ||
|
0d1f90c75e | ||
|
129b6bc4e3 | ||
|
15b2e0d138 | ||
|
b359350017 | ||
|
f83f5ec8f5 | ||
|
a330933bb7 | ||
|
7e04272690 | ||
|
962fa6bbc1 | ||
|
1db6371304 | ||
|
e67350da34 | ||
|
b9752a2bd6 | ||
|
d091ebd4e4 | ||
|
1e7785fe07 | ||
|
d01c44aaca | ||
|
aa09e0a1d5 | ||
|
d9b92b112f | ||
|
f43019b226 | ||
|
cb453244ca | ||
|
df73363ed1 | ||
|
35aebf4667 | ||
|
8e7599892f | ||
|
20555835b6 | ||
|
1cb680d06b | ||
|
637f06dcdc | ||
|
3be8d6db9e | ||
|
368df1615e | ||
|
702b5b076b | ||
|
c4341fe80a | ||
|
ec8cdc7113 | ||
|
4561307a27 | ||
|
63fc119d6c | ||
|
b8bfddf976 | ||
|
c573b9f94a | ||
|
12219210af | ||
|
49543d7177 | ||
|
a1229cc9e7 | ||
|
a66ff046cc | ||
|
aa1b904636 | ||
|
dc58da3e06 | ||
|
095c3a5cb1 | ||
|
e72a442153 | ||
|
0dfec4ab61 | ||
|
bc3b8a39a7 | ||
|
1126aa86bf | ||
|
63cca2ba10 | ||
|
2dd0c16f21 | ||
|
1709ab01ef | ||
|
0f73302d24 | ||
|
8be02fc8c6 | ||
|
71e208bafe | ||
|
a42342cd90 | ||
|
d28e852895 | ||
|
d427a2910f | ||
|
0df3dfab82 | ||
|
a9475cc240 | ||
|
3b61e9c6e6 | ||
|
0da44c62cc | ||
|
d4be09fb2b | ||
|
240e211c71 | ||
|
4d49fc83f1 | ||
|
81253be334 | ||
|
5c0c5e5af9 | ||
|
c20d00f04b | ||
|
9016331d0f | ||
|
87a00959ba | ||
|
8571401d7d | ||
|
d5367622a3 | ||
|
b4019483de | ||
|
456a4e274f | ||
|
9a174ef409 | ||
|
aeeb9bca27 | ||
|
ea9dc3879f | ||
|
19ca2908be | ||
|
ade777ea1b | ||
|
1737f2dbdd | ||
|
2760bca1e1 | ||
|
05ed9f7fe9 | ||
|
8b69c42b35 | ||
|
929eb00b32 | ||
|
2dc3de016c | ||
|
c8b505d826 | ||
|
e8f5c1a5e8 | ||
|
3c7419d57b | ||
|
c89690f765 | ||
|
3b9bc821e1 | ||
|
b66495a0d9 | ||
|
6e29a3c8e2 | ||
|
d507cd749b | ||
|
5295f9a033 | ||
|
a0d5c3cfe6 | ||
|
f849d364c2 | ||
|
8b661a5d33 | ||
|
75b26e18a6 | ||
|
a0625fa281 | ||
|
cb433d91c6 | ||
|
bdc8ac4426 | ||
|
6e0f8b174d | ||
|
249e1e4d30 | ||
|
39091cc638 | ||
|
f18880038b | ||
|
264cba6f70 | ||
|
8a1e7086c7 | ||
|
154a9e5317 | ||
|
cd031749a7 | ||
|
1e2f574251 | ||
|
e476acb105 | ||
|
8e5639577c | ||
|
287d719a93 | ||
|
3f973de07c | ||
|
8e76ac070d | ||
|
7855b2aef6 | ||
|
baaf9779f1 | ||
|
166d5ac170 | ||
|
3b5cd7d74a | ||
|
ec17001cd4 | ||
|
c303e7299b | ||
|
8c2b4b33c5 | ||
|
80d1531ebe | ||
|
5369876501 | ||
|
1e167f6b5c | ||
|
ff3fa92eaa | ||
|
62688f1135 | ||
|
66db1b64e8 | ||
|
5f19f5c586 | ||
|
6d1d157606 | ||
|
9c7aaa7afb | ||
|
00f22f972f | ||
|
f0d015cccb | ||
|
9c98e35ff6 | ||
|
24b8a8cfe8 | ||
|
fd52001c5c | ||
|
5444424562 | ||
|
55aeeef547 | ||
|
279343059f | ||
|
001b1cbb0d | ||
|
aa40de5c6f | ||
|
fea3a32e17 | ||
|
e23122d309 | ||
|
11701b4c15 | ||
|
c03af8e780 | ||
|
8d95e66cf7 | ||
|
0fab514ff5 | ||
|
b730d0d3e9 | ||
|
d52e8543b6 | ||
|
153cc70ddb | ||
|
a203713738 | ||
|
dc1107c08d | ||
|
0e2f757413 | ||
|
3197954554 | ||
|
f490ec9797 | ||
|
08b825a771 | ||
|
3f6668a4bf | ||
|
777a5c4f2e | ||
|
0f228d7ab3 | ||
|
5464667874 | ||
|
4f05893415 | ||
|
b63a31b36f | ||
|
c45c5c4ca4 | ||
|
3e0164aabb | ||
|
a6aa926e3f | ||
|
2adef553f2 | ||
|
b6bb5e09e0 | ||
|
1412ca0be2 | ||
|
1ea414fdeb | ||
|
b17e343bdd | ||
|
bab4e78734 | ||
|
bf7f9d2143 | ||
|
ae0ff8097b | ||
|
e709d68d92 | ||
|
d9fa9e3290 | ||
|
2f9ceb158a | ||
|
80d6379722 | ||
|
3a7ed9779b | ||
|
610c2461ce | ||
|
4c167f8fc1 | ||
|
fe984aed5a | ||
|
d835f415c6 | ||
|
e556cc82f8 | ||
|
47b883e42b | ||
|
557fde9531 | ||
|
e4c9aeed8b | ||
|
c30eb2c104 | ||
|
2fc9d671e0 | ||
|
72bbc89534 | ||
|
62ff7ab720 | ||
|
9dadfc09a9 | ||
|
82eb7c235d | ||
|
5cb7ba10cc | ||
|
d70d62c561 | ||
|
e1fbb30211 | ||
|
becf3d9272 | ||
|
90246d3ea5 | ||
|
f4361540f8 | ||
|
57d78067bd | ||
|
09623fe551 | ||
|
8412b06b67 | ||
|
064b04d464 | ||
|
be1b8e5d6c | ||
|
8df4f6667f | ||
|
59cc973940 | ||
|
13f96c5401 | ||
|
6186e7a206 | ||
|
2d76a0d77a | ||
|
379ff8c956 | ||
|
242c0cb543 | ||
|
80c8017a64 | ||
|
e5359401d6 | ||
|
f1c9016af1 | ||
|
e24afc808f | ||
|
87d1a26ba3 | ||
|
448156f769 | ||
|
b632e5aa7f | ||
|
22459e7a9c | ||
|
6dc91b8371 | ||
|
a98a25c25f | ||
|
65cb74ecc0 | ||
|
37eef7b474 | ||
|
d93072782a | ||
|
f6ead50827 | ||
|
4550b0562d | ||
|
035c0cf71a | ||
|
517401af07 | ||
|
df94fd1764 | ||
|
0060d41549 | ||
|
1bfdab781b | ||
|
50beb4e6fd | ||
|
dea4826b84 | ||
|
949e7383b5 | ||
|
aab429c8df | ||
|
6c8274078d | ||
|
35a9f1bccf | ||
|
d3222cb1d4 | ||
|
4be624d693 | ||
|
9fd4c27ae3 | ||
|
34b1776e8d | ||
|
d758c48761 | ||
|
bbffed0857 | ||
|
b625a0a475 | ||
|
3d0d803313 | ||
|
1e1ba54a94 | ||
|
131d42573c | ||
|
72c914805b | ||
|
06fe728e5b | ||
|
90711775d7 | ||
|
89bca902b3 | ||
|
69e10084cd | ||
|
018088996a | ||
|
ed478a5fde | ||
|
ab3e9c481f | ||
|
58dc8b7db5 | ||
|
963071ffea | ||
|
bccc09e6bf | ||
|
239ce2240a | ||
|
cd1283f515 | ||
|
26c1c04fd0 | ||
|
59b2c2adbb | ||
|
835a9fef05 | ||
|
1100866aa1 | ||
|
0cade4de4f | ||
|
e92a457ac0 | ||
|
98fcdf3f49 | ||
|
bcfba0d91e | ||
|
a74b1e149d | ||
|
dd17cd600a | ||
|
2a877411db | ||
|
ec8076264e | ||
|
f657c81911 | ||
|
8c20c913f8 | ||
|
3efd3b1512 | ||
|
ea6ddcbe0e | ||
|
95c04cccfe | ||
|
9dfd54fa83 | ||
|
22e442544b | ||
|
0970de3171 | ||
|
b4bf9acc32 | ||
|
893ea47e44 | ||
|
9a84d78c18 | ||
|
73e1193632 | ||
|
a7b24ac02f | ||
|
4830809524 | ||
|
77c7f90ed4 | ||
|
351de8aecc | ||
|
03b471d389 | ||
|
843a09cf5c | ||
|
80c83c97fc | ||
|
1d0a9e4377 | ||
|
4a3ccc6ca5 | ||
|
4d2a381114 | ||
|
04a810beac | ||
|
4c4cb1b5d1 | ||
|
b9a2d35429 | ||
|
64085b2c2c | ||
|
dd0edeb887 | ||
|
507808875d | ||
|
6bfd57ecde | ||
|
40c481dc91 | ||
|
6581071c1d | ||
|
cfe7f20d0e | ||
|
0cff716e70 | ||
|
68583292b1 | ||
|
ccc03b427a | ||
|
1c916736b8 | ||
|
9389aa3c0b | ||
|
c868ab3dd1 | ||
|
39df336635 | ||
|
64d1c10e6c | ||
|
6020e6e66a | ||
|
2d4c26b85e | ||
|
bd6a3d5975 | ||
|
39c958944c | ||
|
acb7e52430 | ||
|
3a2d2fcd8a | ||
|
1293356c60 | ||
|
07c9bd246d | ||
|
f76724b767 | ||
|
60aa0918a1 | ||
|
4e88ae5639 | ||
|
09c889b318 | ||
|
4d86228321 | ||
|
2e8d62be61 | ||
|
bca6e79a45 | ||
|
66cc150770 | ||
|
f788a8ed69 | ||
|
ee3a6cec36 | ||
|
58b72103d3 | ||
|
61eb4f50eb | ||
|
0b188d1cdc | ||
|
c238098bbc | ||
|
5c39bad220 | ||
|
24748268a3 | ||
|
bf9d9a9d01 | ||
|
f863ae1a04 | ||
|
85a3bf6dab | ||
|
3210a6d6c7 | ||
|
f63594bfef | ||
|
e700269441 | ||
|
5e9cb42aa6 | ||
|
7216679c19 | ||
|
91221483a6 | ||
|
9aec1288ee | ||
|
a71b1af5ad | ||
|
5462d447aa | ||
|
902727b7e3 | ||
|
c157cfc637 | ||
|
fc19536aa9 | ||
|
94d3a30df7 | ||
|
7cb723a3fd | ||
|
4f4147eadd | ||
|
f8baad2d25 | ||
|
6e34fc0d37 | ||
|
145d49838f | ||
|
b0ca50bd38 | ||
|
382911bdbc | ||
|
91d0020eec | ||
|
db9ba91971 | ||
|
4741dbcbbc | ||
|
17fdd1ab3b | ||
|
df6ae3f0a3 | ||
|
08b9e29c1d | ||
|
3ab4b2066f | ||
|
905d8e0742 | ||
|
d806d451e6 | ||
|
fc13269b82 | ||
|
e095d5812a | ||
|
2b8d8989fb | ||
|
b5d59222cc | ||
|
2e5d717007 | ||
|
a23026effc | ||
|
7d99ddcb2b | ||
|
8338cc25f9 | ||
|
a4a5a37f27 | ||
|
4bc39c58eb | ||
|
ee80c64be8 | ||
|
1e3a44fab0 | ||
|
b3c3bc63f0 | ||
|
8124faf89d | ||
|
6222eb3fcd | ||
|
507ef82077 | ||
|
7be5411ce6 | ||
|
561787e697 | ||
|
831bfb9053 | ||
|
c5945c2d17 | ||
|
1fe385fdc9 | ||
|
dff0b0e772 | ||
|
9b7e5a51f4 | ||
|
93fef22d05 | ||
|
fb3c41f504 | ||
|
c81cce7831 | ||
|
19d77d6cfa | ||
|
8e7d941d7a | ||
|
33fef8be82 | ||
|
6f765fbde4 | ||
|
b36bc54d3c | ||
|
9acf207277 | ||
|
5b98236e75 | ||
|
eda291e316 | ||
|
bda6ad273d | ||
|
452a592ca4 | ||
|
9118b02fd0 | ||
|
c79779aff0 | ||
|
ec76910187 | ||
|
03bafd1f9f | ||
|
a97226352f | ||
|
d533da2db8 | ||
|
4b038e24b0 | ||
|
f85ea6837d | ||
|
15487e46a2 | ||
|
b9532f078a | ||
|
2511d57fa4 | ||
|
ed4c6cbe01 | ||
|
78f4a695ad | ||
|
6fd15dd806 | ||
|
1b7e909845 | ||
|
93c90d34d1 | ||
|
868c09a267 | ||
|
8122ab2dfd | ||
|
6bc8749cd5 | ||
|
9614eac85d | ||
|
ce1685ce94 | ||
|
eb10fa3ed6 | ||
|
6246dd890f | ||
|
48cba703fa | ||
|
1cf2c8a043 | ||
|
f8e50dd796 | ||
|
60325331a8 | ||
|
457d7218b8 | ||
|
88f729e4ec | ||
|
baa76e9aa2 | ||
|
2e8af5ffcf | ||
|
c115616bda | ||
|
d17485fef9 | ||
|
394c1d1c53 | ||
|
bb00f09f1b | ||
|
9b8b58b79a | ||
|
3a4bed8f08 | ||
|
85f553d3c1 | ||
|
b51d73dd94 | ||
|
715715e230 | ||
|
cd4d4f590f | ||
|
2dbc515a66 | ||
|
d22ef6bcba | ||
|
4e3ae76fea | ||
|
049a59a87c | ||
|
74c64fa748 | ||
|
e93243f8b7 | ||
|
abb465cdc7 | ||
|
12dc9c99b9 | ||
|
b082002379 | ||
|
facfb44d37 | ||
|
ddd630ef90 | ||
|
ae1fdc1523 | ||
|
11ebfd22bb | ||
|
10db6c2d81 | ||
|
4fc71f3ec2 | ||
|
34a61c66fd | ||
|
24172fe595 | ||
|
c132e2b1db | ||
|
e48defc980 | ||
|
5ab1d0acea | ||
|
55e341c4c2 | ||
|
18d2822905 | ||
|
533c1dbe75 | ||
|
c9e5671691 | ||
|
28876dd511 | ||
|
87534210bb | ||
|
411d6672a6 | ||
|
9228f1c881 | ||
|
d1e1a76f62 | ||
|
7c1fda71ac | ||
|
a7573d805e | ||
|
45efcc44c7 | ||
|
64dc397d8b | ||
|
2ea3ef9a80 | ||
|
c07e274f44 | ||
|
32ef6e7583 | ||
|
e019ead5d7 | ||
|
5a46e17671 | ||
|
3474e9de92 | ||
|
6b146214dc | ||
|
7ce597508e | ||
|
dc8058c337 | ||
|
19d9c81b8c | ||
|
cfc4b4c989 | ||
|
4eb95ce807 | ||
|
8d41e4536d | ||
|
58dce864e6 | ||
|
ecadb51bbc | ||
|
374e7fd6cc | ||
|
06370a91b3 | ||
|
a25e1aa0aa | ||
|
3537da87de | ||
|
bbd287103d | ||
|
5e530d8384 | ||
|
904f31a624 | ||
|
27341a97a1 | ||
|
d43951192b | ||
|
9d48a7832b | ||
|
d36f4ef16b | ||
|
bd953e872f | ||
|
a30d2c5727 | ||
|
641b80275b | ||
|
68a19e353e | ||
|
87ccb9504d | ||
|
811d8b86eb | ||
|
11a889db8f | ||
|
d2e0504d4e | ||
|
5d4c8ec5e0 | ||
|
ee2c8d6d3e | ||
|
6e51febc6b | ||
|
8db761409d | ||
|
bdc8ac4ae2 | ||
|
34bba445a1 | ||
|
201d3419a6 | ||
|
d3dc95e26a | ||
|
b2e083eba2 | ||
|
4d42c5bebf | ||
|
bc3b2a5d7a | ||
|
35fd72756a | ||
|
3628185f56 | ||
|
7e0bbdcf03 | ||
|
11d694b1bb | ||
|
9246c2fad4 | ||
|
06537296f1 | ||
|
37c74af01c | ||
|
4a32f0c638 | ||
|
0adfd10210 | ||
|
218df7f9c5 | ||
|
dc44bb8e92 | ||
|
a04aeea5c0 | ||
|
e32721c46a | ||
|
3bb2a24921 | ||
|
0fd1a8c4a1 | ||
|
418b603513 | ||
|
55270310c5 | ||
|
f56b569e9a | ||
|
7a2ab6d055 | ||
|
6073b49c79 | ||
|
fd81433a4e | ||
|
6138ee9de0 | ||
|
bafefccff8 | ||
|
9aeb6e7825 | ||
|
019b9529e5 | ||
|
17e9bbd5a4 | ||
|
385d6b2e68 | ||
|
80af50b35b | ||
|
2d5087bf74 | ||
|
d6df735f1c | ||
|
f75843a517 |
30
Makefile
30
Makefile
@@ -174,10 +174,11 @@ ultrix-gcc:
|
|||||||
|
|
||||||
# Rules for making release tarballs
|
# Rules for making release tarballs
|
||||||
|
|
||||||
DIRECTORY = Mesa-7.1
|
VERSION=7.4-rc2
|
||||||
LIB_NAME = MesaLib-7.1
|
DIRECTORY = Mesa-$(VERSION)
|
||||||
DEMO_NAME = MesaDemos-7.1
|
LIB_NAME = MesaLib-$(VERSION)
|
||||||
GLUT_NAME = MesaGLUT-7.1
|
DEMO_NAME = MesaDemos-$(VERSION)
|
||||||
|
GLUT_NAME = MesaGLUT-$(VERSION)
|
||||||
|
|
||||||
MAIN_FILES = \
|
MAIN_FILES = \
|
||||||
$(DIRECTORY)/Makefile* \
|
$(DIRECTORY)/Makefile* \
|
||||||
@@ -200,9 +201,7 @@ MAIN_FILES = \
|
|||||||
$(DIRECTORY)/docs/RELNOTES* \
|
$(DIRECTORY)/docs/RELNOTES* \
|
||||||
$(DIRECTORY)/docs/*.spec \
|
$(DIRECTORY)/docs/*.spec \
|
||||||
$(DIRECTORY)/include/GL/internal/glcore.h \
|
$(DIRECTORY)/include/GL/internal/glcore.h \
|
||||||
$(DIRECTORY)/include/GL/amesa.h \
|
|
||||||
$(DIRECTORY)/include/GL/dmesa.h \
|
$(DIRECTORY)/include/GL/dmesa.h \
|
||||||
$(DIRECTORY)/include/GL/fxmesa.h \
|
|
||||||
$(DIRECTORY)/include/GL/ggimesa.h \
|
$(DIRECTORY)/include/GL/ggimesa.h \
|
||||||
$(DIRECTORY)/include/GL/gl.h \
|
$(DIRECTORY)/include/GL/gl.h \
|
||||||
$(DIRECTORY)/include/GL/glext.h \
|
$(DIRECTORY)/include/GL/glext.h \
|
||||||
@@ -217,19 +216,15 @@ MAIN_FILES = \
|
|||||||
$(DIRECTORY)/include/GL/mglmesa.h \
|
$(DIRECTORY)/include/GL/mglmesa.h \
|
||||||
$(DIRECTORY)/include/GL/osmesa.h \
|
$(DIRECTORY)/include/GL/osmesa.h \
|
||||||
$(DIRECTORY)/include/GL/svgamesa.h \
|
$(DIRECTORY)/include/GL/svgamesa.h \
|
||||||
$(DIRECTORY)/include/GL/ugl*.h \
|
|
||||||
$(DIRECTORY)/include/GL/vms_x_fix.h \
|
$(DIRECTORY)/include/GL/vms_x_fix.h \
|
||||||
$(DIRECTORY)/include/GL/wmesa.h \
|
$(DIRECTORY)/include/GL/wmesa.h \
|
||||||
$(DIRECTORY)/include/GL/xmesa.h \
|
|
||||||
$(DIRECTORY)/include/GL/xmesa_x.h \
|
|
||||||
$(DIRECTORY)/include/GL/xmesa_xf86.h \
|
|
||||||
$(DIRECTORY)/include/GLView.h \
|
|
||||||
$(DIRECTORY)/src/Makefile \
|
$(DIRECTORY)/src/Makefile \
|
||||||
$(DIRECTORY)/src/descrip.mms \
|
$(DIRECTORY)/src/descrip.mms \
|
||||||
$(DIRECTORY)/src/mesa/Makefile* \
|
$(DIRECTORY)/src/mesa/Makefile* \
|
||||||
$(DIRECTORY)/src/mesa/sources \
|
$(DIRECTORY)/src/mesa/sources \
|
||||||
$(DIRECTORY)/src/mesa/descrip.mms \
|
$(DIRECTORY)/src/mesa/descrip.mms \
|
||||||
$(DIRECTORY)/src/mesa/gl.pc.in \
|
$(DIRECTORY)/src/mesa/gl.pc.in \
|
||||||
|
$(DIRECTORY)/src/mesa/osmesa.pc.in \
|
||||||
$(DIRECTORY)/src/mesa/depend \
|
$(DIRECTORY)/src/mesa/depend \
|
||||||
$(DIRECTORY)/src/mesa/main/*.[chS] \
|
$(DIRECTORY)/src/mesa/main/*.[chS] \
|
||||||
$(DIRECTORY)/src/mesa/main/descrip.mms \
|
$(DIRECTORY)/src/mesa/main/descrip.mms \
|
||||||
@@ -287,6 +282,8 @@ MAIN_FILES = \
|
|||||||
$(DIRECTORY)/src/mesa/drivers/x11/Makefile \
|
$(DIRECTORY)/src/mesa/drivers/x11/Makefile \
|
||||||
$(DIRECTORY)/src/mesa/drivers/x11/descrip.mms \
|
$(DIRECTORY)/src/mesa/drivers/x11/descrip.mms \
|
||||||
$(DIRECTORY)/src/mesa/drivers/x11/*.[ch] \
|
$(DIRECTORY)/src/mesa/drivers/x11/*.[ch] \
|
||||||
|
$(DIRECTORY)/src/mesa/drivers/glslcompiler/Makefile \
|
||||||
|
$(DIRECTORY)/src/mesa/drivers/glslcompiler/glslcompiler.c \
|
||||||
$(DIRECTORY)/src/mesa/ppc/*.[ch] \
|
$(DIRECTORY)/src/mesa/ppc/*.[ch] \
|
||||||
$(DIRECTORY)/src/mesa/sparc/*.[chS] \
|
$(DIRECTORY)/src/mesa/sparc/*.[chS] \
|
||||||
$(DIRECTORY)/src/mesa/x86/Makefile \
|
$(DIRECTORY)/src/mesa/x86/Makefile \
|
||||||
@@ -302,19 +299,12 @@ MAIN_FILES = \
|
|||||||
$(DIRECTORY)/vms/analyze_map.com \
|
$(DIRECTORY)/vms/analyze_map.com \
|
||||||
$(DIRECTORY)/vms/xlib.opt \
|
$(DIRECTORY)/vms/xlib.opt \
|
||||||
$(DIRECTORY)/vms/xlib_share.opt \
|
$(DIRECTORY)/vms/xlib_share.opt \
|
||||||
$(DIRECTORY)/windows/VC8/mesa/mesa.sln \
|
$(DIRECTORY)/windows/VC8/
|
||||||
$(DIRECTORY)/windows/VC8/mesa/gdi/gdi.vcproj \
|
|
||||||
$(DIRECTORY)/windows/VC8/mesa/glu/glu.vcproj \
|
|
||||||
$(DIRECTORY)/windows/VC8/mesa/mesa/mesa.vcproj \
|
|
||||||
$(DIRECTORY)/windows/VC8/mesa/osmesa/osmesa.vcproj \
|
|
||||||
$(DIRECTORY)/windows/VC8/progs/progs.sln \
|
|
||||||
$(DIRECTORY)/windows/VC8/progs/demos/gears.vcproj \
|
|
||||||
$(DIRECTORY)/windows/VC8/progs/glut/glut.vcproj
|
|
||||||
|
|
||||||
|
|
||||||
DRI_FILES = \
|
DRI_FILES = \
|
||||||
$(DIRECTORY)/include/GL/internal/dri_interface.h \
|
$(DIRECTORY)/include/GL/internal/dri_interface.h \
|
||||||
$(DIRECTORY)/include/GL/internal/dri_sarea.h \
|
$(DIRECTORY)/include/GL/internal/glcore.h \
|
||||||
$(DIRECTORY)/include/GL/internal/sarea.h \
|
$(DIRECTORY)/include/GL/internal/sarea.h \
|
||||||
$(DIRECTORY)/src/glx/Makefile \
|
$(DIRECTORY)/src/glx/Makefile \
|
||||||
$(DIRECTORY)/src/glx/x11/Makefile \
|
$(DIRECTORY)/src/glx/x11/Makefile \
|
||||||
|
52
bin/mklib
52
bin/mklib
@@ -260,9 +260,31 @@ case $ARCH in
|
|||||||
OPTS=${ALTOPTS}
|
OPTS=${ALTOPTS}
|
||||||
fi
|
fi
|
||||||
rm -f ${LIBNAME}
|
rm -f ${LIBNAME}
|
||||||
|
|
||||||
|
# expand any .a objects into constituent .o files.
|
||||||
|
NEWOBJECTS=""
|
||||||
|
DELETIA=""
|
||||||
|
for OBJ in ${OBJECTS} ; do
|
||||||
|
if [ `expr match $OBJ '.*\.a'` -gt 0 ] ; then
|
||||||
|
# extract the .o files from this .a archive
|
||||||
|
FILES=`ar t $OBJ`
|
||||||
|
ar x $OBJ
|
||||||
|
NEWOBJECTS="$NEWOBJECTS $FILES"
|
||||||
|
# keep track of temporary .o files and delete them below
|
||||||
|
DELETIA="$DELETIA $FILES"
|
||||||
|
else
|
||||||
|
# ordinary .o file
|
||||||
|
NEWOBJECTS="$NEWOBJECTS $OBJ"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
# make lib
|
# make lib
|
||||||
${LINK} ${OPTS} ${LIBNAME} ${OBJECTS}
|
${LINK} ${OPTS} ${LIBNAME} ${NEWOBJECTS}
|
||||||
ranlib ${LIBNAME}
|
ranlib ${LIBNAME}
|
||||||
|
|
||||||
|
# remove temporary extracted .o files
|
||||||
|
rm -f ${DELETIA}
|
||||||
|
|
||||||
# finish up
|
# finish up
|
||||||
FINAL_LIBS=${LIBNAME}
|
FINAL_LIBS=${LIBNAME}
|
||||||
else
|
else
|
||||||
@@ -372,6 +394,30 @@ case $ARCH in
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# If using Sun C++ compiler, need to tell it not to add runpaths
|
||||||
|
# that are specific to the build machine
|
||||||
|
if [ ${LINK} = "CC" ] ; then
|
||||||
|
OPTS="${OPTS} -norunpath"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Solaris linker requires explicitly listing the Standard C & C++
|
||||||
|
# libraries in the link path when building shared objects
|
||||||
|
if [ ${LINK} = "CC" ] ; then
|
||||||
|
DEPS="${DEPS} -lCrun"
|
||||||
|
fi
|
||||||
|
DEPS="${DEPS} -lc"
|
||||||
|
|
||||||
|
if [ $EXPORTS ] ; then
|
||||||
|
# Make the 'mapfile.scope' linker mapfile
|
||||||
|
echo "{" > mapfile.scope
|
||||||
|
echo "global:" >> mapfile.scope
|
||||||
|
sed 's/$/;/' ${EXPORTS} >> mapfile.scope
|
||||||
|
echo "local:" >> mapfile.scope
|
||||||
|
echo " *;" >> mapfile.scope
|
||||||
|
echo "};" >> mapfile.scope
|
||||||
|
OPTS="${OPTS} -Wl,-Mmapfile.scope"
|
||||||
|
fi
|
||||||
|
|
||||||
# Check if objects are SPARC v9
|
# Check if objects are SPARC v9
|
||||||
# file says: ELF 64-bit MSB relocatable SPARCV9 Version 1
|
# file says: ELF 64-bit MSB relocatable SPARCV9 Version 1
|
||||||
set ${OBJECTS}
|
set ${OBJECTS}
|
||||||
@@ -384,17 +430,19 @@ case $ARCH in
|
|||||||
if [ "${ALTOPTS}" ] ; then
|
if [ "${ALTOPTS}" ] ; then
|
||||||
OPTS=${ALTOPTS}
|
OPTS=${ALTOPTS}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# for debug:
|
# for debug:
|
||||||
#echo "mklib: linker is" ${LINK} ${OPTS}
|
#echo "mklib: linker is" ${LINK} ${OPTS}
|
||||||
if [ $NOPREFIX = 1 ] ; then
|
if [ $NOPREFIX = 1 ] ; then
|
||||||
rm -f ${LIBNAME}
|
rm -f ${LIBNAME}
|
||||||
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
|
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
|
||||||
|
FINAL_LIBS="${LIBNAME}"
|
||||||
else
|
else
|
||||||
rm -f ${LIBNAME}.${MAJOR} ${LIBNAME}
|
rm -f ${LIBNAME}.${MAJOR} ${LIBNAME}
|
||||||
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME}.${MAJOR} -h ${LIBNAME}.${MAJOR} ${OBJECTS} ${DEPS}
|
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME}.${MAJOR} -h ${LIBNAME}.${MAJOR} ${OBJECTS} ${DEPS}
|
||||||
ln -s ${LIBNAME}.${MAJOR} ${LIBNAME}
|
ln -s ${LIBNAME}.${MAJOR} ${LIBNAME}
|
||||||
|
FINAL_LIBS="${LIBNAME}.${MAJOR} ${LIBNAME}"
|
||||||
fi
|
fi
|
||||||
FINAL_LIBS="${LIBNAME}.${MAJOR} ${LIBNAME}"
|
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
@@ -105,3 +105,21 @@ DRI_DRIVER_INSTALL_DIR = @DRI_DRIVER_INSTALL_DIR@
|
|||||||
|
|
||||||
# Where libGL will look for DRI hardware drivers
|
# Where libGL will look for DRI hardware drivers
|
||||||
DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
|
DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
|
||||||
|
|
||||||
|
# pkg-config substitutions
|
||||||
|
GL_PC_REQ_PRIV = @GL_PC_REQ_PRIV@
|
||||||
|
GL_PC_LIB_PRIV = @GL_PC_LIB_PRIV@
|
||||||
|
GL_PC_CFLAGS = @GL_PC_CFLAGS@
|
||||||
|
DRI_PC_REQ_PRIV = @DRI_PC_REQ_PRIV@
|
||||||
|
GLU_PC_REQ = @GLU_PC_REQ@
|
||||||
|
GLU_PC_REQ_PRIV = @GLU_PC_REQ_PRIV@
|
||||||
|
GLU_PC_LIB_PRIV = @GLU_PC_LIB_PRIV@
|
||||||
|
GLU_PC_CFLAGS = @GLU_PC_CFLAGS@
|
||||||
|
GLUT_PC_REQ_PRIV = @GLUT_PC_REQ_PRIV@
|
||||||
|
GLUT_PC_LIB_PRIV = @GLUT_PC_LIB_PRIV@
|
||||||
|
GLUT_PC_CFLAGS = @GLUT_PC_CFLAGS@
|
||||||
|
GLW_PC_REQ_PRIV = @GLW_PC_REQ_PRIV@
|
||||||
|
GLW_PC_LIB_PRIV = @GLW_PC_LIB_PRIV@
|
||||||
|
GLW_PC_CFLAGS = @GLW_PC_CFLAGS@
|
||||||
|
OSMESA_PC_REQ = @OSMESA_PC_REQ@
|
||||||
|
OSMESA_PC_LIB_PRIV = @OSMESA_PC_LIB_PRIV@
|
||||||
|
@@ -12,17 +12,17 @@ CXX = gcc
|
|||||||
PIC_FLAGS = -fPIC
|
PIC_FLAGS = -fPIC
|
||||||
DEFINES = -D_DARWIN_C_SOURCE -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L \
|
DEFINES = -D_DARWIN_C_SOURCE -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L \
|
||||||
-D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -DPTHREADS \
|
-D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -DPTHREADS \
|
||||||
-DGLX_INDIRECT_RENDERING \
|
-DGLX_ALIAS_UNSUPPORTED -DGLX_INDIRECT_RENDERING
|
||||||
-DGLX_ALIAS_UNSUPPORTED
|
|
||||||
|
|
||||||
# -DGLX_DIRECT_RENDERING - pulls in libdrm stuff in glx/x11
|
# -DGLX_DIRECT_RENDERING - pulls in libdrm stuff in glx/x11
|
||||||
|
# -DGLX_USE_APPLEGL - supposed to be used with GLX_DIRECT_RENDERING to use AGL rather than DRM, but doesn't compile
|
||||||
# -DIN_DRI_DRIVER
|
# -DIN_DRI_DRIVER
|
||||||
|
|
||||||
ARCH_FLAGS += $(RC_CFLAGS)
|
ARCH_FLAGS += $(RC_CFLAGS)
|
||||||
|
|
||||||
CFLAGS = -g -O2 -Wall -Wmissing-prototypes -std=c99 -ffast-math -fno-strict-aliasing \
|
CFLAGS = -ggdb3 -Os -Wall -Wmissing-prototypes -std=c99 -ffast-math -fno-strict-aliasing \
|
||||||
-I$(INSTALL_DIR)/include $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES)
|
-I$(INSTALL_DIR)/include $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES)
|
||||||
CXXFLAGS = -g -O2 -Wall -fno-strict-aliasing \
|
CXXFLAGS = -ggdb3 -Os -Wall -fno-strict-aliasing \
|
||||||
-I$(INSTALL_DIR)/include $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES)
|
-I$(INSTALL_DIR)/include $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES)
|
||||||
|
|
||||||
# Library names (actual file names)
|
# Library names (actual file names)
|
||||||
@@ -47,7 +47,7 @@ GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -lX11
|
|||||||
APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -lX11 -lXmu -lXt -lXi -lm
|
APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -lX11 -lXmu -lXt -lXi -lm
|
||||||
|
|
||||||
# omit glw lib for now:
|
# omit glw lib for now:
|
||||||
SRC_DIRS = glx/x11 mesa glu glw glut/glx
|
SRC_DIRS = glx/x11 mesa glu glut/glx
|
||||||
GLU_DIRS = sgi
|
GLU_DIRS = sgi
|
||||||
DRIVER_DIRS = osmesa
|
DRIVER_DIRS = osmesa
|
||||||
#DRIVER_DIRS = dri
|
#DRIVER_DIRS = dri
|
||||||
|
@@ -9,7 +9,7 @@ CONFIG_NAME = default
|
|||||||
|
|
||||||
# Version info
|
# Version info
|
||||||
MESA_MAJOR=7
|
MESA_MAJOR=7
|
||||||
MESA_MINOR=1
|
MESA_MINOR=3
|
||||||
MESA_TINY=0
|
MESA_TINY=0
|
||||||
MESA_VERSION = $(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY)
|
MESA_VERSION = $(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY)
|
||||||
|
|
||||||
@@ -100,3 +100,20 @@ DRI_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/dri
|
|||||||
# Where libGL will look for DRI hardware drivers
|
# Where libGL will look for DRI hardware drivers
|
||||||
DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
|
DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
|
||||||
|
|
||||||
|
# pkg-config substitutions
|
||||||
|
GL_PC_REQ_PRIV =
|
||||||
|
GL_PC_LIB_PRIV =
|
||||||
|
GL_PC_CFLAGS =
|
||||||
|
DRI_PC_REQ_PRIV =
|
||||||
|
GLU_PC_REQ = gl
|
||||||
|
GLU_PC_REQ_PRIV =
|
||||||
|
GLU_PC_LIB_PRIV =
|
||||||
|
GLU_PC_CFLAGS =
|
||||||
|
GLUT_PC_REQ_PRIV =
|
||||||
|
GLUT_PC_LIB_PRIV =
|
||||||
|
GLUT_PC_CFLAGS =
|
||||||
|
GLW_PC_REQ_PRIV =
|
||||||
|
GLW_PC_LIB_PRIV =
|
||||||
|
GLW_PC_CFLAGS =
|
||||||
|
OSMESA_PC_REQ =
|
||||||
|
OSMESA_PC_LIB_PRIV =
|
||||||
|
118
configure.ac
118
configure.ac
@@ -22,8 +22,8 @@ AC_CONFIG_AUX_DIR([bin])
|
|||||||
AC_CANONICAL_HOST
|
AC_CANONICAL_HOST
|
||||||
|
|
||||||
dnl Versions for external dependencies
|
dnl Versions for external dependencies
|
||||||
LIBDRM_REQUIRED=2.3.1
|
LIBDRM_REQUIRED=2.4.3
|
||||||
DRI2PROTO_REQUIRED=1.1
|
DRI2PROTO_REQUIRED=1.99.3
|
||||||
|
|
||||||
dnl Check for progs
|
dnl Check for progs
|
||||||
AC_PROG_CPP
|
AC_PROG_CPP
|
||||||
@@ -46,10 +46,14 @@ esac
|
|||||||
MKDEP_OPTIONS=-fdepend
|
MKDEP_OPTIONS=-fdepend
|
||||||
dnl Ask gcc where it's keeping its secret headers
|
dnl Ask gcc where it's keeping its secret headers
|
||||||
if test "x$GCC" = xyes; then
|
if test "x$GCC" = xyes; then
|
||||||
GCC_INCLUDES=`$CC -print-file-name=include`
|
for dir in include include-fixed; do
|
||||||
if test "x$GCC_INCLUDES" != x; then
|
GCC_INCLUDES=`$CC -print-file-name=$dir`
|
||||||
MKDEP_OPTIONS="$MKDEP_OPTIONS -I$GCC_INCLUDES"
|
if test "x$GCC_INCLUDES" != x && \
|
||||||
fi
|
test "$GCC_INCLUDES" != "$dir" && \
|
||||||
|
test -d "$GCC_INCLUDES"; then
|
||||||
|
MKDEP_OPTIONS="$MKDEP_OPTIONS -I$GCC_INCLUDES"
|
||||||
|
fi
|
||||||
|
done
|
||||||
fi
|
fi
|
||||||
AC_SUBST([MKDEP_OPTIONS])
|
AC_SUBST([MKDEP_OPTIONS])
|
||||||
|
|
||||||
@@ -83,11 +87,8 @@ dnl Compiler macros
|
|||||||
DEFINES=""
|
DEFINES=""
|
||||||
AC_SUBST([DEFINES])
|
AC_SUBST([DEFINES])
|
||||||
case "$host_os" in
|
case "$host_os" in
|
||||||
linux*)
|
linux*|*-gnu*)
|
||||||
if test "x$GCC" = xyes; then
|
DEFINES="$DEFINES -D_GNU_SOURCE -DPTHREADS"
|
||||||
DEFINES="$DEFINES -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_BSD_SOURCE"
|
|
||||||
fi
|
|
||||||
DEFINES="$DEFINES -D_SVID_SOURCE -D_GNU_SOURCE -DPTHREADS"
|
|
||||||
;;
|
;;
|
||||||
solaris*)
|
solaris*)
|
||||||
DEFINES="$DEFINES -DPTHREADS -DSVR4"
|
DEFINES="$DEFINES -DPTHREADS -DSVR4"
|
||||||
@@ -271,14 +272,14 @@ if test "x$enable_asm" = xyes; then
|
|||||||
case "$host_cpu" in
|
case "$host_cpu" in
|
||||||
i?86)
|
i?86)
|
||||||
case "$host_os" in
|
case "$host_os" in
|
||||||
linux* | freebsd* | dragonfly*)
|
linux* | *freebsd* | dragonfly*)
|
||||||
test "x$enable_64bit" = xyes && asm_arch=x86_64 || asm_arch=x86
|
test "x$enable_64bit" = xyes && asm_arch=x86_64 || asm_arch=x86
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
x86_64)
|
x86_64)
|
||||||
case "$host_os" in
|
case "$host_os" in
|
||||||
linux* | freebsd* | dragonfly*)
|
linux* | *freebsd* | dragonfly*)
|
||||||
test "x$enable_32bit" = xyes && asm_arch=x86 || asm_arch=x86_64
|
test "x$enable_32bit" = xyes && asm_arch=x86 || asm_arch=x86_64
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@@ -345,17 +346,6 @@ if test "x$enable_selinux" = "xyes"; then
|
|||||||
DEFINES="$DEFINES -DMESA_SELINUX"
|
DEFINES="$DEFINES -DMESA_SELINUX"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
dnl OS-specific libraries
|
|
||||||
OS_LIBS=""
|
|
||||||
case "$host_os" in
|
|
||||||
solaris*)
|
|
||||||
OS_LIBS="-lc"
|
|
||||||
if test "x$GXX" != xyes; then
|
|
||||||
OS_CPLUSPLUS_LIBS="-lCrun $OS_LIBS"
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl Driver configuration. Options are xlib, dri and osmesa right now.
|
dnl Driver configuration. Options are xlib, dri and osmesa right now.
|
||||||
dnl More later: directfb, fbdev, ...
|
dnl More later: directfb, fbdev, ...
|
||||||
@@ -365,10 +355,10 @@ default_driver="xlib"
|
|||||||
case "$host_os" in
|
case "$host_os" in
|
||||||
linux*)
|
linux*)
|
||||||
case "$host_cpu" in
|
case "$host_cpu" in
|
||||||
i*86|x86_64|powerpc*) default_driver="dri";;
|
i*86|x86_64|powerpc*|sparc*) default_driver="dri";;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
freebsd* | dragonfly*)
|
*freebsd* | dragonfly*)
|
||||||
case "$host_cpu" in
|
case "$host_cpu" in
|
||||||
i*86|x86_64) default_driver="dri";;
|
i*86|x86_64) default_driver="dri";;
|
||||||
esac
|
esac
|
||||||
@@ -507,14 +497,18 @@ case "$mesa_driver" in
|
|||||||
xlib)
|
xlib)
|
||||||
if test "$x11_pkgconfig" = yes; then
|
if test "$x11_pkgconfig" = yes; then
|
||||||
PKG_CHECK_MODULES([XLIBGL], [x11 xext])
|
PKG_CHECK_MODULES([XLIBGL], [x11 xext])
|
||||||
|
GL_PC_REQ_PRIV="x11 xext"
|
||||||
X11_INCLUDES="$X11_INCLUDES $XLIBGL_CFLAGS"
|
X11_INCLUDES="$X11_INCLUDES $XLIBGL_CFLAGS"
|
||||||
GL_LIB_DEPS="$XLIBGL_LIBS"
|
GL_LIB_DEPS="$XLIBGL_LIBS"
|
||||||
else
|
else
|
||||||
# should check these...
|
# should check these...
|
||||||
X11_INCLUDES="$X11_INCLUDES $X_CFLAGS"
|
X11_INCLUDES="$X11_INCLUDES $X_CFLAGS"
|
||||||
GL_LIB_DEPS="$X_LIBS -lX11 -lXext"
|
GL_LIB_DEPS="$X_LIBS -lX11 -lXext"
|
||||||
|
GL_PC_LIB_PRIV="$GL_LIB_DEPS"
|
||||||
|
GL_PC_CFLAGS="$X11_INCLUDES"
|
||||||
fi
|
fi
|
||||||
GL_LIB_DEPS="$GL_LIB_DEPS $SELINUX_LIBS -lm -lpthread $OS_LIBS"
|
GL_LIB_DEPS="$GL_LIB_DEPS $SELINUX_LIBS -lm -lpthread"
|
||||||
|
GL_PC_LIB_PRIV="$GL_PC_LIB_PRIV $SELINUX_LIBS -lm -lpthread"
|
||||||
|
|
||||||
# if static, move the external libraries to the programs
|
# if static, move the external libraries to the programs
|
||||||
# and empty the libraries for libGL
|
# and empty the libraries for libGL
|
||||||
@@ -532,6 +526,8 @@ dri)
|
|||||||
# Check for libdrm
|
# Check for libdrm
|
||||||
PKG_CHECK_MODULES([LIBDRM], [libdrm >= $LIBDRM_REQUIRED])
|
PKG_CHECK_MODULES([LIBDRM], [libdrm >= $LIBDRM_REQUIRED])
|
||||||
PKG_CHECK_MODULES([DRI2PROTO], [dri2proto >= $DRI2PROTO_REQUIRED])
|
PKG_CHECK_MODULES([DRI2PROTO], [dri2proto >= $DRI2PROTO_REQUIRED])
|
||||||
|
GL_PC_REQ_PRIV="libdrm >= $LIBDRM_REQUIRED dri2proto >= $DRI2PROTO_REQUIRED"
|
||||||
|
DRI_PC_REQ_PRIV="libdrm >= $LIBDRM_REQUIRED"
|
||||||
|
|
||||||
# find the DRI deps for libGL
|
# find the DRI deps for libGL
|
||||||
if test "$x11_pkgconfig" = yes; then
|
if test "$x11_pkgconfig" = yes; then
|
||||||
@@ -542,30 +538,39 @@ dri)
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
PKG_CHECK_MODULES([DRIGL], [$dri_modules])
|
PKG_CHECK_MODULES([DRIGL], [$dri_modules])
|
||||||
|
GL_PC_REQ_PRIV="$GL_PC_REQ_PRIV $dri_modules"
|
||||||
X11_INCLUDES="$X11_INCLUDES $DRIGL_CFLAGS"
|
X11_INCLUDES="$X11_INCLUDES $DRIGL_CFLAGS"
|
||||||
GL_LIB_DEPS="$DRIGL_LIBS"
|
GL_LIB_DEPS="$DRIGL_LIBS"
|
||||||
else
|
else
|
||||||
# should check these...
|
# should check these...
|
||||||
X11_INCLUDES="$X11_INCLUDES $X_CFLAGS"
|
X11_INCLUDES="$X11_INCLUDES $X_CFLAGS"
|
||||||
GL_LIB_DEPS="$X_LIBS -lX11 -lXext -lXxf86vm -lXdamage -lXfixes"
|
GL_LIB_DEPS="$X_LIBS -lX11 -lXext -lXxf86vm -lXdamage -lXfixes"
|
||||||
|
GL_PC_LIB_PRIV="$GL_LIB_DEPS"
|
||||||
|
GL_PC_CFLAGS="$X11_INCLUDES"
|
||||||
|
|
||||||
# XCB can only be used from pkg-config
|
# XCB can only be used from pkg-config
|
||||||
if test "$enable_xcb" = yes; then
|
if test "$enable_xcb" = yes; then
|
||||||
PKG_CHECK_MODULES([XCB],[x11-xcb xcb-glx])
|
PKG_CHECK_MODULES([XCB],[x11-xcb xcb-glx])
|
||||||
|
GL_PC_REQ_PRIV="$GL_PC_REQ_PRIV x11-xcb xcb-glx"
|
||||||
X11_INCLUDES="$X11_INCLUDES $XCB_CFLAGS"
|
X11_INCLUDES="$X11_INCLUDES $XCB_CFLAGS"
|
||||||
GL_LIB_DEPS="$GL_LIB_DEPS $XCB_LIBS"
|
GL_LIB_DEPS="$GL_LIB_DEPS $XCB_LIBS"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# need DRM libs, -lpthread, etc.
|
# need DRM libs, -lpthread, etc.
|
||||||
GL_LIB_DEPS="$GL_LIB_DEPS $LIBDRM_LIBS -lm -lpthread $DLOPEN_LIBS $OS_LIBS"
|
GL_LIB_DEPS="$GL_LIB_DEPS $LIBDRM_LIBS -lm -lpthread $DLOPEN_LIBS"
|
||||||
|
GL_PC_LIB_PRIV="-lm -lpthread $DLOPEN_LIBS"
|
||||||
;;
|
;;
|
||||||
osmesa)
|
osmesa)
|
||||||
# No libGL for osmesa
|
# No libGL for osmesa
|
||||||
GL_LIB_DEPS="$OS_LIBS"
|
GL_LIB_DEPS=""
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
AC_SUBST([GL_LIB_DEPS])
|
AC_SUBST([GL_LIB_DEPS])
|
||||||
|
AC_SUBST([GL_PC_REQ_PRIV])
|
||||||
|
AC_SUBST([GL_PC_LIB_PRIV])
|
||||||
|
AC_SUBST([GL_PC_CFLAGS])
|
||||||
|
AC_SUBST([DRI_PC_REQ_PRIV])
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl More X11 setup
|
dnl More X11 setup
|
||||||
@@ -595,20 +600,6 @@ AC_ARG_ENABLE([driglx-direct],
|
|||||||
[enable direct rendering in GLX for DRI @<:@default=enabled@:>@])],
|
[enable direct rendering in GLX for DRI @<:@default=enabled@:>@])],
|
||||||
[driglx_direct="$enableval"],
|
[driglx_direct="$enableval"],
|
||||||
[driglx_direct="yes"])
|
[driglx_direct="yes"])
|
||||||
dnl ttm support
|
|
||||||
AC_ARG_ENABLE([ttm-api],
|
|
||||||
[AS_HELP_STRING([--enable-ttm-api],
|
|
||||||
[enable TTM API users @<:@default=disabled@:>@])],
|
|
||||||
[ttmapi="$enableval"],
|
|
||||||
[ttmapi="no"])
|
|
||||||
|
|
||||||
if test "x$ttmapi" = "xyes"; then
|
|
||||||
save_CFLAGS=$CFLAGS
|
|
||||||
CFLAGS=$LIBDRM_CFLAGS
|
|
||||||
AC_CHECK_HEADERS([xf86mm.h],[],[AC_MSG_ERROR([xf86mm.h required for TTM.])],[#include "stdint.h"\n#include "drm.h"])
|
|
||||||
CFLAGS=$save_CFLAGS
|
|
||||||
fi
|
|
||||||
|
|
||||||
dnl Which drivers to build - default is chosen by platform
|
dnl Which drivers to build - default is chosen by platform
|
||||||
AC_ARG_WITH([dri-drivers],
|
AC_ARG_WITH([dri-drivers],
|
||||||
[AS_HELP_STRING([--with-dri-drivers@<:@=DIRS...@:>@],
|
[AS_HELP_STRING([--with-dri-drivers@<:@=DIRS...@:>@],
|
||||||
@@ -650,10 +641,6 @@ if test "$mesa_driver" = dri; then
|
|||||||
DEFINES="$DEFINES -DGLX_USE_TLS -DPTHREADS"
|
DEFINES="$DEFINES -DGLX_USE_TLS -DPTHREADS"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test "x$ttmapi" = xyes; then
|
|
||||||
DEFINES="$DEFINES -DTTM_API"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test "x$USING_EGL" = x1; then
|
if test "x$USING_EGL" = x1; then
|
||||||
PROGRAM_DIRS="egl"
|
PROGRAM_DIRS="egl"
|
||||||
fi
|
fi
|
||||||
@@ -804,6 +791,7 @@ osmesa)
|
|||||||
OSMESA_LIB_DEPS=""
|
OSMESA_LIB_DEPS=""
|
||||||
fi
|
fi
|
||||||
OSMESA_MESA_DEPS=""
|
OSMESA_MESA_DEPS=""
|
||||||
|
OSMESA_PC_LIB_PRIV="-lm -lpthread $SELINUX_LIBS"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
# Link OSMesa to libGL otherwise
|
# Link OSMesa to libGL otherwise
|
||||||
@@ -814,13 +802,17 @@ osmesa)
|
|||||||
else
|
else
|
||||||
OSMESA_MESA_DEPS=""
|
OSMESA_MESA_DEPS=""
|
||||||
fi
|
fi
|
||||||
|
OSMESA_PC_REQ="gl"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
if test "$enable_static" = no; then
|
if test "$enable_static" = no; then
|
||||||
OSMESA_LIB_DEPS="$OSMESA_LIB_DEPS $OS_LIBS"
|
OSMESA_LIB_DEPS="$OSMESA_LIB_DEPS"
|
||||||
fi
|
fi
|
||||||
|
OSMESA_PC_LIB_PRIV="$OSMESA_PC_LIB_PRIV"
|
||||||
AC_SUBST([OSMESA_LIB_DEPS])
|
AC_SUBST([OSMESA_LIB_DEPS])
|
||||||
AC_SUBST([OSMESA_MESA_DEPS])
|
AC_SUBST([OSMESA_MESA_DEPS])
|
||||||
|
AC_SUBST([OSMESA_PC_REQ])
|
||||||
|
AC_SUBST([OSMESA_PC_LIB_PRIV])
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl GLU configuration
|
dnl GLU configuration
|
||||||
@@ -843,6 +835,7 @@ if test "x$enable_glu" = xyes; then
|
|||||||
|
|
||||||
# Link libGLU to libOSMesa instead of libGL
|
# Link libGLU to libOSMesa instead of libGL
|
||||||
GLU_LIB_DEPS=""
|
GLU_LIB_DEPS=""
|
||||||
|
GLU_PC_REQ="osmesa"
|
||||||
if test "$enable_static" = no; then
|
if test "$enable_static" = no; then
|
||||||
GLU_MESA_DEPS='-l$(OSMESA_LIB)'
|
GLU_MESA_DEPS='-l$(OSMESA_LIB)'
|
||||||
else
|
else
|
||||||
@@ -851,6 +844,8 @@ if test "x$enable_glu" = xyes; then
|
|||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
# If static, empty GLU_LIB_DEPS and add libs for programs to link
|
# If static, empty GLU_LIB_DEPS and add libs for programs to link
|
||||||
|
GLU_PC_REQ="gl"
|
||||||
|
GLU_PC_LIB_PRIV="-lm"
|
||||||
if test "$enable_static" = no; then
|
if test "$enable_static" = no; then
|
||||||
GLU_LIB_DEPS="-lm"
|
GLU_LIB_DEPS="-lm"
|
||||||
GLU_MESA_DEPS='-l$(GL_LIB)'
|
GLU_MESA_DEPS='-l$(GL_LIB)'
|
||||||
@@ -865,8 +860,13 @@ fi
|
|||||||
if test "$enable_static" = no; then
|
if test "$enable_static" = no; then
|
||||||
GLU_LIB_DEPS="$GLU_LIB_DEPS $OS_CPLUSPLUS_LIBS"
|
GLU_LIB_DEPS="$GLU_LIB_DEPS $OS_CPLUSPLUS_LIBS"
|
||||||
fi
|
fi
|
||||||
|
GLU_PC_LIB_PRIV="$GLU_PC_LIB_PRIV $OS_CPLUSPLUS_LIBS"
|
||||||
AC_SUBST([GLU_LIB_DEPS])
|
AC_SUBST([GLU_LIB_DEPS])
|
||||||
AC_SUBST([GLU_MESA_DEPS])
|
AC_SUBST([GLU_MESA_DEPS])
|
||||||
|
AC_SUBST([GLU_PC_REQ])
|
||||||
|
AC_SUBST([GLU_PC_REQ_PRIV])
|
||||||
|
AC_SUBST([GLU_PC_LIB_PRIV])
|
||||||
|
AC_SUBST([GLU_PC_CFLAGS])
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl GLw configuration
|
dnl GLw configuration
|
||||||
@@ -891,10 +891,13 @@ if test "x$enable_glw" = xyes; then
|
|||||||
SRC_DIRS="$SRC_DIRS glw"
|
SRC_DIRS="$SRC_DIRS glw"
|
||||||
if test "$x11_pkgconfig" = yes; then
|
if test "$x11_pkgconfig" = yes; then
|
||||||
PKG_CHECK_MODULES([GLW],[x11 xt])
|
PKG_CHECK_MODULES([GLW],[x11 xt])
|
||||||
|
GLW_PC_REQ_PRIV="x11 xt"
|
||||||
GLW_LIB_DEPS="$GLW_LIBS"
|
GLW_LIB_DEPS="$GLW_LIBS"
|
||||||
else
|
else
|
||||||
# should check these...
|
# should check these...
|
||||||
GLW_LIB_DEPS="$X_LIBS -lXt -lX11"
|
GLW_LIB_DEPS="$X_LIBS -lXt -lX11"
|
||||||
|
GLW_PC_LIB_PRIV="$GLW_LIB_DEPS"
|
||||||
|
GLW_PC_CFLAGS="$X11_INCLUDES"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
GLW_SOURCES="GLwDrawA.c"
|
GLW_SOURCES="GLwDrawA.c"
|
||||||
@@ -913,12 +916,15 @@ if test "x$enable_glw" = xyes; then
|
|||||||
fi
|
fi
|
||||||
# MOTIF_LIBS is prepended to GLW_LIB_DEPS since Xm needs Xt/X11
|
# MOTIF_LIBS is prepended to GLW_LIB_DEPS since Xm needs Xt/X11
|
||||||
GLW_LIB_DEPS="$MOTIF_LIBS $GLW_LIB_DEPS"
|
GLW_LIB_DEPS="$MOTIF_LIBS $GLW_LIB_DEPS"
|
||||||
|
GLW_PC_LIB_PRIV="$MOTIF_LIBS $GLW_PC_LIB_PRIV"
|
||||||
|
GLW_PC_CFLAGS="$MOTIF_CFLAGS $GLW_PC_CFLAGS"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# If static, empty GLW_LIB_DEPS and add libs for programs to link
|
# If static, empty GLW_LIB_DEPS and add libs for programs to link
|
||||||
|
GLW_PC_LIB_PRIV="$GLW_PC_LIB_PRIV"
|
||||||
if test "$enable_static" = no; then
|
if test "$enable_static" = no; then
|
||||||
GLW_MESA_DEPS='-l$(GL_LIB)'
|
GLW_MESA_DEPS='-l$(GL_LIB)'
|
||||||
GLW_LIB_DEPS="$GLW_LIB_DEPS $OS_LIBS"
|
GLW_LIB_DEPS="$GLW_LIB_DEPS"
|
||||||
else
|
else
|
||||||
APP_LIB_DEPS="$APP_LIB_DEPS $GLW_LIB_DEPS"
|
APP_LIB_DEPS="$APP_LIB_DEPS $GLW_LIB_DEPS"
|
||||||
GLW_LIB_DEPS=""
|
GLW_LIB_DEPS=""
|
||||||
@@ -929,6 +935,9 @@ AC_SUBST([GLW_LIB_DEPS])
|
|||||||
AC_SUBST([GLW_MESA_DEPS])
|
AC_SUBST([GLW_MESA_DEPS])
|
||||||
AC_SUBST([GLW_SOURCES])
|
AC_SUBST([GLW_SOURCES])
|
||||||
AC_SUBST([MOTIF_CFLAGS])
|
AC_SUBST([MOTIF_CFLAGS])
|
||||||
|
AC_SUBST([GLW_PC_REQ_PRIV])
|
||||||
|
AC_SUBST([GLW_PC_LIB_PRIV])
|
||||||
|
AC_SUBST([GLW_PC_CFLAGS])
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl GLUT configuration
|
dnl GLUT configuration
|
||||||
@@ -963,12 +972,16 @@ if test "x$enable_glut" = xyes; then
|
|||||||
fi
|
fi
|
||||||
if test "$x11_pkgconfig" = yes; then
|
if test "$x11_pkgconfig" = yes; then
|
||||||
PKG_CHECK_MODULES([GLUT],[x11 xmu xi])
|
PKG_CHECK_MODULES([GLUT],[x11 xmu xi])
|
||||||
|
GLUT_PC_REQ_PRIV="x11 xmu xi"
|
||||||
GLUT_LIB_DEPS="$GLUT_LIBS"
|
GLUT_LIB_DEPS="$GLUT_LIBS"
|
||||||
else
|
else
|
||||||
# should check these...
|
# should check these...
|
||||||
GLUT_LIB_DEPS="$X_LIBS -lX11 -lXmu -lXi"
|
GLUT_LIB_DEPS="$X_LIBS -lX11 -lXmu -lXi"
|
||||||
|
GLUT_PC_LIB_PRIV="$GLUT_LIB_DEPS"
|
||||||
|
GLUT_PC_CFLAGS="$X11_INCLUDES"
|
||||||
fi
|
fi
|
||||||
GLUT_LIB_DEPS="$GLUT_LIB_DEPS -lm $OS_LIBS"
|
GLUT_LIB_DEPS="$GLUT_LIB_DEPS -lm"
|
||||||
|
GLUT_PC_LIB_PRIV="$GLUT_PC_LIB_PRIV -lm"
|
||||||
|
|
||||||
# If glut is available, we can build most programs
|
# If glut is available, we can build most programs
|
||||||
if test "$with_demos" = yes; then
|
if test "$with_demos" = yes; then
|
||||||
@@ -987,6 +1000,9 @@ fi
|
|||||||
AC_SUBST([GLUT_LIB_DEPS])
|
AC_SUBST([GLUT_LIB_DEPS])
|
||||||
AC_SUBST([GLUT_MESA_DEPS])
|
AC_SUBST([GLUT_MESA_DEPS])
|
||||||
AC_SUBST([GLUT_CFLAGS])
|
AC_SUBST([GLUT_CFLAGS])
|
||||||
|
AC_SUBST([GLUT_PC_REQ_PRIV])
|
||||||
|
AC_SUBST([GLUT_PC_LIB_PRIV])
|
||||||
|
AC_SUBST([GLUT_PC_CFLAGS])
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl Program library dependencies
|
dnl Program library dependencies
|
||||||
@@ -1050,8 +1066,8 @@ else
|
|||||||
echo " DRI drivers: $dri_dirs"
|
echo " DRI drivers: $dri_dirs"
|
||||||
fi
|
fi
|
||||||
echo " DRI driver dir: $DRI_DRIVER_INSTALL_DIR"
|
echo " DRI driver dir: $DRI_DRIVER_INSTALL_DIR"
|
||||||
echo " TTM API support: $ttmapi"
|
|
||||||
fi
|
fi
|
||||||
|
echo " Use XCB: $enable_xcb"
|
||||||
|
|
||||||
dnl Libraries
|
dnl Libraries
|
||||||
echo ""
|
echo ""
|
||||||
|
@@ -16,7 +16,7 @@ Status
|
|||||||
|
|
||||||
Version
|
Version
|
||||||
|
|
||||||
Last Modified Date: 8 June 2000
|
Last Modified Date: 12 January 2009
|
||||||
|
|
||||||
Number
|
Number
|
||||||
|
|
||||||
@@ -69,6 +69,12 @@ Additions to Chapter 3 of the GLX 1.3 Specification (Functions and Errors)
|
|||||||
<width> and <height> indicate the size in pixels. Coordinate (0,0)
|
<width> and <height> indicate the size in pixels. Coordinate (0,0)
|
||||||
corresponds to the lower-left pixel of the window, like glReadPixels.
|
corresponds to the lower-left pixel of the window, like glReadPixels.
|
||||||
|
|
||||||
|
If dpy and drawable are the display and drawable for the calling
|
||||||
|
thread's current context, glXCopySubBufferMESA performs an
|
||||||
|
implicit glFlush before it returns. Subsequent OpenGL commands
|
||||||
|
may be issued immediately after calling glXCopySubBufferMESA, but
|
||||||
|
are not executed until the copy is completed.
|
||||||
|
|
||||||
GLX Protocol
|
GLX Protocol
|
||||||
|
|
||||||
None at this time. The extension is implemented in terms of ordinary
|
None at this time. The extension is implemented in terms of ordinary
|
||||||
@@ -84,5 +90,7 @@ New State
|
|||||||
|
|
||||||
Revision History
|
Revision History
|
||||||
|
|
||||||
8 June 2000 - initial specification
|
12 January 2009 Ian Romanick - Added language about implicit flush
|
||||||
|
and command completion.
|
||||||
|
8 June 2000 Brian Paul - initial specification
|
||||||
|
|
||||||
|
@@ -16,7 +16,6 @@ Status
|
|||||||
|
|
||||||
Version
|
Version
|
||||||
|
|
||||||
$Id: MESA_resize_buffers.spec,v 1.3 2004/03/25 01:42:42 brianp Exp $
|
|
||||||
|
|
||||||
Number
|
Number
|
||||||
|
|
||||||
|
@@ -19,7 +19,6 @@ Version
|
|||||||
|
|
||||||
Last Modified Date: July 30, 2006
|
Last Modified Date: July 30, 2006
|
||||||
Author Revision: 0.2
|
Author Revision: 0.2
|
||||||
$Date: 2006/07/30 14:28:38 $ $Revision: 1.2 $
|
|
||||||
|
|
||||||
Number
|
Number
|
||||||
|
|
||||||
|
@@ -20,7 +20,6 @@ Status
|
|||||||
|
|
||||||
Version
|
Version
|
||||||
|
|
||||||
$Date: 2007/05/16$ $Revision: 0.4$
|
|
||||||
|
|
||||||
Number
|
Number
|
||||||
|
|
||||||
|
@@ -16,7 +16,6 @@ Status
|
|||||||
|
|
||||||
Version
|
Version
|
||||||
|
|
||||||
$Id: MESA_window_pos.spec,v 1.4 2004/03/25 01:42:42 brianp Exp $
|
|
||||||
|
|
||||||
Number
|
Number
|
||||||
|
|
||||||
|
@@ -17,7 +17,6 @@ Status
|
|||||||
|
|
||||||
Version
|
Version
|
||||||
|
|
||||||
$Id: MESA_packed_depth_stencil.spec,v 1.2 2003/09/19 14:58:21 brianp Exp $
|
|
||||||
|
|
||||||
Number
|
Number
|
||||||
|
|
||||||
|
@@ -18,7 +18,6 @@ Version
|
|||||||
|
|
||||||
Last Modified Date: July 20, 2003
|
Last Modified Date: July 20, 2003
|
||||||
Author Revision: 1.0
|
Author Revision: 1.0
|
||||||
$Date: 2004/03/25 01:42:41 $ $Revision: 1.4 $
|
|
||||||
|
|
||||||
Number
|
Number
|
||||||
|
|
||||||
|
@@ -16,7 +16,6 @@ Status
|
|||||||
|
|
||||||
Version
|
Version
|
||||||
|
|
||||||
$Id: MESA_sprite_point.spec,v 1.2 2003/09/19 14:58:21 brianp Exp $
|
|
||||||
|
|
||||||
Number
|
Number
|
||||||
|
|
||||||
|
@@ -17,7 +17,6 @@ Status
|
|||||||
|
|
||||||
Version
|
Version
|
||||||
|
|
||||||
$Id: MESA_trace.spec,v 1.4 2004/03/25 01:42:42 brianp Exp $
|
|
||||||
|
|
||||||
Number
|
Number
|
||||||
|
|
||||||
|
@@ -134,4 +134,3 @@ as of February, 1999.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: README.BEOS,v 1.12 2004/10/13 00:35:55 phoudoin Exp $
|
|
||||||
|
@@ -205,4 +205,3 @@ http://www.linuxgames.com/quake2/
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: README.QUAKE,v 1.3 1998/08/23 15:26:26 brianp Exp $
|
|
||||||
|
@@ -143,4 +143,3 @@ code). Anyone want to help?
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-3.1,v 1.2 2000/04/07 17:08:06 brianp Exp $
|
|
||||||
|
@@ -9,4 +9,3 @@ have been added. For a list of bug fixes please read the VERSIONS file.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-3.2,v 1.2 2000/04/07 17:08:06 brianp Exp $
|
|
||||||
|
@@ -29,4 +29,3 @@ GLU library.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-3.2.1,v 1.2 2000/07/21 16:32:33 brianp Exp $
|
|
||||||
|
@@ -268,4 +268,3 @@ image convolution. This will (hopefully) be done for Mesa 3.5/3.6.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-3.3,v 1.8 2000/07/21 16:26:41 brianp Exp $
|
|
||||||
|
@@ -19,4 +19,3 @@ see the VERSIONS file.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-3.4,v 1.2 2002/03/23 02:37:17 brianp Exp $
|
|
||||||
|
@@ -19,4 +19,3 @@ the Mesa 3.4 release. For details, see the VERSIONS file.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-3.4.1,v 1.2 2001/05/23 14:45:01 brianp Exp $
|
|
||||||
|
@@ -19,4 +19,3 @@ the Mesa 3.4.1 release. For details, see the VERSIONS file.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-3.4.2,v 1.2 2001/05/23 14:45:01 brianp Exp $
|
|
||||||
|
@@ -225,4 +225,3 @@ In the future I hope to implement support for 32-bit, floating point
|
|||||||
color channels.
|
color channels.
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-3.5,v 1.14 2001/06/20 19:02:48 brianp Exp $
|
|
||||||
|
@@ -160,4 +160,3 @@ See the VERSIONS file for more details about bug fixes, etc. in Mesa 4.0.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-4.0,v 3.2 2001/10/17 14:59:21 brianp Exp $
|
|
||||||
|
@@ -19,4 +19,3 @@ Mesa 4.0.1 only contains bug fixes since version 4.0.
|
|||||||
See the docs/VERSIONS file for the list of bug fixes.
|
See the docs/VERSIONS file for the list of bug fixes.
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-4.0.1,v 1.2 2001/12/18 14:08:23 brianp Exp $
|
|
||||||
|
@@ -47,4 +47,3 @@ D3D needs updating
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-4.0.2,v 1.2 2002/03/23 02:38:39 brianp Exp $
|
|
||||||
|
@@ -49,4 +49,3 @@ D3D needs updating
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-4.0.3,v 1.2 2002/06/26 02:36:34 brianp Exp $
|
|
||||||
|
@@ -305,4 +305,3 @@ are some things to change:
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-4.1,v 1.22 2002/10/29 15:06:37 brianp Exp $
|
|
||||||
|
@@ -82,4 +82,3 @@ driver call the _mesa_enable_1_4_extensions() function.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-5.0,v 3.2 2002/11/13 15:33:51 brianp Exp $
|
|
||||||
|
@@ -43,4 +43,3 @@ driver call the _mesa_enable_1_4_extensions() function.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-5.0.1,v 3.1 2003/03/30 16:17:54 brianp Exp $
|
|
||||||
|
@@ -43,4 +43,3 @@ driver call the _mesa_enable_1_4_extensions() function.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-5.0.2,v 1.1 2003/09/04 23:10:38 brianp Exp $
|
|
||||||
|
@@ -84,4 +84,3 @@ See the VERSIONS file for more details about bug fixes, etc. in Mesa 6.0.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-6.0,v 1.3 2004/01/15 15:47:57 brianp Exp $
|
|
||||||
|
@@ -47,4 +47,3 @@ D3D needs updating
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-6.0.1,v 3.1 2004/04/02 23:37:02 brianp Exp $
|
|
||||||
|
@@ -109,4 +109,3 @@ See the VERSIONS file for more details about bug fixes, etc. in Mesa 6.1.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-6.1,v 3.5 2004/08/17 22:58:23 brianp Exp $
|
|
||||||
|
@@ -49,4 +49,3 @@ D3D needs updating
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-6.2,v 3.4 2004/10/02 15:43:14 brianp Exp $
|
|
||||||
|
@@ -47,4 +47,3 @@ D3D needs updating
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-6.2.1,v 3.1 2004/12/09 23:21:36 brianp Exp $
|
|
||||||
|
@@ -112,4 +112,3 @@ D3D needs updating
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-6.3,v 3.13 2005/07/21 15:57:29 brianp Exp $
|
|
||||||
|
@@ -46,4 +46,3 @@ D3D needs updating
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-6.3.1,v 3.1 2005/07/21 18:45:54 brianp Exp $
|
|
||||||
|
@@ -34,4 +34,3 @@ D3D needs updating
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-6.3.2,v 3.2 2005/08/19 16:57:50 brianp Exp $
|
|
||||||
|
@@ -47,4 +47,3 @@ in Mesa 6.3.
|
|||||||
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
$Id: RELNOTES-6.4,v 3.1 2005/10/24 23:33:27 brianp Exp $
|
|
||||||
|
@@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
<BODY>
|
<BODY>
|
||||||
|
|
||||||
<H1>Mesa Cell Driver</H1>
|
<H1>Mesa/Gallium Cell Driver</H1>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
The Mesa
|
The Mesa
|
||||||
@@ -23,18 +23,19 @@ Two phases are planned.
|
|||||||
First, to implement the framework for parallel rasterization using the Cell
|
First, to implement the framework for parallel rasterization using the Cell
|
||||||
SPEs, including texture mapping.
|
SPEs, including texture mapping.
|
||||||
Second, to implement a full-featured OpenGL driver with support for GLSL, etc.
|
Second, to implement a full-featured OpenGL driver with support for GLSL, etc.
|
||||||
|
The second phase is now underway.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
|
||||||
<H2>Source Code</H2>
|
<H2>Source Code</H2>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
The Cell driver source code is on the <code>gallium-0.1</code> branch of the
|
The latest Cell driver source code is on the <code>gallium-0.2</code> branch
|
||||||
git repository.
|
of the Mesa git repository.
|
||||||
After you've cloned the repository, check out the branch with:
|
After you've cloned the repository, check out the branch with:
|
||||||
</p>
|
</p>
|
||||||
<pre>
|
<pre>
|
||||||
git-checkout -b gallium-0.1 origin/gallium-0.1
|
git-checkout -b gallium-0.2 origin/gallium-0.2
|
||||||
</pre>
|
</pre>
|
||||||
<p>
|
<p>
|
||||||
To build the driver you'll need the IBM Cell SDK (version 2.1 or 3.0).
|
To build the driver you'll need the IBM Cell SDK (version 2.1 or 3.0).
|
||||||
@@ -43,12 +44,13 @@ or the Cell Simulator (untested, though).
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
If using Cell SDK 3.0, first edit configs/linux-cell and add
|
If using Cell SDK 2.1, see the configs/linux-cell file for some
|
||||||
<code>-DSPU_MAIN_PARAM_LONG_LONG</code> to the SPU_CFLAGS.
|
special changes.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
To compile the code, run <code>make linux-cell</code>.
|
To compile the code, run <code>make linux-cell</code>.
|
||||||
|
To build in debug mode, run <code>make linux-cell-debug</code>.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
@@ -60,7 +62,7 @@ directory that contains <code>libGL.so</code>.
|
|||||||
Verify that the Cell driver is being used by running <code>glxinfo</code>
|
Verify that the Cell driver is being used by running <code>glxinfo</code>
|
||||||
and looking for:
|
and looking for:
|
||||||
<pre>
|
<pre>
|
||||||
OpenGL renderer string: Gallium 0.1, Cell on Xlib
|
OpenGL renderer string: Gallium 0.2, Cell on Xlib
|
||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
|
|
||||||
@@ -77,21 +79,61 @@ SPU local store as needed.
|
|||||||
Similarly, textures are tiled and brought into local store as needed.
|
Similarly, textures are tiled and brought into local store as needed.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
|
||||||
More recently, vertex transformation has been parallelized across the SPUs
|
|
||||||
as well.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<H2>Status</H2>
|
<H2>Status</H2>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
As of February 2008 the driver supports smooth/flat shaded triangle rendering
|
As of October 2008, the driver runs quite a few OpenGL demos.
|
||||||
with Z testing and simple texture mapping.
|
Features that work include:
|
||||||
Simple demos like gears run successfully.
|
|
||||||
To test texture mapping, try progs/demos/texcyl (press right mouse button for
|
|
||||||
rendering options).
|
|
||||||
</p>
|
</p>
|
||||||
|
<ul>
|
||||||
|
<li>Point/line/triangle rendering, glDrawPixels
|
||||||
|
<li>2D, NPOT and cube texture maps with nearest/linear/mipmap filtering
|
||||||
|
<li>Dynamic SPU code generation for fragment shaders, but not complete
|
||||||
|
<li>Dynamic SPU code generation for fragment ops (blend, Z-test, etc), but not complete
|
||||||
|
<li>Dynamic PPU/PPC code generation for vertex shaders, but not complete
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
Performance has recently improved with the addition of PPC code generation
|
||||||
|
for vertex shaders, but the code quality isn't too great yet.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Another bottleneck is SwapBuffers. It may be the limiting factor for
|
||||||
|
many simple GL tests.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<H2>Debug Options</H2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The CELL_DEBUG env var can be set to a comma-separated list of one or
|
||||||
|
more of the following debug options:
|
||||||
|
</p>
|
||||||
|
<ul>
|
||||||
|
<li><b>checker</b> - use a different background clear color for each SPU.
|
||||||
|
This lets you see which SPU is rendering which screen tiles.
|
||||||
|
<li><b>sync</b> - wait/synchronize after each DMA transfer
|
||||||
|
<li><b>asm</b> - print generated SPU assembly code to stdout
|
||||||
|
<li><b>fragops</b> - emit fragment ops debug messages
|
||||||
|
<li><b>fragopfallback</b> - don't use codegen for fragment ops
|
||||||
|
<li><b>cmd</b> - print SPU commands as their received
|
||||||
|
<li><b>cache</b> - print texture cache statistics when program exits
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
Note that some of these options may only work for linux-cell-debug builds.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
If the GALLIUM_NOPPC env var is set, PPC code generation will not be used
|
||||||
|
and vertex shaders will be run with the TGSI interpreter.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
If the GALLIUM_NOCELL env var is set, the softpipe driver will be used
|
||||||
|
intead of the Cell driver.
|
||||||
|
This is useful for comparison/validation.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<H2>Contributing</H2>
|
<H2>Contributing</H2>
|
||||||
|
@@ -37,8 +37,8 @@ a:visited {
|
|||||||
|
|
||||||
<b>Download / Install</b>
|
<b>Download / Install</b>
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="download.html" target="MainFrame">Downloading/Unpacking</a>
|
<li><a href="download.html" target="MainFrame">Downloading / Unpacking</a>
|
||||||
<li><a href="install.html" target="MainFrame">Compilation/Installation</a>
|
<li><a href="install.html" target="MainFrame">Compiling / Installing</a>
|
||||||
<li><a href="glu.html" target="MainFrame">SGI's GLU</a>
|
<li><a href="glu.html" target="MainFrame">SGI's GLU</a>
|
||||||
<li><a href="precompiled.html" target="MainFrame">Precompiled Libraries</a>
|
<li><a href="precompiled.html" target="MainFrame">Precompiled Libraries</a>
|
||||||
</ul>
|
</ul>
|
||||||
@@ -48,7 +48,7 @@ a:visited {
|
|||||||
<li><a href="lists.html" target="MainFrame">Mailing Lists</a>
|
<li><a href="lists.html" target="MainFrame">Mailing Lists</a>
|
||||||
<li><a href="bugs.html" target="MainFrame">Bug Database</a>
|
<li><a href="bugs.html" target="MainFrame">Bug Database</a>
|
||||||
<li><a href="webmaster.html" target="MainFrame">Webmaster</a>
|
<li><a href="webmaster.html" target="MainFrame">Webmaster</a>
|
||||||
<li><a href="http://dri.freedesktop.org/" target="MainFrame">Wiki</a>
|
<li><a href="http://dri.freedesktop.org/" target="_parent">Mesa/DRI Wiki</a>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<b>User Topics</b>
|
<b>User Topics</b>
|
||||||
|
@@ -9,9 +9,9 @@
|
|||||||
<H1>Downloading</H1>
|
<H1>Downloading</H1>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Current development release: <b>7.1</b>
|
Current stable release: <b>7.4</b>
|
||||||
<br>
|
<br>
|
||||||
Last stable release: <b>7.0.4</b>
|
Last unstable/development release: <b>7.3</b>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
|
@@ -29,7 +29,7 @@ Setting this variable automatically sets the MESA_TEX_PROG variable as well.
|
|||||||
|
|
||||||
<p>
|
<p>
|
||||||
The following are only applicable to the Xlib software driver.
|
The following are only applicable to the Xlib software driver.
|
||||||
See <A HREF="README.X11">README.X11</A> for details.
|
See the <A HREF="xlibdriver.html">Xlib software driver page</A> for details.
|
||||||
</p>
|
</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>MESA_RGB_VISUAL - specifies the X visual and depth for RGB mode
|
<li>MESA_RGB_VISUAL - specifies the X visual and depth for RGB mode
|
||||||
|
@@ -15,17 +15,40 @@ Here are some specific ideas and areas where help would be appreciated:
|
|||||||
|
|
||||||
<ol>
|
<ol>
|
||||||
<li>
|
<li>
|
||||||
Enable -Wstrict-aliasing=2 -fstrict-aliasing and track down aliasing
|
<b>Driver patching and testing.</b>
|
||||||
|
Patches are often posted to the mesa3d-dev mailing list, but aren't
|
||||||
|
immediately checked into git because not enough people are testing them.
|
||||||
|
Just applying patches, testing and reporting back is helpful.
|
||||||
|
<li>
|
||||||
|
<b>Driver debugging.</b>
|
||||||
|
There are plenty of open bugs in the bug database.
|
||||||
|
<li>
|
||||||
|
<b>Remove aliasing warnings.</b>
|
||||||
|
Enable gcc -Wstrict-aliasing=2 -fstrict-aliasing and track down aliasing
|
||||||
issues in the code.
|
issues in the code.
|
||||||
<li>
|
<li>
|
||||||
Windows 98/NT driver building, maintenance and testing
|
<b>Windows driver building, testing and maintenance.</b>
|
||||||
|
The Visual Studio project files aren't always updated in a timely manner
|
||||||
|
when new source files are added or old ones are removed.
|
||||||
|
Fixing these tends to delay new Mesa releases.
|
||||||
<li>
|
<li>
|
||||||
Maintenance and testing of lesser-used drivers, such as DOS/DJGPP, GGI, etc.
|
<b>Maintenance and testing of lesser-used drivers.</b>
|
||||||
|
Drivers such as DOS/DJGPP, GGI, etc that aren't being maintained are being
|
||||||
|
deprecated starting in Mesa 7.3.
|
||||||
|
<li>
|
||||||
|
<b>Contribute more tests to
|
||||||
|
<a href="http://glean.sourceforge.net/" target="_parent">glean</a>.</b>
|
||||||
|
<li>
|
||||||
|
<b>Automatic testing.
|
||||||
|
</b>
|
||||||
|
It would be great if someone would set up an automated system for grabbing
|
||||||
|
the latest Mesa code and run tests (such as glean) then report issues to
|
||||||
|
the mailing list.
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
If you want to help with Mesa, first join the Mesa developer's
|
If you want to do something new in Mesa, first join the Mesa developer's
|
||||||
mailing list.
|
mailing list.
|
||||||
Then post a message to propose what you want to do, just to make sure
|
Then post a message to propose what you want to do, just to make sure
|
||||||
there's no issues.
|
there's no issues.
|
||||||
|
@@ -1,58 +1,73 @@
|
|||||||
<HTML>
|
<HTML>
|
||||||
|
|
||||||
<TITLE>Compilation and Installation</TITLE>
|
<TITLE>Compiling and Installing</TITLE>
|
||||||
|
|
||||||
<link rel="stylesheet" type="text/css" href="mesa.css"></head>
|
<link rel="stylesheet" type="text/css" href="mesa.css"></head>
|
||||||
|
|
||||||
<BODY>
|
<BODY>
|
||||||
|
|
||||||
|
|
||||||
<H1>Compilation and Installation</H1>
|
<H1>Compiling and Installing</H1>
|
||||||
|
|
||||||
<ol>
|
<ol>
|
||||||
<li><a href="#unix-x11">Unix / X11</a>
|
<li><a href="#unix-x11">Unix / X11</a>
|
||||||
|
<ul>
|
||||||
|
<li><a href="#prereq">Prerequisites for DRI and hardware acceleration</a>
|
||||||
|
<li><a href="#autoconf">Building with autoconf</a>
|
||||||
|
<li><a href="#traditional">Building with traditional Makefiles</a>
|
||||||
|
<li><a href="#libs">The Libraries</a>
|
||||||
|
<li><a href="#demos">Running the demos
|
||||||
|
<li><a href="#install">Installing the header and library files
|
||||||
|
<li><a href="#pkg-config">Building OpenGL programs with pkg-config
|
||||||
|
</ul>
|
||||||
<li><a href="#windows">Windows</a>
|
<li><a href="#windows">Windows</a>
|
||||||
<li><a href="#vms">VMS</a>
|
|
||||||
<li><a href="#other">Other</a>
|
<li><a href="#other">Other</a>
|
||||||
</ol>
|
</ol>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
|
||||||
<a name="unix-x11">
|
<a name="unix-x11">
|
||||||
<H2>1. Unix/X11 Compilation and Installation</H1>
|
<H2>1. Unix/X11 Compilation and Installation</H1>
|
||||||
|
|
||||||
|
|
||||||
<h3>1.1 Prerequisites for DRI and Hardware Acceleration</h3>
|
<a name="prereq">
|
||||||
|
<h3>1.1 Prerequisites for DRI and hardware acceleration</h3>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
To build Mesa 7.1 with DRI-based hardware acceleration you must first have
|
The following are required for DRI-based hardware acceleration with Mesa 7.3:
|
||||||
the <a href="http://dri.freedesktop.org/libdrm/" target="_parent">DRM version 2.3.1</a>.
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<ul>
|
||||||
You should also be using the Xorg server version 1.4 or 1.5.
|
<li><a href="http://xorg.freedesktop.org/releases/individual/proto/">dri2proto</a> version 1.99.3 or later
|
||||||
|
<li>Linux 2.6.28
|
||||||
|
<li><a href="http://dri.freedesktop.org/libdrm/" target="_parent">libDRM</a>
|
||||||
|
version 2.4.3 or later
|
||||||
|
<li>Xorg server version 1.5 or later
|
||||||
|
</ul>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<a name="autoconf">
|
||||||
<h3>1.2 Autoconf Compilation</h3>
|
<h3>1.2 Building with Autoconf</h3>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Mesa may be <a href="autoconf.html">built using autoconf</a>.
|
Mesa may be <a href="autoconf.html">built using autoconf</a>.
|
||||||
This should work well on most GNU-based systems.
|
This should work well on most GNU-based systems.
|
||||||
When that fails, the traditional Mesa build system is available.
|
If that fails the traditional Mesa build system is available.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<h3>1.3 Traditional Compilation</h3>
|
<a name="traditional">
|
||||||
|
<h3>1.3 Building with traditional Makefiles</h3>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
The traditional Mesa build system is based on a collection of pre-defined
|
The traditional Mesa build system is based on a collection of pre-defined
|
||||||
system configurations.
|
system configurations.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
To see the list of configurations, type <b>make</b> alone.
|
To see the list of configurations, just type <code>make</code>.
|
||||||
Then choose a configuration from the list and type <b>make configname</b>.
|
Then choose a configuration from the list and type <code>make</code>
|
||||||
|
<em>configname</em>.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
@@ -66,7 +81,7 @@ allow you to run OpenGL/GLX applications on any X server (regardless of
|
|||||||
whether it supports the GLX X server extension).
|
whether it supports the GLX X server extension).
|
||||||
You will <em>not</em> be able to use hardware 3D acceleration.
|
You will <em>not</em> be able to use hardware 3D acceleration.
|
||||||
<p>
|
<p>
|
||||||
To compile stand-alone Mesa type <b>make</b> in the top-level directory.
|
To compile stand-alone Mesa type <code>make</code> in the top-level directory.
|
||||||
You'll see a list of supported system configurations.
|
You'll see a list of supported system configurations.
|
||||||
Choose one from the list (such as linux-x86), and type:
|
Choose one from the list (such as linux-x86), and type:
|
||||||
</p>
|
</p>
|
||||||
@@ -109,6 +124,7 @@ Later, if you want to rebuild for a different configuration run
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<a name="libs">
|
||||||
<h3>1.4 The libraries</h3>
|
<h3>1.4 The libraries</h3>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
@@ -169,6 +185,7 @@ If you built the DRI hardware drivers, you'll also see the DRI drivers:
|
|||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
|
|
||||||
|
<a name="demos">
|
||||||
<h3>1.5 Running the demos</h3>
|
<h3>1.5 Running the demos</h3>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
@@ -244,6 +261,7 @@ Retrace your steps if this doesn't look right.
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<a name="install">
|
||||||
<H3>1.6 Installing the header and library files</H3>
|
<H3>1.6 Installing the header and library files</H3>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
@@ -284,7 +302,8 @@ This is a handy way to compare multiple OpenGL implementations.
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
|
||||||
<H3>1.7 Building OpenGL Programs With pkg-config</H3>
|
<a name="pkg-config">
|
||||||
|
<H3>1.7 Building OpenGL programs with pkg-config</H3>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Running <code>make install</code> will install package configuration files
|
Running <code>make install</code> will install package configuration files
|
||||||
@@ -314,25 +333,15 @@ Please see the <a href="README.WIN32">README.WIN32</a> file.
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a name="vms">
|
|
||||||
<H2>3. VMS Compilation and Installation</H1>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Please see the <a href="README.VMS">README.VMS</a> file.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a name="other">
|
<a name="other">
|
||||||
<H2>4. Other systems</H1>
|
<H2>3. Other systems</H1>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Documentation for other environments (some may be very out of date):
|
Documentation for other environments (some may be very out of date):
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<UL>
|
<UL>
|
||||||
|
<li><A HREF="README.VMS">README.VMS</A> - VMS
|
||||||
<LI><A HREF="README.GGI">README.GGI</A> - GGI
|
<LI><A HREF="README.GGI">README.GGI</A> - GGI
|
||||||
<LI><A HREF="README.3DFX">README.3DFX</A> - 3Dfx/Glide driver
|
<LI><A HREF="README.3DFX">README.3DFX</A> - 3Dfx/Glide driver
|
||||||
<LI><A HREF="README.AMIWIN">README.AMIWIN</A> - Amiga Amiwin
|
<LI><A HREF="README.AMIWIN">README.AMIWIN</A> - Amiga Amiwin
|
||||||
|
@@ -11,6 +11,28 @@
|
|||||||
<H1>News</H1>
|
<H1>News</H1>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>March ??, 2009</h2>
|
||||||
|
<p>
|
||||||
|
<a href="relnotes-7.4.html">Mesa 7.4</a> is released.
|
||||||
|
This is a stable release fixing bugs since the 7.3 release.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>January 22, 2009</h2>
|
||||||
|
<p>
|
||||||
|
<a href="relnotes-7.3.html">Mesa 7.3</a> is released.
|
||||||
|
This is a new development release.
|
||||||
|
Mesa 7.4 will follow and will have bug fixes relative to 7.3.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>September 20, 2008</h2>
|
||||||
|
<p>
|
||||||
|
<a href="relnotes-7.2.html">Mesa 7.2</a> is released.
|
||||||
|
This is a stable, bug-fix release.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
<h2>August 26, 2008</h2>
|
<h2>August 26, 2008</h2>
|
||||||
<p>
|
<p>
|
||||||
<a href="relnotes-7.1.html">Mesa 7.1</a> is released.
|
<a href="relnotes-7.1.html">Mesa 7.1</a> is released.
|
||||||
@@ -1180,6 +1202,5 @@ source code</a>.</p>
|
|||||||
|
|
||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
$Id: news.html,v 3.33 2006/12/02 18:18:41 brianp Exp $
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
@@ -28,7 +28,15 @@ DRM version 2.3.1 should be used with Mesa 7.1
|
|||||||
|
|
||||||
<h2>MD5 checksums</h2>
|
<h2>MD5 checksums</h2>
|
||||||
<pre>
|
<pre>
|
||||||
TBD
|
971c2fe6e6949dc5ba200a6f97a6dc81 MesaLib-7.1.tar.gz
|
||||||
|
6bff7f532d16f90f944a400c8bd7074d MesaLib-7.1.tar.bz2
|
||||||
|
d48224bf9d54c3da6776adb4869ba024 MesaLib-7.1.zip
|
||||||
|
3de268420efca43e9a19ab506cdfc993 MesaDemos-7.1.tar.gz
|
||||||
|
abfc9775e1462363af8ec160d1feb01f MesaDemos-7.1.tar.bz2
|
||||||
|
f7b3623387c4036e9895cd9ac0dfad99 MesaDemos-7.1.zip
|
||||||
|
fdf348f78cd09304b6ff801ef8acc8eb MesaGLUT-7.1.tar.gz
|
||||||
|
f6d88a4eeb02e98c7e92f1c895d3c76b MesaGLUT-7.1.tar.bz2
|
||||||
|
4dc102a5ca51e1c41dde87d3f8c7b22a MesaGLUT-7.1.zip
|
||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
|
|
||||||
|
104
docs/relnotes-7.2.html
Normal file
104
docs/relnotes-7.2.html
Normal file
@@ -0,0 +1,104 @@
|
|||||||
|
<HTML>
|
||||||
|
|
||||||
|
<TITLE>Mesa Release Notes</TITLE>
|
||||||
|
|
||||||
|
<head><link rel="stylesheet" type="text/css" href="mesa.css"></head>
|
||||||
|
|
||||||
|
<BODY>
|
||||||
|
|
||||||
|
<body bgcolor="#eeeeee">
|
||||||
|
|
||||||
|
<H1>Mesa 7.2 Release Notes / 20 September 2008</H1>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Mesa 7.2 is a stable release fixing bugs found in 7.1, which was a
|
||||||
|
new development release.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Mesa 7.2 implements the OpenGL 2.1 API, but the version reported by
|
||||||
|
glGetString(GL_VERSION) depends on the particular driver being used.
|
||||||
|
Some drivers don't support all the features required in OpenGL 2.1.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Note that this version of Mesa does not use the GEM memory manager.
|
||||||
|
The master branch of git uses GEM.
|
||||||
|
The prototype DRI2 code that was in 7.1 has also been removed.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
DRM version 2.3.1 should be used with Mesa 7.2
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>MD5 checksums</h2>
|
||||||
|
<pre>
|
||||||
|
81a2a4b7cbfce7553f7ad8d924edbe2f MesaLib-7.2.tar.gz
|
||||||
|
04d379292e023df0b0266825cb0dbde5 MesaLib-7.2.tar.bz2
|
||||||
|
8bc497a37977a55e987a4d1fabc3d882 MesaLib-7.2.zip
|
||||||
|
10c762e39486df395838af1d7b57e69c MesaDemos-7.2.tar.gz
|
||||||
|
22e03dc4038cd63f32c21eb60994892b MesaDemos-7.2.tar.bz2
|
||||||
|
1197bc4eb3bf44e291c14d4eb2e19381 MesaDemos-7.2.zip
|
||||||
|
42e3c6c6d156cd9dc545dbef72407354 MesaGLUT-7.2.tar.gz
|
||||||
|
f67daf93e12c4a459703bbf3e4004e31 MesaGLUT-7.2.tar.bz2
|
||||||
|
0390567eb2c2d12fbf82e8523fd77e2b MesaGLUT-7.2.zip
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>New features</h2>
|
||||||
|
<ul>
|
||||||
|
<li>i965 driver: added support for G41 chipset (Intel)
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Bug fixes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Fixed display list bug involving primitives split across lists (bug 17564)
|
||||||
|
<li>Fixed some issues with glBindAttribLocation()
|
||||||
|
<li>Fixed crash in _tnl_InvalidateState() found with Amira (bug 15834)
|
||||||
|
<li>Assorted bug fixes for Ming build
|
||||||
|
<li>Fixed some vertex/pixel buffer object reference counting bugs
|
||||||
|
<li>Fixed depth/stencil bug in i915/945 driver
|
||||||
|
<li>Fixed some shader flow control bugs in i965 driver
|
||||||
|
<li>Fixed a few tdfx driver bugs which prevented driver from working
|
||||||
|
<li>Fixed multisample enable/disable bug
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Changes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Updated SGI header files with new license terms.
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h2>To Do (someday) items</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Remove the MEMCPY() and _mesa_memcpy() wrappers and just use memcpy().
|
||||||
|
Probably do the same for malloc, calloc, etc.
|
||||||
|
The wrappers were useful in the past for memory debugging but now we
|
||||||
|
have valgrind. Not worried about SunOS 4 support anymore either...
|
||||||
|
<li>Switch to freeglut
|
||||||
|
<li>Fix linux-glide target/driver.
|
||||||
|
<li>Improved lambda and derivative calculation for frag progs.
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Driver Status</h2>
|
||||||
|
|
||||||
|
<pre>
|
||||||
|
Driver Status
|
||||||
|
---------------------- ----------------------
|
||||||
|
DRI drivers varies with the driver
|
||||||
|
XMesa/GLX (on Xlib) implements OpenGL 2.1
|
||||||
|
OSMesa (off-screen) implements OpenGL 2.1
|
||||||
|
Windows/Win32 implements OpenGL 2.1
|
||||||
|
Glide (3dfx Voodoo1/2) implements OpenGL 1.3
|
||||||
|
SVGA unsupported
|
||||||
|
Wind River UGL unsupported
|
||||||
|
DJGPP unsupported
|
||||||
|
GGI unsupported
|
||||||
|
BeOS unsupported
|
||||||
|
Allegro unsupported
|
||||||
|
D3D unsupported
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
93
docs/relnotes-7.3.html
Normal file
93
docs/relnotes-7.3.html
Normal file
@@ -0,0 +1,93 @@
|
|||||||
|
<HTML>
|
||||||
|
|
||||||
|
<TITLE>Mesa Release Notes</TITLE>
|
||||||
|
|
||||||
|
<head><link rel="stylesheet" type="text/css" href="mesa.css"></head>
|
||||||
|
|
||||||
|
<BODY>
|
||||||
|
|
||||||
|
<body bgcolor="#eeeeee">
|
||||||
|
|
||||||
|
<H1>Mesa 7.3 Release Notes / 22 January 2009</H1>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Mesa 7.3 is a new development release.
|
||||||
|
Users especially concerned with stability should stick with latest
|
||||||
|
stable release: version 7.2.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Mesa 7.3 implements the OpenGL 2.1 API, but the version reported by
|
||||||
|
glGetString(GL_VERSION) depends on the particular driver being used.
|
||||||
|
Some drivers don't support all the features required in OpenGL 2.1.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
See the <a href="install.html">Compiling/Installing page</a> for prerequisites
|
||||||
|
for DRI hardware acceleration.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>MD5 checksums</h2>
|
||||||
|
<pre>
|
||||||
|
8ed03191432b22d118d88d6db497f304 MesaLib-7.3.tar.gz
|
||||||
|
781e7811a6ed5c97b2b8defefc8ffbc9 MesaLib-7.3.tar.bz2
|
||||||
|
3ccba9a1734ed6d4b3389e1535d90fbf MesaLib-7.3.zip
|
||||||
|
d312e974b31043b13b61bac5fbf00b87 MesaDemos-7.3.tar.gz
|
||||||
|
3f0741394069bdf2329565a387396cda MesaDemos-7.3.tar.bz2
|
||||||
|
4d0887fd4c66a824295cdd619f6d34cb MesaDemos-7.3.zip
|
||||||
|
2d7661b66022bcb8878728f3d5bd33ab MesaGLUT-7.3.tar.gz
|
||||||
|
abe8036a724c1a483bdad6b5a55ddc1a MesaGLUT-7.3.tar.bz2
|
||||||
|
5f247819b47e2a7c62d07a6afe5262fb MesaGLUT-7.3.zip
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>New features</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Support for GLSL 1.20
|
||||||
|
<li>Intel DRI drivers now use GEM and DRI2
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Bug fixes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Assorted GLSL bug fixes
|
||||||
|
<li>Assorted i965 driver fixes
|
||||||
|
<li>Fix for wglCreateLayerContext() in WGL/Windows driver
|
||||||
|
<li>Build fixes for OpenBSD and gcc 2.95
|
||||||
|
<li>GLSL preprocessor handles #pragma now
|
||||||
|
<li>Fix incorrect transformation of GL_SPOT_DIRECTION
|
||||||
|
<li>Fixed several bugs (#18367 and #19625) in glXMakeContextCurrent()
|
||||||
|
<li>Assorted Windows build fixes
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Changes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Deprecated the "XMesa" interface (include/GL/xmesa*.h files)
|
||||||
|
<li>Deprecated the "FXMesa" interface (include/GL/fxmesa.h file)
|
||||||
|
<li>Deprecated the "Allegro" interface (include/GL/amesa.h file)
|
||||||
|
<li>Removed include/GL/uglmesa.h header
|
||||||
|
<li>Removed include/GLView.h header for BeOS
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Driver Status</h2>
|
||||||
|
|
||||||
|
<pre>
|
||||||
|
Driver Status
|
||||||
|
---------------------- ----------------------
|
||||||
|
DRI drivers varies with the driver
|
||||||
|
XMesa/GLX (on Xlib) implements OpenGL 2.1
|
||||||
|
OSMesa (off-screen) implements OpenGL 2.1
|
||||||
|
Windows/Win32 implements OpenGL 2.1
|
||||||
|
Glide (3dfx Voodoo1/2) implements OpenGL 1.3
|
||||||
|
SVGA unsupported
|
||||||
|
Wind River UGL unsupported
|
||||||
|
DJGPP unsupported
|
||||||
|
GGI unsupported
|
||||||
|
BeOS unsupported
|
||||||
|
Allegro unsupported
|
||||||
|
D3D unsupported
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
81
docs/relnotes-7.4.html
Normal file
81
docs/relnotes-7.4.html
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
<HTML>
|
||||||
|
|
||||||
|
<TITLE>Mesa Release Notes</TITLE>
|
||||||
|
|
||||||
|
<head><link rel="stylesheet" type="text/css" href="mesa.css"></head>
|
||||||
|
|
||||||
|
<BODY>
|
||||||
|
|
||||||
|
<body bgcolor="#eeeeee">
|
||||||
|
|
||||||
|
<H1>Mesa 7.4 Release Notes / date TBD</H1>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Mesa 7.4 is a stable development release fixing bugs since the 7.3 release.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Mesa 7.4 implements the OpenGL 2.1 API, but the version reported by
|
||||||
|
glGetString(GL_VERSION) depends on the particular driver being used.
|
||||||
|
Some drivers don't support all the features required in OpenGL 2.1.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
See the <a href="install.html">Compiling/Installing page</a> for prerequisites
|
||||||
|
for DRI ardware acceleration.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>MD5 checksums</h2>
|
||||||
|
<pre>
|
||||||
|
tbd
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>New features</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Added MESA_GLX_FORCE_DIRECT env var for Xlib/software driver
|
||||||
|
<li>GLSL version 1.20 is returnd by the GL_SHADING_LANGUAGE_VERSION query
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Bug fixes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>glGetActiveUniform() returned wrong size for some array types
|
||||||
|
<li>Fixed some error checking in glUniform()
|
||||||
|
<li>Fixed a potential glTexImage('proxy target') segfault
|
||||||
|
<li>Fixed bad reference counting for 1D/2D texture arrays
|
||||||
|
<li>Fixed VBO + glPush/PopClientAttrib() bug #19835
|
||||||
|
<li>Assorted i965 driver bug fixes
|
||||||
|
<li>Fixed a Windows compilation failure in s_triangle.c
|
||||||
|
<li>Fixed a GLSL array indexing bug
|
||||||
|
<li>Fixes for building on Haiku
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Changes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Updated GL/glxext.h to version 48
|
||||||
|
<li>Assorted updates for building on Solaris
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Driver Status</h2>
|
||||||
|
|
||||||
|
<pre>
|
||||||
|
Driver Status
|
||||||
|
---------------------- ----------------------
|
||||||
|
DRI drivers varies with the driver
|
||||||
|
XMesa/GLX (on Xlib) implements OpenGL 2.1
|
||||||
|
OSMesa (off-screen) implements OpenGL 2.1
|
||||||
|
Windows/Win32 implements OpenGL 2.1
|
||||||
|
Glide (3dfx Voodoo1/2) implements OpenGL 1.3
|
||||||
|
SVGA unsupported
|
||||||
|
Wind River UGL unsupported
|
||||||
|
DJGPP unsupported
|
||||||
|
GGI unsupported
|
||||||
|
BeOS unsupported
|
||||||
|
Allegro unsupported
|
||||||
|
D3D unsupported
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
@@ -20,6 +20,9 @@ The release notes summarize what's new or changed in each Mesa release.
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
<UL>
|
<UL>
|
||||||
|
<LI><A HREF="relnotes-7.4.html">7.4 release notes</A>
|
||||||
|
<LI><A HREF="relnotes-7.3.html">7.3 release notes</A>
|
||||||
|
<LI><A HREF="relnotes-7.2.html">7.2 release notes</A>
|
||||||
<LI><A HREF="relnotes-7.1.html">7.1 release notes</A>
|
<LI><A HREF="relnotes-7.1.html">7.1 release notes</A>
|
||||||
<LI><A HREF="relnotes-7.0.4.html">7.0.4 release notes</A>
|
<LI><A HREF="relnotes-7.0.4.html">7.0.4 release notes</A>
|
||||||
<LI><A HREF="relnotes-7.0.3.html">7.0.3 release notes</A>
|
<LI><A HREF="relnotes-7.0.3.html">7.0.3 release notes</A>
|
||||||
|
@@ -15,23 +15,46 @@ OpenGL Shading Language</a>.
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Last updated on 28 March 2007.
|
Last updated on 15 December 2008.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Contents
|
Contents
|
||||||
</p>
|
</p>
|
||||||
<ul>
|
<ul>
|
||||||
|
<li><a href="#120">GLSL 1.20 support</a>
|
||||||
<li><a href="#unsup">Unsupported Features</a>
|
<li><a href="#unsup">Unsupported Features</a>
|
||||||
<li><a href="#notes">Implementation Notes</a>
|
<li><a href="#notes">Implementation Notes</a>
|
||||||
<li><a href="#hints">Programming Hints</a>
|
<li><a href="#hints">Programming Hints</a>
|
||||||
<li><a href="#standalone">Stand-alone GLSL Compiler</a>
|
<li><a href="#standalone">Stand-alone GLSL Compiler</a>
|
||||||
<li><a href="#implementation">Compiler Implementation</a>
|
<li><a href="#implementation">Compiler Implementation</a>
|
||||||
<li><a href="#validation">Compiler Validation</a>
|
<li><a href="#validation">Compiler Validation</a>
|
||||||
<li><a href="#120">GLSL 1.20 support</a>
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a name="120">
|
||||||
|
<h2>GLSL 1.20 support</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
GLSL version 1.20 is supported in Mesa 7.3.
|
||||||
|
Among the features/differences of GLSL 1.20 are:
|
||||||
|
<ul>
|
||||||
|
<li><code>mat2x3, mat2x4</code>, etc. types and functions
|
||||||
|
<li><code>transpose(), outerProduct(), matrixCompMult()</code> functions
|
||||||
|
(but untested)
|
||||||
|
<li>precision qualifiers (lowp, mediump, highp)
|
||||||
|
<li><code>invariant</code> qualifier
|
||||||
|
<li><code>array.length()</code> method
|
||||||
|
<li><code>float[5] a;</code> array syntax
|
||||||
|
<li><code>centroid</code> qualifier
|
||||||
|
<li>unsized array constructors
|
||||||
|
<li>initializers for uniforms
|
||||||
|
<li>const initializers calling built-in functions
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a name="unsup">
|
<a name="unsup">
|
||||||
<h2>Unsupported Features</h2>
|
<h2>Unsupported Features</h2>
|
||||||
|
|
||||||
@@ -41,15 +64,10 @@ in Mesa:
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>Dereferencing arrays with non-constant indexes
|
|
||||||
<li>Comparison of user-defined structs
|
|
||||||
<li>Linking of multiple shaders is not supported
|
<li>Linking of multiple shaders is not supported
|
||||||
<li>gl_ClipVertex
|
<li>gl_ClipVertex
|
||||||
<li>The derivative functions such as dFdx() are not implemented
|
|
||||||
<li>The inverse trig functions asin(), acos(), and atan() are not implemented
|
|
||||||
<li>The gl_Color and gl_SecondaryColor varying vars are interpolated
|
<li>The gl_Color and gl_SecondaryColor varying vars are interpolated
|
||||||
without perspective correction
|
without perspective correction
|
||||||
<li>Floating point literal suffixes 'f' and 'F' aren't allowed.
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
@@ -304,11 +322,11 @@ Extra NOP instructions will also be inserted.
|
|||||||
<h2>Compiler Validation</h2>
|
<h2>Compiler Validation</h2>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
A new <a href="http://glean.sf.net" target="_parent">Glean</a> test has
|
A <a href="http://glean.sf.net" target="_parent">Glean</a> test has
|
||||||
been create to exercise the GLSL compiler.
|
been create to exercise the GLSL compiler.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
The <em>glsl1</em> test runs over 150 sub-tests to check that the language
|
The <em>glsl1</em> test runs over 170 sub-tests to check that the language
|
||||||
features and built-in functions work properly.
|
features and built-in functions work properly.
|
||||||
This test should be run frequently while working on the compiler to catch
|
This test should be run frequently while working on the compiler to catch
|
||||||
regressions.
|
regressions.
|
||||||
@@ -319,39 +337,5 @@ should be added.
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a name="120">
|
|
||||||
<h2>GLSL 1.20 support</h2>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Support for GLSL version 1.20 is underway. Status as follows.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h3>Supported</h3>
|
|
||||||
<ul>
|
|
||||||
<li><code>mat2x3, mat2x4</code>, etc. types and functions
|
|
||||||
<li><code>transpose(), outerProduct(), matrixCompMult()</code> functions
|
|
||||||
(but untested)
|
|
||||||
<li>precision qualifiers (lowp, mediump, highp)
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3>Partially Complete</h3>
|
|
||||||
<ul>
|
|
||||||
<li><code>invariant</code> qualifier
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3>Not Completed</h3>
|
|
||||||
<ul>
|
|
||||||
<li><code>array.length()</code> method
|
|
||||||
<li><code>float[5] a;</code> array syntax
|
|
||||||
<li><code>centroid</code> qualifier
|
|
||||||
<li>unsized array constructors
|
|
||||||
<li>initializers for uniforms
|
|
||||||
<li>const initializers calling built-in functions
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</BODY>
|
</BODY>
|
||||||
</HTML>
|
</HTML>
|
||||||
|
@@ -27,16 +27,27 @@ the Amiga, Apple Macintosh, BeOS, NeXT, OS/2, MS-DOS, VMS, Windows
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Details about particular drivers follows.
|
Details about particular drivers follows:
|
||||||
Be warned that some drivers may be out of date and no longer function.
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<UL>
|
<UL>
|
||||||
<LI><a href="xlibdriver.html">Xlib driver</a> for the X Window System
|
<li><a href="http://dri.freedesktop.org/" target="_parent"> DRI hardware
|
||||||
<li><a href="http://dri.freedesktop.org/" target="_parent">
|
drivers</a> for the X Window System
|
||||||
DRI hardware drivers</a> for the X window system
|
<LI><a href="xlibdriver.html">Xlib software driver</a> for the X Window System
|
||||||
|
and Unix-like operating systems
|
||||||
<LI>Microsoft Windows <A HREF="README.WIN32">(README.WIN32)</A>
|
<LI>Microsoft Windows <A HREF="README.WIN32">(README.WIN32)</A>
|
||||||
<LI>DEC VMS <A HREF="README.VMS">(README.VMS)</A>
|
<LI>DEC VMS <A HREF="README.VMS">(README.VMS)</A>
|
||||||
|
</UL>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Deprecated Systems</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
These drivers have not been maintained and are being deprecated.
|
||||||
|
They can be saved if someone steps up to help.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<UL>
|
||||||
<LI>3dfx/Glide <A HREF="README.3DFX">(README.3DFX)</A>
|
<LI>3dfx/Glide <A HREF="README.3DFX">(README.3DFX)</A>
|
||||||
<LI>GGI <A HREF="README.GGI">(README.GGI)</A>
|
<LI>GGI <A HREF="README.GGI">(README.GGI)</A>
|
||||||
<LI>Amiga Amiwin <A HREF="README.AMIWIN">(README.AMIWIN)</A>
|
<LI>Amiga Amiwin <A HREF="README.AMIWIN">(README.AMIWIN)</A>
|
||||||
@@ -49,6 +60,10 @@ DRI hardware drivers</a> for the X window system
|
|||||||
<LI>OpenStep <A HREF="README.OpenStep">(README.OpenStep)</A>
|
<LI>OpenStep <A HREF="README.OpenStep">(README.OpenStep)</A>
|
||||||
<LI>OS/2 <A HREF="README.OS2">(README.OS2)</A>
|
<LI>OS/2 <A HREF="README.OS2">(README.OS2)</A>
|
||||||
<LI>WindML <A HREF="README.WINDML">(README.WINDML)</A>
|
<LI>WindML <A HREF="README.WINDML">(README.WINDML)</A>
|
||||||
|
</UL>
|
||||||
|
|
||||||
|
And for historical reference:
|
||||||
|
<UL>
|
||||||
<LI><a href="http://utah-glx.sourceforge.net/" target="_parent">Utah GLX drivers</a>
|
<LI><a href="http://utah-glx.sourceforge.net/" target="_parent">Utah GLX drivers</a>
|
||||||
</UL>
|
</UL>
|
||||||
|
|
||||||
|
@@ -11,7 +11,7 @@
|
|||||||
<p>
|
<p>
|
||||||
If you have problems, edits or additions for this website send them
|
If you have problems, edits or additions for this website send them
|
||||||
to Brian
|
to Brian
|
||||||
(<em>b</em><em>r</em><em>i</em><em>a</em><em>n</em><em>_</em><em>e</em><em>_</em><em>p</em><em>a</em><em>u</em><em>l</em><em>@</em><em>y</em><em>a</em><em>h</em><em>o</em><em>o</em><em>.</em><em>c</em><em>o</em><em>m</em>)</a>.
|
(<em>b</em><em>r</em><em>i</em><em>a</em><em>n</em><em>.</em><em>e</em><em>.</em><em>p</em><em>a</em><em>u</em><em>l</em><em> </em><em>g</em><em>m</em><em>a</em><em>i</em><em>l</em><em>.</em><em>c</em><em>o</em><em>m</em>)</a>.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
|
@@ -169,6 +169,20 @@ the Gamma FAQ</a>
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<H2>Direct Rendering Flag</H2>
|
||||||
|
<p>
|
||||||
|
Some applications won't run with indirect rendering contexts (which is
|
||||||
|
what the Xlib driver supports).
|
||||||
|
To force the glXIsDirect() query to return True, set the MESA_GLX_FORCE_DIRECT
|
||||||
|
environment variable.
|
||||||
|
For example:
|
||||||
|
</p>
|
||||||
|
<pre>
|
||||||
|
$ export MESA_GLX_FORCE_DIRECT=1
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<H2>Overlay Planes</H2>
|
<H2>Overlay Planes</H2>
|
||||||
<p>
|
<p>
|
||||||
Hardware overlay planes are supported by the Xlib driver. To
|
Hardware overlay planes are supported by the Xlib driver. To
|
||||||
@@ -268,6 +282,8 @@ This extension was added in Mesa 2.6
|
|||||||
MESA_BACK_BUFFER - specifies how to implement the back color buffer (X only)
|
MESA_BACK_BUFFER - specifies how to implement the back color buffer (X only)
|
||||||
MESA_PRIVATE_CMAP - force aux/tk libraries to use private colormaps (X only)
|
MESA_PRIVATE_CMAP - force aux/tk libraries to use private colormaps (X only)
|
||||||
MESA_GAMMA - gamma correction coefficients (X only)
|
MESA_GAMMA - gamma correction coefficients (X only)
|
||||||
|
MESA_GLX_FORCE_DIRECT - report that the driver is direct rendering, even
|
||||||
|
though it's not.
|
||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
|
|
||||||
|
@@ -2,17 +2,12 @@
|
|||||||
|
|
||||||
GLincludedir = $(includedir)/GL
|
GLincludedir = $(includedir)/GL
|
||||||
|
|
||||||
INC_FX = fxmesa.h
|
|
||||||
INC_GGI = ggimesa.h
|
INC_GGI = ggimesa.h
|
||||||
INC_OSMESA = osmesa.h
|
INC_OSMESA = osmesa.h
|
||||||
INC_SVGA = svgamesa.h
|
INC_SVGA = svgamesa.h
|
||||||
INC_X11 = glx.h glxext.h glx_mangle.h xmesa.h xmesa_x.h xmesa_xf86.h
|
INC_X11 = glx.h glxext.h glx_mangle.h
|
||||||
INC_GLUT = glut.h glutf90.h
|
INC_GLUT = glut.h glutf90.h
|
||||||
|
|
||||||
if HAVE_FX
|
|
||||||
sel_inc_fx = $(INC_FX)
|
|
||||||
endif
|
|
||||||
|
|
||||||
if HAVE_GGI
|
if HAVE_GGI
|
||||||
sel_inc_ggi = $(INC_GGI)
|
sel_inc_ggi = $(INC_GGI)
|
||||||
endif
|
endif
|
||||||
@@ -35,9 +30,9 @@ endif
|
|||||||
|
|
||||||
EXTRA_HEADERS = amesa.h dosmesa.h foomesa.h glut_h.dja mesa_wgl.h mglmesa.h \
|
EXTRA_HEADERS = amesa.h dosmesa.h foomesa.h glut_h.dja mesa_wgl.h mglmesa.h \
|
||||||
vms_x_fix.h wmesa.h \
|
vms_x_fix.h wmesa.h \
|
||||||
$(INC_FX) $(INC_GGI) $(INC_OSMESA) $(INC_SVGA) $(INC_X11) $(INC_GLUT)
|
$(INC_GGI) $(INC_OSMESA) $(INC_SVGA) $(INC_X11) $(INC_GLUT)
|
||||||
|
|
||||||
GLinclude_HEADERS = gl.h glext.h gl_mangle.h glu.h glu_mangle.h \
|
GLinclude_HEADERS = gl.h glext.h gl_mangle.h glu.h glu_mangle.h \
|
||||||
$(sel_inc_fx) $(sel_inc_ggi) $(sel_inc_osmesa) $(sel_inc_svga) \
|
$(sel_inc_ggi) $(sel_inc_osmesa) $(sel_inc_svga) \
|
||||||
$(sel_inc_x11) $(sel_inc_glut)
|
$(sel_inc_x11) $(sel_inc_glut)
|
||||||
include $(top_srcdir)/common_rules.make
|
include $(top_srcdir)/common_rules.make
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
* Mesa 3-D graphics library
|
* Mesa 3-D graphics library
|
||||||
* Version: 6.5.1
|
* Version: 7.4
|
||||||
*
|
*
|
||||||
* Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
|
* Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
|
||||||
*
|
*
|
||||||
|
@@ -48,34 +48,49 @@
|
|||||||
#define glAsyncMarkerSGIX MANGLE(AsyncMarkerSGIX)
|
#define glAsyncMarkerSGIX MANGLE(AsyncMarkerSGIX)
|
||||||
#define glAttachObjectARB MANGLE(AttachObjectARB)
|
#define glAttachObjectARB MANGLE(AttachObjectARB)
|
||||||
#define glAttachShader MANGLE(AttachShader)
|
#define glAttachShader MANGLE(AttachShader)
|
||||||
|
#define glBeginConditionalRender MANGLE(BeginConditionalRender)
|
||||||
|
#define glBeginConditionalRenderNV MANGLE(BeginConditionalRenderNV)
|
||||||
#define glBeginFragmentShaderATI MANGLE(BeginFragmentShaderATI)
|
#define glBeginFragmentShaderATI MANGLE(BeginFragmentShaderATI)
|
||||||
#define glBegin MANGLE(Begin)
|
#define glBegin MANGLE(Begin)
|
||||||
#define glBeginOcclusionQueryNV MANGLE(BeginOcclusionQueryNV)
|
#define glBeginOcclusionQueryNV MANGLE(BeginOcclusionQueryNV)
|
||||||
#define glBeginQueryARB MANGLE(BeginQueryARB)
|
#define glBeginQueryARB MANGLE(BeginQueryARB)
|
||||||
#define glBeginQuery MANGLE(BeginQuery)
|
#define glBeginQuery MANGLE(BeginQuery)
|
||||||
|
#define glBeginTransformFeedbackEXT MANGLE(BeginTransformFeedbackEXT)
|
||||||
|
#define glBeginTransformFeedback MANGLE(BeginTransformFeedback)
|
||||||
#define glBeginTransformFeedbackNV MANGLE(BeginTransformFeedbackNV)
|
#define glBeginTransformFeedbackNV MANGLE(BeginTransformFeedbackNV)
|
||||||
#define glBeginVertexShaderEXT MANGLE(BeginVertexShaderEXT)
|
#define glBeginVertexShaderEXT MANGLE(BeginVertexShaderEXT)
|
||||||
#define glBindAttribLocationARB MANGLE(BindAttribLocationARB)
|
#define glBindAttribLocationARB MANGLE(BindAttribLocationARB)
|
||||||
#define glBindAttribLocation MANGLE(BindAttribLocation)
|
#define glBindAttribLocation MANGLE(BindAttribLocation)
|
||||||
#define glBindBufferARB MANGLE(BindBufferARB)
|
#define glBindBufferARB MANGLE(BindBufferARB)
|
||||||
|
#define glBindBufferBaseEXT MANGLE(BindBufferBaseEXT)
|
||||||
|
#define glBindBufferBase MANGLE(BindBufferBase)
|
||||||
#define glBindBufferBaseNV MANGLE(BindBufferBaseNV)
|
#define glBindBufferBaseNV MANGLE(BindBufferBaseNV)
|
||||||
#define glBindBuffer MANGLE(BindBuffer)
|
#define glBindBuffer MANGLE(BindBuffer)
|
||||||
|
#define glBindBufferOffsetEXT MANGLE(BindBufferOffsetEXT)
|
||||||
#define glBindBufferOffsetNV MANGLE(BindBufferOffsetNV)
|
#define glBindBufferOffsetNV MANGLE(BindBufferOffsetNV)
|
||||||
|
#define glBindBufferRangeEXT MANGLE(BindBufferRangeEXT)
|
||||||
|
#define glBindBufferRange MANGLE(BindBufferRange)
|
||||||
#define glBindBufferRangeNV MANGLE(BindBufferRangeNV)
|
#define glBindBufferRangeNV MANGLE(BindBufferRangeNV)
|
||||||
#define glBindFragDataLocationEXT MANGLE(BindFragDataLocationEXT)
|
#define glBindFragDataLocationEXT MANGLE(BindFragDataLocationEXT)
|
||||||
|
#define glBindFragDataLocation MANGLE(BindFragDataLocation)
|
||||||
#define glBindFragmentShaderATI MANGLE(BindFragmentShaderATI)
|
#define glBindFragmentShaderATI MANGLE(BindFragmentShaderATI)
|
||||||
#define glBindFramebufferEXT MANGLE(BindFramebufferEXT)
|
#define glBindFramebufferEXT MANGLE(BindFramebufferEXT)
|
||||||
|
#define glBindFramebuffer MANGLE(BindFramebuffer)
|
||||||
#define glBindLightParameterEXT MANGLE(BindLightParameterEXT)
|
#define glBindLightParameterEXT MANGLE(BindLightParameterEXT)
|
||||||
#define glBindMaterialParameterEXT MANGLE(BindMaterialParameterEXT)
|
#define glBindMaterialParameterEXT MANGLE(BindMaterialParameterEXT)
|
||||||
|
#define glBindMultiTextureEXT MANGLE(BindMultiTextureEXT)
|
||||||
#define glBindParameterEXT MANGLE(BindParameterEXT)
|
#define glBindParameterEXT MANGLE(BindParameterEXT)
|
||||||
#define glBindProgramARB MANGLE(BindProgramARB)
|
#define glBindProgramARB MANGLE(BindProgramARB)
|
||||||
#define glBindProgramNV MANGLE(BindProgramNV)
|
#define glBindProgramNV MANGLE(BindProgramNV)
|
||||||
#define glBindRenderbufferEXT MANGLE(BindRenderbufferEXT)
|
#define glBindRenderbufferEXT MANGLE(BindRenderbufferEXT)
|
||||||
|
#define glBindRenderbuffer MANGLE(BindRenderbuffer)
|
||||||
#define glBindTexGenParameterEXT MANGLE(BindTexGenParameterEXT)
|
#define glBindTexGenParameterEXT MANGLE(BindTexGenParameterEXT)
|
||||||
#define glBindTextureEXT MANGLE(BindTextureEXT)
|
#define glBindTextureEXT MANGLE(BindTextureEXT)
|
||||||
#define glBindTexture MANGLE(BindTexture)
|
#define glBindTexture MANGLE(BindTexture)
|
||||||
#define glBindTextureUnitParameterEXT MANGLE(BindTextureUnitParameterEXT)
|
#define glBindTextureUnitParameterEXT MANGLE(BindTextureUnitParameterEXT)
|
||||||
|
#define glBindTransformFeedbackNV MANGLE(BindTransformFeedbackNV)
|
||||||
#define glBindVertexArrayAPPLE MANGLE(BindVertexArrayAPPLE)
|
#define glBindVertexArrayAPPLE MANGLE(BindVertexArrayAPPLE)
|
||||||
|
#define glBindVertexArray MANGLE(BindVertexArray)
|
||||||
#define glBindVertexShaderEXT MANGLE(BindVertexShaderEXT)
|
#define glBindVertexShaderEXT MANGLE(BindVertexShaderEXT)
|
||||||
#define glBinormal3bEXT MANGLE(Binormal3bEXT)
|
#define glBinormal3bEXT MANGLE(Binormal3bEXT)
|
||||||
#define glBinormal3bvEXT MANGLE(Binormal3bvEXT)
|
#define glBinormal3bvEXT MANGLE(Binormal3bvEXT)
|
||||||
@@ -101,6 +116,7 @@
|
|||||||
#define glBlendFuncSeparateINGR MANGLE(BlendFuncSeparateINGR)
|
#define glBlendFuncSeparateINGR MANGLE(BlendFuncSeparateINGR)
|
||||||
#define glBlendFuncSeparate MANGLE(BlendFuncSeparate)
|
#define glBlendFuncSeparate MANGLE(BlendFuncSeparate)
|
||||||
#define glBlitFramebufferEXT MANGLE(BlitFramebufferEXT)
|
#define glBlitFramebufferEXT MANGLE(BlitFramebufferEXT)
|
||||||
|
#define glBlitFramebuffer MANGLE(BlitFramebuffer)
|
||||||
#define glBufferDataARB MANGLE(BufferDataARB)
|
#define glBufferDataARB MANGLE(BufferDataARB)
|
||||||
#define glBufferData MANGLE(BufferData)
|
#define glBufferData MANGLE(BufferData)
|
||||||
#define glBufferParameteriAPPLE MANGLE(BufferParameteriAPPLE)
|
#define glBufferParameteriAPPLE MANGLE(BufferParameteriAPPLE)
|
||||||
@@ -109,8 +125,15 @@
|
|||||||
#define glCallList MANGLE(CallList)
|
#define glCallList MANGLE(CallList)
|
||||||
#define glCallLists MANGLE(CallLists)
|
#define glCallLists MANGLE(CallLists)
|
||||||
#define glCheckFramebufferStatusEXT MANGLE(CheckFramebufferStatusEXT)
|
#define glCheckFramebufferStatusEXT MANGLE(CheckFramebufferStatusEXT)
|
||||||
|
#define glCheckFramebufferStatus MANGLE(CheckFramebufferStatus)
|
||||||
|
#define glCheckNamedFramebufferStatusEXT MANGLE(CheckNamedFramebufferStatusEXT)
|
||||||
#define glClampColorARB MANGLE(ClampColorARB)
|
#define glClampColorARB MANGLE(ClampColorARB)
|
||||||
|
#define glClampColor MANGLE(ClampColor)
|
||||||
#define glClearAccum MANGLE(ClearAccum)
|
#define glClearAccum MANGLE(ClearAccum)
|
||||||
|
#define glClearBufferfi MANGLE(ClearBufferfi)
|
||||||
|
#define glClearBufferfv MANGLE(ClearBufferfv)
|
||||||
|
#define glClearBufferiv MANGLE(ClearBufferiv)
|
||||||
|
#define glClearBufferuiv MANGLE(ClearBufferuiv)
|
||||||
#define glClearColorIiEXT MANGLE(ClearColorIiEXT)
|
#define glClearColorIiEXT MANGLE(ClearColorIiEXT)
|
||||||
#define glClearColorIuiEXT MANGLE(ClearColorIuiEXT)
|
#define glClearColorIuiEXT MANGLE(ClearColorIuiEXT)
|
||||||
#define glClearColor MANGLE(ClearColor)
|
#define glClearColor MANGLE(ClearColor)
|
||||||
@@ -123,6 +146,7 @@
|
|||||||
#define glClientActiveTextureARB MANGLE(ClientActiveTextureARB)
|
#define glClientActiveTextureARB MANGLE(ClientActiveTextureARB)
|
||||||
#define glClientActiveTexture MANGLE(ClientActiveTexture)
|
#define glClientActiveTexture MANGLE(ClientActiveTexture)
|
||||||
#define glClientActiveVertexStreamATI MANGLE(ClientActiveVertexStreamATI)
|
#define glClientActiveVertexStreamATI MANGLE(ClientActiveVertexStreamATI)
|
||||||
|
#define glClientAttribDefaultEXT MANGLE(ClientAttribDefaultEXT)
|
||||||
#define glClipPlane MANGLE(ClipPlane)
|
#define glClipPlane MANGLE(ClipPlane)
|
||||||
#define glColor3b MANGLE(Color3b)
|
#define glColor3b MANGLE(Color3b)
|
||||||
#define glColor3bv MANGLE(Color3bv)
|
#define glColor3bv MANGLE(Color3bv)
|
||||||
@@ -171,6 +195,7 @@
|
|||||||
#define glColorFragmentOp1ATI MANGLE(ColorFragmentOp1ATI)
|
#define glColorFragmentOp1ATI MANGLE(ColorFragmentOp1ATI)
|
||||||
#define glColorFragmentOp2ATI MANGLE(ColorFragmentOp2ATI)
|
#define glColorFragmentOp2ATI MANGLE(ColorFragmentOp2ATI)
|
||||||
#define glColorFragmentOp3ATI MANGLE(ColorFragmentOp3ATI)
|
#define glColorFragmentOp3ATI MANGLE(ColorFragmentOp3ATI)
|
||||||
|
#define glColorMaski MANGLE(ColorMaski)
|
||||||
#define glColorMaskIndexedEXT MANGLE(ColorMaskIndexedEXT)
|
#define glColorMaskIndexedEXT MANGLE(ColorMaskIndexedEXT)
|
||||||
#define glColorMask MANGLE(ColorMask)
|
#define glColorMask MANGLE(ColorMask)
|
||||||
#define glColorMaterial MANGLE(ColorMaterial)
|
#define glColorMaterial MANGLE(ColorMaterial)
|
||||||
@@ -196,6 +221,12 @@
|
|||||||
#define glCombinerStageParameterfvNV MANGLE(CombinerStageParameterfvNV)
|
#define glCombinerStageParameterfvNV MANGLE(CombinerStageParameterfvNV)
|
||||||
#define glCompileShaderARB MANGLE(CompileShaderARB)
|
#define glCompileShaderARB MANGLE(CompileShaderARB)
|
||||||
#define glCompileShader MANGLE(CompileShader)
|
#define glCompileShader MANGLE(CompileShader)
|
||||||
|
#define glCompressedMultiTexImage1DEXT MANGLE(CompressedMultiTexImage1DEXT)
|
||||||
|
#define glCompressedMultiTexImage2DEXT MANGLE(CompressedMultiTexImage2DEXT)
|
||||||
|
#define glCompressedMultiTexImage3DEXT MANGLE(CompressedMultiTexImage3DEXT)
|
||||||
|
#define glCompressedMultiTexSubImage1DEXT MANGLE(CompressedMultiTexSubImage1DEXT)
|
||||||
|
#define glCompressedMultiTexSubImage2DEXT MANGLE(CompressedMultiTexSubImage2DEXT)
|
||||||
|
#define glCompressedMultiTexSubImage3DEXT MANGLE(CompressedMultiTexSubImage3DEXT)
|
||||||
#define glCompressedTexImage1DARB MANGLE(CompressedTexImage1DARB)
|
#define glCompressedTexImage1DARB MANGLE(CompressedTexImage1DARB)
|
||||||
#define glCompressedTexImage1D MANGLE(CompressedTexImage1D)
|
#define glCompressedTexImage1D MANGLE(CompressedTexImage1D)
|
||||||
#define glCompressedTexImage2DARB MANGLE(CompressedTexImage2DARB)
|
#define glCompressedTexImage2DARB MANGLE(CompressedTexImage2DARB)
|
||||||
@@ -208,6 +239,12 @@
|
|||||||
#define glCompressedTexSubImage2D MANGLE(CompressedTexSubImage2D)
|
#define glCompressedTexSubImage2D MANGLE(CompressedTexSubImage2D)
|
||||||
#define glCompressedTexSubImage3DARB MANGLE(CompressedTexSubImage3DARB)
|
#define glCompressedTexSubImage3DARB MANGLE(CompressedTexSubImage3DARB)
|
||||||
#define glCompressedTexSubImage3D MANGLE(CompressedTexSubImage3D)
|
#define glCompressedTexSubImage3D MANGLE(CompressedTexSubImage3D)
|
||||||
|
#define glCompressedTextureImage1DEXT MANGLE(CompressedTextureImage1DEXT)
|
||||||
|
#define glCompressedTextureImage2DEXT MANGLE(CompressedTextureImage2DEXT)
|
||||||
|
#define glCompressedTextureImage3DEXT MANGLE(CompressedTextureImage3DEXT)
|
||||||
|
#define glCompressedTextureSubImage1DEXT MANGLE(CompressedTextureSubImage1DEXT)
|
||||||
|
#define glCompressedTextureSubImage2DEXT MANGLE(CompressedTextureSubImage2DEXT)
|
||||||
|
#define glCompressedTextureSubImage3DEXT MANGLE(CompressedTextureSubImage3DEXT)
|
||||||
#define glConvolutionFilter1DEXT MANGLE(ConvolutionFilter1DEXT)
|
#define glConvolutionFilter1DEXT MANGLE(ConvolutionFilter1DEXT)
|
||||||
#define glConvolutionFilter1D MANGLE(ConvolutionFilter1D)
|
#define glConvolutionFilter1D MANGLE(ConvolutionFilter1D)
|
||||||
#define glConvolutionFilter2DEXT MANGLE(ConvolutionFilter2DEXT)
|
#define glConvolutionFilter2DEXT MANGLE(ConvolutionFilter2DEXT)
|
||||||
@@ -228,6 +265,11 @@
|
|||||||
#define glCopyConvolutionFilter1D MANGLE(CopyConvolutionFilter1D)
|
#define glCopyConvolutionFilter1D MANGLE(CopyConvolutionFilter1D)
|
||||||
#define glCopyConvolutionFilter2DEXT MANGLE(CopyConvolutionFilter2DEXT)
|
#define glCopyConvolutionFilter2DEXT MANGLE(CopyConvolutionFilter2DEXT)
|
||||||
#define glCopyConvolutionFilter2D MANGLE(CopyConvolutionFilter2D)
|
#define glCopyConvolutionFilter2D MANGLE(CopyConvolutionFilter2D)
|
||||||
|
#define glCopyMultiTexImage1DEXT MANGLE(CopyMultiTexImage1DEXT)
|
||||||
|
#define glCopyMultiTexImage2DEXT MANGLE(CopyMultiTexImage2DEXT)
|
||||||
|
#define glCopyMultiTexSubImage1DEXT MANGLE(CopyMultiTexSubImage1DEXT)
|
||||||
|
#define glCopyMultiTexSubImage2DEXT MANGLE(CopyMultiTexSubImage2DEXT)
|
||||||
|
#define glCopyMultiTexSubImage3DEXT MANGLE(CopyMultiTexSubImage3DEXT)
|
||||||
#define glCopyPixels MANGLE(CopyPixels)
|
#define glCopyPixels MANGLE(CopyPixels)
|
||||||
#define glCopyTexImage1DEXT MANGLE(CopyTexImage1DEXT)
|
#define glCopyTexImage1DEXT MANGLE(CopyTexImage1DEXT)
|
||||||
#define glCopyTexImage1D MANGLE(CopyTexImage1D)
|
#define glCopyTexImage1D MANGLE(CopyTexImage1D)
|
||||||
@@ -239,6 +281,11 @@
|
|||||||
#define glCopyTexSubImage2D MANGLE(CopyTexSubImage2D)
|
#define glCopyTexSubImage2D MANGLE(CopyTexSubImage2D)
|
||||||
#define glCopyTexSubImage3DEXT MANGLE(CopyTexSubImage3DEXT)
|
#define glCopyTexSubImage3DEXT MANGLE(CopyTexSubImage3DEXT)
|
||||||
#define glCopyTexSubImage3D MANGLE(CopyTexSubImage3D)
|
#define glCopyTexSubImage3D MANGLE(CopyTexSubImage3D)
|
||||||
|
#define glCopyTextureImage1DEXT MANGLE(CopyTextureImage1DEXT)
|
||||||
|
#define glCopyTextureImage2DEXT MANGLE(CopyTextureImage2DEXT)
|
||||||
|
#define glCopyTextureSubImage1DEXT MANGLE(CopyTextureSubImage1DEXT)
|
||||||
|
#define glCopyTextureSubImage2DEXT MANGLE(CopyTextureSubImage2DEXT)
|
||||||
|
#define glCopyTextureSubImage3DEXT MANGLE(CopyTextureSubImage3DEXT)
|
||||||
#define glCreateDebugObjectMESA MANGLE(CreateDebugObjectMESA)
|
#define glCreateDebugObjectMESA MANGLE(CreateDebugObjectMESA)
|
||||||
#define glCreateProgram MANGLE(CreateProgram)
|
#define glCreateProgram MANGLE(CreateProgram)
|
||||||
#define glCreateProgramObjectARB MANGLE(CreateProgramObjectARB)
|
#define glCreateProgramObjectARB MANGLE(CreateProgramObjectARB)
|
||||||
@@ -258,6 +305,7 @@
|
|||||||
#define glDeleteFencesNV MANGLE(DeleteFencesNV)
|
#define glDeleteFencesNV MANGLE(DeleteFencesNV)
|
||||||
#define glDeleteFragmentShaderATI MANGLE(DeleteFragmentShaderATI)
|
#define glDeleteFragmentShaderATI MANGLE(DeleteFragmentShaderATI)
|
||||||
#define glDeleteFramebuffersEXT MANGLE(DeleteFramebuffersEXT)
|
#define glDeleteFramebuffersEXT MANGLE(DeleteFramebuffersEXT)
|
||||||
|
#define glDeleteFramebuffers MANGLE(DeleteFramebuffers)
|
||||||
#define glDeleteLists MANGLE(DeleteLists)
|
#define glDeleteLists MANGLE(DeleteLists)
|
||||||
#define glDeleteObjectARB MANGLE(DeleteObjectARB)
|
#define glDeleteObjectARB MANGLE(DeleteObjectARB)
|
||||||
#define glDeleteOcclusionQueriesNV MANGLE(DeleteOcclusionQueriesNV)
|
#define glDeleteOcclusionQueriesNV MANGLE(DeleteOcclusionQueriesNV)
|
||||||
@@ -267,10 +315,13 @@
|
|||||||
#define glDeleteQueriesARB MANGLE(DeleteQueriesARB)
|
#define glDeleteQueriesARB MANGLE(DeleteQueriesARB)
|
||||||
#define glDeleteQueries MANGLE(DeleteQueries)
|
#define glDeleteQueries MANGLE(DeleteQueries)
|
||||||
#define glDeleteRenderbuffersEXT MANGLE(DeleteRenderbuffersEXT)
|
#define glDeleteRenderbuffersEXT MANGLE(DeleteRenderbuffersEXT)
|
||||||
|
#define glDeleteRenderbuffers MANGLE(DeleteRenderbuffers)
|
||||||
#define glDeleteShader MANGLE(DeleteShader)
|
#define glDeleteShader MANGLE(DeleteShader)
|
||||||
#define glDeleteTexturesEXT MANGLE(DeleteTexturesEXT)
|
#define glDeleteTexturesEXT MANGLE(DeleteTexturesEXT)
|
||||||
#define glDeleteTextures MANGLE(DeleteTextures)
|
#define glDeleteTextures MANGLE(DeleteTextures)
|
||||||
|
#define glDeleteTransformFeedbacksNV MANGLE(DeleteTransformFeedbacksNV)
|
||||||
#define glDeleteVertexArraysAPPLE MANGLE(DeleteVertexArraysAPPLE)
|
#define glDeleteVertexArraysAPPLE MANGLE(DeleteVertexArraysAPPLE)
|
||||||
|
#define glDeleteVertexArrays MANGLE(DeleteVertexArrays)
|
||||||
#define glDeleteVertexShaderEXT MANGLE(DeleteVertexShaderEXT)
|
#define glDeleteVertexShaderEXT MANGLE(DeleteVertexShaderEXT)
|
||||||
#define glDepthBoundsdNV MANGLE(DepthBoundsdNV)
|
#define glDepthBoundsdNV MANGLE(DepthBoundsdNV)
|
||||||
#define glDepthBoundsEXT MANGLE(DepthBoundsEXT)
|
#define glDepthBoundsEXT MANGLE(DepthBoundsEXT)
|
||||||
@@ -281,13 +332,16 @@
|
|||||||
#define glDetachObjectARB MANGLE(DetachObjectARB)
|
#define glDetachObjectARB MANGLE(DetachObjectARB)
|
||||||
#define glDetachShader MANGLE(DetachShader)
|
#define glDetachShader MANGLE(DetachShader)
|
||||||
#define glDetailTexFuncSGIS MANGLE(DetailTexFuncSGIS)
|
#define glDetailTexFuncSGIS MANGLE(DetailTexFuncSGIS)
|
||||||
|
#define glDisableClientStateIndexedEXT MANGLE(DisableClientStateIndexedEXT)
|
||||||
#define glDisableClientState MANGLE(DisableClientState)
|
#define glDisableClientState MANGLE(DisableClientState)
|
||||||
|
#define glDisablei MANGLE(Disablei)
|
||||||
#define glDisableIndexedEXT MANGLE(DisableIndexedEXT)
|
#define glDisableIndexedEXT MANGLE(DisableIndexedEXT)
|
||||||
#define glDisable MANGLE(Disable)
|
#define glDisable MANGLE(Disable)
|
||||||
#define glDisableVariantClientStateEXT MANGLE(DisableVariantClientStateEXT)
|
#define glDisableVariantClientStateEXT MANGLE(DisableVariantClientStateEXT)
|
||||||
#define glDisableVertexAttribArrayARB MANGLE(DisableVertexAttribArrayARB)
|
#define glDisableVertexAttribArrayARB MANGLE(DisableVertexAttribArrayARB)
|
||||||
#define glDisableVertexAttribArray MANGLE(DisableVertexAttribArray)
|
#define glDisableVertexAttribArray MANGLE(DisableVertexAttribArray)
|
||||||
#define glDrawArraysEXT MANGLE(DrawArraysEXT)
|
#define glDrawArraysEXT MANGLE(DrawArraysEXT)
|
||||||
|
#define glDrawArraysInstancedARB MANGLE(DrawArraysInstancedARB)
|
||||||
#define glDrawArraysInstancedEXT MANGLE(DrawArraysInstancedEXT)
|
#define glDrawArraysInstancedEXT MANGLE(DrawArraysInstancedEXT)
|
||||||
#define glDrawArrays MANGLE(DrawArrays)
|
#define glDrawArrays MANGLE(DrawArrays)
|
||||||
#define glDrawBuffer MANGLE(DrawBuffer)
|
#define glDrawBuffer MANGLE(DrawBuffer)
|
||||||
@@ -296,6 +350,7 @@
|
|||||||
#define glDrawBuffers MANGLE(DrawBuffers)
|
#define glDrawBuffers MANGLE(DrawBuffers)
|
||||||
#define glDrawElementArrayAPPLE MANGLE(DrawElementArrayAPPLE)
|
#define glDrawElementArrayAPPLE MANGLE(DrawElementArrayAPPLE)
|
||||||
#define glDrawElementArrayATI MANGLE(DrawElementArrayATI)
|
#define glDrawElementArrayATI MANGLE(DrawElementArrayATI)
|
||||||
|
#define glDrawElementsInstancedARB MANGLE(DrawElementsInstancedARB)
|
||||||
#define glDrawElementsInstancedEXT MANGLE(DrawElementsInstancedEXT)
|
#define glDrawElementsInstancedEXT MANGLE(DrawElementsInstancedEXT)
|
||||||
#define glDrawElements MANGLE(DrawElements)
|
#define glDrawElements MANGLE(DrawElements)
|
||||||
#define glDrawMeshArraysSUN MANGLE(DrawMeshArraysSUN)
|
#define glDrawMeshArraysSUN MANGLE(DrawMeshArraysSUN)
|
||||||
@@ -304,6 +359,7 @@
|
|||||||
#define glDrawRangeElementArrayATI MANGLE(DrawRangeElementArrayATI)
|
#define glDrawRangeElementArrayATI MANGLE(DrawRangeElementArrayATI)
|
||||||
#define glDrawRangeElementsEXT MANGLE(DrawRangeElementsEXT)
|
#define glDrawRangeElementsEXT MANGLE(DrawRangeElementsEXT)
|
||||||
#define glDrawRangeElements MANGLE(DrawRangeElements)
|
#define glDrawRangeElements MANGLE(DrawRangeElements)
|
||||||
|
#define glDrawTransformFeedbackNV MANGLE(DrawTransformFeedbackNV)
|
||||||
#define glEdgeFlag MANGLE(EdgeFlag)
|
#define glEdgeFlag MANGLE(EdgeFlag)
|
||||||
#define glEdgeFlagPointerEXT MANGLE(EdgeFlagPointerEXT)
|
#define glEdgeFlagPointerEXT MANGLE(EdgeFlagPointerEXT)
|
||||||
#define glEdgeFlagPointerListIBM MANGLE(EdgeFlagPointerListIBM)
|
#define glEdgeFlagPointerListIBM MANGLE(EdgeFlagPointerListIBM)
|
||||||
@@ -311,18 +367,24 @@
|
|||||||
#define glEdgeFlagv MANGLE(EdgeFlagv)
|
#define glEdgeFlagv MANGLE(EdgeFlagv)
|
||||||
#define glElementPointerAPPLE MANGLE(ElementPointerAPPLE)
|
#define glElementPointerAPPLE MANGLE(ElementPointerAPPLE)
|
||||||
#define glElementPointerATI MANGLE(ElementPointerATI)
|
#define glElementPointerATI MANGLE(ElementPointerATI)
|
||||||
|
#define glEnableClientStateIndexedEXT MANGLE(EnableClientStateIndexedEXT)
|
||||||
#define glEnableClientState MANGLE(EnableClientState)
|
#define glEnableClientState MANGLE(EnableClientState)
|
||||||
|
#define glEnablei MANGLE(Enablei)
|
||||||
#define glEnableIndexedEXT MANGLE(EnableIndexedEXT)
|
#define glEnableIndexedEXT MANGLE(EnableIndexedEXT)
|
||||||
#define glEnable MANGLE(Enable)
|
#define glEnable MANGLE(Enable)
|
||||||
#define glEnableVariantClientStateEXT MANGLE(EnableVariantClientStateEXT)
|
#define glEnableVariantClientStateEXT MANGLE(EnableVariantClientStateEXT)
|
||||||
#define glEnableVertexAttribArrayARB MANGLE(EnableVertexAttribArrayARB)
|
#define glEnableVertexAttribArrayARB MANGLE(EnableVertexAttribArrayARB)
|
||||||
#define glEnableVertexAttribArray MANGLE(EnableVertexAttribArray)
|
#define glEnableVertexAttribArray MANGLE(EnableVertexAttribArray)
|
||||||
|
#define glEndConditionalRender MANGLE(EndConditionalRender)
|
||||||
|
#define glEndConditionalRenderNV MANGLE(EndConditionalRenderNV)
|
||||||
#define glEndFragmentShaderATI MANGLE(EndFragmentShaderATI)
|
#define glEndFragmentShaderATI MANGLE(EndFragmentShaderATI)
|
||||||
#define glEndList MANGLE(EndList)
|
#define glEndList MANGLE(EndList)
|
||||||
#define glEnd MANGLE(End)
|
#define glEnd MANGLE(End)
|
||||||
#define glEndOcclusionQueryNV MANGLE(EndOcclusionQueryNV)
|
#define glEndOcclusionQueryNV MANGLE(EndOcclusionQueryNV)
|
||||||
#define glEndQueryARB MANGLE(EndQueryARB)
|
#define glEndQueryARB MANGLE(EndQueryARB)
|
||||||
#define glEndQuery MANGLE(EndQuery)
|
#define glEndQuery MANGLE(EndQuery)
|
||||||
|
#define glEndTransformFeedbackEXT MANGLE(EndTransformFeedbackEXT)
|
||||||
|
#define glEndTransformFeedback MANGLE(EndTransformFeedback)
|
||||||
#define glEndTransformFeedbackNV MANGLE(EndTransformFeedbackNV)
|
#define glEndTransformFeedbackNV MANGLE(EndTransformFeedbackNV)
|
||||||
#define glEndVertexShaderEXT MANGLE(EndVertexShaderEXT)
|
#define glEndVertexShaderEXT MANGLE(EndVertexShaderEXT)
|
||||||
#define glEvalCoord1d MANGLE(EvalCoord1d)
|
#define glEvalCoord1d MANGLE(EvalCoord1d)
|
||||||
@@ -350,6 +412,7 @@
|
|||||||
#define glFinishTextureSUNX MANGLE(FinishTextureSUNX)
|
#define glFinishTextureSUNX MANGLE(FinishTextureSUNX)
|
||||||
#define glFlush MANGLE(Flush)
|
#define glFlush MANGLE(Flush)
|
||||||
#define glFlushMappedBufferRangeAPPLE MANGLE(FlushMappedBufferRangeAPPLE)
|
#define glFlushMappedBufferRangeAPPLE MANGLE(FlushMappedBufferRangeAPPLE)
|
||||||
|
#define glFlushMappedBufferRange MANGLE(FlushMappedBufferRange)
|
||||||
#define glFlushPixelDataRangeNV MANGLE(FlushPixelDataRangeNV)
|
#define glFlushPixelDataRangeNV MANGLE(FlushPixelDataRangeNV)
|
||||||
#define glFlushRasterSGIX MANGLE(FlushRasterSGIX)
|
#define glFlushRasterSGIX MANGLE(FlushRasterSGIX)
|
||||||
#define glFlushVertexArrayRangeAPPLE MANGLE(FlushVertexArrayRangeAPPLE)
|
#define glFlushVertexArrayRangeAPPLE MANGLE(FlushVertexArrayRangeAPPLE)
|
||||||
@@ -385,13 +448,25 @@
|
|||||||
#define glFragmentMaterialfvSGIX MANGLE(FragmentMaterialfvSGIX)
|
#define glFragmentMaterialfvSGIX MANGLE(FragmentMaterialfvSGIX)
|
||||||
#define glFragmentMaterialiSGIX MANGLE(FragmentMaterialiSGIX)
|
#define glFragmentMaterialiSGIX MANGLE(FragmentMaterialiSGIX)
|
||||||
#define glFragmentMaterialivSGIX MANGLE(FragmentMaterialivSGIX)
|
#define glFragmentMaterialivSGIX MANGLE(FragmentMaterialivSGIX)
|
||||||
|
#define glFramebufferDrawBufferEXT MANGLE(FramebufferDrawBufferEXT)
|
||||||
|
#define glFramebufferDrawBuffersEXT MANGLE(FramebufferDrawBuffersEXT)
|
||||||
|
#define glFramebufferReadBufferEXT MANGLE(FramebufferReadBufferEXT)
|
||||||
#define glFramebufferRenderbufferEXT MANGLE(FramebufferRenderbufferEXT)
|
#define glFramebufferRenderbufferEXT MANGLE(FramebufferRenderbufferEXT)
|
||||||
|
#define glFramebufferRenderbuffer MANGLE(FramebufferRenderbuffer)
|
||||||
#define glFramebufferTexture1DEXT MANGLE(FramebufferTexture1DEXT)
|
#define glFramebufferTexture1DEXT MANGLE(FramebufferTexture1DEXT)
|
||||||
|
#define glFramebufferTexture1D MANGLE(FramebufferTexture1D)
|
||||||
#define glFramebufferTexture2DEXT MANGLE(FramebufferTexture2DEXT)
|
#define glFramebufferTexture2DEXT MANGLE(FramebufferTexture2DEXT)
|
||||||
|
#define glFramebufferTexture2D MANGLE(FramebufferTexture2D)
|
||||||
#define glFramebufferTexture3DEXT MANGLE(FramebufferTexture3DEXT)
|
#define glFramebufferTexture3DEXT MANGLE(FramebufferTexture3DEXT)
|
||||||
|
#define glFramebufferTexture3D MANGLE(FramebufferTexture3D)
|
||||||
|
#define glFramebufferTextureARB MANGLE(FramebufferTextureARB)
|
||||||
#define glFramebufferTextureEXT MANGLE(FramebufferTextureEXT)
|
#define glFramebufferTextureEXT MANGLE(FramebufferTextureEXT)
|
||||||
|
#define glFramebufferTextureFaceARB MANGLE(FramebufferTextureFaceARB)
|
||||||
#define glFramebufferTextureFaceEXT MANGLE(FramebufferTextureFaceEXT)
|
#define glFramebufferTextureFaceEXT MANGLE(FramebufferTextureFaceEXT)
|
||||||
|
#define glFramebufferTextureLayerARB MANGLE(FramebufferTextureLayerARB)
|
||||||
#define glFramebufferTextureLayerEXT MANGLE(FramebufferTextureLayerEXT)
|
#define glFramebufferTextureLayerEXT MANGLE(FramebufferTextureLayerEXT)
|
||||||
|
#define glFramebufferTextureLayer MANGLE(FramebufferTextureLayer)
|
||||||
|
#define glFrameTerminatorGREMEDY MANGLE(FrameTerminatorGREMEDY)
|
||||||
#define glFrameZoomSGIX MANGLE(FrameZoomSGIX)
|
#define glFrameZoomSGIX MANGLE(FrameZoomSGIX)
|
||||||
#define glFreeObjectBufferATI MANGLE(FreeObjectBufferATI)
|
#define glFreeObjectBufferATI MANGLE(FreeObjectBufferATI)
|
||||||
#define glFrontFace MANGLE(FrontFace)
|
#define glFrontFace MANGLE(FrontFace)
|
||||||
@@ -400,10 +475,14 @@
|
|||||||
#define glGenBuffersARB MANGLE(GenBuffersARB)
|
#define glGenBuffersARB MANGLE(GenBuffersARB)
|
||||||
#define glGenBuffers MANGLE(GenBuffers)
|
#define glGenBuffers MANGLE(GenBuffers)
|
||||||
#define glGenerateMipmapEXT MANGLE(GenerateMipmapEXT)
|
#define glGenerateMipmapEXT MANGLE(GenerateMipmapEXT)
|
||||||
|
#define glGenerateMipmap MANGLE(GenerateMipmap)
|
||||||
|
#define glGenerateMultiTexMipmapEXT MANGLE(GenerateMultiTexMipmapEXT)
|
||||||
|
#define glGenerateTextureMipmapEXT MANGLE(GenerateTextureMipmapEXT)
|
||||||
#define glGenFencesAPPLE MANGLE(GenFencesAPPLE)
|
#define glGenFencesAPPLE MANGLE(GenFencesAPPLE)
|
||||||
#define glGenFencesNV MANGLE(GenFencesNV)
|
#define glGenFencesNV MANGLE(GenFencesNV)
|
||||||
#define glGenFragmentShadersATI MANGLE(GenFragmentShadersATI)
|
#define glGenFragmentShadersATI MANGLE(GenFragmentShadersATI)
|
||||||
#define glGenFramebuffersEXT MANGLE(GenFramebuffersEXT)
|
#define glGenFramebuffersEXT MANGLE(GenFramebuffersEXT)
|
||||||
|
#define glGenFramebuffers MANGLE(GenFramebuffers)
|
||||||
#define glGenLists MANGLE(GenLists)
|
#define glGenLists MANGLE(GenLists)
|
||||||
#define glGenOcclusionQueriesNV MANGLE(GenOcclusionQueriesNV)
|
#define glGenOcclusionQueriesNV MANGLE(GenOcclusionQueriesNV)
|
||||||
#define glGenProgramsARB MANGLE(GenProgramsARB)
|
#define glGenProgramsARB MANGLE(GenProgramsARB)
|
||||||
@@ -411,10 +490,13 @@
|
|||||||
#define glGenQueriesARB MANGLE(GenQueriesARB)
|
#define glGenQueriesARB MANGLE(GenQueriesARB)
|
||||||
#define glGenQueries MANGLE(GenQueries)
|
#define glGenQueries MANGLE(GenQueries)
|
||||||
#define glGenRenderbuffersEXT MANGLE(GenRenderbuffersEXT)
|
#define glGenRenderbuffersEXT MANGLE(GenRenderbuffersEXT)
|
||||||
|
#define glGenRenderbuffers MANGLE(GenRenderbuffers)
|
||||||
#define glGenSymbolsEXT MANGLE(GenSymbolsEXT)
|
#define glGenSymbolsEXT MANGLE(GenSymbolsEXT)
|
||||||
#define glGenTexturesEXT MANGLE(GenTexturesEXT)
|
#define glGenTexturesEXT MANGLE(GenTexturesEXT)
|
||||||
#define glGenTextures MANGLE(GenTextures)
|
#define glGenTextures MANGLE(GenTextures)
|
||||||
|
#define glGenTransformFeedbacksNV MANGLE(GenTransformFeedbacksNV)
|
||||||
#define glGenVertexArraysAPPLE MANGLE(GenVertexArraysAPPLE)
|
#define glGenVertexArraysAPPLE MANGLE(GenVertexArraysAPPLE)
|
||||||
|
#define glGenVertexArrays MANGLE(GenVertexArrays)
|
||||||
#define glGenVertexShadersEXT MANGLE(GenVertexShadersEXT)
|
#define glGenVertexShadersEXT MANGLE(GenVertexShadersEXT)
|
||||||
#define glGetActiveAttribARB MANGLE(GetActiveAttribARB)
|
#define glGetActiveAttribARB MANGLE(GetActiveAttribARB)
|
||||||
#define glGetActiveAttrib MANGLE(GetActiveAttrib)
|
#define glGetActiveAttrib MANGLE(GetActiveAttrib)
|
||||||
@@ -428,6 +510,7 @@
|
|||||||
#define glGetAttribLocationARB MANGLE(GetAttribLocationARB)
|
#define glGetAttribLocationARB MANGLE(GetAttribLocationARB)
|
||||||
#define glGetAttribLocation MANGLE(GetAttribLocation)
|
#define glGetAttribLocation MANGLE(GetAttribLocation)
|
||||||
#define glGetBooleanIndexedvEXT MANGLE(GetBooleanIndexedvEXT)
|
#define glGetBooleanIndexedvEXT MANGLE(GetBooleanIndexedvEXT)
|
||||||
|
#define glGetBooleani_v MANGLE(GetBooleani_v)
|
||||||
#define glGetBooleanv MANGLE(GetBooleanv)
|
#define glGetBooleanv MANGLE(GetBooleanv)
|
||||||
#define glGetBufferParameterivARB MANGLE(GetBufferParameterivARB)
|
#define glGetBufferParameterivARB MANGLE(GetBufferParameterivARB)
|
||||||
#define glGetBufferParameteriv MANGLE(GetBufferParameteriv)
|
#define glGetBufferParameteriv MANGLE(GetBufferParameteriv)
|
||||||
@@ -450,8 +533,10 @@
|
|||||||
#define glGetCombinerOutputParameterfvNV MANGLE(GetCombinerOutputParameterfvNV)
|
#define glGetCombinerOutputParameterfvNV MANGLE(GetCombinerOutputParameterfvNV)
|
||||||
#define glGetCombinerOutputParameterivNV MANGLE(GetCombinerOutputParameterivNV)
|
#define glGetCombinerOutputParameterivNV MANGLE(GetCombinerOutputParameterivNV)
|
||||||
#define glGetCombinerStageParameterfvNV MANGLE(GetCombinerStageParameterfvNV)
|
#define glGetCombinerStageParameterfvNV MANGLE(GetCombinerStageParameterfvNV)
|
||||||
|
#define glGetCompressedMultiTexImageEXT MANGLE(GetCompressedMultiTexImageEXT)
|
||||||
#define glGetCompressedTexImageARB MANGLE(GetCompressedTexImageARB)
|
#define glGetCompressedTexImageARB MANGLE(GetCompressedTexImageARB)
|
||||||
#define glGetCompressedTexImage MANGLE(GetCompressedTexImage)
|
#define glGetCompressedTexImage MANGLE(GetCompressedTexImage)
|
||||||
|
#define glGetCompressedTextureImageEXT MANGLE(GetCompressedTextureImageEXT)
|
||||||
#define glGetConvolutionFilterEXT MANGLE(GetConvolutionFilterEXT)
|
#define glGetConvolutionFilterEXT MANGLE(GetConvolutionFilterEXT)
|
||||||
#define glGetConvolutionFilter MANGLE(GetConvolutionFilter)
|
#define glGetConvolutionFilter MANGLE(GetConvolutionFilter)
|
||||||
#define glGetConvolutionParameterfvEXT MANGLE(GetConvolutionParameterfvEXT)
|
#define glGetConvolutionParameterfvEXT MANGLE(GetConvolutionParameterfvEXT)
|
||||||
@@ -461,19 +546,24 @@
|
|||||||
#define glGetDebugLogLengthMESA MANGLE(GetDebugLogLengthMESA)
|
#define glGetDebugLogLengthMESA MANGLE(GetDebugLogLengthMESA)
|
||||||
#define glGetDebugLogMESA MANGLE(GetDebugLogMESA)
|
#define glGetDebugLogMESA MANGLE(GetDebugLogMESA)
|
||||||
#define glGetDetailTexFuncSGIS MANGLE(GetDetailTexFuncSGIS)
|
#define glGetDetailTexFuncSGIS MANGLE(GetDetailTexFuncSGIS)
|
||||||
|
#define glGetDoubleIndexedvEXT MANGLE(GetDoubleIndexedvEXT)
|
||||||
#define glGetDoublev MANGLE(GetDoublev)
|
#define glGetDoublev MANGLE(GetDoublev)
|
||||||
#define glGetError MANGLE(GetError)
|
#define glGetError MANGLE(GetError)
|
||||||
#define glGetFenceivNV MANGLE(GetFenceivNV)
|
#define glGetFenceivNV MANGLE(GetFenceivNV)
|
||||||
#define glGetFinalCombinerInputParameterfvNV MANGLE(GetFinalCombinerInputParameterfvNV)
|
#define glGetFinalCombinerInputParameterfvNV MANGLE(GetFinalCombinerInputParameterfvNV)
|
||||||
#define glGetFinalCombinerInputParameterivNV MANGLE(GetFinalCombinerInputParameterivNV)
|
#define glGetFinalCombinerInputParameterivNV MANGLE(GetFinalCombinerInputParameterivNV)
|
||||||
|
#define glGetFloatIndexedvEXT MANGLE(GetFloatIndexedvEXT)
|
||||||
#define glGetFloatv MANGLE(GetFloatv)
|
#define glGetFloatv MANGLE(GetFloatv)
|
||||||
#define glGetFogFuncSGIS MANGLE(GetFogFuncSGIS)
|
#define glGetFogFuncSGIS MANGLE(GetFogFuncSGIS)
|
||||||
#define glGetFragDataLocationEXT MANGLE(GetFragDataLocationEXT)
|
#define glGetFragDataLocationEXT MANGLE(GetFragDataLocationEXT)
|
||||||
|
#define glGetFragDataLocation MANGLE(GetFragDataLocation)
|
||||||
#define glGetFragmentLightfvSGIX MANGLE(GetFragmentLightfvSGIX)
|
#define glGetFragmentLightfvSGIX MANGLE(GetFragmentLightfvSGIX)
|
||||||
#define glGetFragmentLightivSGIX MANGLE(GetFragmentLightivSGIX)
|
#define glGetFragmentLightivSGIX MANGLE(GetFragmentLightivSGIX)
|
||||||
#define glGetFragmentMaterialfvSGIX MANGLE(GetFragmentMaterialfvSGIX)
|
#define glGetFragmentMaterialfvSGIX MANGLE(GetFragmentMaterialfvSGIX)
|
||||||
#define glGetFragmentMaterialivSGIX MANGLE(GetFragmentMaterialivSGIX)
|
#define glGetFragmentMaterialivSGIX MANGLE(GetFragmentMaterialivSGIX)
|
||||||
#define glGetFramebufferAttachmentParameterivEXT MANGLE(GetFramebufferAttachmentParameterivEXT)
|
#define glGetFramebufferAttachmentParameterivEXT MANGLE(GetFramebufferAttachmentParameterivEXT)
|
||||||
|
#define glGetFramebufferAttachmentParameteriv MANGLE(GetFramebufferAttachmentParameteriv)
|
||||||
|
#define glGetFramebufferParameterivEXT MANGLE(GetFramebufferParameterivEXT)
|
||||||
#define glGetHandleARB MANGLE(GetHandleARB)
|
#define glGetHandleARB MANGLE(GetHandleARB)
|
||||||
#define glGetHistogramEXT MANGLE(GetHistogramEXT)
|
#define glGetHistogramEXT MANGLE(GetHistogramEXT)
|
||||||
#define glGetHistogram MANGLE(GetHistogram)
|
#define glGetHistogram MANGLE(GetHistogram)
|
||||||
@@ -486,6 +576,7 @@
|
|||||||
#define glGetInfoLogARB MANGLE(GetInfoLogARB)
|
#define glGetInfoLogARB MANGLE(GetInfoLogARB)
|
||||||
#define glGetInstrumentsSGIX MANGLE(GetInstrumentsSGIX)
|
#define glGetInstrumentsSGIX MANGLE(GetInstrumentsSGIX)
|
||||||
#define glGetIntegerIndexedvEXT MANGLE(GetIntegerIndexedvEXT)
|
#define glGetIntegerIndexedvEXT MANGLE(GetIntegerIndexedvEXT)
|
||||||
|
#define glGetIntegeri_v MANGLE(GetIntegeri_v)
|
||||||
#define glGetIntegerv MANGLE(GetIntegerv)
|
#define glGetIntegerv MANGLE(GetIntegerv)
|
||||||
#define glGetInvariantBooleanvEXT MANGLE(GetInvariantBooleanvEXT)
|
#define glGetInvariantBooleanvEXT MANGLE(GetInvariantBooleanvEXT)
|
||||||
#define glGetInvariantFloatvEXT MANGLE(GetInvariantFloatvEXT)
|
#define glGetInvariantFloatvEXT MANGLE(GetInvariantFloatvEXT)
|
||||||
@@ -513,6 +604,30 @@
|
|||||||
#define glGetMinmaxParameterfv MANGLE(GetMinmaxParameterfv)
|
#define glGetMinmaxParameterfv MANGLE(GetMinmaxParameterfv)
|
||||||
#define glGetMinmaxParameterivEXT MANGLE(GetMinmaxParameterivEXT)
|
#define glGetMinmaxParameterivEXT MANGLE(GetMinmaxParameterivEXT)
|
||||||
#define glGetMinmaxParameteriv MANGLE(GetMinmaxParameteriv)
|
#define glGetMinmaxParameteriv MANGLE(GetMinmaxParameteriv)
|
||||||
|
#define glGetMultisamplefvNV MANGLE(GetMultisamplefvNV)
|
||||||
|
#define glGetMultiTexEnvfvEXT MANGLE(GetMultiTexEnvfvEXT)
|
||||||
|
#define glGetMultiTexEnvivEXT MANGLE(GetMultiTexEnvivEXT)
|
||||||
|
#define glGetMultiTexGendvEXT MANGLE(GetMultiTexGendvEXT)
|
||||||
|
#define glGetMultiTexGenfvEXT MANGLE(GetMultiTexGenfvEXT)
|
||||||
|
#define glGetMultiTexGenivEXT MANGLE(GetMultiTexGenivEXT)
|
||||||
|
#define glGetMultiTexImageEXT MANGLE(GetMultiTexImageEXT)
|
||||||
|
#define glGetMultiTexLevelParameterfvEXT MANGLE(GetMultiTexLevelParameterfvEXT)
|
||||||
|
#define glGetMultiTexLevelParameterivEXT MANGLE(GetMultiTexLevelParameterivEXT)
|
||||||
|
#define glGetMultiTexParameterfvEXT MANGLE(GetMultiTexParameterfvEXT)
|
||||||
|
#define glGetMultiTexParameterIivEXT MANGLE(GetMultiTexParameterIivEXT)
|
||||||
|
#define glGetMultiTexParameterIuivEXT MANGLE(GetMultiTexParameterIuivEXT)
|
||||||
|
#define glGetMultiTexParameterivEXT MANGLE(GetMultiTexParameterivEXT)
|
||||||
|
#define glGetNamedBufferParameterivEXT MANGLE(GetNamedBufferParameterivEXT)
|
||||||
|
#define glGetNamedBufferPointervEXT MANGLE(GetNamedBufferPointervEXT)
|
||||||
|
#define glGetNamedBufferSubDataEXT MANGLE(GetNamedBufferSubDataEXT)
|
||||||
|
#define glGetNamedFramebufferAttachmentParameterivEXT MANGLE(GetNamedFramebufferAttachmentParameterivEXT)
|
||||||
|
#define glGetNamedProgramivEXT MANGLE(GetNamedProgramivEXT)
|
||||||
|
#define glGetNamedProgramLocalParameterdvEXT MANGLE(GetNamedProgramLocalParameterdvEXT)
|
||||||
|
#define glGetNamedProgramLocalParameterfvEXT MANGLE(GetNamedProgramLocalParameterfvEXT)
|
||||||
|
#define glGetNamedProgramLocalParameterIivEXT MANGLE(GetNamedProgramLocalParameterIivEXT)
|
||||||
|
#define glGetNamedProgramLocalParameterIuivEXT MANGLE(GetNamedProgramLocalParameterIuivEXT)
|
||||||
|
#define glGetNamedProgramStringEXT MANGLE(GetNamedProgramStringEXT)
|
||||||
|
#define glGetNamedRenderbufferParameterivEXT MANGLE(GetNamedRenderbufferParameterivEXT)
|
||||||
#define glGetObjectBufferfvATI MANGLE(GetObjectBufferfvATI)
|
#define glGetObjectBufferfvATI MANGLE(GetObjectBufferfvATI)
|
||||||
#define glGetObjectBufferivATI MANGLE(GetObjectBufferivATI)
|
#define glGetObjectBufferivATI MANGLE(GetObjectBufferivATI)
|
||||||
#define glGetObjectParameterfvARB MANGLE(GetObjectParameterfvARB)
|
#define glGetObjectParameterfvARB MANGLE(GetObjectParameterfvARB)
|
||||||
@@ -524,6 +639,7 @@
|
|||||||
#define glGetPixelMapusv MANGLE(GetPixelMapusv)
|
#define glGetPixelMapusv MANGLE(GetPixelMapusv)
|
||||||
#define glGetPixelTexGenParameterfvSGIS MANGLE(GetPixelTexGenParameterfvSGIS)
|
#define glGetPixelTexGenParameterfvSGIS MANGLE(GetPixelTexGenParameterfvSGIS)
|
||||||
#define glGetPixelTexGenParameterivSGIS MANGLE(GetPixelTexGenParameterivSGIS)
|
#define glGetPixelTexGenParameterivSGIS MANGLE(GetPixelTexGenParameterivSGIS)
|
||||||
|
#define glGetPointerIndexedvEXT MANGLE(GetPointerIndexedvEXT)
|
||||||
#define glGetPointervEXT MANGLE(GetPointervEXT)
|
#define glGetPointervEXT MANGLE(GetPointervEXT)
|
||||||
#define glGetPointerv MANGLE(GetPointerv)
|
#define glGetPointerv MANGLE(GetPointerv)
|
||||||
#define glGetPolygonStipple MANGLE(GetPolygonStipple)
|
#define glGetPolygonStipple MANGLE(GetPolygonStipple)
|
||||||
@@ -555,6 +671,7 @@
|
|||||||
#define glGetQueryObjectuivARB MANGLE(GetQueryObjectuivARB)
|
#define glGetQueryObjectuivARB MANGLE(GetQueryObjectuivARB)
|
||||||
#define glGetQueryObjectuiv MANGLE(GetQueryObjectuiv)
|
#define glGetQueryObjectuiv MANGLE(GetQueryObjectuiv)
|
||||||
#define glGetRenderbufferParameterivEXT MANGLE(GetRenderbufferParameterivEXT)
|
#define glGetRenderbufferParameterivEXT MANGLE(GetRenderbufferParameterivEXT)
|
||||||
|
#define glGetRenderbufferParameteriv MANGLE(GetRenderbufferParameteriv)
|
||||||
#define glGetSeparableFilterEXT MANGLE(GetSeparableFilterEXT)
|
#define glGetSeparableFilterEXT MANGLE(GetSeparableFilterEXT)
|
||||||
#define glGetSeparableFilter MANGLE(GetSeparableFilter)
|
#define glGetSeparableFilter MANGLE(GetSeparableFilter)
|
||||||
#define glGetShaderInfoLog MANGLE(GetShaderInfoLog)
|
#define glGetShaderInfoLog MANGLE(GetShaderInfoLog)
|
||||||
@@ -562,6 +679,7 @@
|
|||||||
#define glGetShaderSourceARB MANGLE(GetShaderSourceARB)
|
#define glGetShaderSourceARB MANGLE(GetShaderSourceARB)
|
||||||
#define glGetShaderSource MANGLE(GetShaderSource)
|
#define glGetShaderSource MANGLE(GetShaderSource)
|
||||||
#define glGetSharpenTexFuncSGIS MANGLE(GetSharpenTexFuncSGIS)
|
#define glGetSharpenTexFuncSGIS MANGLE(GetSharpenTexFuncSGIS)
|
||||||
|
#define glGetStringi MANGLE(GetStringi)
|
||||||
#define glGetString MANGLE(GetString)
|
#define glGetString MANGLE(GetString)
|
||||||
#define glGetTexBumpParameterfvATI MANGLE(GetTexBumpParameterfvATI)
|
#define glGetTexBumpParameterfvATI MANGLE(GetTexBumpParameterfvATI)
|
||||||
#define glGetTexBumpParameterivATI MANGLE(GetTexBumpParameterivATI)
|
#define glGetTexBumpParameterivATI MANGLE(GetTexBumpParameterivATI)
|
||||||
@@ -576,9 +694,20 @@
|
|||||||
#define glGetTexLevelParameteriv MANGLE(GetTexLevelParameteriv)
|
#define glGetTexLevelParameteriv MANGLE(GetTexLevelParameteriv)
|
||||||
#define glGetTexParameterfv MANGLE(GetTexParameterfv)
|
#define glGetTexParameterfv MANGLE(GetTexParameterfv)
|
||||||
#define glGetTexParameterIivEXT MANGLE(GetTexParameterIivEXT)
|
#define glGetTexParameterIivEXT MANGLE(GetTexParameterIivEXT)
|
||||||
|
#define glGetTexParameterIiv MANGLE(GetTexParameterIiv)
|
||||||
#define glGetTexParameterIuivEXT MANGLE(GetTexParameterIuivEXT)
|
#define glGetTexParameterIuivEXT MANGLE(GetTexParameterIuivEXT)
|
||||||
|
#define glGetTexParameterIuiv MANGLE(GetTexParameterIuiv)
|
||||||
#define glGetTexParameteriv MANGLE(GetTexParameteriv)
|
#define glGetTexParameteriv MANGLE(GetTexParameteriv)
|
||||||
|
#define glGetTextureImageEXT MANGLE(GetTextureImageEXT)
|
||||||
|
#define glGetTextureLevelParameterfvEXT MANGLE(GetTextureLevelParameterfvEXT)
|
||||||
|
#define glGetTextureLevelParameterivEXT MANGLE(GetTextureLevelParameterivEXT)
|
||||||
|
#define glGetTextureParameterfvEXT MANGLE(GetTextureParameterfvEXT)
|
||||||
|
#define glGetTextureParameterIivEXT MANGLE(GetTextureParameterIivEXT)
|
||||||
|
#define glGetTextureParameterIuivEXT MANGLE(GetTextureParameterIuivEXT)
|
||||||
|
#define glGetTextureParameterivEXT MANGLE(GetTextureParameterivEXT)
|
||||||
#define glGetTrackMatrixivNV MANGLE(GetTrackMatrixivNV)
|
#define glGetTrackMatrixivNV MANGLE(GetTrackMatrixivNV)
|
||||||
|
#define glGetTransformFeedbackVaryingEXT MANGLE(GetTransformFeedbackVaryingEXT)
|
||||||
|
#define glGetTransformFeedbackVarying MANGLE(GetTransformFeedbackVarying)
|
||||||
#define glGetTransformFeedbackVaryingNV MANGLE(GetTransformFeedbackVaryingNV)
|
#define glGetTransformFeedbackVaryingNV MANGLE(GetTransformFeedbackVaryingNV)
|
||||||
#define glGetUniformBufferSizeEXT MANGLE(GetUniformBufferSizeEXT)
|
#define glGetUniformBufferSizeEXT MANGLE(GetUniformBufferSizeEXT)
|
||||||
#define glGetUniformfvARB MANGLE(GetUniformfvARB)
|
#define glGetUniformfvARB MANGLE(GetUniformfvARB)
|
||||||
@@ -589,6 +718,7 @@
|
|||||||
#define glGetUniformLocation MANGLE(GetUniformLocation)
|
#define glGetUniformLocation MANGLE(GetUniformLocation)
|
||||||
#define glGetUniformOffsetEXT MANGLE(GetUniformOffsetEXT)
|
#define glGetUniformOffsetEXT MANGLE(GetUniformOffsetEXT)
|
||||||
#define glGetUniformuivEXT MANGLE(GetUniformuivEXT)
|
#define glGetUniformuivEXT MANGLE(GetUniformuivEXT)
|
||||||
|
#define glGetUniformuiv MANGLE(GetUniformuiv)
|
||||||
#define glGetVariantArrayObjectfvATI MANGLE(GetVariantArrayObjectfvATI)
|
#define glGetVariantArrayObjectfvATI MANGLE(GetVariantArrayObjectfvATI)
|
||||||
#define glGetVariantArrayObjectivATI MANGLE(GetVariantArrayObjectivATI)
|
#define glGetVariantArrayObjectivATI MANGLE(GetVariantArrayObjectivATI)
|
||||||
#define glGetVariantBooleanvEXT MANGLE(GetVariantBooleanvEXT)
|
#define glGetVariantBooleanvEXT MANGLE(GetVariantBooleanvEXT)
|
||||||
@@ -605,7 +735,9 @@
|
|||||||
#define glGetVertexAttribfv MANGLE(GetVertexAttribfv)
|
#define glGetVertexAttribfv MANGLE(GetVertexAttribfv)
|
||||||
#define glGetVertexAttribfvNV MANGLE(GetVertexAttribfvNV)
|
#define glGetVertexAttribfvNV MANGLE(GetVertexAttribfvNV)
|
||||||
#define glGetVertexAttribIivEXT MANGLE(GetVertexAttribIivEXT)
|
#define glGetVertexAttribIivEXT MANGLE(GetVertexAttribIivEXT)
|
||||||
|
#define glGetVertexAttribIiv MANGLE(GetVertexAttribIiv)
|
||||||
#define glGetVertexAttribIuivEXT MANGLE(GetVertexAttribIuivEXT)
|
#define glGetVertexAttribIuivEXT MANGLE(GetVertexAttribIuivEXT)
|
||||||
|
#define glGetVertexAttribIuiv MANGLE(GetVertexAttribIuiv)
|
||||||
#define glGetVertexAttribivARB MANGLE(GetVertexAttribivARB)
|
#define glGetVertexAttribivARB MANGLE(GetVertexAttribivARB)
|
||||||
#define glGetVertexAttribiv MANGLE(GetVertexAttribiv)
|
#define glGetVertexAttribiv MANGLE(GetVertexAttribiv)
|
||||||
#define glGetVertexAttribivNV MANGLE(GetVertexAttribivNV)
|
#define glGetVertexAttribivNV MANGLE(GetVertexAttribivNV)
|
||||||
@@ -652,11 +784,13 @@
|
|||||||
#define glIsAsyncMarkerSGIX MANGLE(IsAsyncMarkerSGIX)
|
#define glIsAsyncMarkerSGIX MANGLE(IsAsyncMarkerSGIX)
|
||||||
#define glIsBufferARB MANGLE(IsBufferARB)
|
#define glIsBufferARB MANGLE(IsBufferARB)
|
||||||
#define glIsBuffer MANGLE(IsBuffer)
|
#define glIsBuffer MANGLE(IsBuffer)
|
||||||
|
#define glIsEnabledi MANGLE(IsEnabledi)
|
||||||
#define glIsEnabledIndexedEXT MANGLE(IsEnabledIndexedEXT)
|
#define glIsEnabledIndexedEXT MANGLE(IsEnabledIndexedEXT)
|
||||||
#define glIsEnabled MANGLE(IsEnabled)
|
#define glIsEnabled MANGLE(IsEnabled)
|
||||||
#define glIsFenceAPPLE MANGLE(IsFenceAPPLE)
|
#define glIsFenceAPPLE MANGLE(IsFenceAPPLE)
|
||||||
#define glIsFenceNV MANGLE(IsFenceNV)
|
#define glIsFenceNV MANGLE(IsFenceNV)
|
||||||
#define glIsFramebufferEXT MANGLE(IsFramebufferEXT)
|
#define glIsFramebufferEXT MANGLE(IsFramebufferEXT)
|
||||||
|
#define glIsFramebuffer MANGLE(IsFramebuffer)
|
||||||
#define glIsList MANGLE(IsList)
|
#define glIsList MANGLE(IsList)
|
||||||
#define glIsObjectBufferATI MANGLE(IsObjectBufferATI)
|
#define glIsObjectBufferATI MANGLE(IsObjectBufferATI)
|
||||||
#define glIsOcclusionQueryNV MANGLE(IsOcclusionQueryNV)
|
#define glIsOcclusionQueryNV MANGLE(IsOcclusionQueryNV)
|
||||||
@@ -666,11 +800,14 @@
|
|||||||
#define glIsQueryARB MANGLE(IsQueryARB)
|
#define glIsQueryARB MANGLE(IsQueryARB)
|
||||||
#define glIsQuery MANGLE(IsQuery)
|
#define glIsQuery MANGLE(IsQuery)
|
||||||
#define glIsRenderbufferEXT MANGLE(IsRenderbufferEXT)
|
#define glIsRenderbufferEXT MANGLE(IsRenderbufferEXT)
|
||||||
|
#define glIsRenderbuffer MANGLE(IsRenderbuffer)
|
||||||
#define glIsShader MANGLE(IsShader)
|
#define glIsShader MANGLE(IsShader)
|
||||||
#define glIsTextureEXT MANGLE(IsTextureEXT)
|
#define glIsTextureEXT MANGLE(IsTextureEXT)
|
||||||
#define glIsTexture MANGLE(IsTexture)
|
#define glIsTexture MANGLE(IsTexture)
|
||||||
|
#define glIsTransformFeedbackNV MANGLE(IsTransformFeedbackNV)
|
||||||
#define glIsVariantEnabledEXT MANGLE(IsVariantEnabledEXT)
|
#define glIsVariantEnabledEXT MANGLE(IsVariantEnabledEXT)
|
||||||
#define glIsVertexArrayAPPLE MANGLE(IsVertexArrayAPPLE)
|
#define glIsVertexArrayAPPLE MANGLE(IsVertexArrayAPPLE)
|
||||||
|
#define glIsVertexArray MANGLE(IsVertexArray)
|
||||||
#define glLightEnviSGIX MANGLE(LightEnviSGIX)
|
#define glLightEnviSGIX MANGLE(LightEnviSGIX)
|
||||||
#define glLightf MANGLE(Lightf)
|
#define glLightf MANGLE(Lightf)
|
||||||
#define glLightfv MANGLE(Lightfv)
|
#define glLightfv MANGLE(Lightfv)
|
||||||
@@ -707,11 +844,13 @@
|
|||||||
#define glMap2f MANGLE(Map2f)
|
#define glMap2f MANGLE(Map2f)
|
||||||
#define glMapBufferARB MANGLE(MapBufferARB)
|
#define glMapBufferARB MANGLE(MapBufferARB)
|
||||||
#define glMapBuffer MANGLE(MapBuffer)
|
#define glMapBuffer MANGLE(MapBuffer)
|
||||||
|
#define glMapBufferRange MANGLE(MapBufferRange)
|
||||||
#define glMapControlPointsNV MANGLE(MapControlPointsNV)
|
#define glMapControlPointsNV MANGLE(MapControlPointsNV)
|
||||||
#define glMapGrid1d MANGLE(MapGrid1d)
|
#define glMapGrid1d MANGLE(MapGrid1d)
|
||||||
#define glMapGrid1f MANGLE(MapGrid1f)
|
#define glMapGrid1f MANGLE(MapGrid1f)
|
||||||
#define glMapGrid2d MANGLE(MapGrid2d)
|
#define glMapGrid2d MANGLE(MapGrid2d)
|
||||||
#define glMapGrid2f MANGLE(MapGrid2f)
|
#define glMapGrid2f MANGLE(MapGrid2f)
|
||||||
|
#define glMapNamedBufferEXT MANGLE(MapNamedBufferEXT)
|
||||||
#define glMapObjectBufferATI MANGLE(MapObjectBufferATI)
|
#define glMapObjectBufferATI MANGLE(MapObjectBufferATI)
|
||||||
#define glMapParameterfvNV MANGLE(MapParameterfvNV)
|
#define glMapParameterfvNV MANGLE(MapParameterfvNV)
|
||||||
#define glMapParameterivNV MANGLE(MapParameterivNV)
|
#define glMapParameterivNV MANGLE(MapParameterivNV)
|
||||||
@@ -719,11 +858,30 @@
|
|||||||
#define glMaterialfv MANGLE(Materialfv)
|
#define glMaterialfv MANGLE(Materialfv)
|
||||||
#define glMateriali MANGLE(Materiali)
|
#define glMateriali MANGLE(Materiali)
|
||||||
#define glMaterialiv MANGLE(Materialiv)
|
#define glMaterialiv MANGLE(Materialiv)
|
||||||
|
#define glMatrixFrustumEXT MANGLE(MatrixFrustumEXT)
|
||||||
#define glMatrixIndexPointerARB MANGLE(MatrixIndexPointerARB)
|
#define glMatrixIndexPointerARB MANGLE(MatrixIndexPointerARB)
|
||||||
#define glMatrixIndexubvARB MANGLE(MatrixIndexubvARB)
|
#define glMatrixIndexubvARB MANGLE(MatrixIndexubvARB)
|
||||||
#define glMatrixIndexuivARB MANGLE(MatrixIndexuivARB)
|
#define glMatrixIndexuivARB MANGLE(MatrixIndexuivARB)
|
||||||
#define glMatrixIndexusvARB MANGLE(MatrixIndexusvARB)
|
#define glMatrixIndexusvARB MANGLE(MatrixIndexusvARB)
|
||||||
|
#define glMatrixLoaddEXT MANGLE(MatrixLoaddEXT)
|
||||||
|
#define glMatrixLoadfEXT MANGLE(MatrixLoadfEXT)
|
||||||
|
#define glMatrixLoadIdentityEXT MANGLE(MatrixLoadIdentityEXT)
|
||||||
|
#define glMatrixLoadTransposedEXT MANGLE(MatrixLoadTransposedEXT)
|
||||||
|
#define glMatrixLoadTransposefEXT MANGLE(MatrixLoadTransposefEXT)
|
||||||
#define glMatrixMode MANGLE(MatrixMode)
|
#define glMatrixMode MANGLE(MatrixMode)
|
||||||
|
#define glMatrixMultdEXT MANGLE(MatrixMultdEXT)
|
||||||
|
#define glMatrixMultfEXT MANGLE(MatrixMultfEXT)
|
||||||
|
#define glMatrixMultTransposedEXT MANGLE(MatrixMultTransposedEXT)
|
||||||
|
#define glMatrixMultTransposefEXT MANGLE(MatrixMultTransposefEXT)
|
||||||
|
#define glMatrixOrthoEXT MANGLE(MatrixOrthoEXT)
|
||||||
|
#define glMatrixPopEXT MANGLE(MatrixPopEXT)
|
||||||
|
#define glMatrixPushEXT MANGLE(MatrixPushEXT)
|
||||||
|
#define glMatrixRotatedEXT MANGLE(MatrixRotatedEXT)
|
||||||
|
#define glMatrixRotatefEXT MANGLE(MatrixRotatefEXT)
|
||||||
|
#define glMatrixScaledEXT MANGLE(MatrixScaledEXT)
|
||||||
|
#define glMatrixScalefEXT MANGLE(MatrixScalefEXT)
|
||||||
|
#define glMatrixTranslatedEXT MANGLE(MatrixTranslatedEXT)
|
||||||
|
#define glMatrixTranslatefEXT MANGLE(MatrixTranslatefEXT)
|
||||||
#define glMinmaxEXT MANGLE(MinmaxEXT)
|
#define glMinmaxEXT MANGLE(MinmaxEXT)
|
||||||
#define glMinmax MANGLE(Minmax)
|
#define glMinmax MANGLE(Minmax)
|
||||||
#define glMultiDrawArraysEXT MANGLE(MultiDrawArraysEXT)
|
#define glMultiDrawArraysEXT MANGLE(MultiDrawArraysEXT)
|
||||||
@@ -734,6 +892,7 @@
|
|||||||
#define glMultiDrawRangeElementArrayAPPLE MANGLE(MultiDrawRangeElementArrayAPPLE)
|
#define glMultiDrawRangeElementArrayAPPLE MANGLE(MultiDrawRangeElementArrayAPPLE)
|
||||||
#define glMultiModeDrawArraysIBM MANGLE(MultiModeDrawArraysIBM)
|
#define glMultiModeDrawArraysIBM MANGLE(MultiModeDrawArraysIBM)
|
||||||
#define glMultiModeDrawElementsIBM MANGLE(MultiModeDrawElementsIBM)
|
#define glMultiModeDrawElementsIBM MANGLE(MultiModeDrawElementsIBM)
|
||||||
|
#define glMultiTexBufferEXT MANGLE(MultiTexBufferEXT)
|
||||||
#define glMultiTexCoord1dARB MANGLE(MultiTexCoord1dARB)
|
#define glMultiTexCoord1dARB MANGLE(MultiTexCoord1dARB)
|
||||||
#define glMultiTexCoord1d MANGLE(MultiTexCoord1d)
|
#define glMultiTexCoord1d MANGLE(MultiTexCoord1d)
|
||||||
#define glMultiTexCoord1dvARB MANGLE(MultiTexCoord1dvARB)
|
#define glMultiTexCoord1dvARB MANGLE(MultiTexCoord1dvARB)
|
||||||
@@ -806,12 +965,60 @@
|
|||||||
#define glMultiTexCoord4s MANGLE(MultiTexCoord4s)
|
#define glMultiTexCoord4s MANGLE(MultiTexCoord4s)
|
||||||
#define glMultiTexCoord4svARB MANGLE(MultiTexCoord4svARB)
|
#define glMultiTexCoord4svARB MANGLE(MultiTexCoord4svARB)
|
||||||
#define glMultiTexCoord4sv MANGLE(MultiTexCoord4sv)
|
#define glMultiTexCoord4sv MANGLE(MultiTexCoord4sv)
|
||||||
|
#define glMultiTexCoordPointerEXT MANGLE(MultiTexCoordPointerEXT)
|
||||||
|
#define glMultiTexEnvfEXT MANGLE(MultiTexEnvfEXT)
|
||||||
|
#define glMultiTexEnvfvEXT MANGLE(MultiTexEnvfvEXT)
|
||||||
|
#define glMultiTexEnviEXT MANGLE(MultiTexEnviEXT)
|
||||||
|
#define glMultiTexEnvivEXT MANGLE(MultiTexEnvivEXT)
|
||||||
|
#define glMultiTexGendEXT MANGLE(MultiTexGendEXT)
|
||||||
|
#define glMultiTexGendvEXT MANGLE(MultiTexGendvEXT)
|
||||||
|
#define glMultiTexGenfEXT MANGLE(MultiTexGenfEXT)
|
||||||
|
#define glMultiTexGenfvEXT MANGLE(MultiTexGenfvEXT)
|
||||||
|
#define glMultiTexGeniEXT MANGLE(MultiTexGeniEXT)
|
||||||
|
#define glMultiTexGenivEXT MANGLE(MultiTexGenivEXT)
|
||||||
|
#define glMultiTexImage1DEXT MANGLE(MultiTexImage1DEXT)
|
||||||
|
#define glMultiTexImage2DEXT MANGLE(MultiTexImage2DEXT)
|
||||||
|
#define glMultiTexImage3DEXT MANGLE(MultiTexImage3DEXT)
|
||||||
|
#define glMultiTexParameterfEXT MANGLE(MultiTexParameterfEXT)
|
||||||
|
#define glMultiTexParameterfvEXT MANGLE(MultiTexParameterfvEXT)
|
||||||
|
#define glMultiTexParameteriEXT MANGLE(MultiTexParameteriEXT)
|
||||||
|
#define glMultiTexParameterIivEXT MANGLE(MultiTexParameterIivEXT)
|
||||||
|
#define glMultiTexParameterIuivEXT MANGLE(MultiTexParameterIuivEXT)
|
||||||
|
#define glMultiTexParameterivEXT MANGLE(MultiTexParameterivEXT)
|
||||||
|
#define glMultiTexRenderbufferEXT MANGLE(MultiTexRenderbufferEXT)
|
||||||
|
#define glMultiTexSubImage1DEXT MANGLE(MultiTexSubImage1DEXT)
|
||||||
|
#define glMultiTexSubImage2DEXT MANGLE(MultiTexSubImage2DEXT)
|
||||||
|
#define glMultiTexSubImage3DEXT MANGLE(MultiTexSubImage3DEXT)
|
||||||
#define glMultMatrixd MANGLE(MultMatrixd)
|
#define glMultMatrixd MANGLE(MultMatrixd)
|
||||||
#define glMultMatrixf MANGLE(MultMatrixf)
|
#define glMultMatrixf MANGLE(MultMatrixf)
|
||||||
#define glMultTransposeMatrixdARB MANGLE(MultTransposeMatrixdARB)
|
#define glMultTransposeMatrixdARB MANGLE(MultTransposeMatrixdARB)
|
||||||
#define glMultTransposeMatrixd MANGLE(MultTransposeMatrixd)
|
#define glMultTransposeMatrixd MANGLE(MultTransposeMatrixd)
|
||||||
#define glMultTransposeMatrixfARB MANGLE(MultTransposeMatrixfARB)
|
#define glMultTransposeMatrixfARB MANGLE(MultTransposeMatrixfARB)
|
||||||
#define glMultTransposeMatrixf MANGLE(MultTransposeMatrixf)
|
#define glMultTransposeMatrixf MANGLE(MultTransposeMatrixf)
|
||||||
|
#define glNamedBufferDataEXT MANGLE(NamedBufferDataEXT)
|
||||||
|
#define glNamedBufferSubDataEXT MANGLE(NamedBufferSubDataEXT)
|
||||||
|
#define glNamedFramebufferRenderbufferEXT MANGLE(NamedFramebufferRenderbufferEXT)
|
||||||
|
#define glNamedFramebufferTexture1DEXT MANGLE(NamedFramebufferTexture1DEXT)
|
||||||
|
#define glNamedFramebufferTexture2DEXT MANGLE(NamedFramebufferTexture2DEXT)
|
||||||
|
#define glNamedFramebufferTexture3DEXT MANGLE(NamedFramebufferTexture3DEXT)
|
||||||
|
#define glNamedFramebufferTextureEXT MANGLE(NamedFramebufferTextureEXT)
|
||||||
|
#define glNamedFramebufferTextureFaceEXT MANGLE(NamedFramebufferTextureFaceEXT)
|
||||||
|
#define glNamedFramebufferTextureLayerEXT MANGLE(NamedFramebufferTextureLayerEXT)
|
||||||
|
#define glNamedProgramLocalParameter4dEXT MANGLE(NamedProgramLocalParameter4dEXT)
|
||||||
|
#define glNamedProgramLocalParameter4dvEXT MANGLE(NamedProgramLocalParameter4dvEXT)
|
||||||
|
#define glNamedProgramLocalParameter4fEXT MANGLE(NamedProgramLocalParameter4fEXT)
|
||||||
|
#define glNamedProgramLocalParameter4fvEXT MANGLE(NamedProgramLocalParameter4fvEXT)
|
||||||
|
#define glNamedProgramLocalParameterI4iEXT MANGLE(NamedProgramLocalParameterI4iEXT)
|
||||||
|
#define glNamedProgramLocalParameterI4ivEXT MANGLE(NamedProgramLocalParameterI4ivEXT)
|
||||||
|
#define glNamedProgramLocalParameterI4uiEXT MANGLE(NamedProgramLocalParameterI4uiEXT)
|
||||||
|
#define glNamedProgramLocalParameterI4uivEXT MANGLE(NamedProgramLocalParameterI4uivEXT)
|
||||||
|
#define glNamedProgramLocalParameters4fvEXT MANGLE(NamedProgramLocalParameters4fvEXT)
|
||||||
|
#define glNamedProgramLocalParametersI4ivEXT MANGLE(NamedProgramLocalParametersI4ivEXT)
|
||||||
|
#define glNamedProgramLocalParametersI4uivEXT MANGLE(NamedProgramLocalParametersI4uivEXT)
|
||||||
|
#define glNamedProgramStringEXT MANGLE(NamedProgramStringEXT)
|
||||||
|
#define glNamedRenderbufferStorageEXT MANGLE(NamedRenderbufferStorageEXT)
|
||||||
|
#define glNamedRenderbufferStorageMultisampleCoverageEXT MANGLE(NamedRenderbufferStorageMultisampleCoverageEXT)
|
||||||
|
#define glNamedRenderbufferStorageMultisampleEXT MANGLE(NamedRenderbufferStorageMultisampleEXT)
|
||||||
#define glNewList MANGLE(NewList)
|
#define glNewList MANGLE(NewList)
|
||||||
#define glNewObjectBufferATI MANGLE(NewObjectBufferATI)
|
#define glNewObjectBufferATI MANGLE(NewObjectBufferATI)
|
||||||
#define glNormal3b MANGLE(Normal3b)
|
#define glNormal3b MANGLE(Normal3b)
|
||||||
@@ -845,6 +1052,7 @@
|
|||||||
#define glOrtho MANGLE(Ortho)
|
#define glOrtho MANGLE(Ortho)
|
||||||
#define glPassTexCoordATI MANGLE(PassTexCoordATI)
|
#define glPassTexCoordATI MANGLE(PassTexCoordATI)
|
||||||
#define glPassThrough MANGLE(PassThrough)
|
#define glPassThrough MANGLE(PassThrough)
|
||||||
|
#define glPauseTransformFeedbackNV MANGLE(PauseTransformFeedbackNV)
|
||||||
#define glPixelDataRangeNV MANGLE(PixelDataRangeNV)
|
#define glPixelDataRangeNV MANGLE(PixelDataRangeNV)
|
||||||
#define glPixelMapfv MANGLE(PixelMapfv)
|
#define glPixelMapfv MANGLE(PixelMapfv)
|
||||||
#define glPixelMapuiv MANGLE(PixelMapuiv)
|
#define glPixelMapuiv MANGLE(PixelMapuiv)
|
||||||
@@ -926,12 +1134,47 @@
|
|||||||
#define glProgramParameter4dvNV MANGLE(ProgramParameter4dvNV)
|
#define glProgramParameter4dvNV MANGLE(ProgramParameter4dvNV)
|
||||||
#define glProgramParameter4fNV MANGLE(ProgramParameter4fNV)
|
#define glProgramParameter4fNV MANGLE(ProgramParameter4fNV)
|
||||||
#define glProgramParameter4fvNV MANGLE(ProgramParameter4fvNV)
|
#define glProgramParameter4fvNV MANGLE(ProgramParameter4fvNV)
|
||||||
|
#define glProgramParameteriARB MANGLE(ProgramParameteriARB)
|
||||||
#define glProgramParameteriEXT MANGLE(ProgramParameteriEXT)
|
#define glProgramParameteriEXT MANGLE(ProgramParameteriEXT)
|
||||||
#define glProgramParameters4dvNV MANGLE(ProgramParameters4dvNV)
|
#define glProgramParameters4dvNV MANGLE(ProgramParameters4dvNV)
|
||||||
#define glProgramParameters4fvNV MANGLE(ProgramParameters4fvNV)
|
#define glProgramParameters4fvNV MANGLE(ProgramParameters4fvNV)
|
||||||
#define glProgramStringARB MANGLE(ProgramStringARB)
|
#define glProgramStringARB MANGLE(ProgramStringARB)
|
||||||
|
#define glProgramUniform1fEXT MANGLE(ProgramUniform1fEXT)
|
||||||
|
#define glProgramUniform1fvEXT MANGLE(ProgramUniform1fvEXT)
|
||||||
|
#define glProgramUniform1iEXT MANGLE(ProgramUniform1iEXT)
|
||||||
|
#define glProgramUniform1ivEXT MANGLE(ProgramUniform1ivEXT)
|
||||||
|
#define glProgramUniform1uiEXT MANGLE(ProgramUniform1uiEXT)
|
||||||
|
#define glProgramUniform1uivEXT MANGLE(ProgramUniform1uivEXT)
|
||||||
|
#define glProgramUniform2fEXT MANGLE(ProgramUniform2fEXT)
|
||||||
|
#define glProgramUniform2fvEXT MANGLE(ProgramUniform2fvEXT)
|
||||||
|
#define glProgramUniform2iEXT MANGLE(ProgramUniform2iEXT)
|
||||||
|
#define glProgramUniform2ivEXT MANGLE(ProgramUniform2ivEXT)
|
||||||
|
#define glProgramUniform2uiEXT MANGLE(ProgramUniform2uiEXT)
|
||||||
|
#define glProgramUniform2uivEXT MANGLE(ProgramUniform2uivEXT)
|
||||||
|
#define glProgramUniform3fEXT MANGLE(ProgramUniform3fEXT)
|
||||||
|
#define glProgramUniform3fvEXT MANGLE(ProgramUniform3fvEXT)
|
||||||
|
#define glProgramUniform3iEXT MANGLE(ProgramUniform3iEXT)
|
||||||
|
#define glProgramUniform3ivEXT MANGLE(ProgramUniform3ivEXT)
|
||||||
|
#define glProgramUniform3uiEXT MANGLE(ProgramUniform3uiEXT)
|
||||||
|
#define glProgramUniform3uivEXT MANGLE(ProgramUniform3uivEXT)
|
||||||
|
#define glProgramUniform4fEXT MANGLE(ProgramUniform4fEXT)
|
||||||
|
#define glProgramUniform4fvEXT MANGLE(ProgramUniform4fvEXT)
|
||||||
|
#define glProgramUniform4iEXT MANGLE(ProgramUniform4iEXT)
|
||||||
|
#define glProgramUniform4ivEXT MANGLE(ProgramUniform4ivEXT)
|
||||||
|
#define glProgramUniform4uiEXT MANGLE(ProgramUniform4uiEXT)
|
||||||
|
#define glProgramUniform4uivEXT MANGLE(ProgramUniform4uivEXT)
|
||||||
|
#define glProgramUniformMatrix2fvEXT MANGLE(ProgramUniformMatrix2fvEXT)
|
||||||
|
#define glProgramUniformMatrix2x3fvEXT MANGLE(ProgramUniformMatrix2x3fvEXT)
|
||||||
|
#define glProgramUniformMatrix2x4fvEXT MANGLE(ProgramUniformMatrix2x4fvEXT)
|
||||||
|
#define glProgramUniformMatrix3fvEXT MANGLE(ProgramUniformMatrix3fvEXT)
|
||||||
|
#define glProgramUniformMatrix3x2fvEXT MANGLE(ProgramUniformMatrix3x2fvEXT)
|
||||||
|
#define glProgramUniformMatrix3x4fvEXT MANGLE(ProgramUniformMatrix3x4fvEXT)
|
||||||
|
#define glProgramUniformMatrix4fvEXT MANGLE(ProgramUniformMatrix4fvEXT)
|
||||||
|
#define glProgramUniformMatrix4x2fvEXT MANGLE(ProgramUniformMatrix4x2fvEXT)
|
||||||
|
#define glProgramUniformMatrix4x3fvEXT MANGLE(ProgramUniformMatrix4x3fvEXT)
|
||||||
#define glProgramVertexLimitNV MANGLE(ProgramVertexLimitNV)
|
#define glProgramVertexLimitNV MANGLE(ProgramVertexLimitNV)
|
||||||
#define glPushAttrib MANGLE(PushAttrib)
|
#define glPushAttrib MANGLE(PushAttrib)
|
||||||
|
#define glPushClientAttribDefaultEXT MANGLE(PushClientAttribDefaultEXT)
|
||||||
#define glPushClientAttrib MANGLE(PushClientAttrib)
|
#define glPushClientAttrib MANGLE(PushClientAttrib)
|
||||||
#define glPushMatrix MANGLE(PushMatrix)
|
#define glPushMatrix MANGLE(PushMatrix)
|
||||||
#define glPushName MANGLE(PushName)
|
#define glPushName MANGLE(PushName)
|
||||||
@@ -972,8 +1215,10 @@
|
|||||||
#define glRectsv MANGLE(Rectsv)
|
#define glRectsv MANGLE(Rectsv)
|
||||||
#define glReferencePlaneSGIX MANGLE(ReferencePlaneSGIX)
|
#define glReferencePlaneSGIX MANGLE(ReferencePlaneSGIX)
|
||||||
#define glRenderbufferStorageEXT MANGLE(RenderbufferStorageEXT)
|
#define glRenderbufferStorageEXT MANGLE(RenderbufferStorageEXT)
|
||||||
|
#define glRenderbufferStorage MANGLE(RenderbufferStorage)
|
||||||
#define glRenderbufferStorageMultisampleCoverageNV MANGLE(RenderbufferStorageMultisampleCoverageNV)
|
#define glRenderbufferStorageMultisampleCoverageNV MANGLE(RenderbufferStorageMultisampleCoverageNV)
|
||||||
#define glRenderbufferStorageMultisampleEXT MANGLE(RenderbufferStorageMultisampleEXT)
|
#define glRenderbufferStorageMultisampleEXT MANGLE(RenderbufferStorageMultisampleEXT)
|
||||||
|
#define glRenderbufferStorageMultisample MANGLE(RenderbufferStorageMultisample)
|
||||||
#define glRenderMode MANGLE(RenderMode)
|
#define glRenderMode MANGLE(RenderMode)
|
||||||
#define glReplacementCodePointerSUN MANGLE(ReplacementCodePointerSUN)
|
#define glReplacementCodePointerSUN MANGLE(ReplacementCodePointerSUN)
|
||||||
#define glReplacementCodeubSUN MANGLE(ReplacementCodeubSUN)
|
#define glReplacementCodeubSUN MANGLE(ReplacementCodeubSUN)
|
||||||
@@ -1004,12 +1249,14 @@
|
|||||||
#define glResetMinmaxEXT MANGLE(ResetMinmaxEXT)
|
#define glResetMinmaxEXT MANGLE(ResetMinmaxEXT)
|
||||||
#define glResetMinmax MANGLE(ResetMinmax)
|
#define glResetMinmax MANGLE(ResetMinmax)
|
||||||
#define glResizeBuffersMESA MANGLE(ResizeBuffersMESA)
|
#define glResizeBuffersMESA MANGLE(ResizeBuffersMESA)
|
||||||
|
#define glResumeTransformFeedbackNV MANGLE(ResumeTransformFeedbackNV)
|
||||||
#define glRotated MANGLE(Rotated)
|
#define glRotated MANGLE(Rotated)
|
||||||
#define glRotatef MANGLE(Rotatef)
|
#define glRotatef MANGLE(Rotatef)
|
||||||
#define glSampleCoverageARB MANGLE(SampleCoverageARB)
|
#define glSampleCoverageARB MANGLE(SampleCoverageARB)
|
||||||
#define glSampleCoverage MANGLE(SampleCoverage)
|
#define glSampleCoverage MANGLE(SampleCoverage)
|
||||||
#define glSampleMapATI MANGLE(SampleMapATI)
|
#define glSampleMapATI MANGLE(SampleMapATI)
|
||||||
#define glSampleMaskEXT MANGLE(SampleMaskEXT)
|
#define glSampleMaskEXT MANGLE(SampleMaskEXT)
|
||||||
|
#define glSampleMaskIndexedNV MANGLE(SampleMaskIndexedNV)
|
||||||
#define glSampleMaskSGIS MANGLE(SampleMaskSGIS)
|
#define glSampleMaskSGIS MANGLE(SampleMaskSGIS)
|
||||||
#define glSamplePatternEXT MANGLE(SamplePatternEXT)
|
#define glSamplePatternEXT MANGLE(SamplePatternEXT)
|
||||||
#define glSamplePatternSGIS MANGLE(SamplePatternSGIS)
|
#define glSamplePatternSGIS MANGLE(SamplePatternSGIS)
|
||||||
@@ -1101,6 +1348,7 @@
|
|||||||
#define glTestFenceAPPLE MANGLE(TestFenceAPPLE)
|
#define glTestFenceAPPLE MANGLE(TestFenceAPPLE)
|
||||||
#define glTestFenceNV MANGLE(TestFenceNV)
|
#define glTestFenceNV MANGLE(TestFenceNV)
|
||||||
#define glTestObjectAPPLE MANGLE(TestObjectAPPLE)
|
#define glTestObjectAPPLE MANGLE(TestObjectAPPLE)
|
||||||
|
#define glTexBufferARB MANGLE(TexBufferARB)
|
||||||
#define glTexBufferEXT MANGLE(TexBufferEXT)
|
#define glTexBufferEXT MANGLE(TexBufferEXT)
|
||||||
#define glTexBumpParameterfvATI MANGLE(TexBumpParameterfvATI)
|
#define glTexBumpParameterfvATI MANGLE(TexBumpParameterfvATI)
|
||||||
#define glTexBumpParameterivATI MANGLE(TexBumpParameterivATI)
|
#define glTexBumpParameterivATI MANGLE(TexBumpParameterivATI)
|
||||||
@@ -1181,9 +1429,12 @@
|
|||||||
#define glTexParameterf MANGLE(TexParameterf)
|
#define glTexParameterf MANGLE(TexParameterf)
|
||||||
#define glTexParameterfv MANGLE(TexParameterfv)
|
#define glTexParameterfv MANGLE(TexParameterfv)
|
||||||
#define glTexParameterIivEXT MANGLE(TexParameterIivEXT)
|
#define glTexParameterIivEXT MANGLE(TexParameterIivEXT)
|
||||||
|
#define glTexParameterIiv MANGLE(TexParameterIiv)
|
||||||
#define glTexParameteri MANGLE(TexParameteri)
|
#define glTexParameteri MANGLE(TexParameteri)
|
||||||
#define glTexParameterIuivEXT MANGLE(TexParameterIuivEXT)
|
#define glTexParameterIuivEXT MANGLE(TexParameterIuivEXT)
|
||||||
|
#define glTexParameterIuiv MANGLE(TexParameterIuiv)
|
||||||
#define glTexParameteriv MANGLE(TexParameteriv)
|
#define glTexParameteriv MANGLE(TexParameteriv)
|
||||||
|
#define glTexRenderbufferNV MANGLE(TexRenderbufferNV)
|
||||||
#define glTexSubImage1DEXT MANGLE(TexSubImage1DEXT)
|
#define glTexSubImage1DEXT MANGLE(TexSubImage1DEXT)
|
||||||
#define glTexSubImage1D MANGLE(TexSubImage1D)
|
#define glTexSubImage1D MANGLE(TexSubImage1D)
|
||||||
#define glTexSubImage2DEXT MANGLE(TexSubImage2DEXT)
|
#define glTexSubImage2DEXT MANGLE(TexSubImage2DEXT)
|
||||||
@@ -1191,12 +1442,28 @@
|
|||||||
#define glTexSubImage3DEXT MANGLE(TexSubImage3DEXT)
|
#define glTexSubImage3DEXT MANGLE(TexSubImage3DEXT)
|
||||||
#define glTexSubImage3D MANGLE(TexSubImage3D)
|
#define glTexSubImage3D MANGLE(TexSubImage3D)
|
||||||
#define glTexSubImage4DSGIS MANGLE(TexSubImage4DSGIS)
|
#define glTexSubImage4DSGIS MANGLE(TexSubImage4DSGIS)
|
||||||
|
#define glTextureBufferEXT MANGLE(TextureBufferEXT)
|
||||||
#define glTextureColorMaskSGIS MANGLE(TextureColorMaskSGIS)
|
#define glTextureColorMaskSGIS MANGLE(TextureColorMaskSGIS)
|
||||||
|
#define glTextureImage1DEXT MANGLE(TextureImage1DEXT)
|
||||||
|
#define glTextureImage2DEXT MANGLE(TextureImage2DEXT)
|
||||||
|
#define glTextureImage3DEXT MANGLE(TextureImage3DEXT)
|
||||||
#define glTextureLightEXT MANGLE(TextureLightEXT)
|
#define glTextureLightEXT MANGLE(TextureLightEXT)
|
||||||
#define glTextureMaterialEXT MANGLE(TextureMaterialEXT)
|
#define glTextureMaterialEXT MANGLE(TextureMaterialEXT)
|
||||||
#define glTextureNormalEXT MANGLE(TextureNormalEXT)
|
#define glTextureNormalEXT MANGLE(TextureNormalEXT)
|
||||||
|
#define glTextureParameterfEXT MANGLE(TextureParameterfEXT)
|
||||||
|
#define glTextureParameterfvEXT MANGLE(TextureParameterfvEXT)
|
||||||
|
#define glTextureParameteriEXT MANGLE(TextureParameteriEXT)
|
||||||
|
#define glTextureParameterIivEXT MANGLE(TextureParameterIivEXT)
|
||||||
|
#define glTextureParameterIuivEXT MANGLE(TextureParameterIuivEXT)
|
||||||
|
#define glTextureParameterivEXT MANGLE(TextureParameterivEXT)
|
||||||
|
#define glTextureRenderbufferEXT MANGLE(TextureRenderbufferEXT)
|
||||||
|
#define glTextureSubImage1DEXT MANGLE(TextureSubImage1DEXT)
|
||||||
|
#define glTextureSubImage2DEXT MANGLE(TextureSubImage2DEXT)
|
||||||
|
#define glTextureSubImage3DEXT MANGLE(TextureSubImage3DEXT)
|
||||||
#define glTrackMatrixNV MANGLE(TrackMatrixNV)
|
#define glTrackMatrixNV MANGLE(TrackMatrixNV)
|
||||||
#define glTransformFeedbackAttribsNV MANGLE(TransformFeedbackAttribsNV)
|
#define glTransformFeedbackAttribsNV MANGLE(TransformFeedbackAttribsNV)
|
||||||
|
#define glTransformFeedbackVaryingsEXT MANGLE(TransformFeedbackVaryingsEXT)
|
||||||
|
#define glTransformFeedbackVaryings MANGLE(TransformFeedbackVaryings)
|
||||||
#define glTransformFeedbackVaryingsNV MANGLE(TransformFeedbackVaryingsNV)
|
#define glTransformFeedbackVaryingsNV MANGLE(TransformFeedbackVaryingsNV)
|
||||||
#define glTranslated MANGLE(Translated)
|
#define glTranslated MANGLE(Translated)
|
||||||
#define glTranslatef MANGLE(Translatef)
|
#define glTranslatef MANGLE(Translatef)
|
||||||
@@ -1209,7 +1476,9 @@
|
|||||||
#define glUniform1ivARB MANGLE(Uniform1ivARB)
|
#define glUniform1ivARB MANGLE(Uniform1ivARB)
|
||||||
#define glUniform1iv MANGLE(Uniform1iv)
|
#define glUniform1iv MANGLE(Uniform1iv)
|
||||||
#define glUniform1uiEXT MANGLE(Uniform1uiEXT)
|
#define glUniform1uiEXT MANGLE(Uniform1uiEXT)
|
||||||
|
#define glUniform1ui MANGLE(Uniform1ui)
|
||||||
#define glUniform1uivEXT MANGLE(Uniform1uivEXT)
|
#define glUniform1uivEXT MANGLE(Uniform1uivEXT)
|
||||||
|
#define glUniform1uiv MANGLE(Uniform1uiv)
|
||||||
#define glUniform2fARB MANGLE(Uniform2fARB)
|
#define glUniform2fARB MANGLE(Uniform2fARB)
|
||||||
#define glUniform2f MANGLE(Uniform2f)
|
#define glUniform2f MANGLE(Uniform2f)
|
||||||
#define glUniform2fvARB MANGLE(Uniform2fvARB)
|
#define glUniform2fvARB MANGLE(Uniform2fvARB)
|
||||||
@@ -1219,7 +1488,9 @@
|
|||||||
#define glUniform2ivARB MANGLE(Uniform2ivARB)
|
#define glUniform2ivARB MANGLE(Uniform2ivARB)
|
||||||
#define glUniform2iv MANGLE(Uniform2iv)
|
#define glUniform2iv MANGLE(Uniform2iv)
|
||||||
#define glUniform2uiEXT MANGLE(Uniform2uiEXT)
|
#define glUniform2uiEXT MANGLE(Uniform2uiEXT)
|
||||||
|
#define glUniform2ui MANGLE(Uniform2ui)
|
||||||
#define glUniform2uivEXT MANGLE(Uniform2uivEXT)
|
#define glUniform2uivEXT MANGLE(Uniform2uivEXT)
|
||||||
|
#define glUniform2uiv MANGLE(Uniform2uiv)
|
||||||
#define glUniform3fARB MANGLE(Uniform3fARB)
|
#define glUniform3fARB MANGLE(Uniform3fARB)
|
||||||
#define glUniform3f MANGLE(Uniform3f)
|
#define glUniform3f MANGLE(Uniform3f)
|
||||||
#define glUniform3fvARB MANGLE(Uniform3fvARB)
|
#define glUniform3fvARB MANGLE(Uniform3fvARB)
|
||||||
@@ -1229,7 +1500,9 @@
|
|||||||
#define glUniform3ivARB MANGLE(Uniform3ivARB)
|
#define glUniform3ivARB MANGLE(Uniform3ivARB)
|
||||||
#define glUniform3iv MANGLE(Uniform3iv)
|
#define glUniform3iv MANGLE(Uniform3iv)
|
||||||
#define glUniform3uiEXT MANGLE(Uniform3uiEXT)
|
#define glUniform3uiEXT MANGLE(Uniform3uiEXT)
|
||||||
|
#define glUniform3ui MANGLE(Uniform3ui)
|
||||||
#define glUniform3uivEXT MANGLE(Uniform3uivEXT)
|
#define glUniform3uivEXT MANGLE(Uniform3uivEXT)
|
||||||
|
#define glUniform3uiv MANGLE(Uniform3uiv)
|
||||||
#define glUniform4fARB MANGLE(Uniform4fARB)
|
#define glUniform4fARB MANGLE(Uniform4fARB)
|
||||||
#define glUniform4f MANGLE(Uniform4f)
|
#define glUniform4f MANGLE(Uniform4f)
|
||||||
#define glUniform4fvARB MANGLE(Uniform4fvARB)
|
#define glUniform4fvARB MANGLE(Uniform4fvARB)
|
||||||
@@ -1239,7 +1512,9 @@
|
|||||||
#define glUniform4ivARB MANGLE(Uniform4ivARB)
|
#define glUniform4ivARB MANGLE(Uniform4ivARB)
|
||||||
#define glUniform4iv MANGLE(Uniform4iv)
|
#define glUniform4iv MANGLE(Uniform4iv)
|
||||||
#define glUniform4uiEXT MANGLE(Uniform4uiEXT)
|
#define glUniform4uiEXT MANGLE(Uniform4uiEXT)
|
||||||
|
#define glUniform4ui MANGLE(Uniform4ui)
|
||||||
#define glUniform4uivEXT MANGLE(Uniform4uivEXT)
|
#define glUniform4uivEXT MANGLE(Uniform4uivEXT)
|
||||||
|
#define glUniform4uiv MANGLE(Uniform4uiv)
|
||||||
#define glUniformBufferEXT MANGLE(UniformBufferEXT)
|
#define glUniformBufferEXT MANGLE(UniformBufferEXT)
|
||||||
#define glUniformMatrix2fvARB MANGLE(UniformMatrix2fvARB)
|
#define glUniformMatrix2fvARB MANGLE(UniformMatrix2fvARB)
|
||||||
#define glUniformMatrix2fv MANGLE(UniformMatrix2fv)
|
#define glUniformMatrix2fv MANGLE(UniformMatrix2fv)
|
||||||
@@ -1256,6 +1531,7 @@
|
|||||||
#define glUnlockArraysEXT MANGLE(UnlockArraysEXT)
|
#define glUnlockArraysEXT MANGLE(UnlockArraysEXT)
|
||||||
#define glUnmapBufferARB MANGLE(UnmapBufferARB)
|
#define glUnmapBufferARB MANGLE(UnmapBufferARB)
|
||||||
#define glUnmapBuffer MANGLE(UnmapBuffer)
|
#define glUnmapBuffer MANGLE(UnmapBuffer)
|
||||||
|
#define glUnmapNamedBufferEXT MANGLE(UnmapNamedBufferEXT)
|
||||||
#define glUnmapObjectBufferATI MANGLE(UnmapObjectBufferATI)
|
#define glUnmapObjectBufferATI MANGLE(UnmapObjectBufferATI)
|
||||||
#define glUpdateObjectBufferATI MANGLE(UpdateObjectBufferATI)
|
#define glUpdateObjectBufferATI MANGLE(UpdateObjectBufferATI)
|
||||||
#define glUseProgram MANGLE(UseProgram)
|
#define glUseProgram MANGLE(UseProgram)
|
||||||
@@ -1412,27 +1688,49 @@
|
|||||||
#define glVertexAttrib4usvARB MANGLE(VertexAttrib4usvARB)
|
#define glVertexAttrib4usvARB MANGLE(VertexAttrib4usvARB)
|
||||||
#define glVertexAttrib4usv MANGLE(VertexAttrib4usv)
|
#define glVertexAttrib4usv MANGLE(VertexAttrib4usv)
|
||||||
#define glVertexAttribArrayObjectATI MANGLE(VertexAttribArrayObjectATI)
|
#define glVertexAttribArrayObjectATI MANGLE(VertexAttribArrayObjectATI)
|
||||||
|
#define glVertexAttribDivisor MANGLE(VertexAttribDivisor)
|
||||||
#define glVertexAttribI1iEXT MANGLE(VertexAttribI1iEXT)
|
#define glVertexAttribI1iEXT MANGLE(VertexAttribI1iEXT)
|
||||||
|
#define glVertexAttribI1i MANGLE(VertexAttribI1i)
|
||||||
#define glVertexAttribI1ivEXT MANGLE(VertexAttribI1ivEXT)
|
#define glVertexAttribI1ivEXT MANGLE(VertexAttribI1ivEXT)
|
||||||
|
#define glVertexAttribI1iv MANGLE(VertexAttribI1iv)
|
||||||
#define glVertexAttribI1uiEXT MANGLE(VertexAttribI1uiEXT)
|
#define glVertexAttribI1uiEXT MANGLE(VertexAttribI1uiEXT)
|
||||||
|
#define glVertexAttribI1ui MANGLE(VertexAttribI1ui)
|
||||||
#define glVertexAttribI1uivEXT MANGLE(VertexAttribI1uivEXT)
|
#define glVertexAttribI1uivEXT MANGLE(VertexAttribI1uivEXT)
|
||||||
|
#define glVertexAttribI1uiv MANGLE(VertexAttribI1uiv)
|
||||||
#define glVertexAttribI2iEXT MANGLE(VertexAttribI2iEXT)
|
#define glVertexAttribI2iEXT MANGLE(VertexAttribI2iEXT)
|
||||||
|
#define glVertexAttribI2i MANGLE(VertexAttribI2i)
|
||||||
#define glVertexAttribI2ivEXT MANGLE(VertexAttribI2ivEXT)
|
#define glVertexAttribI2ivEXT MANGLE(VertexAttribI2ivEXT)
|
||||||
|
#define glVertexAttribI2iv MANGLE(VertexAttribI2iv)
|
||||||
#define glVertexAttribI2uiEXT MANGLE(VertexAttribI2uiEXT)
|
#define glVertexAttribI2uiEXT MANGLE(VertexAttribI2uiEXT)
|
||||||
|
#define glVertexAttribI2ui MANGLE(VertexAttribI2ui)
|
||||||
#define glVertexAttribI2uivEXT MANGLE(VertexAttribI2uivEXT)
|
#define glVertexAttribI2uivEXT MANGLE(VertexAttribI2uivEXT)
|
||||||
|
#define glVertexAttribI2uiv MANGLE(VertexAttribI2uiv)
|
||||||
#define glVertexAttribI3iEXT MANGLE(VertexAttribI3iEXT)
|
#define glVertexAttribI3iEXT MANGLE(VertexAttribI3iEXT)
|
||||||
|
#define glVertexAttribI3i MANGLE(VertexAttribI3i)
|
||||||
#define glVertexAttribI3ivEXT MANGLE(VertexAttribI3ivEXT)
|
#define glVertexAttribI3ivEXT MANGLE(VertexAttribI3ivEXT)
|
||||||
|
#define glVertexAttribI3iv MANGLE(VertexAttribI3iv)
|
||||||
#define glVertexAttribI3uiEXT MANGLE(VertexAttribI3uiEXT)
|
#define glVertexAttribI3uiEXT MANGLE(VertexAttribI3uiEXT)
|
||||||
|
#define glVertexAttribI3ui MANGLE(VertexAttribI3ui)
|
||||||
#define glVertexAttribI3uivEXT MANGLE(VertexAttribI3uivEXT)
|
#define glVertexAttribI3uivEXT MANGLE(VertexAttribI3uivEXT)
|
||||||
|
#define glVertexAttribI3uiv MANGLE(VertexAttribI3uiv)
|
||||||
#define glVertexAttribI4bvEXT MANGLE(VertexAttribI4bvEXT)
|
#define glVertexAttribI4bvEXT MANGLE(VertexAttribI4bvEXT)
|
||||||
|
#define glVertexAttribI4bv MANGLE(VertexAttribI4bv)
|
||||||
#define glVertexAttribI4iEXT MANGLE(VertexAttribI4iEXT)
|
#define glVertexAttribI4iEXT MANGLE(VertexAttribI4iEXT)
|
||||||
|
#define glVertexAttribI4i MANGLE(VertexAttribI4i)
|
||||||
#define glVertexAttribI4ivEXT MANGLE(VertexAttribI4ivEXT)
|
#define glVertexAttribI4ivEXT MANGLE(VertexAttribI4ivEXT)
|
||||||
|
#define glVertexAttribI4iv MANGLE(VertexAttribI4iv)
|
||||||
#define glVertexAttribI4svEXT MANGLE(VertexAttribI4svEXT)
|
#define glVertexAttribI4svEXT MANGLE(VertexAttribI4svEXT)
|
||||||
|
#define glVertexAttribI4sv MANGLE(VertexAttribI4sv)
|
||||||
#define glVertexAttribI4ubvEXT MANGLE(VertexAttribI4ubvEXT)
|
#define glVertexAttribI4ubvEXT MANGLE(VertexAttribI4ubvEXT)
|
||||||
|
#define glVertexAttribI4ubv MANGLE(VertexAttribI4ubv)
|
||||||
#define glVertexAttribI4uiEXT MANGLE(VertexAttribI4uiEXT)
|
#define glVertexAttribI4uiEXT MANGLE(VertexAttribI4uiEXT)
|
||||||
|
#define glVertexAttribI4ui MANGLE(VertexAttribI4ui)
|
||||||
#define glVertexAttribI4uivEXT MANGLE(VertexAttribI4uivEXT)
|
#define glVertexAttribI4uivEXT MANGLE(VertexAttribI4uivEXT)
|
||||||
|
#define glVertexAttribI4uiv MANGLE(VertexAttribI4uiv)
|
||||||
#define glVertexAttribI4usvEXT MANGLE(VertexAttribI4usvEXT)
|
#define glVertexAttribI4usvEXT MANGLE(VertexAttribI4usvEXT)
|
||||||
|
#define glVertexAttribI4usv MANGLE(VertexAttribI4usv)
|
||||||
#define glVertexAttribIPointerEXT MANGLE(VertexAttribIPointerEXT)
|
#define glVertexAttribIPointerEXT MANGLE(VertexAttribIPointerEXT)
|
||||||
|
#define glVertexAttribIPointer MANGLE(VertexAttribIPointer)
|
||||||
#define glVertexAttribPointerARB MANGLE(VertexAttribPointerARB)
|
#define glVertexAttribPointerARB MANGLE(VertexAttribPointerARB)
|
||||||
#define glVertexAttribPointer MANGLE(VertexAttribPointer)
|
#define glVertexAttribPointer MANGLE(VertexAttribPointer)
|
||||||
#define glVertexAttribPointerNV MANGLE(VertexAttribPointerNV)
|
#define glVertexAttribPointerNV MANGLE(VertexAttribPointerNV)
|
||||||
|
File diff suppressed because it is too large
Load Diff
@@ -1,31 +1,32 @@
|
|||||||
/*
|
/*
|
||||||
** License Applicability. Except to the extent portions of this file are
|
* SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008)
|
||||||
** made subject to an alternative license as permitted in the SGI Free
|
* Copyright (C) 1991-2000 Silicon Graphics, Inc. All Rights Reserved.
|
||||||
** Software License B, Version 1.1 (the "License"), the contents of this
|
*
|
||||||
** file are subject only to the provisions of the License. You may not use
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
** this file except in compliance with the License. You may obtain a copy
|
* copy of this software and associated documentation files (the "Software"),
|
||||||
** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
|
* to deal in the Software without restriction, including without limitation
|
||||||
** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
|
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||||
**
|
* and/or sell copies of the Software, and to permit persons to whom the
|
||||||
** http://oss.sgi.com/projects/FreeB
|
* Software is furnished to do so, subject to the following conditions:
|
||||||
**
|
*
|
||||||
** Note that, as provided in the License, the Software is distributed on an
|
* The above copyright notice including the dates of first publication and
|
||||||
** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
|
* either this permission notice or a reference to
|
||||||
** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
|
* http://oss.sgi.com/projects/FreeB/
|
||||||
** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
|
* shall be included in all copies or substantial portions of the Software.
|
||||||
** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
|
*
|
||||||
**
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
** Original Code. The Original Code is: OpenGL Sample Implementation,
|
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
|
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||||
** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
|
* SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||||
** Copyright in any portions created by third parties is as indicated
|
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
|
||||||
** elsewhere herein. All Rights Reserved.
|
* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
**
|
* SOFTWARE.
|
||||||
** Additional Notice Provisions: This software was created using the
|
*
|
||||||
** OpenGL(R) version 1.2.1 Sample Implementation published by SGI, but has
|
* Except as contained in this notice, the name of Silicon Graphics, Inc.
|
||||||
** not been independently verified as being compliant with the OpenGL(R)
|
* shall not be used in advertising or otherwise to promote the sale, use or
|
||||||
** version 1.2.1 Specification.
|
* other dealings in this Software without prior written authorization from
|
||||||
*/
|
* Silicon Graphics, Inc.
|
||||||
|
*/
|
||||||
|
|
||||||
#ifndef __glu_h__
|
#ifndef __glu_h__
|
||||||
#define __glu_h__
|
#define __glu_h__
|
||||||
@@ -37,8 +38,12 @@
|
|||||||
#include <GL/gl.h>
|
#include <GL/gl.h>
|
||||||
|
|
||||||
#ifndef GLAPIENTRY
|
#ifndef GLAPIENTRY
|
||||||
|
#if defined(_MSC_VER) || defined(__MINGW32__)
|
||||||
|
#define GLAPIENTRY __stdcall
|
||||||
|
#else
|
||||||
#define GLAPIENTRY
|
#define GLAPIENTRY
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef GLAPIENTRYP
|
#ifndef GLAPIENTRYP
|
||||||
#define GLAPIENTRYP GLAPIENTRY *
|
#define GLAPIENTRYP GLAPIENTRY *
|
||||||
|
@@ -290,17 +290,25 @@ extern void glXSelectEvent( Display *dpy, GLXDrawable drawable,
|
|||||||
extern void glXGetSelectedEvent( Display *dpy, GLXDrawable drawable,
|
extern void glXGetSelectedEvent( Display *dpy, GLXDrawable drawable,
|
||||||
unsigned long *mask );
|
unsigned long *mask );
|
||||||
|
|
||||||
|
/* GLX 1.3 function pointer typedefs */
|
||||||
/* GLX 1.4 and later */
|
typedef GLXFBConfig * (* PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);
|
||||||
extern void (*glXGetProcAddress(const GLubyte *procname))( void );
|
typedef GLXFBConfig * (* PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
|
||||||
|
typedef int (* PFNGLXGETFBCONFIGATTRIBPROC) (Display *dpy, GLXFBConfig config, int attribute, int *value);
|
||||||
|
typedef XVisualInfo * (* PFNGLXGETVISUALFROMFBCONFIGPROC) (Display *dpy, GLXFBConfig config);
|
||||||
#ifndef GLX_GLXEXT_LEGACY
|
typedef GLXWindow (* PFNGLXCREATEWINDOWPROC) (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);
|
||||||
|
typedef void (* PFNGLXDESTROYWINDOWPROC) (Display *dpy, GLXWindow win);
|
||||||
#include <GL/glxext.h>
|
typedef GLXPixmap (* PFNGLXCREATEPIXMAPPROC) (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);
|
||||||
|
typedef void (* PFNGLXDESTROYPIXMAPPROC) (Display *dpy, GLXPixmap pixmap);
|
||||||
#else
|
typedef GLXPbuffer (* PFNGLXCREATEPBUFFERPROC) (Display *dpy, GLXFBConfig config, const int *attrib_list);
|
||||||
|
typedef void (* PFNGLXDESTROYPBUFFERPROC) (Display *dpy, GLXPbuffer pbuf);
|
||||||
|
typedef void (* PFNGLXQUERYDRAWABLEPROC) (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);
|
||||||
|
typedef GLXContext (* PFNGLXCREATENEWCONTEXTPROC) (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
|
||||||
|
typedef Bool (* PFNGLXMAKECONTEXTCURRENTPROC) (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
|
||||||
|
typedef GLXDrawable (* PFNGLXGETCURRENTREADDRAWABLEPROC) (void);
|
||||||
|
typedef Display * (* PFNGLXGETCURRENTDISPLAYPROC) (void);
|
||||||
|
typedef int (* PFNGLXQUERYCONTEXTPROC) (Display *dpy, GLXContext ctx, int attribute, int *value);
|
||||||
|
typedef void (* PFNGLXSELECTEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long event_mask);
|
||||||
|
typedef void (* PFNGLXGETSELECTEDEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long *event_mask);
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -316,6 +324,17 @@ extern __GLXextFuncPtr glXGetProcAddressARB (const GLubyte *);
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* GLX 1.4 and later */
|
||||||
|
extern void (*glXGetProcAddress(const GLubyte *procname))( void );
|
||||||
|
|
||||||
|
/* GLX 1.4 function pointer typedefs */
|
||||||
|
typedef __GLXextFuncPtr (* PFNGLXGETPROCADDRESSPROC) (const GLubyte *procName);
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef GLX_GLXEXT_LEGACY
|
||||||
|
|
||||||
|
#include <GL/glxext.h>
|
||||||
|
|
||||||
#endif /* GLX_GLXEXT_LEGACY */
|
#endif /* GLX_GLXEXT_LEGACY */
|
||||||
|
|
||||||
|
|
||||||
|
@@ -46,9 +46,9 @@ extern "C" {
|
|||||||
/*************************************************************/
|
/*************************************************************/
|
||||||
|
|
||||||
/* Header file version number, required by OpenGL ABI for Linux */
|
/* Header file version number, required by OpenGL ABI for Linux */
|
||||||
/* glxext.h last updated 2008/08/10 */
|
/* glxext.h last updated 2008/10/22 */
|
||||||
/* Current version at http://www.opengl.org/registry/ */
|
/* Current version at http://www.opengl.org/registry/ */
|
||||||
#define GLX_GLXEXT_VERSION 20
|
#define GLX_GLXEXT_VERSION 21
|
||||||
|
|
||||||
#ifndef GLX_VERSION_1_3
|
#ifndef GLX_VERSION_1_3
|
||||||
#define GLX_WINDOW_BIT 0x00000001
|
#define GLX_WINDOW_BIT 0x00000001
|
||||||
@@ -127,6 +127,14 @@ extern "C" {
|
|||||||
#define GLX_RGBA_FLOAT_BIT_ARB 0x00000004
|
#define GLX_RGBA_FLOAT_BIT_ARB 0x00000004
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef GLX_ARB_create_context
|
||||||
|
#define GLX_CONTEXT_DEBUG_BIT_ARB 0x00000001
|
||||||
|
#define GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x00000002
|
||||||
|
#define GLX_CONTEXT_MAJOR_VERSION_ARB 0x2091
|
||||||
|
#define GLX_CONTEXT_MINOR_VERSION_ARB 0x2092
|
||||||
|
#define GLX_CONTEXT_FLAGS_ARB 0x2094
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef GLX_SGIS_multisample
|
#ifndef GLX_SGIS_multisample
|
||||||
#define GLX_SAMPLE_BUFFERS_SGIS 100000
|
#define GLX_SAMPLE_BUFFERS_SGIS 100000
|
||||||
#define GLX_SAMPLES_SGIS 100001
|
#define GLX_SAMPLES_SGIS 100001
|
||||||
@@ -347,20 +355,20 @@ extern "C" {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GLX_NV_present_video
|
#ifndef GLX_NV_present_video
|
||||||
#define GLX_GLX_NUM_VIDEO_SLOTS_NV 0x20F0
|
#define GLX_NUM_VIDEO_SLOTS_NV 0x20F0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GLX_NV_video_out
|
#ifndef GLX_NV_video_out
|
||||||
#define GLX_GLX_VIDEO_OUT_COLOR_NV 0x20C3
|
#define GLX_VIDEO_OUT_COLOR_NV 0x20C3
|
||||||
#define GLX_GLX_VIDEO_OUT_ALPHA_NV 0x20C4
|
#define GLX_VIDEO_OUT_ALPHA_NV 0x20C4
|
||||||
#define GLX_GLX_VIDEO_OUT_DEPTH_NV 0x20C5
|
#define GLX_VIDEO_OUT_DEPTH_NV 0x20C5
|
||||||
#define GLX_GLX_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
|
#define GLX_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
|
||||||
#define GLX_GLX_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
|
#define GLX_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
|
||||||
#define GLX_GLX_VIDEO_OUT_FRAME_NV 0x20C8
|
#define GLX_VIDEO_OUT_FRAME_NV 0x20C8
|
||||||
#define GLX_GLX_VIDEO_OUT_FIELD_1_NV 0x20C9
|
#define GLX_VIDEO_OUT_FIELD_1_NV 0x20C9
|
||||||
#define GLX_GLX_VIDEO_OUT_FIELD_2_NV 0x20CA
|
#define GLX_VIDEO_OUT_FIELD_2_NV 0x20CA
|
||||||
#define GLX_GLX_VIDEO_OUT_STACKED_FIELDS_1_2_NV 0x20CB
|
#define GLX_VIDEO_OUT_STACKED_FIELDS_1_2_NV 0x20CB
|
||||||
#define GLX_GLX_VIDEO_OUT_STACKED_FIELDS_2_1_NV 0x20CC
|
#define GLX_VIDEO_OUT_STACKED_FIELDS_2_1_NV 0x20CC
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef GLX_NV_swap_group
|
#ifndef GLX_NV_swap_group
|
||||||
@@ -502,6 +510,14 @@ typedef __GLXextFuncPtr ( * PFNGLXGETPROCADDRESSARBPROC) (const GLubyte *procNam
|
|||||||
#define GLX_ARB_fbconfig_float 1
|
#define GLX_ARB_fbconfig_float 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef GLX_ARB_create_context
|
||||||
|
#define GLX_ARB_create_context 1
|
||||||
|
#ifdef GLX_GLXEXT_PROTOTYPES
|
||||||
|
extern GLXContext glXCreateContextAttribsARB (Display *, GLXFBConfig, GLXContext, Bool, const int *);
|
||||||
|
#endif /* GLX_GLXEXT_PROTOTYPES */
|
||||||
|
typedef GLXContext ( * PFNGLXCREATECONTEXTATTRIBSARBPROC) (Display *dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list);
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef GLX_SGIS_multisample
|
#ifndef GLX_SGIS_multisample
|
||||||
#define GLX_SGIS_multisample 1
|
#define GLX_SGIS_multisample 1
|
||||||
#endif
|
#endif
|
||||||
|
@@ -40,8 +40,8 @@
|
|||||||
#ifndef DRI_INTERFACE_H
|
#ifndef DRI_INTERFACE_H
|
||||||
#define DRI_INTERFACE_H
|
#define DRI_INTERFACE_H
|
||||||
|
|
||||||
/* Make this something other than __APPLE__ for other arcs with no drm.h */
|
/* For archs with no drm.h */
|
||||||
#ifndef __APPLE__
|
#if !defined(__APPLE__) && !defined(__CYGWIN__)
|
||||||
#include <drm.h>
|
#include <drm.h>
|
||||||
#else
|
#else
|
||||||
typedef unsigned int drm_context_t;
|
typedef unsigned int drm_context_t;
|
||||||
@@ -75,6 +75,10 @@ typedef struct __DRItexOffsetExtensionRec __DRItexOffsetExtension;
|
|||||||
typedef struct __DRItexBufferExtensionRec __DRItexBufferExtension;
|
typedef struct __DRItexBufferExtensionRec __DRItexBufferExtension;
|
||||||
typedef struct __DRIlegacyExtensionRec __DRIlegacyExtension;
|
typedef struct __DRIlegacyExtensionRec __DRIlegacyExtension;
|
||||||
typedef struct __DRIswrastExtensionRec __DRIswrastExtension;
|
typedef struct __DRIswrastExtensionRec __DRIswrastExtension;
|
||||||
|
typedef struct __DRIbufferRec __DRIbuffer;
|
||||||
|
typedef struct __DRIdri2ExtensionRec __DRIdri2Extension;
|
||||||
|
typedef struct __DRIdri2LoaderExtensionRec __DRIdri2LoaderExtension;
|
||||||
|
|
||||||
/*@}*/
|
/*@}*/
|
||||||
|
|
||||||
|
|
||||||
@@ -343,29 +347,6 @@ struct __DRIdamageExtensionRec {
|
|||||||
void *loaderPrivate);
|
void *loaderPrivate);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
|
||||||
* DRI2 Loader extension. This extension describes the basic
|
|
||||||
* functionality the loader needs to provide for the DRI driver.
|
|
||||||
*/
|
|
||||||
#define __DRI_LOADER "DRI_Loader"
|
|
||||||
#define __DRI_LOADER_VERSION 1
|
|
||||||
struct __DRIloaderExtensionRec {
|
|
||||||
__DRIextension base;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Ping the windowing system to get it to reemit info for the
|
|
||||||
* specified drawable in the DRI2 event buffer.
|
|
||||||
*
|
|
||||||
* \param draw the drawable for which to request info
|
|
||||||
* \param tail the new event buffer tail pointer
|
|
||||||
*/
|
|
||||||
void (*reemitDrawableInfo)(__DRIdrawable *draw, unsigned int *tail,
|
|
||||||
void *loaderPrivate);
|
|
||||||
|
|
||||||
void (*postDamage)(__DRIdrawable *draw, struct drm_clip_rect *rects,
|
|
||||||
int num_rects, void *loaderPrivate);
|
|
||||||
};
|
|
||||||
|
|
||||||
#define __DRI_SWRAST_IMAGE_OP_DRAW 1
|
#define __DRI_SWRAST_IMAGE_OP_DRAW 1
|
||||||
#define __DRI_SWRAST_IMAGE_OP_CLEAR 2
|
#define __DRI_SWRAST_IMAGE_OP_CLEAR 2
|
||||||
#define __DRI_SWRAST_IMAGE_OP_SWAP 3
|
#define __DRI_SWRAST_IMAGE_OP_SWAP 3
|
||||||
@@ -633,4 +614,62 @@ struct __DRIswrastExtensionRec {
|
|||||||
void *loaderPrivate);
|
void *loaderPrivate);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* DRI2 Loader extension.
|
||||||
|
*/
|
||||||
|
#define __DRI_BUFFER_FRONT_LEFT 0
|
||||||
|
#define __DRI_BUFFER_BACK_LEFT 1
|
||||||
|
#define __DRI_BUFFER_FRONT_RIGHT 2
|
||||||
|
#define __DRI_BUFFER_BACK_RIGHT 3
|
||||||
|
#define __DRI_BUFFER_DEPTH 4
|
||||||
|
#define __DRI_BUFFER_STENCIL 5
|
||||||
|
#define __DRI_BUFFER_ACCUM 6
|
||||||
|
#define __DRI_BUFFER_FAKE_FRONT_LEFT 7
|
||||||
|
#define __DRI_BUFFER_FAKE_FRONT_RIGHT 8
|
||||||
|
|
||||||
|
struct __DRIbufferRec {
|
||||||
|
unsigned int attachment;
|
||||||
|
unsigned int name;
|
||||||
|
unsigned int pitch;
|
||||||
|
unsigned int cpp;
|
||||||
|
unsigned int flags;
|
||||||
|
};
|
||||||
|
|
||||||
|
#define __DRI_DRI2_LOADER "DRI_DRI2Loader"
|
||||||
|
#define __DRI_DRI2_LOADER_VERSION 1
|
||||||
|
struct __DRIdri2LoaderExtensionRec {
|
||||||
|
__DRIextension base;
|
||||||
|
|
||||||
|
__DRIbuffer *(*getBuffers)(__DRIdrawable *driDrawable,
|
||||||
|
int *width, int *height,
|
||||||
|
unsigned int *attachments, int count,
|
||||||
|
int *out_count, void *loaderPrivate);
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This extension provides alternative screen, drawable and context
|
||||||
|
* constructors for DRI2.
|
||||||
|
*/
|
||||||
|
#define __DRI_DRI2 "DRI_DRI2"
|
||||||
|
#define __DRI_DRI2_VERSION 1
|
||||||
|
|
||||||
|
struct __DRIdri2ExtensionRec {
|
||||||
|
__DRIextension base;
|
||||||
|
|
||||||
|
__DRIscreen *(*createNewScreen)(int screen, int fd,
|
||||||
|
const __DRIextension **extensions,
|
||||||
|
const __DRIconfig ***driver_configs,
|
||||||
|
void *loaderPrivate);
|
||||||
|
|
||||||
|
__DRIdrawable *(*createNewDrawable)(__DRIscreen *screen,
|
||||||
|
const __DRIconfig *config,
|
||||||
|
void *loaderPrivate);
|
||||||
|
|
||||||
|
__DRIcontext *(*createNewContext)(__DRIscreen *screen,
|
||||||
|
const __DRIconfig *config,
|
||||||
|
__DRIcontext *shared,
|
||||||
|
void *loaderPrivate);
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -1,134 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright 2007 Red Hat, Inc
|
|
||||||
* All Rights Reserved.
|
|
||||||
*
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
|
||||||
* copy of this software and associated documentation files (the "Software"),
|
|
||||||
* to deal in the Software without restriction, including without limitation
|
|
||||||
* on the rights to use, copy, modify, merge, publish, distribute, sub
|
|
||||||
* license, and/or sell copies of the Software, and to permit persons to whom
|
|
||||||
* the Software is furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice (including the next
|
|
||||||
* paragraph) shall be included in all copies or substantial portions of the
|
|
||||||
* Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
|
|
||||||
* THE COPYRIGHT HOLDERS AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM,
|
|
||||||
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
|
||||||
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
|
||||||
* USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef DRI_SAREA_H
|
|
||||||
#define DRI_SAREA_H
|
|
||||||
|
|
||||||
#include <drm.h>
|
|
||||||
|
|
||||||
/* The DRI2 SAREA holds a list of self-describing blocks. Each block
|
|
||||||
* is 8 byte aligned and has a common 32-bit header word. The upper
|
|
||||||
* 16 bits describe the type of the block and the lower 16 bits the
|
|
||||||
* size. DRI2 only defines a couple of blocks and allows drivers to
|
|
||||||
* define driver specific blocks using type codes from 0x8000 and up.
|
|
||||||
* The type code 0x0000 defines the end of the sarea. */
|
|
||||||
|
|
||||||
#define DRI2_SAREA_BLOCK_HEADER(type, size) (((type) << 16) | (size))
|
|
||||||
#define DRI2_SAREA_BLOCK_TYPE(b) ((b) >> 16)
|
|
||||||
#define DRI2_SAREA_BLOCK_SIZE(b) ((b) & 0xffff)
|
|
||||||
#define DRI2_SAREA_BLOCK_NEXT(p) \
|
|
||||||
((void *) ((unsigned char *) (p) + \
|
|
||||||
DRI2_SAREA_BLOCK_SIZE(*(unsigned int *) p)))
|
|
||||||
|
|
||||||
#define DRI2_SAREA_BLOCK_END 0x0000
|
|
||||||
#define DRI2_SAREA_BLOCK_LOCK 0x0001
|
|
||||||
#define DRI2_SAREA_BLOCK_EVENT_BUFFER 0x0002
|
|
||||||
|
|
||||||
/* Chipset specific blocks start at 0x8000, 0xffff is reserved. */
|
|
||||||
|
|
||||||
typedef struct __DRILock __DRILock;
|
|
||||||
typedef struct __DRIEventBuffer __DRIEventBuffer;
|
|
||||||
typedef struct __DRIDrawableBuffer __DRIDrawableBuffer;
|
|
||||||
typedef struct __DRIDrawableConfigEvent __DRIDrawableConfigEvent;
|
|
||||||
typedef struct __DRIBufferAttachEvent __DRIBufferAttachEvent;
|
|
||||||
|
|
||||||
struct __DRILock {
|
|
||||||
unsigned int block_header;
|
|
||||||
drm_hw_lock_t lock;
|
|
||||||
|
|
||||||
/* We use this with DRM_CAS to allocate lock IDs for the real lock.*/
|
|
||||||
unsigned int next_id;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct __DRIEventBuffer {
|
|
||||||
unsigned int block_header;
|
|
||||||
unsigned int head; /* last valid event */
|
|
||||||
unsigned int prealloc; /* event currently being written */
|
|
||||||
unsigned int size; /* size of data */
|
|
||||||
unsigned char data[0];
|
|
||||||
};
|
|
||||||
|
|
||||||
enum {
|
|
||||||
/* the four standard color buffers */
|
|
||||||
DRI_DRAWABLE_BUFFER_FRONT_LEFT = 0,
|
|
||||||
DRI_DRAWABLE_BUFFER_BACK_LEFT = 1,
|
|
||||||
DRI_DRAWABLE_BUFFER_FRONT_RIGHT = 2,
|
|
||||||
DRI_DRAWABLE_BUFFER_BACK_RIGHT = 3,
|
|
||||||
/* optional aux buffer */
|
|
||||||
DRI_DRAWABLE_BUFFER_AUX0 = 4,
|
|
||||||
DRI_DRAWABLE_BUFFER_AUX1 = 5,
|
|
||||||
DRI_DRAWABLE_BUFFER_AUX2 = 6,
|
|
||||||
DRI_DRAWABLE_BUFFER_AUX3 = 7,
|
|
||||||
DRI_DRAWABLE_BUFFER_DEPTH = 8,
|
|
||||||
DRI_DRAWABLE_BUFFER_STENCIL = 9,
|
|
||||||
DRI_DRAWABLE_BUFFER_ACCUM = 10,
|
|
||||||
/* generic renderbuffers */
|
|
||||||
DRI_DRAWABLE_BUFFER_COLOR0 = 11,
|
|
||||||
DRI_DRAWABLE_BUFFER_COLOR1 = 12,
|
|
||||||
DRI_DRAWABLE_BUFFER_COLOR2 = 13,
|
|
||||||
DRI_DRAWABLE_BUFFER_COLOR3 = 14,
|
|
||||||
DRI_DRAWABLE_BUFFER_COLOR4 = 15,
|
|
||||||
DRI_DRAWABLE_BUFFER_COLOR5 = 16,
|
|
||||||
DRI_DRAWABLE_BUFFER_COLOR6 = 17,
|
|
||||||
DRI_DRAWABLE_BUFFER_COLOR7 = 18,
|
|
||||||
DRI_DRAWABLE_BUFFER_COUNT = 19
|
|
||||||
};
|
|
||||||
|
|
||||||
struct __DRIDrawableBuffer {
|
|
||||||
unsigned int attachment;
|
|
||||||
unsigned int handle;
|
|
||||||
unsigned int pitch;
|
|
||||||
unsigned short cpp;
|
|
||||||
|
|
||||||
/* Upper 8 bits are driver specific, lower 8 bits generic. The
|
|
||||||
* bits can inidicate buffer properties such as tiled, swizzled etc. */
|
|
||||||
unsigned short flags;
|
|
||||||
};
|
|
||||||
|
|
||||||
#define DRI2_EVENT_HEADER(type, size) (((type) << 16) | (size))
|
|
||||||
#define DRI2_EVENT_TYPE(b) ((b) >> 16)
|
|
||||||
#define DRI2_EVENT_SIZE(b) ((b) & 0xffff)
|
|
||||||
|
|
||||||
#define DRI2_EVENT_PAD 0x0000
|
|
||||||
#define DRI2_EVENT_DRAWABLE_CONFIG 0x0001
|
|
||||||
#define DRI2_EVENT_BUFFER_ATTACH 0x0002
|
|
||||||
|
|
||||||
struct __DRIDrawableConfigEvent {
|
|
||||||
unsigned int event_header;
|
|
||||||
unsigned int drawable;
|
|
||||||
short x;
|
|
||||||
short y;
|
|
||||||
unsigned int width;
|
|
||||||
unsigned int height;
|
|
||||||
unsigned int num_rects;
|
|
||||||
struct drm_clip_rect rects[0];
|
|
||||||
};
|
|
||||||
|
|
||||||
struct __DRIBufferAttachEvent {
|
|
||||||
unsigned int event_header;
|
|
||||||
unsigned int drawable;
|
|
||||||
__DRIDrawableBuffer buffer;
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif /* DRI_SAREA_H */
|
|
@@ -2,39 +2,34 @@
|
|||||||
#define __gl_core_h_
|
#define __gl_core_h_
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** License Applicability. Except to the extent portions of this file are
|
* SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008)
|
||||||
** made subject to an alternative license as permitted in the SGI Free
|
* Copyright (C) 1991-2000 Silicon Graphics, Inc. All Rights Reserved.
|
||||||
** Software License B, Version 1.1 (the "License"), the contents of this
|
*
|
||||||
** file are subject only to the provisions of the License. You may not use
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
** this file except in compliance with the License. You may obtain a copy
|
* copy of this software and associated documentation files (the "Software"),
|
||||||
** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
|
* to deal in the Software without restriction, including without limitation
|
||||||
** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
|
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||||
**
|
* and/or sell copies of the Software, and to permit persons to whom the
|
||||||
** http://oss.sgi.com/projects/FreeB
|
* Software is furnished to do so, subject to the following conditions:
|
||||||
**
|
*
|
||||||
** Note that, as provided in the License, the Software is distributed on an
|
* The above copyright notice including the dates of first publication and
|
||||||
** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
|
* either this permission notice or a reference to
|
||||||
** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
|
* http://oss.sgi.com/projects/FreeB/
|
||||||
** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
|
* shall be included in all copies or substantial portions of the Software.
|
||||||
** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
|
*
|
||||||
**
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
** Original Code. The Original Code is: OpenGL Sample Implementation,
|
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
|
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||||
** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
|
* SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||||
** Copyright in any portions created by third parties is as indicated
|
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
|
||||||
** elsewhere herein. All Rights Reserved.
|
* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
**
|
* SOFTWARE.
|
||||||
** Additional Notice Provisions: The application programming interfaces
|
*
|
||||||
** established by SGI in conjunction with the Original Code are The
|
* Except as contained in this notice, the name of Silicon Graphics, Inc.
|
||||||
** OpenGL(R) Graphics System: A Specification (Version 1.2.1), released
|
* shall not be used in advertising or otherwise to promote the sale, use or
|
||||||
** April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version
|
* other dealings in this Software without prior written authorization from
|
||||||
** 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X
|
* Silicon Graphics, Inc.
|
||||||
** Window System(R) (Version 1.3), released October 19, 1998. This software
|
*/
|
||||||
** was created using the OpenGL(R) version 1.2.1 Sample Implementation
|
|
||||||
** published by SGI, but has not been independently verified as being
|
|
||||||
** compliant with the OpenGL(R) version 1.2.1 Specification.
|
|
||||||
**
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
|
||||||
|
@@ -1,4 +1,3 @@
|
|||||||
/* $XFree86: xc/programs/Xserver/GL/dri/sarea.h,v 1.11 2002/10/30 12:52:03 alanh Exp $ */
|
|
||||||
/**
|
/**
|
||||||
* \file sarea.h
|
* \file sarea.h
|
||||||
* SAREA definitions.
|
* SAREA definitions.
|
||||||
@@ -34,7 +33,6 @@
|
|||||||
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* $XFree86: xc/programs/Xserver/GL/dri/sarea.h,v 1.11 2002/10/30 12:52:03 alanh Exp $ */
|
|
||||||
|
|
||||||
#ifndef _SAREA_H_
|
#ifndef _SAREA_H_
|
||||||
#define _SAREA_H_
|
#define _SAREA_H_
|
||||||
|
@@ -1,45 +0,0 @@
|
|||||||
/* uglglutshapes.h - Public header GLUT Shapes */
|
|
||||||
|
|
||||||
/* Copyright (c) Mark J. Kilgard, 1994, 1995, 1996, 1998. */
|
|
||||||
|
|
||||||
/* This program is freely distributable without licensing fees and is
|
|
||||||
provided without guarantee or warrantee expressed or implied. This
|
|
||||||
program is -not- in the public domain. */
|
|
||||||
|
|
||||||
#ifndef GLUTSHAPES_H
|
|
||||||
#define GLUTSHAPES_H
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
extern "C" {
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <GL/gl.h>
|
|
||||||
|
|
||||||
void glutWireSphere (GLdouble radius, GLint slices, GLint stacks);
|
|
||||||
void glutSolidSphere (GLdouble radius, GLint slices, GLint stacks);
|
|
||||||
void glutWireCone (GLdouble base, GLdouble height,
|
|
||||||
GLint slices, GLint stacks);
|
|
||||||
void glutSolidCone (GLdouble base, GLdouble height,
|
|
||||||
GLint slices, GLint stacks);
|
|
||||||
void glutWireCube (GLdouble size);
|
|
||||||
void glutSolidCube (GLdouble size);
|
|
||||||
void glutWireTorus (GLdouble innerRadius, GLdouble outerRadius,
|
|
||||||
GLint sides, GLint rings);
|
|
||||||
void glutSolidTorus (GLdouble innerRadius, GLdouble outerRadius,
|
|
||||||
GLint sides, GLint rings);
|
|
||||||
void glutWireDodecahedron (void);
|
|
||||||
void glutSolidDodecahedron (void);
|
|
||||||
void glutWireOctahedron (void);
|
|
||||||
void glutSolidOctahedron (void);
|
|
||||||
void glutWireTetrahedron (void);
|
|
||||||
void glutSolidTetrahedron (void);
|
|
||||||
void glutWireIcosahedron (void);
|
|
||||||
void glutSolidIcosahedron (void);
|
|
||||||
void glutWireTeapot (GLdouble size);
|
|
||||||
void glutSolidTeapot (GLdouble size);
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
|
@@ -1,155 +0,0 @@
|
|||||||
/* uglmesa.h - Public header UGL/Mesa */
|
|
||||||
|
|
||||||
/* Copyright (C) 2001 by Wind River Systems, Inc */
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Mesa 3-D graphics library
|
|
||||||
* Version: 4.0
|
|
||||||
*
|
|
||||||
* The MIT License
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
|
||||||
* copy of this software and associated documentation files (the "Software"),
|
|
||||||
* to deal in the Software without restriction, including without limitation
|
|
||||||
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
||||||
* and/or sell copies of the Software, and to permit persons to whom the
|
|
||||||
* Software is furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be included
|
|
||||||
* in all copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
||||||
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
||||||
* THE AUTHORS OR COPYRIGHT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
||||||
* DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Author:
|
|
||||||
* Stephane Raimbault <stephane.raimbault@windriver.com>
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef UGLMESA_H
|
|
||||||
#define UGLMESA_H
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
extern "C" {
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define UGL_MESA_MAJOR_VERSION 4
|
|
||||||
#define UGL_MESA_MINOR_VERSION 0
|
|
||||||
|
|
||||||
#include <GL/gl.h>
|
|
||||||
#include <ugl/ugl.h>
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Values for display mode of uglMesaCreateContext ()
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* With these mask values, it's possible to test double buffer mode
|
|
||||||
* with UGL_MESA_DOUBLE mask
|
|
||||||
*
|
|
||||||
* SINGLE 0000 0001
|
|
||||||
* DOUBLE 0000 0110
|
|
||||||
* - SOFT 0000 0010
|
|
||||||
* - HARD 0000 0100
|
|
||||||
* WINDML 0001 0000
|
|
||||||
*
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define UGL_MESA_SINGLE 0x01
|
|
||||||
#define UGL_MESA_DOUBLE 0x06
|
|
||||||
#define UGL_MESA_DOUBLE_SOFTWARE 0x02
|
|
||||||
#define UGL_MESA_DOUBLE_HARDWARE 0x04
|
|
||||||
|
|
||||||
#define UGL_MESA_WINDML_EXCLUSIVE 0x10
|
|
||||||
|
|
||||||
#define UGL_MESA_FULLSCREEN_WIDTH 0x0
|
|
||||||
#define UGL_MESA_FULLSCREEN_HEIGHT 0x0
|
|
||||||
|
|
||||||
/*
|
|
||||||
* uglMesaPixelStore() parameters:
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define UGL_MESA_ROW_LENGTH 0x20
|
|
||||||
#define UGL_MESA_Y_UP 0x21
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Accepted by uglMesaGetIntegerv:
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define UGL_MESA_LEFT_X 0x01
|
|
||||||
#define UGL_MESA_TOP_Y 0x02
|
|
||||||
#define UGL_MESA_WIDTH 0x03
|
|
||||||
#define UGL_MESA_HEIGHT 0x04
|
|
||||||
#define UGL_MESA_DISPLAY_WIDTH 0x05
|
|
||||||
#define UGL_MESA_DISPLAY_HEIGHT 0x06
|
|
||||||
#define UGL_MESA_COLOR_FORMAT 0x07
|
|
||||||
#define UGL_MESA_COLOR_MODEL 0x08
|
|
||||||
#define UGL_MESA_PIXEL_FORMAT 0x09
|
|
||||||
#define UGL_MESA_TYPE 0x0A
|
|
||||||
#define UGL_MESA_RGB 0x0B
|
|
||||||
#define UGL_MESA_COLOR_INDEXED 0x0C
|
|
||||||
#define UGL_MESA_SINGLE_BUFFER 0x0D
|
|
||||||
#define UGL_MESA_DOUBLE_BUFFER 0x0E
|
|
||||||
#define UGL_MESA_DOUBLE_BUFFER_SOFTWARE 0x0F
|
|
||||||
#define UGL_MESA_DOUBLE_BUFFER_HARDWARE 0x10
|
|
||||||
|
|
||||||
/*
|
|
||||||
* typedefs
|
|
||||||
*/
|
|
||||||
|
|
||||||
typedef struct uglMesaContext * UGL_MESA_CONTEXT;
|
|
||||||
|
|
||||||
UGL_MESA_CONTEXT uglMesaCreateNewContext (GLenum mode,
|
|
||||||
UGL_MESA_CONTEXT share_list);
|
|
||||||
|
|
||||||
UGL_MESA_CONTEXT uglMesaCreateNewContextExt (GLenum mode,
|
|
||||||
GLint depth_bits,
|
|
||||||
GLint stencil_bits,
|
|
||||||
GLint accum_red_bits,
|
|
||||||
GLint accum_green_bits,
|
|
||||||
GLint accum_blue_bits,
|
|
||||||
GLint accum_alpha_bits,
|
|
||||||
UGL_MESA_CONTEXT share_list);
|
|
||||||
|
|
||||||
GLboolean uglMesaMakeCurrentContext (UGL_MESA_CONTEXT umc,
|
|
||||||
GLsizei left, GLsizei top,
|
|
||||||
GLsizei width, GLsizei height);
|
|
||||||
|
|
||||||
GLboolean uglMesaMoveWindow (GLsizei dx, GLsizei dy);
|
|
||||||
|
|
||||||
GLboolean uglMesaMoveToWindow (GLsizei left, GLsizei top);
|
|
||||||
|
|
||||||
GLboolean uglMesaResizeWindow (GLsizei dw, GLsizei dh);
|
|
||||||
|
|
||||||
GLboolean uglMesaResizeToWindow (GLsizei width, GLsizei height);
|
|
||||||
|
|
||||||
void uglMesaDestroyContext (void);
|
|
||||||
|
|
||||||
UGL_MESA_CONTEXT uglMesaGetCurrentContext (void);
|
|
||||||
|
|
||||||
void uglMesaSwapBuffers (void);
|
|
||||||
|
|
||||||
void uglMesaPixelStore (GLint pname, GLint value);
|
|
||||||
|
|
||||||
void uglMesaGetIntegerv (GLint pname, GLint *value);
|
|
||||||
|
|
||||||
GLboolean uglMesaGetDepthBuffer (GLint *width, GLint *height,
|
|
||||||
GLint *bytesPerValue, void **buffer);
|
|
||||||
|
|
||||||
GLboolean uglMesaGetColorBuffer (GLint *width, GLint *height,
|
|
||||||
GLint *format, void **buffer);
|
|
||||||
|
|
||||||
GLboolean uglMesaSetColor (GLubyte index, GLfloat red,
|
|
||||||
GLfloat green, GLfloat blue);
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
|
@@ -2,38 +2,34 @@
|
|||||||
#define _EGL_H
|
#define _EGL_H
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** License Applicability. Except to the extent portions of this file are
|
* SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008)
|
||||||
** made subject to an alternative license as permitted in the SGI Free
|
* Copyright (C) 1991-2000 Silicon Graphics, Inc. All Rights Reserved.
|
||||||
** Software License B, Version 1.0 (the "License"), the contents of this
|
*
|
||||||
** file are subject only to the provisions of the License. You may not use
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
** this file except in compliance with the License. You may obtain a copy
|
* copy of this software and associated documentation files (the "Software"),
|
||||||
** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
|
* to deal in the Software without restriction, including without limitation
|
||||||
** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
|
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||||
**
|
* and/or sell copies of the Software, and to permit persons to whom the
|
||||||
** http://oss.sgi.com/projects/FreeB
|
* Software is furnished to do so, subject to the following conditions:
|
||||||
**
|
*
|
||||||
** Note that, as provided in the License, the Software is distributed on an
|
* The above copyright notice including the dates of first publication and
|
||||||
** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
|
* either this permission notice or a reference to
|
||||||
** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
|
* http://oss.sgi.com/projects/FreeB/
|
||||||
** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
|
* shall be included in all copies or substantial portions of the Software.
|
||||||
** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
|
*
|
||||||
**
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
** Original Code. The Original Code is: OpenGL Sample Implementation,
|
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
|
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||||
** Inc. The Original Code is Copyright (c) 1991-2004 Silicon Graphics, Inc.
|
* SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||||
** Copyright in any portions created by third parties is as indicated
|
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
|
||||||
** elsewhere herein. All Rights Reserved.
|
* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
**
|
* SOFTWARE.
|
||||||
** Additional Notice Provisions: The application programming interfaces
|
*
|
||||||
** established by SGI in conjunction with the Original Code are The
|
* Except as contained in this notice, the name of Silicon Graphics, Inc.
|
||||||
** OpenGL(R) Graphics System: A Specification (Version 1.2.1), released
|
* shall not be used in advertising or otherwise to promote the sale, use or
|
||||||
** April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version
|
* other dealings in this Software without prior written authorization from
|
||||||
** 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X
|
* Silicon Graphics, Inc.
|
||||||
** Window System(R) (Version 1.3), released October 19, 1998. This software
|
*/
|
||||||
** was created using the OpenGL(R) version 1.2.1 Sample Implementation
|
|
||||||
** published by SGI, but has not been independently verified as being
|
|
||||||
** compliant with the OpenGL(R) version 1.2.1 Specification.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#if 0/*XXX TEMPORARY HACK*/
|
#if 0/*XXX TEMPORARY HACK*/
|
||||||
#include <GLES/gl.h>
|
#include <GLES/gl.h>
|
||||||
|
@@ -13,20 +13,20 @@
|
|||||||
/*
|
/*
|
||||||
** These opaque EGL types are implemented as unsigned 32-bit integers:
|
** These opaque EGL types are implemented as unsigned 32-bit integers:
|
||||||
*/
|
*/
|
||||||
typedef u_int32_t EGLDisplay;
|
typedef uint32_t EGLDisplay;
|
||||||
typedef u_int32_t EGLConfig;
|
typedef uint32_t EGLConfig;
|
||||||
typedef u_int32_t EGLSurface;
|
typedef uint32_t EGLSurface;
|
||||||
typedef u_int32_t EGLContext;
|
typedef uint32_t EGLContext;
|
||||||
|
|
||||||
/* EGL_MESA_screen_surface */
|
/* EGL_MESA_screen_surface */
|
||||||
typedef u_int32_t EGLModeMESA;
|
typedef uint32_t EGLModeMESA;
|
||||||
typedef u_int32_t EGLScreenMESA;
|
typedef uint32_t EGLScreenMESA;
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** Other basic EGL types:
|
** Other basic EGL types:
|
||||||
*/
|
*/
|
||||||
typedef u_int8_t EGLBoolean;
|
typedef uint8_t EGLBoolean;
|
||||||
typedef int32_t EGLint;
|
typedef int32_t EGLint;
|
||||||
|
|
||||||
typedef void * NativeDisplayType;
|
typedef void * NativeDisplayType;
|
||||||
|
192
include/GLView.h
192
include/GLView.h
@@ -1,192 +0,0 @@
|
|||||||
/*******************************************************************************
|
|
||||||
/
|
|
||||||
/ File: GLView.h
|
|
||||||
/
|
|
||||||
/ Copyright 1993-98, Be Incorporated, All Rights Reserved.
|
|
||||||
/
|
|
||||||
*******************************************************************************/
|
|
||||||
|
|
||||||
#ifndef BGLVIEW_H
|
|
||||||
#define BGLVIEW_H
|
|
||||||
|
|
||||||
#include <GL/gl.h>
|
|
||||||
|
|
||||||
#define BGL_RGB 0
|
|
||||||
#define BGL_INDEX 1
|
|
||||||
#define BGL_SINGLE 0
|
|
||||||
#define BGL_DOUBLE 2
|
|
||||||
#define BGL_DIRECT 0
|
|
||||||
#define BGL_INDIRECT 4
|
|
||||||
#define BGL_ACCUM 8
|
|
||||||
#define BGL_ALPHA 16
|
|
||||||
#define BGL_DEPTH 32
|
|
||||||
#define BGL_OVERLAY 64
|
|
||||||
#define BGL_UNDERLAY 128
|
|
||||||
#define BGL_STENCIL 512
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
|
|
||||||
|
|
||||||
#include <AppKit.h>
|
|
||||||
#include <interface/Window.h>
|
|
||||||
#include <interface/View.h>
|
|
||||||
#include <interface/Bitmap.h>
|
|
||||||
#include <game/WindowScreen.h>
|
|
||||||
#include <game/DirectWindow.h>
|
|
||||||
|
|
||||||
class BGLView : public BView {
|
|
||||||
public:
|
|
||||||
|
|
||||||
BGLView(BRect rect, char *name,
|
|
||||||
ulong resizingMode, ulong mode,
|
|
||||||
ulong options);
|
|
||||||
virtual ~BGLView();
|
|
||||||
|
|
||||||
void LockGL();
|
|
||||||
void UnlockGL();
|
|
||||||
void SwapBuffers();
|
|
||||||
void SwapBuffers( bool vSync );
|
|
||||||
BView * EmbeddedView();
|
|
||||||
status_t CopyPixelsOut(BPoint source, BBitmap *dest);
|
|
||||||
status_t CopyPixelsIn(BBitmap *source, BPoint dest);
|
|
||||||
virtual void ErrorCallback(unsigned long errorCode); // Mesa's GLenum is uint where Be's ones was ulong!
|
|
||||||
|
|
||||||
virtual void Draw(BRect updateRect);
|
|
||||||
|
|
||||||
virtual void AttachedToWindow();
|
|
||||||
virtual void AllAttached();
|
|
||||||
virtual void DetachedFromWindow();
|
|
||||||
virtual void AllDetached();
|
|
||||||
|
|
||||||
virtual void FrameResized(float width, float height);
|
|
||||||
virtual status_t Perform(perform_code d, void *arg);
|
|
||||||
|
|
||||||
/* The public methods below, for the moment,
|
|
||||||
are just pass-throughs to BView */
|
|
||||||
|
|
||||||
virtual status_t Archive(BMessage *data, bool deep = true) const;
|
|
||||||
|
|
||||||
virtual void MessageReceived(BMessage *msg);
|
|
||||||
virtual void SetResizingMode(uint32 mode);
|
|
||||||
|
|
||||||
virtual void Show();
|
|
||||||
virtual void Hide();
|
|
||||||
|
|
||||||
virtual BHandler *ResolveSpecifier(BMessage *msg, int32 index,
|
|
||||||
BMessage *specifier, int32 form,
|
|
||||||
const char *property);
|
|
||||||
virtual status_t GetSupportedSuites(BMessage *data);
|
|
||||||
|
|
||||||
/* New public functions */
|
|
||||||
void DirectConnected( direct_buffer_info *info );
|
|
||||||
void EnableDirectMode( bool enabled );
|
|
||||||
|
|
||||||
void * getGC() { return m_gc; }
|
|
||||||
|
|
||||||
private:
|
|
||||||
|
|
||||||
virtual void _ReservedGLView1();
|
|
||||||
virtual void _ReservedGLView2();
|
|
||||||
virtual void _ReservedGLView3();
|
|
||||||
virtual void _ReservedGLView4();
|
|
||||||
virtual void _ReservedGLView5();
|
|
||||||
virtual void _ReservedGLView6();
|
|
||||||
virtual void _ReservedGLView7();
|
|
||||||
virtual void _ReservedGLView8();
|
|
||||||
|
|
||||||
BGLView(const BGLView &);
|
|
||||||
BGLView &operator=(const BGLView &);
|
|
||||||
|
|
||||||
void dither_front();
|
|
||||||
bool confirm_dither();
|
|
||||||
void draw(BRect r);
|
|
||||||
|
|
||||||
void * m_gc;
|
|
||||||
uint32 m_options;
|
|
||||||
uint32 m_ditherCount;
|
|
||||||
BLocker m_drawLock;
|
|
||||||
BLocker m_displayLock;
|
|
||||||
void * m_clip_info;
|
|
||||||
void * _Unused1;
|
|
||||||
|
|
||||||
BBitmap * m_ditherMap;
|
|
||||||
BRect m_bounds;
|
|
||||||
int16 * m_errorBuffer[2];
|
|
||||||
uint64 _reserved[8];
|
|
||||||
|
|
||||||
/* Direct Window stuff */
|
|
||||||
private:
|
|
||||||
void drawScanline( int x1, int x2, int y, void *data );
|
|
||||||
static void scanlineHandler(struct rasStateRec *state, GLint x1, GLint x2);
|
|
||||||
|
|
||||||
void lock_draw();
|
|
||||||
void unlock_draw();
|
|
||||||
bool validateView();
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class BGLScreen : public BWindowScreen {
|
|
||||||
public:
|
|
||||||
BGLScreen(char *name,
|
|
||||||
ulong screenMode, ulong options,
|
|
||||||
status_t *error, bool debug=false);
|
|
||||||
~BGLScreen();
|
|
||||||
|
|
||||||
void LockGL();
|
|
||||||
void UnlockGL();
|
|
||||||
void SwapBuffers();
|
|
||||||
virtual void ErrorCallback(GLenum errorCode);
|
|
||||||
|
|
||||||
virtual void ScreenConnected(bool connected);
|
|
||||||
virtual void FrameResized(float width, float height);
|
|
||||||
virtual status_t Perform(perform_code d, void *arg);
|
|
||||||
|
|
||||||
/* The public methods below, for the moment,
|
|
||||||
are just pass-throughs to BWindowScreen */
|
|
||||||
|
|
||||||
virtual status_t Archive(BMessage *data, bool deep = true) const;
|
|
||||||
virtual void MessageReceived(BMessage *msg);
|
|
||||||
|
|
||||||
virtual void Show();
|
|
||||||
virtual void Hide();
|
|
||||||
|
|
||||||
virtual BHandler *ResolveSpecifier(BMessage *msg,
|
|
||||||
int32 index,
|
|
||||||
BMessage *specifier,
|
|
||||||
int32 form,
|
|
||||||
const char *property);
|
|
||||||
virtual status_t GetSupportedSuites(BMessage *data);
|
|
||||||
|
|
||||||
private:
|
|
||||||
|
|
||||||
virtual void _ReservedGLScreen1();
|
|
||||||
virtual void _ReservedGLScreen2();
|
|
||||||
virtual void _ReservedGLScreen3();
|
|
||||||
virtual void _ReservedGLScreen4();
|
|
||||||
virtual void _ReservedGLScreen5();
|
|
||||||
virtual void _ReservedGLScreen6();
|
|
||||||
virtual void _ReservedGLScreen7();
|
|
||||||
virtual void _ReservedGLScreen8();
|
|
||||||
|
|
||||||
BGLScreen(const BGLScreen &);
|
|
||||||
BGLScreen &operator=(const BGLScreen &);
|
|
||||||
|
|
||||||
void * m_gc;
|
|
||||||
long m_options;
|
|
||||||
BLocker m_drawLock;
|
|
||||||
|
|
||||||
int32 m_colorSpace;
|
|
||||||
uint32 m_screen_mode;
|
|
||||||
|
|
||||||
uint64 _reserved[7];
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // __cplusplus
|
|
||||||
|
|
||||||
#endif // BGLVIEW_H
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@@ -1,4 +1,3 @@
|
|||||||
// $Id: demo.cpp,v 1.2 2004/08/14 09:59:16 phoudoin Exp $
|
|
||||||
|
|
||||||
// Simple BeOS GLView demo
|
// Simple BeOS GLView demo
|
||||||
// Written by Brian Paul
|
// Written by Brian Paul
|
||||||
|
@@ -37,7 +37,7 @@
|
|||||||
static GLboolean Anim = GL_TRUE;
|
static GLboolean Anim = GL_TRUE;
|
||||||
static GLfloat Xpos = 0;
|
static GLfloat Xpos = 0;
|
||||||
static GLuint OccQuery;
|
static GLuint OccQuery;
|
||||||
|
static GLint Win = 0;
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@@ -204,6 +204,7 @@ static void Key( unsigned char key, int x, int y )
|
|||||||
(void) y;
|
(void) y;
|
||||||
switch (key) {
|
switch (key) {
|
||||||
case 27:
|
case 27:
|
||||||
|
glutDestroyWindow(Win);
|
||||||
exit(0);
|
exit(0);
|
||||||
break;
|
break;
|
||||||
case ' ':
|
case ' ':
|
||||||
@@ -271,7 +272,7 @@ int main( int argc, char *argv[] )
|
|||||||
glutInitWindowPosition( 0, 0 );
|
glutInitWindowPosition( 0, 0 );
|
||||||
glutInitWindowSize( 400, 400 );
|
glutInitWindowSize( 400, 400 );
|
||||||
glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH );
|
glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH );
|
||||||
glutCreateWindow(argv[0]);
|
Win = glutCreateWindow(argv[0]);
|
||||||
glutReshapeFunc( Reshape );
|
glutReshapeFunc( Reshape );
|
||||||
glutKeyboardFunc( Key );
|
glutKeyboardFunc( Key );
|
||||||
glutSpecialFunc( SpecialKey );
|
glutSpecialFunc( SpecialKey );
|
||||||
|
@@ -154,6 +154,7 @@ static GLuint TexObj;
|
|||||||
static GLuint MyFB;
|
static GLuint MyFB;
|
||||||
static GLuint DepthRB;
|
static GLuint DepthRB;
|
||||||
static GLboolean WireFrame = GL_FALSE;
|
static GLboolean WireFrame = GL_FALSE;
|
||||||
|
static GLboolean Anim = GL_TRUE;
|
||||||
static GLint texType = 0;
|
static GLint texType = 0;
|
||||||
|
|
||||||
static GLint T0 = 0;
|
static GLint T0 = 0;
|
||||||
@@ -163,6 +164,11 @@ static GLint Win = 0;
|
|||||||
static GLfloat ViewRotX = 20.0, ViewRotY = 30.0, ViewRotZ = 0.0;
|
static GLfloat ViewRotX = 20.0, ViewRotY = 30.0, ViewRotZ = 0.0;
|
||||||
static GLfloat CubeRot = 0.0;
|
static GLfloat CubeRot = 0.0;
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
idle(void);
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
CheckError(int line)
|
CheckError(int line)
|
||||||
{
|
{
|
||||||
@@ -605,7 +611,10 @@ key(unsigned char key, int x, int y)
|
|||||||
cleanup();
|
cleanup();
|
||||||
exit(0);
|
exit(0);
|
||||||
break;
|
break;
|
||||||
|
case ' ':
|
||||||
|
Anim = !Anim;
|
||||||
|
glutIdleFunc(Anim ? idle : NULL);
|
||||||
|
break;
|
||||||
case 'a':
|
case 'a':
|
||||||
v += 0.0005;
|
v += 0.0005;
|
||||||
break;
|
break;
|
||||||
@@ -1013,7 +1022,7 @@ static void
|
|||||||
visible(int vis)
|
visible(int vis)
|
||||||
{
|
{
|
||||||
if (vis == GLUT_VISIBLE)
|
if (vis == GLUT_VISIBLE)
|
||||||
glutIdleFunc(idle);
|
glutIdleFunc(Anim ? idle : NULL);
|
||||||
else
|
else
|
||||||
glutIdleFunc(NULL);
|
glutIdleFunc(NULL);
|
||||||
}
|
}
|
||||||
|
@@ -114,7 +114,7 @@ static void calcposobs(void)
|
|||||||
rainParticle::setRainingArea(obs[0]-7.0f,-0.2f,obs[2]-7.0f,obs[0]+7.0f,8.0f,obs[2]+7.0f);
|
rainParticle::setRainingArea(obs[0]-7.0f,-0.2f,obs[2]-7.0f,obs[0]+7.0f,8.0f,obs[2]+7.0f);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void printstring(void *font, char *string)
|
static void printstring(void *font, const char *string)
|
||||||
{
|
{
|
||||||
int len,i;
|
int len,i;
|
||||||
|
|
||||||
|
@@ -1,4 +1,3 @@
|
|||||||
/* $Id: gears.c,v 1.3 1999/08/22 08:56:50 jtaylor Exp $ */
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* 3-D gear wheels. This program is in the public domain.
|
* 3-D gear wheels. This program is in the public domain.
|
||||||
|
1
progs/glsl/.gitignore
vendored
1
progs/glsl/.gitignore
vendored
@@ -4,6 +4,7 @@ bump
|
|||||||
deriv
|
deriv
|
||||||
extfuncs.h
|
extfuncs.h
|
||||||
mandelbrot
|
mandelbrot
|
||||||
|
multinoise
|
||||||
multitex
|
multitex
|
||||||
noise
|
noise
|
||||||
points
|
points
|
||||||
|
@@ -15,15 +15,21 @@ PROGS = \
|
|||||||
bump \
|
bump \
|
||||||
convolutions \
|
convolutions \
|
||||||
deriv \
|
deriv \
|
||||||
|
fragcoord \
|
||||||
mandelbrot \
|
mandelbrot \
|
||||||
|
multinoise \
|
||||||
multitex \
|
multitex \
|
||||||
noise \
|
noise \
|
||||||
points \
|
points \
|
||||||
pointcoord \
|
pointcoord \
|
||||||
|
samplers \
|
||||||
|
skinning \
|
||||||
texdemo1 \
|
texdemo1 \
|
||||||
toyball \
|
toyball \
|
||||||
twoside \
|
twoside \
|
||||||
trirast
|
trirast \
|
||||||
|
vert-or-frag-only \
|
||||||
|
vert-tex
|
||||||
|
|
||||||
|
|
||||||
##### RULES #####
|
##### RULES #####
|
||||||
@@ -105,6 +111,13 @@ deriv: deriv.o shaderutil.o
|
|||||||
$(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) deriv.o shaderutil.o $(LIBS) -o $@
|
$(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) deriv.o shaderutil.o $(LIBS) -o $@
|
||||||
|
|
||||||
|
|
||||||
|
fragcoord.o: fragcoord.c extfuncs.h shaderutil.h
|
||||||
|
$(CC) -c -I$(INCDIR) $(CFLAGS) fragcoord.c
|
||||||
|
|
||||||
|
fragcoord: fragcoord.o shaderutil.o
|
||||||
|
$(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) fragcoord.o shaderutil.o $(LIBS) -o $@
|
||||||
|
|
||||||
|
|
||||||
mandelbrot.o: mandelbrot.c extfuncs.h shaderutil.h
|
mandelbrot.o: mandelbrot.c extfuncs.h shaderutil.h
|
||||||
$(CC) -c -I$(INCDIR) $(CFLAGS) mandelbrot.c
|
$(CC) -c -I$(INCDIR) $(CFLAGS) mandelbrot.c
|
||||||
|
|
||||||
@@ -140,6 +153,20 @@ pointcoord: pointcoord.o readtex.o shaderutil.o
|
|||||||
$(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) pointcoord.o readtex.o shaderutil.o $(LIBS) -o $@
|
$(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) pointcoord.o readtex.o shaderutil.o $(LIBS) -o $@
|
||||||
|
|
||||||
|
|
||||||
|
samplers.o: samplers.c readtex.h extfuncs.h shaderutil.h
|
||||||
|
$(CC) -c -I$(INCDIR) $(CFLAGS) samplers.c
|
||||||
|
|
||||||
|
samplers: samplers.o readtex.o shaderutil.o
|
||||||
|
$(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) samplers.o readtex.o shaderutil.o $(LIBS) -o $@
|
||||||
|
|
||||||
|
|
||||||
|
skinning.o: skinning.c readtex.h extfuncs.h shaderutil.h
|
||||||
|
$(CC) -c -I$(INCDIR) $(CFLAGS) skinning.c
|
||||||
|
|
||||||
|
skinning: skinning.o readtex.o shaderutil.o
|
||||||
|
$(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) skinning.o readtex.o shaderutil.o $(LIBS) -o $@
|
||||||
|
|
||||||
|
|
||||||
texdemo1.o: texdemo1.c readtex.h extfuncs.h shaderutil.h
|
texdemo1.o: texdemo1.c readtex.h extfuncs.h shaderutil.h
|
||||||
$(CC) -c -I$(INCDIR) $(CFLAGS) texdemo1.c
|
$(CC) -c -I$(INCDIR) $(CFLAGS) texdemo1.c
|
||||||
|
|
||||||
@@ -168,6 +195,20 @@ trirast: trirast.o shaderutil.o
|
|||||||
$(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) trirast.o shaderutil.o $(LIBS) -o $@
|
$(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) trirast.o shaderutil.o $(LIBS) -o $@
|
||||||
|
|
||||||
|
|
||||||
|
vert-or-frag-only.o: vert-or-frag-only.c extfuncs.h shaderutil.h
|
||||||
|
$(CC) -c -I$(INCDIR) $(CFLAGS) vert-or-frag-only.c
|
||||||
|
|
||||||
|
vert-or-frag-only: vert-or-frag-only.o shaderutil.o
|
||||||
|
$(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) vert-or-frag-only.o shaderutil.o $(LIBS) -o $@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
vert-tex.o: vert-tex.c extfuncs.h shaderutil.h
|
||||||
|
$(CC) -c -I$(INCDIR) $(CFLAGS) vert-tex.c
|
||||||
|
|
||||||
|
vert-tex: vert-tex.o shaderutil.o
|
||||||
|
$(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) vert-tex.o shaderutil.o $(LIBS) -o $@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -141,9 +141,6 @@ Redisplay(void)
|
|||||||
|
|
||||||
glPopMatrix();
|
glPopMatrix();
|
||||||
|
|
||||||
glFinish();
|
|
||||||
glFlush();
|
|
||||||
|
|
||||||
CheckError(__LINE__);
|
CheckError(__LINE__);
|
||||||
|
|
||||||
glutSwapBuffers();
|
glutSwapBuffers();
|
||||||
|
@@ -438,8 +438,6 @@ static void draw()
|
|||||||
|
|
||||||
glPopMatrix();
|
glPopMatrix();
|
||||||
|
|
||||||
glFlush();
|
|
||||||
|
|
||||||
glutSwapBuffers();
|
glutSwapBuffers();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
185
progs/glsl/fragcoord.c
Normal file
185
progs/glsl/fragcoord.c
Normal file
@@ -0,0 +1,185 @@
|
|||||||
|
/**
|
||||||
|
* Test GLSL gl_FragCoord fragment program attribute.
|
||||||
|
* Color the quad's fragments according to their window position.
|
||||||
|
*
|
||||||
|
* Brian Paul
|
||||||
|
* 20 Nov 2008
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#include <assert.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <math.h>
|
||||||
|
#include <GL/gl.h>
|
||||||
|
#include <GL/glut.h>
|
||||||
|
#include <GL/glext.h>
|
||||||
|
#include "extfuncs.h"
|
||||||
|
#include "shaderutil.h"
|
||||||
|
|
||||||
|
|
||||||
|
static GLint WinWidth = 200, WinHeight = 200;
|
||||||
|
static char *FragProgFile = NULL;
|
||||||
|
static char *VertProgFile = NULL;
|
||||||
|
static GLuint fragShader;
|
||||||
|
static GLuint vertShader;
|
||||||
|
static GLuint program;
|
||||||
|
static GLint win = 0;
|
||||||
|
static GLboolean Anim = GL_TRUE;
|
||||||
|
static GLfloat PosX = 0.0, PosY = 0.0;
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Idle(void)
|
||||||
|
{
|
||||||
|
float r = (WinWidth < WinHeight) ? WinWidth : WinHeight;
|
||||||
|
float a = glutGet(GLUT_ELAPSED_TIME) * 0.001;
|
||||||
|
r *= 0.25;
|
||||||
|
PosX = WinWidth / 2 + r * cos(a);
|
||||||
|
PosY = WinHeight / 2 + r * sin(a);
|
||||||
|
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Redisplay(void)
|
||||||
|
{
|
||||||
|
glClear(GL_COLOR_BUFFER_BIT);
|
||||||
|
|
||||||
|
glPushMatrix();
|
||||||
|
glTranslatef(PosX, PosY, 0.0);
|
||||||
|
#if 0
|
||||||
|
glBegin(GL_POLYGON);
|
||||||
|
glVertex2f(-50, -50);
|
||||||
|
glVertex2f( 50, -50);
|
||||||
|
glVertex2f( 50, 50);
|
||||||
|
glVertex2f(-50, 50);
|
||||||
|
glEnd();
|
||||||
|
#else
|
||||||
|
glutSolidSphere(50, 20, 10);
|
||||||
|
#endif
|
||||||
|
glPopMatrix();
|
||||||
|
|
||||||
|
glutSwapBuffers();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Reshape(int width, int height)
|
||||||
|
{
|
||||||
|
glViewport(0, 0, width, height);
|
||||||
|
glMatrixMode(GL_PROJECTION);
|
||||||
|
glLoadIdentity();
|
||||||
|
glOrtho(0, width, 0, height, -55, 55);
|
||||||
|
|
||||||
|
glMatrixMode(GL_MODELVIEW);
|
||||||
|
glLoadIdentity();
|
||||||
|
|
||||||
|
WinWidth = width;
|
||||||
|
WinHeight = height;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
CleanUp(void)
|
||||||
|
{
|
||||||
|
glDeleteShader_func(fragShader);
|
||||||
|
glDeleteShader_func(vertShader);
|
||||||
|
glDeleteProgram_func(program);
|
||||||
|
glutDestroyWindow(win);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Key(unsigned char key, int x, int y)
|
||||||
|
{
|
||||||
|
(void) x;
|
||||||
|
(void) y;
|
||||||
|
|
||||||
|
switch(key) {
|
||||||
|
case ' ':
|
||||||
|
case 'a':
|
||||||
|
Anim = !Anim;
|
||||||
|
glutIdleFunc(Anim ? Idle : NULL);
|
||||||
|
break;
|
||||||
|
case 27:
|
||||||
|
CleanUp();
|
||||||
|
exit(0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Init(void)
|
||||||
|
{
|
||||||
|
static const char *fragShaderText =
|
||||||
|
"void main() { \n"
|
||||||
|
" vec4 scale = vec4(.005, 0.005, 0.5, 1.0);\n"
|
||||||
|
" gl_FragColor = gl_FragCoord * scale; \n"
|
||||||
|
"}\n";
|
||||||
|
static const char *vertShaderText =
|
||||||
|
"void main() {\n"
|
||||||
|
" gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;\n"
|
||||||
|
"}\n";
|
||||||
|
|
||||||
|
if (!ShadersSupported())
|
||||||
|
exit(1);
|
||||||
|
|
||||||
|
GetExtensionFuncs();
|
||||||
|
|
||||||
|
vertShader = CompileShaderText(GL_VERTEX_SHADER, vertShaderText);
|
||||||
|
fragShader = CompileShaderText(GL_FRAGMENT_SHADER, fragShaderText);
|
||||||
|
program = LinkShaders(vertShader, fragShader);
|
||||||
|
|
||||||
|
glUseProgram_func(program);
|
||||||
|
|
||||||
|
/*assert(glGetError() == 0);*/
|
||||||
|
|
||||||
|
glClearColor(0.3f, 0.3f, 0.3f, 0.0f);
|
||||||
|
|
||||||
|
printf("GL_RENDERER = %s\n",(const char *) glGetString(GL_RENDERER));
|
||||||
|
|
||||||
|
assert(glIsProgram_func(program));
|
||||||
|
assert(glIsShader_func(fragShader));
|
||||||
|
assert(glIsShader_func(vertShader));
|
||||||
|
|
||||||
|
glColor3f(1, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
ParseOptions(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
for (i = 1; i < argc; i++) {
|
||||||
|
if (strcmp(argv[i], "-fs") == 0) {
|
||||||
|
FragProgFile = argv[i+1];
|
||||||
|
}
|
||||||
|
else if (strcmp(argv[i], "-vs") == 0) {
|
||||||
|
VertProgFile = argv[i+1];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int
|
||||||
|
main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
glutInit(&argc, argv);
|
||||||
|
glutInitWindowPosition( 0, 0);
|
||||||
|
glutInitWindowSize(WinWidth, WinHeight);
|
||||||
|
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE);
|
||||||
|
win = glutCreateWindow(argv[0]);
|
||||||
|
glutReshapeFunc(Reshape);
|
||||||
|
glutKeyboardFunc(Key);
|
||||||
|
glutDisplayFunc(Redisplay);
|
||||||
|
ParseOptions(argc, argv);
|
||||||
|
Init();
|
||||||
|
glutIdleFunc(Anim ? Idle : NULL);
|
||||||
|
glutMainLoop();
|
||||||
|
return 0;
|
||||||
|
}
|
@@ -74,8 +74,6 @@ Redisplay(void)
|
|||||||
|
|
||||||
glPopMatrix();
|
glPopMatrix();
|
||||||
|
|
||||||
glFinish();
|
|
||||||
glFlush();
|
|
||||||
glutSwapBuffers();
|
glutSwapBuffers();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
281
progs/glsl/multinoise.c
Normal file
281
progs/glsl/multinoise.c
Normal file
@@ -0,0 +1,281 @@
|
|||||||
|
/**
|
||||||
|
* Another test for noise() functions (noise1 to noise4 tested independently).
|
||||||
|
* 13 Dec 2008
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <assert.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <math.h>
|
||||||
|
#include <GL/gl.h>
|
||||||
|
#include <GL/glut.h>
|
||||||
|
#include <GL/glext.h>
|
||||||
|
#include "extfuncs.h"
|
||||||
|
|
||||||
|
static const char *VertShaderText =
|
||||||
|
"void main() {\n"
|
||||||
|
" gl_TexCoord[0].xyz = gl_Vertex.xyz;\n"
|
||||||
|
" gl_TexCoord[0].w = gl_MultiTexCoord1.x;\n"
|
||||||
|
" gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;\n"
|
||||||
|
"}\n";
|
||||||
|
|
||||||
|
static const char *FragShaderText[ 4 ] = {
|
||||||
|
"void main()\n"
|
||||||
|
"{\n"
|
||||||
|
" gl_FragColor.rgb = noise3( gl_TexCoord[ 0 ].w ) * 0.5 + 0.5;\n"
|
||||||
|
" gl_FragColor.a = 1;\n"
|
||||||
|
"}\n",
|
||||||
|
"void main()\n"
|
||||||
|
"{\n"
|
||||||
|
" gl_FragColor.rgb = noise3( gl_TexCoord[ 0 ].xw ) * 0.5 + 0.5;\n"
|
||||||
|
" gl_FragColor.a = 1;\n"
|
||||||
|
"}\n",
|
||||||
|
"void main()\n"
|
||||||
|
"{\n"
|
||||||
|
" gl_FragColor.rgb = noise3( gl_TexCoord[ 0 ].xyw ) * 0.5 + 0.5;\n"
|
||||||
|
" gl_FragColor.a = 1;\n"
|
||||||
|
"}\n",
|
||||||
|
"void main()\n"
|
||||||
|
"{\n"
|
||||||
|
" gl_FragColor.rgb = noise3( gl_TexCoord[ 0 ].xyzw ) * 0.5 + 0.5;\n"
|
||||||
|
" gl_FragColor.a = 1;\n"
|
||||||
|
"}\n"
|
||||||
|
};
|
||||||
|
|
||||||
|
struct uniform_info {
|
||||||
|
const char *name;
|
||||||
|
GLuint size;
|
||||||
|
GLint location;
|
||||||
|
GLfloat value[4];
|
||||||
|
};
|
||||||
|
|
||||||
|
/* program/shader objects */
|
||||||
|
static GLuint fragShader[ 4 ];
|
||||||
|
static GLuint vertShader;
|
||||||
|
static GLuint program[ 4 ];
|
||||||
|
|
||||||
|
static GLint win = 0;
|
||||||
|
static GLfloat xRot = 0.0f, yRot = 0.0f, zRot = 0.0f;
|
||||||
|
static GLfloat Slice = 0.0;
|
||||||
|
static GLboolean Anim = GL_FALSE;
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Idle(void)
|
||||||
|
{
|
||||||
|
Slice += 0.01;
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Redisplay(void)
|
||||||
|
{
|
||||||
|
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||||
|
|
||||||
|
glMultiTexCoord1f( GL_TEXTURE1, Slice );
|
||||||
|
|
||||||
|
glPushMatrix();
|
||||||
|
glRotatef(xRot, 1.0f, 0.0f, 0.0f);
|
||||||
|
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
|
||||||
|
glRotatef(zRot, 0.0f, 0.0f, 1.0f);
|
||||||
|
|
||||||
|
glutSolidTeapot( 1.0 );
|
||||||
|
|
||||||
|
glPopMatrix();
|
||||||
|
|
||||||
|
glutSwapBuffers();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Reshape(int width, int height)
|
||||||
|
{
|
||||||
|
glViewport(0, 0, width, height);
|
||||||
|
glMatrixMode(GL_PROJECTION);
|
||||||
|
glLoadIdentity();
|
||||||
|
glFrustum(-1.0, 1.0, -1.0, 1.0, 5.0, 25.0);
|
||||||
|
glMatrixMode(GL_MODELVIEW);
|
||||||
|
glLoadIdentity();
|
||||||
|
glTranslatef(0.0f, 0.0f, -15.0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
CleanUp(void)
|
||||||
|
{
|
||||||
|
GLint i;
|
||||||
|
|
||||||
|
glDeleteShader_func(vertShader);
|
||||||
|
for( i = 0; i < 4; i++ ) {
|
||||||
|
glDeleteShader_func(fragShader[ i ]);
|
||||||
|
glDeleteProgram_func(program[ i ]);
|
||||||
|
}
|
||||||
|
glutDestroyWindow(win);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Key(unsigned char key, int x, int y)
|
||||||
|
{
|
||||||
|
const GLfloat step = 0.01;
|
||||||
|
(void) x;
|
||||||
|
(void) y;
|
||||||
|
|
||||||
|
switch(key) {
|
||||||
|
case 'a':
|
||||||
|
Anim = !Anim;
|
||||||
|
glutIdleFunc(Anim ? Idle : NULL);
|
||||||
|
case 's':
|
||||||
|
Slice -= step;
|
||||||
|
break;
|
||||||
|
case 'S':
|
||||||
|
Slice += step;
|
||||||
|
break;
|
||||||
|
case 'z':
|
||||||
|
zRot -= 1.0;
|
||||||
|
break;
|
||||||
|
case 'Z':
|
||||||
|
zRot += 1.0;
|
||||||
|
break;
|
||||||
|
case '1':
|
||||||
|
case '2':
|
||||||
|
case '3':
|
||||||
|
case '4':
|
||||||
|
glUseProgram_func(program[ key - '1' ]);
|
||||||
|
break;
|
||||||
|
case 27:
|
||||||
|
CleanUp();
|
||||||
|
exit(0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
SpecialKey(int key, int x, int y)
|
||||||
|
{
|
||||||
|
const GLfloat step = 3.0f;
|
||||||
|
|
||||||
|
(void) x;
|
||||||
|
(void) y;
|
||||||
|
|
||||||
|
switch(key) {
|
||||||
|
case GLUT_KEY_UP:
|
||||||
|
xRot -= step;
|
||||||
|
break;
|
||||||
|
case GLUT_KEY_DOWN:
|
||||||
|
xRot += step;
|
||||||
|
break;
|
||||||
|
case GLUT_KEY_LEFT:
|
||||||
|
yRot -= step;
|
||||||
|
break;
|
||||||
|
case GLUT_KEY_RIGHT:
|
||||||
|
yRot += step;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
LoadAndCompileShader(GLuint shader, const char *text)
|
||||||
|
{
|
||||||
|
GLint stat;
|
||||||
|
|
||||||
|
glShaderSource_func(shader, 1, (const GLchar **) &text, NULL);
|
||||||
|
|
||||||
|
glCompileShader_func(shader);
|
||||||
|
|
||||||
|
glGetShaderiv_func(shader, GL_COMPILE_STATUS, &stat);
|
||||||
|
if (!stat) {
|
||||||
|
GLchar log[1000];
|
||||||
|
GLsizei len;
|
||||||
|
glGetShaderInfoLog_func(shader, 1000, &len, log);
|
||||||
|
fprintf(stderr, "noise: problem compiling shader: %s\n", log);
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
printf("Shader compiled OK\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
CheckLink(GLuint prog)
|
||||||
|
{
|
||||||
|
GLint stat;
|
||||||
|
glGetProgramiv_func(prog, GL_LINK_STATUS, &stat);
|
||||||
|
if (!stat) {
|
||||||
|
GLchar log[1000];
|
||||||
|
GLsizei len;
|
||||||
|
glGetProgramInfoLog_func(prog, 1000, &len, log);
|
||||||
|
fprintf(stderr, "Linker error:\n%s\n", log);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
fprintf(stderr, "Link success!\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Init(void)
|
||||||
|
{
|
||||||
|
const char *version;
|
||||||
|
GLint i;
|
||||||
|
|
||||||
|
version = (const char *) glGetString(GL_VERSION);
|
||||||
|
if (version[0] != '2' || version[1] != '.') {
|
||||||
|
printf("Warning: this program expects OpenGL 2.0\n");
|
||||||
|
/*exit(1);*/
|
||||||
|
}
|
||||||
|
|
||||||
|
GetExtensionFuncs();
|
||||||
|
|
||||||
|
vertShader = glCreateShader_func(GL_VERTEX_SHADER);
|
||||||
|
LoadAndCompileShader(vertShader, VertShaderText);
|
||||||
|
|
||||||
|
for( i = 0; i < 4; i++ ) {
|
||||||
|
fragShader[ i ] = glCreateShader_func(GL_FRAGMENT_SHADER);
|
||||||
|
LoadAndCompileShader(fragShader[ i ], FragShaderText[ i ]);
|
||||||
|
program[ i ] = glCreateProgram_func();
|
||||||
|
glAttachShader_func(program[ i ], fragShader[ i ]);
|
||||||
|
glAttachShader_func(program[ i ], vertShader);
|
||||||
|
glLinkProgram_func(program[ i ]);
|
||||||
|
CheckLink(program[ i ]);
|
||||||
|
}
|
||||||
|
|
||||||
|
glUseProgram_func(program[ 0 ]);
|
||||||
|
|
||||||
|
assert(glGetError() == 0);
|
||||||
|
|
||||||
|
glClearColor(0.4f, 0.4f, 0.8f, 0.0f);
|
||||||
|
|
||||||
|
glColor3f(1, 0, 0);
|
||||||
|
|
||||||
|
glFrontFace( GL_CW );
|
||||||
|
glEnable( GL_CULL_FACE );
|
||||||
|
glEnable( GL_DEPTH_TEST );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int
|
||||||
|
main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
glutInit(&argc, argv);
|
||||||
|
glutInitWindowPosition( 0, 0);
|
||||||
|
glutInitWindowSize(400, 400);
|
||||||
|
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
|
||||||
|
win = glutCreateWindow(argv[0]);
|
||||||
|
glutReshapeFunc(Reshape);
|
||||||
|
glutKeyboardFunc(Key);
|
||||||
|
glutSpecialFunc(SpecialKey);
|
||||||
|
glutDisplayFunc(Redisplay);
|
||||||
|
Init();
|
||||||
|
glutMainLoop();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
@@ -47,9 +47,12 @@ static const char *TexFiles[2] =
|
|||||||
|
|
||||||
static GLuint Program;
|
static GLuint Program;
|
||||||
|
|
||||||
static GLfloat Xrot = -90.0, Yrot = .0, Zrot = 0.0;
|
static GLfloat Xrot = 0.0, Yrot = .0, Zrot = 0.0;
|
||||||
static GLfloat EyeDist = 10;
|
static GLfloat EyeDist = 10;
|
||||||
static GLboolean Anim = GL_TRUE;
|
static GLboolean Anim = GL_TRUE;
|
||||||
|
static GLboolean UseArrays = GL_TRUE;
|
||||||
|
|
||||||
|
static GLint VertCoord_attr = -1, TexCoord0_attr = -1, TexCoord1_attr = -1;
|
||||||
|
|
||||||
|
|
||||||
/* value[0] = tex unit */
|
/* value[0] = tex unit */
|
||||||
@@ -60,32 +63,62 @@ static struct uniform_info Uniforms[] = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
static const GLfloat Tex0Coords[4][2] = {
|
||||||
|
{ 0.0, 0.0 }, { 2.0, 0.0 }, { 2.0, 2.0 }, { 0.0, 2.0 }
|
||||||
|
};
|
||||||
|
|
||||||
|
static const GLfloat Tex1Coords[4][2] = {
|
||||||
|
{ 0.0, 0.0 }, { 1.0, 0.0 }, { 1.0, 1.0 }, { 0.0, 1.0 }
|
||||||
|
};
|
||||||
|
|
||||||
|
static const GLfloat VertCoords[4][2] = {
|
||||||
|
{ -3.0, -3.0 }, { 3.0, -3.0 }, { 3.0, 3.0 }, { -3.0, 3.0 }
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
DrawPolygon(GLfloat size)
|
DrawPolygonArray(void)
|
||||||
{
|
{
|
||||||
glPushMatrix();
|
if (VertCoord_attr >= 0) {
|
||||||
glRotatef(90, 1, 0, 0);
|
glVertexAttribPointer_func(VertCoord_attr, 2, GL_FLOAT, GL_FALSE,
|
||||||
glNormal3f(0, 0, 1);
|
0, VertCoords);
|
||||||
glBegin(GL_POLYGON);
|
glEnableVertexAttribArray_func(VertCoord_attr);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
glVertexPointer(2, GL_FLOAT, 0, VertCoords);
|
||||||
|
glEnable(GL_VERTEX_ARRAY);
|
||||||
|
}
|
||||||
|
|
||||||
glMultiTexCoord2f(GL_TEXTURE0, 0, 0);
|
glVertexAttribPointer_func(TexCoord0_attr, 2, GL_FLOAT, GL_FALSE,
|
||||||
glMultiTexCoord2f(GL_TEXTURE1, 0, 0);
|
0, Tex0Coords);
|
||||||
glVertex2f(-size, -size);
|
glEnableVertexAttribArray_func(TexCoord0_attr);
|
||||||
|
|
||||||
glMultiTexCoord2f(GL_TEXTURE0, 2, 0);
|
glVertexAttribPointer_func(TexCoord1_attr, 2, GL_FLOAT, GL_FALSE,
|
||||||
glMultiTexCoord2f(GL_TEXTURE1, 1, 0);
|
0, Tex1Coords);
|
||||||
glVertex2f( size, -size);
|
glEnableVertexAttribArray_func(TexCoord1_attr);
|
||||||
|
|
||||||
glMultiTexCoord2f(GL_TEXTURE0, 2, 2);
|
glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
|
||||||
glMultiTexCoord2f(GL_TEXTURE1, 1, 1);
|
}
|
||||||
glVertex2f( size, size);
|
|
||||||
|
|
||||||
glMultiTexCoord2f(GL_TEXTURE0, 0, 2);
|
|
||||||
glMultiTexCoord2f(GL_TEXTURE1, 0, 1);
|
static void
|
||||||
glVertex2f(-size, size);
|
DrawPolygonVert(void)
|
||||||
|
{
|
||||||
|
GLuint i;
|
||||||
|
|
||||||
|
glBegin(GL_TRIANGLE_FAN);
|
||||||
|
|
||||||
|
for (i = 0; i < 4; i++) {
|
||||||
|
glVertexAttrib2fv_func(TexCoord0_attr, Tex0Coords[i]);
|
||||||
|
glVertexAttrib2fv_func(TexCoord1_attr, Tex1Coords[i]);
|
||||||
|
|
||||||
|
if (VertCoord_attr >= 0)
|
||||||
|
glVertexAttrib2fv_func(VertCoord_attr, VertCoords[i]);
|
||||||
|
else
|
||||||
|
glVertex2fv(VertCoords[i]);
|
||||||
|
}
|
||||||
|
|
||||||
glEnd();
|
glEnd();
|
||||||
glPopMatrix();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -100,7 +133,10 @@ draw(void)
|
|||||||
glRotatef(Yrot, 0, 1, 0);
|
glRotatef(Yrot, 0, 1, 0);
|
||||||
glRotatef(Xrot, 1, 0, 0);
|
glRotatef(Xrot, 1, 0, 0);
|
||||||
|
|
||||||
DrawPolygon(3.0);
|
if (UseArrays)
|
||||||
|
DrawPolygonArray();
|
||||||
|
else
|
||||||
|
DrawPolygonVert();
|
||||||
|
|
||||||
glPopMatrix();
|
glPopMatrix();
|
||||||
|
|
||||||
@@ -123,8 +159,11 @@ key(unsigned char k, int x, int y)
|
|||||||
(void) x;
|
(void) x;
|
||||||
(void) y;
|
(void) y;
|
||||||
switch (k) {
|
switch (k) {
|
||||||
case ' ':
|
|
||||||
case 'a':
|
case 'a':
|
||||||
|
UseArrays = !UseArrays;
|
||||||
|
printf("Arrays: %d\n", UseArrays);
|
||||||
|
break;
|
||||||
|
case ' ':
|
||||||
Anim = !Anim;
|
Anim = !Anim;
|
||||||
if (Anim)
|
if (Anim)
|
||||||
glutIdleFunc(idle);
|
glutIdleFunc(idle);
|
||||||
@@ -232,6 +271,13 @@ CreateProgram(const char *vertProgFile, const char *fragProgFile,
|
|||||||
|
|
||||||
InitUniforms(program, uniforms);
|
InitUniforms(program, uniforms);
|
||||||
|
|
||||||
|
TexCoord0_attr = glGetAttribLocation_func(program, "TexCoord0");
|
||||||
|
TexCoord1_attr = glGetAttribLocation_func(program, "TexCoord1");
|
||||||
|
VertCoord_attr = glGetAttribLocation_func(program, "VertCoord");
|
||||||
|
printf("TexCoord0_attr = %d\n", TexCoord0_attr);
|
||||||
|
printf("TexCoord1_attr = %d\n", TexCoord1_attr);
|
||||||
|
printf("VertCoord_attr = %d\n", VertCoord_attr);
|
||||||
|
|
||||||
return program;
|
return program;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -2,9 +2,13 @@
|
|||||||
// Brian Paul
|
// Brian Paul
|
||||||
|
|
||||||
|
|
||||||
|
attribute vec4 TexCoord0, TexCoord1;
|
||||||
|
attribute vec4 VertCoord;
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
{
|
{
|
||||||
gl_TexCoord[0] = gl_MultiTexCoord0;
|
gl_TexCoord[0] = TexCoord0;
|
||||||
gl_TexCoord[1] = gl_MultiTexCoord1;
|
gl_TexCoord[1] = TexCoord1;
|
||||||
gl_Position = ftransform();
|
// note: may use gl_Vertex or VertCoord here for testing:
|
||||||
|
gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
|
||||||
}
|
}
|
||||||
|
@@ -30,6 +30,7 @@ static const char *FragShaderText =
|
|||||||
" vec4 p;\n"
|
" vec4 p;\n"
|
||||||
" p.xy = gl_TexCoord[0].xy;\n"
|
" p.xy = gl_TexCoord[0].xy;\n"
|
||||||
" p.z = Slice;\n"
|
" p.z = Slice;\n"
|
||||||
|
" p.w = 0;\n"
|
||||||
" vec4 n = noise4(p * scale);\n"
|
" vec4 n = noise4(p * scale);\n"
|
||||||
" gl_FragColor = n * Scale + Bias;\n"
|
" gl_FragColor = n * Scale + Bias;\n"
|
||||||
"}\n";
|
"}\n";
|
||||||
|
357
progs/glsl/samplers.c
Normal file
357
progs/glsl/samplers.c
Normal file
@@ -0,0 +1,357 @@
|
|||||||
|
/**
|
||||||
|
* Exercise all available GLSL texture samplers.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2009 VMware, Inc. All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
* copy of this software and associated documentation files (the "Software"),
|
||||||
|
* to deal in the Software without restriction, including without limitation
|
||||||
|
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||||
|
* and/or sell copies of the Software, and to permit persons to whom the
|
||||||
|
* Software is furnished to do so, subject to the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be included
|
||||||
|
* in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||||
|
* BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||||
|
* AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||||
|
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* We generate a fragment shader which uses the maximum number of supported
|
||||||
|
* texture samplers.
|
||||||
|
* For each sampler we create a separate texture. Each texture has a
|
||||||
|
* single strip of color at a different intensity. The fragment shader
|
||||||
|
* samples all the textures at the same coordinate and sums the values.
|
||||||
|
* The result should be a quad with rows of colors of increasing intensity
|
||||||
|
* from bottom to top.
|
||||||
|
*
|
||||||
|
* Brian Paul
|
||||||
|
* 1 Jan 2009
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <assert.h>
|
||||||
|
#include <math.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include "GL/glut.h"
|
||||||
|
#include "readtex.h"
|
||||||
|
#include "extfuncs.h"
|
||||||
|
#include "shaderutil.h"
|
||||||
|
|
||||||
|
|
||||||
|
#define MAX_SAMPLERS 128
|
||||||
|
|
||||||
|
|
||||||
|
static const char *Demo = "samplers";
|
||||||
|
|
||||||
|
static GLuint Program;
|
||||||
|
static GLint NumSamplers;
|
||||||
|
static GLuint Textures[MAX_SAMPLERS];
|
||||||
|
static GLfloat Xrot = 0.0, Yrot = .0, Zrot = 0.0;
|
||||||
|
static GLfloat EyeDist = 10;
|
||||||
|
static GLboolean Anim = GL_FALSE;
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
DrawPolygon(GLfloat size)
|
||||||
|
{
|
||||||
|
glPushMatrix();
|
||||||
|
glNormal3f(0, 0, 1);
|
||||||
|
glBegin(GL_POLYGON);
|
||||||
|
|
||||||
|
glMultiTexCoord2f(GL_TEXTURE0, 0, 0);
|
||||||
|
glVertex2f(-size, -size);
|
||||||
|
|
||||||
|
glMultiTexCoord2f(GL_TEXTURE0, 1, 0);
|
||||||
|
glVertex2f( size, -size);
|
||||||
|
|
||||||
|
glMultiTexCoord2f(GL_TEXTURE0, 1, 1);
|
||||||
|
glVertex2f( size, size);
|
||||||
|
|
||||||
|
glMultiTexCoord2f(GL_TEXTURE0, 0, 1);
|
||||||
|
glVertex2f(-size, size);
|
||||||
|
|
||||||
|
glEnd();
|
||||||
|
glPopMatrix();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
draw(void)
|
||||||
|
{
|
||||||
|
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||||
|
|
||||||
|
glPushMatrix();
|
||||||
|
glTranslatef(0.0, 0.0, -EyeDist);
|
||||||
|
glRotatef(Zrot, 0, 0, 1);
|
||||||
|
glRotatef(Yrot, 0, 1, 0);
|
||||||
|
glRotatef(Xrot, 1, 0, 0);
|
||||||
|
|
||||||
|
DrawPolygon(3.0);
|
||||||
|
|
||||||
|
glPopMatrix();
|
||||||
|
|
||||||
|
glutSwapBuffers();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
idle(void)
|
||||||
|
{
|
||||||
|
GLfloat t = 0.05 * glutGet(GLUT_ELAPSED_TIME);
|
||||||
|
Yrot = t;
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
key(unsigned char k, int x, int y)
|
||||||
|
{
|
||||||
|
(void) x;
|
||||||
|
(void) y;
|
||||||
|
switch (k) {
|
||||||
|
case ' ':
|
||||||
|
case 'a':
|
||||||
|
Anim = !Anim;
|
||||||
|
if (Anim)
|
||||||
|
glutIdleFunc(idle);
|
||||||
|
else
|
||||||
|
glutIdleFunc(NULL);
|
||||||
|
break;
|
||||||
|
case 'z':
|
||||||
|
EyeDist -= 0.5;
|
||||||
|
if (EyeDist < 3.0)
|
||||||
|
EyeDist = 3.0;
|
||||||
|
break;
|
||||||
|
case 'Z':
|
||||||
|
EyeDist += 0.5;
|
||||||
|
if (EyeDist > 90.0)
|
||||||
|
EyeDist = 90;
|
||||||
|
break;
|
||||||
|
case 27:
|
||||||
|
exit(0);
|
||||||
|
}
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
specialkey(int key, int x, int y)
|
||||||
|
{
|
||||||
|
GLfloat step = 2.0;
|
||||||
|
(void) x;
|
||||||
|
(void) y;
|
||||||
|
switch (key) {
|
||||||
|
case GLUT_KEY_UP:
|
||||||
|
Xrot += step;
|
||||||
|
break;
|
||||||
|
case GLUT_KEY_DOWN:
|
||||||
|
Xrot -= step;
|
||||||
|
break;
|
||||||
|
case GLUT_KEY_LEFT:
|
||||||
|
Yrot -= step;
|
||||||
|
break;
|
||||||
|
case GLUT_KEY_RIGHT:
|
||||||
|
Yrot += step;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* new window size or exposure */
|
||||||
|
static void
|
||||||
|
Reshape(int width, int height)
|
||||||
|
{
|
||||||
|
GLfloat ar = (float) width / (float) height;
|
||||||
|
glViewport(0, 0, (GLint)width, (GLint)height);
|
||||||
|
glMatrixMode(GL_PROJECTION);
|
||||||
|
glLoadIdentity();
|
||||||
|
glFrustum(-2.0*ar, 2.0*ar, -2.0, 2.0, 4.0, 100.0);
|
||||||
|
glMatrixMode(GL_MODELVIEW);
|
||||||
|
glLoadIdentity();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
InitTextures(void)
|
||||||
|
{
|
||||||
|
const GLint size = MAX_SAMPLERS;
|
||||||
|
GLubyte *texImage;
|
||||||
|
GLenum filter = GL_NEAREST;
|
||||||
|
GLint stripeSize;
|
||||||
|
GLint s;
|
||||||
|
|
||||||
|
texImage = (GLubyte *) malloc(size * size * 4);
|
||||||
|
|
||||||
|
glGenTextures(NumSamplers, Textures);
|
||||||
|
|
||||||
|
/* size of texels stripe */
|
||||||
|
stripeSize = size / NumSamplers;
|
||||||
|
|
||||||
|
/* create a texture for each sampler */
|
||||||
|
for (s = 0; s < NumSamplers; s++) {
|
||||||
|
GLint x, y, ypos;
|
||||||
|
GLubyte intensity = 31 + s * (256-32) / (NumSamplers - 1);
|
||||||
|
|
||||||
|
printf("Texture %d: color = %d, %d, %d\n", s,
|
||||||
|
(int) intensity, 0, (int) intensity );
|
||||||
|
|
||||||
|
/* initialize the texture to black */
|
||||||
|
memset(texImage, 0, size * size * 4);
|
||||||
|
|
||||||
|
/* set a stripe of texels to the intensity value */
|
||||||
|
ypos = s * stripeSize;
|
||||||
|
for (y = 0; y < stripeSize; y++) {
|
||||||
|
for (x = 0; x < size; x++) {
|
||||||
|
GLint k = 4 * ((ypos + y) * size + x);
|
||||||
|
texImage[k + 0] = intensity;
|
||||||
|
texImage[k + 1] = intensity;
|
||||||
|
texImage[k + 2] = 0;
|
||||||
|
texImage[k + 3] = 255;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
glActiveTexture(GL_TEXTURE0 + s);
|
||||||
|
glBindTexture(GL_TEXTURE_2D, Textures[s]);
|
||||||
|
gluBuild2DMipmaps(GL_TEXTURE_2D, 4, size, size,
|
||||||
|
GL_RGBA, GL_UNSIGNED_BYTE, texImage);
|
||||||
|
|
||||||
|
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
|
||||||
|
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
|
||||||
|
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, filter);
|
||||||
|
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, filter);
|
||||||
|
}
|
||||||
|
|
||||||
|
free(texImage);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generate a fragment shader that uses the given number of samplers.
|
||||||
|
*/
|
||||||
|
static char *
|
||||||
|
GenFragmentShader(GLint numSamplers)
|
||||||
|
{
|
||||||
|
const int maxLen = 10 * 1000;
|
||||||
|
char *prog = (char *) malloc(maxLen);
|
||||||
|
char *p = prog;
|
||||||
|
int s;
|
||||||
|
|
||||||
|
p += sprintf(p, "// Generated fragment shader:\n");
|
||||||
|
for (s = 0; s < numSamplers; s++) {
|
||||||
|
p += sprintf(p, "uniform sampler2D tex%d;\n", s);
|
||||||
|
}
|
||||||
|
p += sprintf(p, "void main()\n");
|
||||||
|
p += sprintf(p, "{\n");
|
||||||
|
p += sprintf(p, " vec4 color = vec4(0.0);\n");
|
||||||
|
for (s = 0; s < numSamplers; s++) {
|
||||||
|
p += sprintf(p, " color += texture2D(tex%d, gl_TexCoord[0].xy);\n", s);
|
||||||
|
}
|
||||||
|
p += sprintf(p, " gl_FragColor = color;\n");
|
||||||
|
p += sprintf(p, "}\n");
|
||||||
|
|
||||||
|
assert(p - prog < maxLen);
|
||||||
|
return prog;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/** Create & bind shader program */
|
||||||
|
static GLuint
|
||||||
|
CreateProgram(void)
|
||||||
|
{
|
||||||
|
GLuint fragShader, vertShader, program;
|
||||||
|
const char *vertShaderText =
|
||||||
|
"void main() \n"
|
||||||
|
"{ \n"
|
||||||
|
" gl_TexCoord[0] = gl_MultiTexCoord0; \n"
|
||||||
|
" gl_Position = ftransform(); \n"
|
||||||
|
"} \n";
|
||||||
|
char *fragShaderText = GenFragmentShader(NumSamplers);
|
||||||
|
|
||||||
|
printf("%s", fragShaderText);
|
||||||
|
|
||||||
|
vertShader = CompileShaderText(GL_VERTEX_SHADER, vertShaderText);
|
||||||
|
fragShader = CompileShaderText(GL_FRAGMENT_SHADER, fragShaderText);
|
||||||
|
assert(vertShader);
|
||||||
|
program = LinkShaders(vertShader, fragShader);
|
||||||
|
|
||||||
|
glUseProgram_func(program);
|
||||||
|
|
||||||
|
free(fragShaderText);
|
||||||
|
|
||||||
|
return program;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
InitProgram(void)
|
||||||
|
{
|
||||||
|
GLint s;
|
||||||
|
|
||||||
|
Program = CreateProgram();
|
||||||
|
|
||||||
|
/* init sampler uniforms */
|
||||||
|
for (s = 0; s < NumSamplers; s++) {
|
||||||
|
char uname[10];
|
||||||
|
GLint loc;
|
||||||
|
|
||||||
|
sprintf(uname, "tex%d", s);
|
||||||
|
loc = glGetUniformLocation_func(Program, uname);
|
||||||
|
assert(loc >= 0);
|
||||||
|
|
||||||
|
glUniform1i_func(loc, s);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
InitGL(void)
|
||||||
|
{
|
||||||
|
if (!ShadersSupported()) {
|
||||||
|
printf("GLSL not supported!\n");
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("GL_RENDERER = %s\n", (const char *) glGetString(GL_RENDERER));
|
||||||
|
|
||||||
|
GetExtensionFuncs();
|
||||||
|
|
||||||
|
glGetIntegerv(GL_MAX_TEXTURE_IMAGE_UNITS, &NumSamplers);
|
||||||
|
if (NumSamplers > MAX_SAMPLERS)
|
||||||
|
NumSamplers = MAX_SAMPLERS;
|
||||||
|
printf("Testing %d samplers\n", NumSamplers);
|
||||||
|
|
||||||
|
InitTextures();
|
||||||
|
InitProgram();
|
||||||
|
|
||||||
|
glClearColor(.6, .6, .9, 0);
|
||||||
|
glColor3f(1.0, 1.0, 1.0);
|
||||||
|
|
||||||
|
printf("Each color corresponds to a separate sampler/texture.\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int
|
||||||
|
main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
glutInit(&argc, argv);
|
||||||
|
glutInitWindowSize(500, 400);
|
||||||
|
glutInitDisplayMode(GLUT_RGB | GLUT_DEPTH | GLUT_DOUBLE);
|
||||||
|
glutCreateWindow(Demo);
|
||||||
|
glutReshapeFunc(Reshape);
|
||||||
|
glutKeyboardFunc(key);
|
||||||
|
glutSpecialFunc(specialkey);
|
||||||
|
glutDisplayFunc(draw);
|
||||||
|
if (Anim)
|
||||||
|
glutIdleFunc(idle);
|
||||||
|
InitGL();
|
||||||
|
glutMainLoop();
|
||||||
|
return 0;
|
||||||
|
}
|
280
progs/glsl/skinning.c
Normal file
280
progs/glsl/skinning.c
Normal file
@@ -0,0 +1,280 @@
|
|||||||
|
/**
|
||||||
|
* Vertex "skinning" example.
|
||||||
|
* The idea is there are multiple modeling matrices applied to every
|
||||||
|
* vertex. Weighting values in [0,1] control the influence of each
|
||||||
|
* matrix on each vertex.
|
||||||
|
*
|
||||||
|
* 4 Nov 2008
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <assert.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <math.h>
|
||||||
|
#include <GL/gl.h>
|
||||||
|
#include <GL/glut.h>
|
||||||
|
#include <GL/glext.h>
|
||||||
|
#include "extfuncs.h"
|
||||||
|
#include "shaderutil.h"
|
||||||
|
|
||||||
|
|
||||||
|
static char *FragProgFile = "skinning.frag";
|
||||||
|
static char *VertProgFile = "skinning.vert";
|
||||||
|
|
||||||
|
/* program/shader objects */
|
||||||
|
static GLuint fragShader;
|
||||||
|
static GLuint vertShader;
|
||||||
|
static GLuint program;
|
||||||
|
|
||||||
|
|
||||||
|
static GLint win = 0;
|
||||||
|
static GLboolean Anim = GL_TRUE;
|
||||||
|
static GLboolean WireFrame = GL_TRUE;
|
||||||
|
static GLfloat xRot = 0.0f, yRot = 90.0f, zRot = 0.0f;
|
||||||
|
|
||||||
|
#define NUM_MATS 2
|
||||||
|
|
||||||
|
static GLfloat Matrices[NUM_MATS][16];
|
||||||
|
static GLint uMat0, uMat1;
|
||||||
|
static GLint WeightAttr;
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Idle(void)
|
||||||
|
{
|
||||||
|
yRot = 90 + glutGet(GLUT_ELAPSED_TIME) * 0.005;
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Cylinder(GLfloat length, GLfloat radius, GLint slices, GLint stacks)
|
||||||
|
{
|
||||||
|
float dw = 1.0 / (stacks - 1);
|
||||||
|
float dz = length / stacks;
|
||||||
|
int i, j;
|
||||||
|
|
||||||
|
for (j = 0; j < stacks; j++) {
|
||||||
|
float w0 = j * dw;
|
||||||
|
float z0 = j * dz;
|
||||||
|
|
||||||
|
glBegin(GL_TRIANGLE_STRIP);
|
||||||
|
for (i = 0; i < slices; i++) {
|
||||||
|
float a = (float) i / (slices - 1) * M_PI * 2.0;
|
||||||
|
float x = radius * cos(a);
|
||||||
|
float y = radius * sin(a);
|
||||||
|
glVertexAttrib1f_func(WeightAttr, w0);
|
||||||
|
glNormal3f(x, y, 0.0);
|
||||||
|
glVertex3f(x, y, z0);
|
||||||
|
|
||||||
|
glVertexAttrib1f_func(WeightAttr, w0 + dw);
|
||||||
|
glNormal3f(x, y, 0.0);
|
||||||
|
glVertex3f(x, y, z0 + dz);
|
||||||
|
}
|
||||||
|
glEnd();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update/animate the two matrices. One rotates, the other scales.
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
UpdateMatrices(void)
|
||||||
|
{
|
||||||
|
GLfloat t = glutGet(GLUT_ELAPSED_TIME) * 0.0025;
|
||||||
|
GLfloat scale = 0.5 * (1.1 + sin(0.5 * t));
|
||||||
|
GLfloat rot = cos(t) * 90.0;
|
||||||
|
|
||||||
|
glPushMatrix();
|
||||||
|
glLoadIdentity();
|
||||||
|
glScalef(1.0, scale, 1.0);
|
||||||
|
glGetFloatv(GL_MODELVIEW_MATRIX, Matrices[0]);
|
||||||
|
glPopMatrix();
|
||||||
|
|
||||||
|
glPushMatrix();
|
||||||
|
glLoadIdentity();
|
||||||
|
glRotatef(rot, 0, 0, 1);
|
||||||
|
glGetFloatv(GL_MODELVIEW_MATRIX, Matrices[1]);
|
||||||
|
glPopMatrix();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Redisplay(void)
|
||||||
|
{
|
||||||
|
UpdateMatrices();
|
||||||
|
|
||||||
|
glUniformMatrix4fv_func(uMat0, 1, GL_FALSE, Matrices[0]);
|
||||||
|
glUniformMatrix4fv_func(uMat1, 1, GL_FALSE, Matrices[1]);
|
||||||
|
|
||||||
|
if (WireFrame)
|
||||||
|
glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
|
||||||
|
else
|
||||||
|
glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
|
||||||
|
|
||||||
|
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||||
|
|
||||||
|
glPushMatrix();
|
||||||
|
glRotatef(xRot, 1.0f, 0.0f, 0.0f);
|
||||||
|
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
|
||||||
|
glRotatef(zRot, 0.0f, 0.0f, 1.0f);
|
||||||
|
|
||||||
|
glPushMatrix();
|
||||||
|
glTranslatef(0, 0, -2.5);
|
||||||
|
Cylinder(5.0, 1.0, 10, 20);
|
||||||
|
glPopMatrix();
|
||||||
|
|
||||||
|
glPopMatrix();
|
||||||
|
|
||||||
|
glutSwapBuffers();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Reshape(int width, int height)
|
||||||
|
{
|
||||||
|
glViewport(0, 0, width, height);
|
||||||
|
glMatrixMode(GL_PROJECTION);
|
||||||
|
glLoadIdentity();
|
||||||
|
glFrustum(-1.0, 1.0, -1.0, 1.0, 5.0, 25.0);
|
||||||
|
glMatrixMode(GL_MODELVIEW);
|
||||||
|
glLoadIdentity();
|
||||||
|
glTranslatef(0.0f, 0.0f, -15.0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
CleanUp(void)
|
||||||
|
{
|
||||||
|
glDeleteShader_func(fragShader);
|
||||||
|
glDeleteShader_func(vertShader);
|
||||||
|
glDeleteProgram_func(program);
|
||||||
|
glutDestroyWindow(win);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Key(unsigned char key, int x, int y)
|
||||||
|
{
|
||||||
|
const GLfloat step = 2.0;
|
||||||
|
(void) x;
|
||||||
|
(void) y;
|
||||||
|
|
||||||
|
switch(key) {
|
||||||
|
case 'a':
|
||||||
|
Anim = !Anim;
|
||||||
|
if (Anim)
|
||||||
|
glutIdleFunc(Idle);
|
||||||
|
else
|
||||||
|
glutIdleFunc(NULL);
|
||||||
|
break;
|
||||||
|
case 'w':
|
||||||
|
WireFrame = !WireFrame;
|
||||||
|
break;
|
||||||
|
case 'z':
|
||||||
|
zRot += step;
|
||||||
|
break;
|
||||||
|
case 'Z':
|
||||||
|
zRot -= step;
|
||||||
|
break;
|
||||||
|
case 27:
|
||||||
|
CleanUp();
|
||||||
|
exit(0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
SpecialKey(int key, int x, int y)
|
||||||
|
{
|
||||||
|
const GLfloat step = 2.0;
|
||||||
|
|
||||||
|
(void) x;
|
||||||
|
(void) y;
|
||||||
|
|
||||||
|
switch(key) {
|
||||||
|
case GLUT_KEY_UP:
|
||||||
|
xRot += step;
|
||||||
|
break;
|
||||||
|
case GLUT_KEY_DOWN:
|
||||||
|
xRot -= step;
|
||||||
|
break;
|
||||||
|
case GLUT_KEY_LEFT:
|
||||||
|
yRot -= step;
|
||||||
|
break;
|
||||||
|
case GLUT_KEY_RIGHT:
|
||||||
|
yRot += step;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Init(void)
|
||||||
|
{
|
||||||
|
if (!ShadersSupported())
|
||||||
|
exit(1);
|
||||||
|
|
||||||
|
GetExtensionFuncs();
|
||||||
|
|
||||||
|
vertShader = CompileShaderFile(GL_VERTEX_SHADER, VertProgFile);
|
||||||
|
fragShader = CompileShaderFile(GL_FRAGMENT_SHADER, FragProgFile);
|
||||||
|
program = LinkShaders(vertShader, fragShader);
|
||||||
|
|
||||||
|
glUseProgram_func(program);
|
||||||
|
|
||||||
|
uMat0 = glGetUniformLocation_func(program, "mat0");
|
||||||
|
uMat1 = glGetUniformLocation_func(program, "mat1");
|
||||||
|
|
||||||
|
WeightAttr = glGetAttribLocation_func(program, "weight");
|
||||||
|
|
||||||
|
assert(glGetError() == 0);
|
||||||
|
|
||||||
|
glClearColor(0.4f, 0.4f, 0.8f, 0.0f);
|
||||||
|
|
||||||
|
glEnable(GL_DEPTH_TEST);
|
||||||
|
|
||||||
|
glColor3f(1, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
ParseOptions(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
for (i = 1; i < argc; i++) {
|
||||||
|
if (strcmp(argv[i], "-fs") == 0) {
|
||||||
|
FragProgFile = argv[i+1];
|
||||||
|
}
|
||||||
|
else if (strcmp(argv[i], "-vs") == 0) {
|
||||||
|
VertProgFile = argv[i+1];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int
|
||||||
|
main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
glutInit(&argc, argv);
|
||||||
|
glutInitWindowSize(500, 500);
|
||||||
|
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
|
||||||
|
win = glutCreateWindow(argv[0]);
|
||||||
|
glutReshapeFunc(Reshape);
|
||||||
|
glutKeyboardFunc(Key);
|
||||||
|
glutSpecialFunc(SpecialKey);
|
||||||
|
glutDisplayFunc(Redisplay);
|
||||||
|
ParseOptions(argc, argv);
|
||||||
|
Init();
|
||||||
|
if (Anim)
|
||||||
|
glutIdleFunc(Idle);
|
||||||
|
glutMainLoop();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
6
progs/glsl/skinning.frag
Normal file
6
progs/glsl/skinning.frag
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
// color pass-through
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
gl_FragColor = gl_Color;
|
||||||
|
}
|
24
progs/glsl/skinning.vert
Normal file
24
progs/glsl/skinning.vert
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
// Vertex weighting/blendin shader
|
||||||
|
// Brian Paul
|
||||||
|
// 4 Nov 2008
|
||||||
|
|
||||||
|
uniform mat4 mat0, mat1;
|
||||||
|
attribute float weight;
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
// simple diffuse shading
|
||||||
|
// Note that we should really transform the normal vector along with
|
||||||
|
// the postion below... someday.
|
||||||
|
vec3 lightVec = vec3(0, 0, 1);
|
||||||
|
vec3 norm = gl_NormalMatrix * gl_Normal;
|
||||||
|
float dot = 0.2 + max(0.0, dot(norm, lightVec));
|
||||||
|
gl_FrontColor = vec4(dot);
|
||||||
|
|
||||||
|
// compute sum of weighted transformations
|
||||||
|
vec4 pos0 = mat0 * gl_Vertex;
|
||||||
|
vec4 pos1 = mat1 * gl_Vertex;
|
||||||
|
vec4 pos = mix(pos0, pos1, weight);
|
||||||
|
|
||||||
|
gl_Position = gl_ModelViewProjectionMatrix * pos;
|
||||||
|
}
|
@@ -79,8 +79,6 @@ Redisplay(void)
|
|||||||
|
|
||||||
glPopMatrix();
|
glPopMatrix();
|
||||||
|
|
||||||
glFinish();
|
|
||||||
glFlush();
|
|
||||||
glutSwapBuffers();
|
glutSwapBuffers();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -26,27 +26,39 @@ static GLuint fragShader;
|
|||||||
static GLuint vertShader;
|
static GLuint vertShader;
|
||||||
static GLuint program;
|
static GLuint program;
|
||||||
static GLint win = 0;
|
static GLint win = 0;
|
||||||
static GLboolean anim = 0*GL_TRUE;
|
static GLboolean anim;
|
||||||
static GLboolean DetermineInFragProg = GL_TRUE;
|
static GLboolean DetermineFacingInFragProg;
|
||||||
static GLfloat Xrot = 30.0f;
|
static GLfloat Xrot;
|
||||||
static GLint u_fragface;
|
static GLint u_fragface;
|
||||||
static GLenum FrontWinding = GL_CCW;
|
static GLenum FrontWinding;
|
||||||
static int prevTime = 0;
|
static int prevTime = 0;
|
||||||
|
|
||||||
|
|
||||||
static const GLfloat Red[4] = {1, 0, 0, 0};
|
static const GLfloat Red[4] = {1, 0, 0, 1};
|
||||||
static const GLfloat Green[4] = {0, 1, 0, 0};
|
static const GLfloat Green[4] = {0, 1, 0, 0};
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
SetDefaults(void)
|
||||||
|
{
|
||||||
|
DetermineFacingInFragProg = GL_TRUE;
|
||||||
|
FrontWinding = GL_CCW;
|
||||||
|
Xrot = 30;
|
||||||
|
anim = 0;
|
||||||
|
glutIdleFunc(NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
Redisplay(void)
|
Redisplay(void)
|
||||||
{
|
{
|
||||||
|
const int sections = 20;
|
||||||
int i;
|
int i;
|
||||||
float radius = 2;
|
float radius = 2;
|
||||||
|
|
||||||
glFrontFace(FrontWinding);
|
glFrontFace(FrontWinding);
|
||||||
|
|
||||||
if (DetermineInFragProg) {
|
if (DetermineFacingInFragProg) {
|
||||||
glUniform1i_func(u_fragface, 1);
|
glUniform1i_func(u_fragface, 1);
|
||||||
glDisable(GL_VERTEX_PROGRAM_TWO_SIDE);
|
glDisable(GL_VERTEX_PROGRAM_TWO_SIDE);
|
||||||
}
|
}
|
||||||
@@ -64,8 +76,8 @@ Redisplay(void)
|
|||||||
glBegin(GL_TRIANGLE_STRIP);
|
glBegin(GL_TRIANGLE_STRIP);
|
||||||
glColor4fv(Red);
|
glColor4fv(Red);
|
||||||
glSecondaryColor3fv_func(Green);
|
glSecondaryColor3fv_func(Green);
|
||||||
for (i = 0; i < 20; i++) {
|
for (i = 0; i <= sections; i++) {
|
||||||
float a = i / 19.0 * M_PI * 2.0;
|
float a = (float) i / (sections) * M_PI * 2.0;
|
||||||
float x = radius * cos(a);
|
float x = radius * cos(a);
|
||||||
float y = radius * sin(a);
|
float y = radius * sin(a);
|
||||||
glVertex3f(x, -1, y);
|
glVertex3f(x, -1, y);
|
||||||
@@ -139,17 +151,15 @@ Key(unsigned char key, int x, int y)
|
|||||||
break;
|
break;
|
||||||
case 'f':
|
case 'f':
|
||||||
printf("Using frag shader gl_FrontFacing\n");
|
printf("Using frag shader gl_FrontFacing\n");
|
||||||
DetermineInFragProg = GL_TRUE;
|
DetermineFacingInFragProg = GL_TRUE;
|
||||||
break;
|
break;
|
||||||
case 'v':
|
case 'v':
|
||||||
printf("Using vert shader Two-sided lighting\n");
|
printf("Using vert shader Two-sided lighting\n");
|
||||||
DetermineInFragProg = GL_FALSE;
|
DetermineFacingInFragProg = GL_FALSE;
|
||||||
break;
|
break;
|
||||||
case 'r':
|
case 'r':
|
||||||
/* reset */
|
/* reset */
|
||||||
Xrot = 30;
|
SetDefaults();
|
||||||
anim = 0;
|
|
||||||
glutIdleFunc(NULL);
|
|
||||||
break;
|
break;
|
||||||
case 's':
|
case 's':
|
||||||
Xrot += 5;
|
Xrot += 5;
|
||||||
@@ -182,14 +192,16 @@ Init(void)
|
|||||||
static const char *fragShaderText =
|
static const char *fragShaderText =
|
||||||
"uniform bool fragface; \n"
|
"uniform bool fragface; \n"
|
||||||
"void main() { \n"
|
"void main() { \n"
|
||||||
#if 0
|
#if 1
|
||||||
" if (!fragface || gl_FrontFacing) { \n"
|
" if (!fragface || gl_FrontFacing) { \n"
|
||||||
" gl_FragColor = gl_Color; \n"
|
" gl_FragColor = gl_Color; \n"
|
||||||
" } \n"
|
" } \n"
|
||||||
" else { \n"
|
" else { \n"
|
||||||
|
" // note: dim green to help debug \n"
|
||||||
" gl_FragColor = 0.8 * gl_SecondaryColor; \n"
|
" gl_FragColor = 0.8 * gl_SecondaryColor; \n"
|
||||||
" } \n"
|
" } \n"
|
||||||
#else
|
#else
|
||||||
|
/* DEBUG CODE */
|
||||||
" bool f = gl_FrontFacing; \n"
|
" bool f = gl_FrontFacing; \n"
|
||||||
" if (f) { \n"
|
" if (f) { \n"
|
||||||
" gl_FragColor = vec4(1.0, 0.0, 0.0, 0.0); \n"
|
" gl_FragColor = vec4(1.0, 0.0, 0.0, 0.0); \n"
|
||||||
@@ -197,8 +209,6 @@ Init(void)
|
|||||||
" else { \n"
|
" else { \n"
|
||||||
" gl_FragColor = vec4(0.0, 1.0, 0.0, 0.0); \n"
|
" gl_FragColor = vec4(0.0, 1.0, 0.0, 0.0); \n"
|
||||||
" } \n"
|
" } \n"
|
||||||
" //float g = float(gl_FrontFacing) * 0.5 + 0.5; \n"
|
|
||||||
" //gl_FragColor = vec4(g); \n"
|
|
||||||
#endif
|
#endif
|
||||||
"} \n";
|
"} \n";
|
||||||
static const char *vertShaderText =
|
static const char *vertShaderText =
|
||||||
@@ -241,6 +251,8 @@ Init(void)
|
|||||||
assert(glIsShader_func(vertShader));
|
assert(glIsShader_func(vertShader));
|
||||||
|
|
||||||
glEnable(GL_DEPTH_TEST);
|
glEnable(GL_DEPTH_TEST);
|
||||||
|
|
||||||
|
SetDefaults();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
191
progs/glsl/vert-or-frag-only.c
Normal file
191
progs/glsl/vert-or-frag-only.c
Normal file
@@ -0,0 +1,191 @@
|
|||||||
|
/**
|
||||||
|
* Draw two quads, one using only a vertex shader, the other only with a
|
||||||
|
* fragment shader. They should appear the same.
|
||||||
|
* 17 Dec 2008
|
||||||
|
* Brian Paul
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#include <assert.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <math.h>
|
||||||
|
#include <GL/gl.h>
|
||||||
|
#include <GL/glut.h>
|
||||||
|
#include <GL/glext.h>
|
||||||
|
#include "extfuncs.h"
|
||||||
|
#include "shaderutil.h"
|
||||||
|
|
||||||
|
|
||||||
|
static char *FragProgFile = NULL;
|
||||||
|
static char *VertProgFile = NULL;
|
||||||
|
static GLuint FragShader;
|
||||||
|
static GLuint VertShader;
|
||||||
|
static GLuint VertProgram; /* w/out vertex shader */
|
||||||
|
static GLuint FragProgram; /* w/out fragment shader */
|
||||||
|
static GLint Win = 0;
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
DrawQuadColor(void)
|
||||||
|
{
|
||||||
|
glBegin(GL_QUADS);
|
||||||
|
glColor3f(1, 0, 0); glVertex2f(-1, -1);
|
||||||
|
glColor3f(0, 1, 0); glVertex2f( 1, -1);
|
||||||
|
glColor3f(0, 0, 1); glVertex2f( 1, 1);
|
||||||
|
glColor3f(1, 0, 1); glVertex2f(-1, 1);
|
||||||
|
glEnd();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/** as above, but specify color via texcoords */
|
||||||
|
static void
|
||||||
|
DrawQuadTex(void)
|
||||||
|
{
|
||||||
|
glBegin(GL_QUADS);
|
||||||
|
glTexCoord3f(1, 0, 0); glVertex2f(-1, -1);
|
||||||
|
glTexCoord3f(0, 1, 0); glVertex2f( 1, -1);
|
||||||
|
glTexCoord3f(0, 0, 1); glVertex2f( 1, 1);
|
||||||
|
glTexCoord3f(1, 0, 1); glVertex2f(-1, 1);
|
||||||
|
glEnd();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Redisplay(void)
|
||||||
|
{
|
||||||
|
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||||
|
|
||||||
|
/* render with vertex shader only */
|
||||||
|
glUseProgram_func(VertProgram);
|
||||||
|
glPushMatrix();
|
||||||
|
glTranslatef(-1.5, 0, 0);
|
||||||
|
DrawQuadTex();
|
||||||
|
glPopMatrix();
|
||||||
|
|
||||||
|
/* render with fragment shader only */
|
||||||
|
glUseProgram_func(FragProgram);
|
||||||
|
glPushMatrix();
|
||||||
|
glTranslatef(+1.5, 0, 0);
|
||||||
|
DrawQuadColor();
|
||||||
|
glPopMatrix();
|
||||||
|
|
||||||
|
glutSwapBuffers();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Reshape(int width, int height)
|
||||||
|
{
|
||||||
|
glViewport(0, 0, width, height);
|
||||||
|
glMatrixMode(GL_PROJECTION);
|
||||||
|
glLoadIdentity();
|
||||||
|
glOrtho(-4, 4, -2, 2, -1, 1);
|
||||||
|
glMatrixMode(GL_MODELVIEW);
|
||||||
|
glLoadIdentity();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
CleanUp(void)
|
||||||
|
{
|
||||||
|
glDeleteShader_func(FragShader);
|
||||||
|
glDeleteShader_func(VertShader);
|
||||||
|
glDeleteProgram_func(VertProgram);
|
||||||
|
glDeleteProgram_func(FragProgram);
|
||||||
|
glutDestroyWindow(Win);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Key(unsigned char key, int x, int y)
|
||||||
|
{
|
||||||
|
(void) x;
|
||||||
|
(void) y;
|
||||||
|
switch(key) {
|
||||||
|
case 27:
|
||||||
|
CleanUp();
|
||||||
|
exit(0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Init(void)
|
||||||
|
{
|
||||||
|
static const char *fragShaderText =
|
||||||
|
"void main() {\n"
|
||||||
|
" gl_FragColor = gl_Color;\n"
|
||||||
|
"}\n";
|
||||||
|
static const char *vertShaderText =
|
||||||
|
"void main() {\n"
|
||||||
|
" gl_Position = ftransform();\n"
|
||||||
|
" gl_FrontColor = gl_MultiTexCoord0;\n" /* see DrawQuadTex() */
|
||||||
|
"}\n";
|
||||||
|
|
||||||
|
if (!ShadersSupported())
|
||||||
|
exit(1);
|
||||||
|
|
||||||
|
GetExtensionFuncs();
|
||||||
|
|
||||||
|
if (FragProgFile)
|
||||||
|
FragShader = CompileShaderFile(GL_FRAGMENT_SHADER, FragProgFile);
|
||||||
|
else
|
||||||
|
FragShader = CompileShaderText(GL_FRAGMENT_SHADER, fragShaderText);
|
||||||
|
|
||||||
|
if (VertProgFile)
|
||||||
|
VertShader = CompileShaderFile(GL_VERTEX_SHADER, VertProgFile);
|
||||||
|
else
|
||||||
|
VertShader = CompileShaderText(GL_VERTEX_SHADER, vertShaderText);
|
||||||
|
|
||||||
|
VertProgram = LinkShaders(VertShader, 0);
|
||||||
|
FragProgram = LinkShaders(0, FragShader);
|
||||||
|
|
||||||
|
glClearColor(0.3f, 0.3f, 0.3f, 0.0f);
|
||||||
|
glEnable(GL_DEPTH_TEST);
|
||||||
|
|
||||||
|
printf("GL_RENDERER = %s\n",(const char *) glGetString(GL_RENDERER));
|
||||||
|
|
||||||
|
assert(glIsProgram_func(VertProgram));
|
||||||
|
assert(glIsProgram_func(FragProgram));
|
||||||
|
assert(glIsShader_func(FragShader));
|
||||||
|
assert(glIsShader_func(VertShader));
|
||||||
|
|
||||||
|
glColor3f(1, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
ParseOptions(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
for (i = 1; i < argc; i++) {
|
||||||
|
if (strcmp(argv[i], "-fs") == 0) {
|
||||||
|
FragProgFile = argv[i+1];
|
||||||
|
}
|
||||||
|
else if (strcmp(argv[i], "-vs") == 0) {
|
||||||
|
VertProgFile = argv[i+1];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int
|
||||||
|
main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
glutInit(&argc, argv);
|
||||||
|
glutInitWindowPosition( 0, 0);
|
||||||
|
glutInitWindowSize(400, 200);
|
||||||
|
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
|
||||||
|
Win = glutCreateWindow(argv[0]);
|
||||||
|
glutReshapeFunc(Reshape);
|
||||||
|
glutKeyboardFunc(Key);
|
||||||
|
glutDisplayFunc(Redisplay);
|
||||||
|
ParseOptions(argc, argv);
|
||||||
|
Init();
|
||||||
|
glutMainLoop();
|
||||||
|
return 0;
|
||||||
|
}
|
279
progs/glsl/vert-tex.c
Normal file
279
progs/glsl/vert-tex.c
Normal file
@@ -0,0 +1,279 @@
|
|||||||
|
/**
|
||||||
|
* Vertex shader texture sampling test.
|
||||||
|
* Brian Paul
|
||||||
|
* 2 Dec 2008
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <assert.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <math.h>
|
||||||
|
#include <GL/gl.h>
|
||||||
|
#include <GL/glut.h>
|
||||||
|
#include <GL/glext.h>
|
||||||
|
#include "extfuncs.h"
|
||||||
|
#include "shaderutil.h"
|
||||||
|
|
||||||
|
|
||||||
|
static const char *VertShaderText =
|
||||||
|
"uniform sampler2D tex1; \n"
|
||||||
|
"void main() \n"
|
||||||
|
"{ \n"
|
||||||
|
" vec4 pos = gl_Vertex; \n"
|
||||||
|
" pos.z = texture2D(tex1, gl_MultiTexCoord0.xy).x - 0.5; \n"
|
||||||
|
" gl_Position = gl_ModelViewProjectionMatrix * pos; \n"
|
||||||
|
" gl_FrontColor = pos; \n"
|
||||||
|
"} \n";
|
||||||
|
|
||||||
|
static const char *FragShaderText =
|
||||||
|
"void main() \n"
|
||||||
|
"{ \n"
|
||||||
|
" gl_FragColor = gl_Color; \n"
|
||||||
|
"} \n";
|
||||||
|
|
||||||
|
|
||||||
|
static GLuint fragShader;
|
||||||
|
static GLuint vertShader;
|
||||||
|
static GLuint program;
|
||||||
|
|
||||||
|
static GLint win = 0;
|
||||||
|
static GLboolean Anim = GL_TRUE;
|
||||||
|
static GLboolean WireFrame = GL_TRUE;
|
||||||
|
static GLfloat xRot = -70.0f, yRot = 0.0f, zRot = 0.0f;
|
||||||
|
|
||||||
|
|
||||||
|
/* value[0] = tex unit */
|
||||||
|
static struct uniform_info Uniforms[] = {
|
||||||
|
{ "tex1", 1, GL_INT, { 0, 0, 0, 0 }, -1 },
|
||||||
|
END_OF_UNIFORMS
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Idle(void)
|
||||||
|
{
|
||||||
|
zRot = 90 + glutGet(GLUT_ELAPSED_TIME) * 0.05;
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
DrawMesh(void)
|
||||||
|
{
|
||||||
|
GLfloat xmin = -2.0, xmax = 2.0;
|
||||||
|
GLfloat ymin = -2.0, ymax = 2.0;
|
||||||
|
GLuint xdivs = 20, ydivs = 20;
|
||||||
|
GLfloat dx = (xmax - xmin) / xdivs;
|
||||||
|
GLfloat dy = (ymax - ymin) / ydivs;
|
||||||
|
GLfloat ds = 1.0 / xdivs, dt = 1.0 / ydivs;
|
||||||
|
GLfloat x, y, s, t;
|
||||||
|
GLuint i, j;
|
||||||
|
|
||||||
|
y = ymin;
|
||||||
|
t = 0.0;
|
||||||
|
for (i = 0; i < ydivs; i++) {
|
||||||
|
x = xmin;
|
||||||
|
s = 0.0;
|
||||||
|
glBegin(GL_QUAD_STRIP);
|
||||||
|
for (j = 0; j < xdivs; j++) {
|
||||||
|
glTexCoord2f(s, t);
|
||||||
|
glVertex2f(x, y);
|
||||||
|
glTexCoord2f(s, t + dt);
|
||||||
|
glVertex2f(x, y + dy);
|
||||||
|
x += dx;
|
||||||
|
s += ds;
|
||||||
|
}
|
||||||
|
glEnd();
|
||||||
|
y += dy;
|
||||||
|
t += dt;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Redisplay(void)
|
||||||
|
{
|
||||||
|
if (WireFrame)
|
||||||
|
glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
|
||||||
|
else
|
||||||
|
glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
|
||||||
|
|
||||||
|
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||||
|
|
||||||
|
glPushMatrix();
|
||||||
|
glRotatef(xRot, 1.0f, 0.0f, 0.0f);
|
||||||
|
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
|
||||||
|
glRotatef(zRot, 0.0f, 0.0f, 1.0f);
|
||||||
|
|
||||||
|
glPushMatrix();
|
||||||
|
DrawMesh();
|
||||||
|
glPopMatrix();
|
||||||
|
|
||||||
|
glPopMatrix();
|
||||||
|
|
||||||
|
glutSwapBuffers();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Reshape(int width, int height)
|
||||||
|
{
|
||||||
|
glViewport(0, 0, width, height);
|
||||||
|
glMatrixMode(GL_PROJECTION);
|
||||||
|
glLoadIdentity();
|
||||||
|
glFrustum(-1.0, 1.0, -1.0, 1.0, 5.0, 25.0);
|
||||||
|
glMatrixMode(GL_MODELVIEW);
|
||||||
|
glLoadIdentity();
|
||||||
|
glTranslatef(0.0f, 0.0f, -15.0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
CleanUp(void)
|
||||||
|
{
|
||||||
|
glDeleteShader_func(fragShader);
|
||||||
|
glDeleteShader_func(vertShader);
|
||||||
|
glDeleteProgram_func(program);
|
||||||
|
glutDestroyWindow(win);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Key(unsigned char key, int x, int y)
|
||||||
|
{
|
||||||
|
const GLfloat step = 2.0;
|
||||||
|
(void) x;
|
||||||
|
(void) y;
|
||||||
|
|
||||||
|
switch(key) {
|
||||||
|
case 'a':
|
||||||
|
Anim = !Anim;
|
||||||
|
if (Anim)
|
||||||
|
glutIdleFunc(Idle);
|
||||||
|
else
|
||||||
|
glutIdleFunc(NULL);
|
||||||
|
break;
|
||||||
|
case 'w':
|
||||||
|
WireFrame = !WireFrame;
|
||||||
|
break;
|
||||||
|
case 'z':
|
||||||
|
zRot += step;
|
||||||
|
break;
|
||||||
|
case 'Z':
|
||||||
|
zRot -= step;
|
||||||
|
break;
|
||||||
|
case 27:
|
||||||
|
CleanUp();
|
||||||
|
exit(0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
SpecialKey(int key, int x, int y)
|
||||||
|
{
|
||||||
|
const GLfloat step = 2.0;
|
||||||
|
|
||||||
|
(void) x;
|
||||||
|
(void) y;
|
||||||
|
|
||||||
|
switch(key) {
|
||||||
|
case GLUT_KEY_UP:
|
||||||
|
xRot += step;
|
||||||
|
break;
|
||||||
|
case GLUT_KEY_DOWN:
|
||||||
|
xRot -= step;
|
||||||
|
break;
|
||||||
|
case GLUT_KEY_LEFT:
|
||||||
|
yRot -= step;
|
||||||
|
break;
|
||||||
|
case GLUT_KEY_RIGHT:
|
||||||
|
yRot += step;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
glutPostRedisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
MakeTexture(void)
|
||||||
|
{
|
||||||
|
const GLuint texWidth = 64, texHeight = 64;
|
||||||
|
GLfloat texImage[64][64];
|
||||||
|
GLuint i, j;
|
||||||
|
|
||||||
|
/* texture is basically z = f(x, y) */
|
||||||
|
for (i = 0; i < texHeight; i++) {
|
||||||
|
GLfloat y = 2.0 * (i / (float) (texHeight - 1)) - 1.0;
|
||||||
|
for (j = 0; j < texWidth; j++) {
|
||||||
|
GLfloat x = 2.0 * (j / (float) (texWidth - 1)) - 1.0;
|
||||||
|
GLfloat z = 0.5 + 0.5 * (sin(4.0 * x) * sin(4.0 * y));
|
||||||
|
texImage[i][j] = z;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
glActiveTexture(GL_TEXTURE0);
|
||||||
|
glBindTexture(GL_TEXTURE_2D, 42);
|
||||||
|
glTexImage2D(GL_TEXTURE_2D, 0, GL_INTENSITY, texWidth, texHeight, 0,
|
||||||
|
GL_LUMINANCE, GL_FLOAT, texImage);
|
||||||
|
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
|
||||||
|
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void
|
||||||
|
Init(void)
|
||||||
|
{
|
||||||
|
GLint m;
|
||||||
|
|
||||||
|
glGetIntegerv(GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB, &m);
|
||||||
|
if (m < 1) {
|
||||||
|
printf("Error: no vertex shader texture units supported.\n");
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!ShadersSupported())
|
||||||
|
exit(1);
|
||||||
|
|
||||||
|
GetExtensionFuncs();
|
||||||
|
|
||||||
|
vertShader = CompileShaderText(GL_VERTEX_SHADER, VertShaderText);
|
||||||
|
fragShader = CompileShaderText(GL_FRAGMENT_SHADER, FragShaderText);
|
||||||
|
program = LinkShaders(vertShader, fragShader);
|
||||||
|
|
||||||
|
glUseProgram_func(program);
|
||||||
|
|
||||||
|
assert(glGetError() == 0);
|
||||||
|
|
||||||
|
MakeTexture();
|
||||||
|
|
||||||
|
glClearColor(0.4f, 0.4f, 0.8f, 0.0f);
|
||||||
|
|
||||||
|
glEnable(GL_DEPTH_TEST);
|
||||||
|
|
||||||
|
glColor3f(1, 1, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int
|
||||||
|
main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
glutInit(&argc, argv);
|
||||||
|
glutInitWindowSize(500, 500);
|
||||||
|
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
|
||||||
|
win = glutCreateWindow(argv[0]);
|
||||||
|
glutReshapeFunc(Reshape);
|
||||||
|
glutKeyboardFunc(Key);
|
||||||
|
glutSpecialFunc(SpecialKey);
|
||||||
|
glutDisplayFunc(Redisplay);
|
||||||
|
Init();
|
||||||
|
if (Anim)
|
||||||
|
glutIdleFunc(Idle);
|
||||||
|
glutMainLoop();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
@@ -1,4 +1,3 @@
|
|||||||
/* $Id: glfbdevtest.c,v 1.1 2003/08/06 17:47:15 keithw Exp $ */
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Test the GLFBDev interface. Only tested with radeonfb driver!!!!
|
* Test the GLFBDev interface. Only tested with radeonfb driver!!!!
|
||||||
|
@@ -1,4 +1,3 @@
|
|||||||
/* $Id: manytex.c,v 1.2 2003/08/23 01:28:59 jonsmirl Exp $ */
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* test handling of many texture maps
|
* test handling of many texture maps
|
||||||
|
@@ -1,4 +1,3 @@
|
|||||||
/* $Id: sample_server.c,v 1.1 2003/08/06 17:47:15 keithw Exp $ */
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Sample server that just keeps first available window mapped.
|
* Sample server that just keeps first available window mapped.
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user