Compare commits
	
		
			717 Commits
		
	
	
		
			mesa_4_0_1
			...
			mesa_5_0
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 33c0b3e233 | ||
|  | 658145bd82 | ||
|  | 1b260aee24 | ||
|  | 9c799cdc49 | ||
|  | b4497c5843 | ||
|  | cdf2da368d | ||
|  | 36723b6538 | ||
|  | e21a79bfdd | ||
|  | 4d7a1289ed | ||
|  | 9d88c7d8f4 | ||
|  | 21709b354b | ||
|  | 62d821786c | ||
|  | 101b16cf41 | ||
|  | 069ad023b5 | ||
|  | 43cb96cbf6 | ||
|  | 1e9d43f56c | ||
|  | 7069a7e3d6 | ||
|  | d5cbe1e924 | ||
|  | d8c6273cf6 | ||
|  | 68b1d5c315 | ||
|  | f104619b8f | ||
|  | 04cf6f4958 | ||
|  | ad8cd6111e | ||
|  | e307931314 | ||
|  | 2dee6187e4 | ||
|  | b6d90e50ea | ||
|  | aa80f05484 | ||
|  | af76b4280c | ||
|  | 456bc69ac4 | ||
|  | 872c9baf00 | ||
|  | 0b0245c160 | ||
|  | 2c9e7ae38b | ||
|  | 7a4a6a3c4c | ||
|  | d1efbf0456 | ||
|  | 6e40539490 | ||
|  | 7348df5937 | ||
|  | c542351085 | ||
|  | 1cfae1adb2 | ||
|  | 42ace1c150 | ||
|  | cf1c860a34 | ||
|  | 8bfc9d71aa | ||
|  | 36b9b0e9d1 | ||
|  | f48216ad0f | ||
|  | 0d88328c7e | ||
|  | 66ab727101 | ||
|  | 25af66a67f | ||
|  | aca31cf6de | ||
|  | c4b40cc404 | ||
|  | aa3029bce1 | ||
|  | 8a738db519 | ||
|  | 4b01eb6e08 | ||
|  | 7d4d41a984 | ||
|  | 8115e29ddc | ||
|  | df45a985ed | ||
|  | d2e39bb050 | ||
|  | 969e1ac233 | ||
|  | 772752449d | ||
|  | a85fae9cb0 | ||
|  | 034e8641bb | ||
|  | 026b40f416 | ||
|  | 561e6723cf | ||
|  | e89f0792eb | ||
|  | e0e6bd7ae1 | ||
|  | 36481524ba | ||
|  | 07624e347b | ||
|  | 9627ed0631 | ||
|  | 8d43976858 | ||
|  | 9167d04dea | ||
|  | 2ad5921cf3 | ||
|  | e1e867c3b2 | ||
|  | 4663bd50f1 | ||
|  | 68a7ee5cbb | ||
|  | 36b518a7ca | ||
|  | f16a66e97d | ||
|  | 6ec6b845fd | ||
|  | 9dc11a3e38 | ||
|  | c5934054f3 | ||
|  | 3160edec33 | ||
|  | b2289a944e | ||
|  | 42649700e2 | ||
|  | ebe0b30c3e | ||
|  | 9bd8f97ea4 | ||
|  | 46b3f97654 | ||
|  | 05a4b37707 | ||
|  | fd062077c6 | ||
|  | 153f15497c | ||
|  | dec2a4d4b7 | ||
|  | d3975341e7 | ||
|  | 5f1651ddc5 | ||
|  | 367d308b82 | ||
|  | e781aec85d | ||
|  | a4f0b6884c | ||
|  | 92c195211a | ||
|  | c2836e9ac6 | ||
|  | 46458ba213 | ||
|  | 3c63452e64 | ||
|  | d0add7cf1a | ||
|  | cca4dedbfd | ||
|  | 4fbdedc0d5 | ||
|  | 47fe2fc105 | ||
|  | 8e6926f7c3 | ||
|  | e9283774dc | ||
|  | cf46208624 | ||
|  | e6962b183d | ||
|  | 60b003e197 | ||
|  | c7a219ec6f | ||
|  | ac9a65b1dd | ||
|  | ef31f60b12 | ||
|  | 53d30c56eb | ||
|  | 2ce0654eba | ||
|  | 8eaa290216 | ||
|  | 6ac04f2fc6 | ||
|  | 6e1ceff48b | ||
|  | e716549618 | ||
|  | 8c2a1f0e4d | ||
|  | 798d83cf67 | ||
|  | 6afdc0bec2 | ||
|  | 3e2fa3fd5c | ||
|  | bc36ee25d8 | ||
|  | 944ea204a8 | ||
|  | 10d343f407 | ||
|  | 673077c613 | ||
|  | 8dfc5b9863 | ||
|  | e32b909054 | ||
|  | 2efb3029f0 | ||
|  | 10882b17c9 | ||
|  | 0977fa67b8 | ||
|  | f7657d037e | ||
|  | d2ec14c4aa | ||
|  | d4ffbe4cca | ||
|  | dfedb8b78e | ||
|  | 9d00b68482 | ||
|  | 7c5282d2a8 | ||
|  | f2e21e1026 | ||
|  | 11fd2d7558 | ||
|  | 60b6e4fd7e | ||
|  | 795ae30787 | ||
|  | 45c569860c | ||
|  | cb4253a546 | ||
|  | 2871f57bcf | ||
|  | 32d0d5aec4 | ||
|  | f58826db57 | ||
|  | 8ad1076dc2 | ||
|  | 9e84910749 | ||
|  | b110ca34f0 | ||
|  | d54d4633fd | ||
|  | 813c96f458 | ||
|  | fbc236b401 | ||
|  | 23cdcede5d | ||
|  | 71072be182 | ||
|  | 0670eb259d | ||
|  | 433a084130 | ||
|  | 008a5dd7bb | ||
|  | 85678e0399 | ||
|  | c20579d651 | ||
|  | f2c5296dd7 | ||
|  | 59c5cf35c9 | ||
|  | 614301faca | ||
|  | ece3e63c98 | ||
|  | 5fd1cc2e0e | ||
|  | d3f6b0559f | ||
|  | b5974db277 | ||
|  | 8455203bc7 | ||
|  | f72a3da697 | ||
|  | cf69eeb1aa | ||
|  | 73029c5d75 | ||
|  | 5687740762 | ||
|  | 21666e3db4 | ||
|  | e4656003ca | ||
|  | fa647e8336 | ||
|  | 3265fe5f8e | ||
|  | f42d366bb6 | ||
|  | 4b334b2db6 | ||
|  | 6640bc3bfa | ||
|  | 248b3cf727 | ||
|  | 072edaf126 | ||
|  | fc80ad6e62 | ||
|  | f782b8189e | ||
|  | f8acbed50d | ||
|  | a42e7c9172 | ||
|  | be99e845bd | ||
|  | 0adce5d0ed | ||
|  | 641b2307ec | ||
|  | 8420ad94f2 | ||
|  | d8419c730e | ||
|  | 54f3aab0c7 | ||
|  | a329d68903 | ||
|  | 89fb06fcc1 | ||
|  | 1a0bfdc8c1 | ||
|  | 681b8c9d1b | ||
|  | b7808884bb | ||
|  | 551b65f137 | ||
|  | c5b9950660 | ||
|  | c62aeed003 | ||
|  | f022463aa6 | ||
|  | 5b18bb6a60 | ||
|  | ca6647b307 | ||
|  | 473e51f2fb | ||
|  | cbc1fb0a9a | ||
|  | b6e04ee7c8 | ||
|  | a9be374f82 | ||
|  | e1cb2fb571 | ||
|  | d5bbbd41c4 | ||
|  | 8cd2d0e782 | ||
|  | c84e84a734 | ||
|  | 57aca2bf6e | ||
|  | 99683bd830 | ||
|  | 4991d0f9f3 | ||
|  | 3ce6dc7f1d | ||
|  | 6c25e3a111 | ||
|  | 3f25b1a358 | ||
|  | 57df24a86c | ||
|  | 28bc6cb479 | ||
|  | 2f7ef5fae8 | ||
|  | e41c57758d | ||
|  | 7d7ec0ea91 | ||
|  | 6a1e1623fd | ||
|  | fdaa72bc43 | ||
|  | 5f60a0b50a | ||
|  | a2ae6faf1a | ||
|  | e14c151f0a | ||
|  | 530d4611eb | ||
|  | 3a03211aee | ||
|  | e7abc078ab | ||
|  | 0a7fc572a7 | ||
|  | 7e35cc53ce | ||
|  | 528afb5ff4 | ||
|  | 05ed911aca | ||
|  | b9f75444e6 | ||
|  | ba88dd0d92 | ||
|  | ed00b2ef33 | ||
|  | 391876e5e6 | ||
|  | 53880a85b6 | ||
|  | 41771982c4 | ||
|  | fb657ef91d | ||
|  | 8fefafa220 | ||
|  | 2188d002df | ||
|  | 62166908a9 | ||
|  | 1e0241d3c6 | ||
|  | 713800a495 | ||
|  | 2b930072b3 | ||
|  | b79e99ad60 | ||
|  | 3ac01f5e47 | ||
|  | 34713c1a3c | ||
|  | 5117a8214d | ||
|  | f569dc447a | ||
|  | 9f7011b88b | ||
|  | af3265fabd | ||
|  | 6bf6cd3418 | ||
|  | 7ae671446a | ||
|  | 46a035f76d | ||
|  | 10730663a1 | ||
|  | 1972ac661c | ||
|  | 3efe5beefc | ||
|  | 352c13f783 | ||
|  | ebe671cfad | ||
|  | ea53a5b5ab | ||
|  | 946ad2720a | ||
|  | 2a1abe3b46 | ||
|  | fb8ca95dff | ||
|  | a4ac844979 | ||
|  | e968686133 | ||
|  | 77df88727c | ||
|  | 2353e96c32 | ||
|  | 971df9b389 | ||
|  | c2656d588b | ||
|  | f1dee4fe8f | ||
|  | 54572c1b93 | ||
|  | c712425d0d | ||
|  | 5c711e3671 | ||
|  | e237491493 | ||
|  | f02a5f6cc5 | ||
|  | 902d2faadf | ||
|  | 8eaffa2a1c | ||
|  | 55c82c596e | ||
|  | 3b4fbbc129 | ||
|  | b4338e5887 | ||
|  | 89f9cf8add | ||
|  | c2fa38d5ae | ||
|  | 4336c28c84 | ||
|  | e201bef913 | ||
|  | 3c342ebd78 | ||
|  | e8ed14d0c2 | ||
|  | 2525bc7d30 | ||
|  | 1074d8c361 | ||
|  | 487047c060 | ||
|  | 4e9676fb13 | ||
|  | f1ad551604 | ||
|  | 058f319f60 | ||
|  | 7082420653 | ||
|  | 07bb9884a5 | ||
|  | 82d9f3c034 | ||
|  | 0c3f820bf0 | ||
|  | 4db3c48a13 | ||
|  | 581cc2025f | ||
|  | 8e7bd03760 | ||
|  | 2abbb660a2 | ||
|  | d65e0beb68 | ||
|  | 455d262c55 | ||
|  | 837bf6e2df | ||
|  | 775669f6ef | ||
|  | 02c03ef6b4 | ||
|  | f922986238 | ||
|  | 10d7f540ff | ||
|  | 85d816028a | ||
|  | d373819b8c | ||
|  | 83b820aa98 | ||
|  | 1043a6498a | ||
|  | d834e8da88 | ||
|  | 8816c70a61 | ||
|  | d66ca10c53 | ||
|  | e514cfea74 | ||
|  | 4e99da15eb | ||
|  | 9c0babf24f | ||
|  | e769cda1eb | ||
|  | bfa168e3fc | ||
|  | 8afe7de8de | ||
|  | 8bdd0dc8d0 | ||
|  | 9d47f3d6b8 | ||
|  | 4753d60dd0 | ||
|  | 5e54ddc3a6 | ||
|  | f8035450bb | ||
|  | 4c4663747c | ||
|  | d09a1d8b29 | ||
|  | 2f35d5e9d5 | ||
|  | 9a33a11d71 | ||
|  | 1013e46504 | ||
|  | 35883ceb93 | ||
|  | 4fe2f3f1a0 | ||
|  | b58c5ad7b0 | ||
|  | dd41748f63 | ||
|  | 3f058cd2c5 | ||
|  | 9800adaed2 | ||
|  | 112f7cdeab | ||
|  | f21a4872e8 | ||
|  | e0107e87a7 | ||
|  | 241afd837c | ||
|  | af2a1c1d67 | ||
|  | 28b03c6acb | ||
|  | f5a0781975 | ||
|  | 91d6f12b4a | ||
|  | 60f1a3c288 | ||
|  | 1d155c1dd8 | ||
|  | 4290dbac4d | ||
|  | a078d75a27 | ||
|  | 1c40d50014 | ||
|  | f105bc4095 | ||
|  | 6c408b4667 | ||
|  | 23d8ef3937 | ||
|  | 22538b23b4 | ||
|  | ee29d3b42a | ||
|  | 02e0de263e | ||
|  | 002483e009 | ||
|  | 9228a9362c | ||
|  | 79cfdebbe0 | ||
|  | 30ec9dbaed | ||
|  | a5cdf99951 | ||
|  | 056b35874b | ||
|  | f595212336 | ||
|  | c450d57991 | ||
|  | 18385b0f4e | ||
|  | 57c35b162e | ||
|  | df7bd4bf11 | ||
|  | fb68919362 | ||
|  | dc2270b461 | ||
|  | e694a8765a | ||
|  | 62c36a2ff3 | ||
|  | dec0131a29 | ||
|  | fdd631a941 | ||
|  | 62954c8c30 | ||
|  | bcc5d46b08 | ||
|  | f55b303fc2 | ||
|  | 61bac6014a | ||
|  | 28c61d5b49 | ||
|  | 12bab63f09 | ||
|  | f3781eaafa | ||
|  | b7752724d9 | ||
|  | 1113e3266f | ||
|  | 04df3bbe8e | ||
|  | 3fe2bb8933 | ||
|  | 4fa66fa85c | ||
|  | bf80e1ed62 | ||
|  | 05be7ae125 | ||
|  | 0c527ab054 | ||
|  | 533e88824a | ||
|  | 68c48df2bf | ||
|  | 26e2fb062a | ||
|  | 4c5f8a8207 | ||
|  | 7322cccfb9 | ||
|  | 6c5b7029b3 | ||
|  | a670c1280b | ||
|  | db07de057f | ||
|  | 36c3df78f4 | ||
|  | 55d9ee83b4 | ||
|  | 9ff3e9d992 | ||
|  | ef65c60d88 | ||
|  | 4c1f79264e | ||
|  | 620735af45 | ||
|  | d60bb2fbc8 | ||
|  | cffb351a62 | ||
|  | 8c598cfd82 | ||
|  | cb445412fc | ||
|  | d23de4d334 | ||
|  | b7f5e92f17 | ||
|  | 9add9a21d8 | ||
|  | 0cd8a1ea13 | ||
|  | 306d3fcdba | ||
|  | e503d8b56f | ||
|  | 0a79baf1bf | ||
|  | 851de7ded1 | ||
|  | c030a18ea6 | ||
|  | 17642eddf4 | ||
|  | ebe4e3237c | ||
|  | 14209028b6 | ||
|  | 4d030ba651 | ||
|  | db0944b08a | ||
|  | 42f916de5c | ||
|  | 01dc182ee8 | ||
|  | 486734a5d5 | ||
|  | 09784e1e15 | ||
|  | d5c94ef40d | ||
|  | 543381510d | ||
|  | 1d84421b7e | ||
|  | 6b50a004ff | ||
|  | 02ee456248 | ||
|  | db30cc8d00 | ||
|  | 99aab34199 | ||
|  | b63e8556fa | ||
|  | 31fe0ade35 | ||
|  | 9de4782e49 | ||
|  | f9e75c31e8 | ||
|  | 17b7cc4cae | ||
|  | 01bcd83def | ||
|  | 1537b63fce | ||
|  | 86a7cc6f2c | ||
|  | 6c921af034 | ||
|  | a97d216adb | ||
|  | 103bc0f75c | ||
|  | 23d319fc7d | ||
|  | a68b8dfd76 | ||
|  | f66de79365 | ||
|  | 934bee04f2 | ||
|  | 7c8b5399f0 | ||
|  | c028617784 | ||
|  | e6f2b4174b | ||
|  | 2161b8cf03 | ||
|  | 3c70f6f2ac | ||
|  | 636b2801d9 | ||
|  | 25b85bf02a | ||
|  | 4544bd22fd | ||
|  | 252250ae64 | ||
|  | e69bfe74d7 | ||
|  | 6211144e05 | ||
|  | 7de02fef5b | ||
|  | 819505ad2a | ||
|  | 8334c89e70 | ||
|  | e3af5354a6 | ||
|  | 491e573c38 | ||
|  | 80ac8d171c | ||
|  | aeb4434563 | ||
|  | d0570646bd | ||
|  | f7c830e35c | ||
|  | ac5bbe4c4a | ||
|  | 31f12f504e | ||
|  | bc6b60c4ff | ||
|  | 93c132a058 | ||
|  | 18a285a5e2 | ||
|  | 8d687e7e58 | ||
|  | 1d822ea8cf | ||
|  | a72edf01ba | ||
|  | 8843d52af1 | ||
|  | 612fc01293 | ||
|  | d488af5b34 | ||
|  | 9a888bdc2a | ||
|  | f9708e45ac | ||
|  | 1d01794e6e | ||
|  | 5033f21d05 | ||
|  | 1c91fe2e3f | ||
|  | a3e44f4531 | ||
|  | b43a828ad4 | ||
|  | 7fd50afbbf | ||
|  | 2b9ba3f84f | ||
|  | 5104b4d9df | ||
|  | 0b2fa873c6 | ||
|  | c5a76cbed4 | ||
|  | 09a0cb464d | ||
|  | aa24e9171a | ||
|  | e0193a9425 | ||
|  | c7a3356746 | ||
|  | d0271502f8 | ||
|  | ad7306b23c | ||
|  | 9ff74a0f15 | ||
|  | 711e27fda2 | ||
|  | 983bc3e018 | ||
|  | 4f252bd980 | ||
|  | c14a5a6c62 | ||
|  | 8baae48fb7 | ||
|  | f204c9d2bb | ||
|  | 9ac7182ec4 | ||
|  | 026c036be0 | ||
|  | 78a21f96b5 | ||
|  | 2e47ff7b9c | ||
|  | 9a3061715c | ||
|  | 4182cf60d9 | ||
|  | c9ceef41fe | ||
|  | a8f2efd147 | ||
|  | 70b8d304bb | ||
|  | 4ba35633d6 | ||
|  | c4c4213b69 | ||
|  | ce57201825 | ||
|  | 09700ee358 | ||
|  | a048da0767 | ||
|  | 3ff07d2062 | ||
|  | ca7596e834 | ||
|  | 95e2c72fd5 | ||
|  | d4e02d6026 | ||
|  | cbd9a0254e | ||
|  | 0cb28418d0 | ||
|  | 12a1024d9d | ||
|  | 38d042a4ad | ||
|  | 69d4ae7bb3 | ||
|  | db41d2ea8c | ||
|  | cc27365d77 | ||
|  | bcb148de92 | ||
|  | 2784dadafc | ||
|  | c4afba36c3 | ||
|  | 79c2f53491 | ||
|  | ac8c241e64 | ||
|  | b37a084357 | ||
|  | 733a4b602b | ||
|  | ceb39f4f8d | ||
|  | e79de014c5 | ||
|  | e0bafefd7a | ||
|  | 1cefc83a88 | ||
|  | eae38ca1b2 | ||
|  | 6e1666437e | ||
|  | 7956292a76 | ||
|  | f1e2369878 | ||
|  | 2a182a9897 | ||
|  | 6a731f343e | ||
|  | ad7e727024 | ||
|  | 6ee7a02852 | ||
|  | 8bd13de4cc | ||
|  | 4c8fadc6d9 | ||
|  | 9b681dcc17 | ||
|  | 2bc668d092 | ||
|  | ac9aa22174 | ||
|  | 2ef866d1fc | ||
|  | 674012f083 | ||
|  | 9958ace401 | ||
|  | 658702df97 | ||
|  | 028fe46fc5 | ||
|  | 72574b959c | ||
|  | 78940758e9 | ||
|  | b311950dde | ||
|  | 4197c0ea9b | ||
|  | 43df32e438 | ||
|  | 40fac75370 | ||
|  | 3d587f6432 | ||
|  | 164ce12202 | ||
|  | 83356781e1 | ||
|  | 858b694b64 | ||
|  | 25c5f1b448 | ||
|  | 2ff30b21bc | ||
|  | e19f5d7cb7 | ||
|  | 47507f4464 | ||
|  | f2e5c19a2f | ||
|  | 807aea838b | ||
|  | 24f7c0c944 | ||
|  | 03c0c2e8aa | ||
|  | fe9f62ff18 | ||
|  | 7fc487d38b | ||
|  | 1bb17ed0f2 | ||
|  | 21cb88911a | ||
|  | 3e276d43a2 | ||
|  | 166718f749 | ||
|  | c6755aa6d5 | ||
|  | 8e6d305c89 | ||
|  | 2edd1807f8 | ||
|  | 9927f1978d | ||
|  | 2e99cbd953 | ||
|  | 26c878ac16 | ||
|  | 0c5c1392ab | ||
|  | a701a1445c | ||
|  | 35e5e89f56 | ||
|  | 8927fbe9c5 | ||
|  | fd1727bd10 | ||
|  | d599190575 | ||
|  | 97291208cb | ||
|  | 571a1ac6ee | ||
|  | 363049160d | ||
|  | e2053d1690 | ||
|  | bc42c19f22 | ||
|  | bd1a9dacf6 | ||
|  | ca209ae1f9 | ||
|  | cab83b8aa9 | ||
|  | f48bfd66da | ||
|  | 714cdd88a4 | ||
|  | 5e1a4fdc3c | ||
|  | 8d0499b75e | ||
|  | 735d92029c | ||
|  | 78c2aa0b51 | ||
|  | efe2baadb8 | ||
|  | a0f923d286 | ||
|  | 1fb0a43c16 | ||
|  | 1a6f488908 | ||
|  | 2391f4cec6 | ||
|  | fc00cbe8d1 | ||
|  | 1643203a93 | ||
|  | a359d3488a | ||
|  | 3f9be68dc4 | ||
|  | fa6b2fba7a | ||
|  | f47efb5ab3 | ||
|  | c6a14906c6 | ||
|  | 530da27edb | ||
|  | 30f51ae067 | ||
|  | 645ced2955 | ||
|  | aea09490f5 | ||
|  | 3ade8af7ff | ||
|  | 10f30eb438 | ||
|  | 57d6e1aebf | ||
|  | c843a1a039 | ||
|  | 54772892bd | ||
|  | c11120270c | ||
|  | 9cb3947c56 | ||
|  | e3a0f39824 | ||
|  | 56790ced1a | ||
|  | b15a3b4d13 | ||
|  | d2237d48ec | ||
|  | c3d90f3211 | ||
|  | 36c77a81ad | ||
|  | 9745d47991 | ||
|  | 5cbd179121 | ||
|  | 92512085d5 | ||
|  | 16e2d94cc7 | ||
|  | c589af2fe2 | ||
|  | 7c8db694cc | ||
|  | 1668d4bab8 | ||
|  | eaf0eac7d3 | ||
|  | b70f5c21e7 | ||
|  | 15d4a2327d | ||
|  | a19d7c35cd | ||
|  | 1d1635d27b | ||
|  | b638c34381 | ||
|  | 797ea81d63 | ||
|  | 86b842790b | ||
|  | 680522f74c | ||
|  | faaa88fc48 | ||
|  | d313068dc8 | ||
|  | d9331ae71e | ||
|  | 59235bd5da | ||
|  | c3209d45ad | ||
|  | 5246b6c9d1 | ||
|  | 59e5b90452 | ||
|  | 09fc9324f6 | ||
|  | 74df2ef732 | ||
|  | ef4f5b391e | ||
|  | aecfb51c30 | ||
|  | 014ec1ac5e | ||
|  | 471a774f43 | ||
|  | c34cb25bdd | ||
|  | aa46094ca6 | ||
|  | 4ea18fc2dc | ||
|  | a8b25ada45 | ||
|  | 3a825a85f1 | ||
|  | bfd2ae6e99 | ||
|  | e6373ba6d7 | ||
|  | 3ac348c17a | ||
|  | fcc0abe6cf | ||
|  | bce1689d5b | ||
|  | 7b2a146d3a | ||
|  | 209e1348bd | ||
|  | 8ff271548a | ||
|  | 9c8cbe6950 | ||
|  | 4e6c835210 | ||
|  | d8af040f5e | ||
|  | e4eba73060 | ||
|  | 253270dfcc | ||
|  | 2f3d620398 | ||
|  | 70c05e6781 | ||
|  | 20517ce040 | ||
|  | 1b2976f79b | ||
|  | f660ec6ff8 | ||
|  | 358ed73e1d | ||
|  | 3183af39d0 | ||
|  | cbf9731119 | ||
|  | d4ece7b2f4 | ||
|  | d3be982783 | ||
|  | 3f766b7a89 | ||
|  | 71340e861e | ||
|  | 71515b9175 | ||
|  | 6d9b899342 | ||
|  | 50c31d6861 | ||
|  | 5b7dab2e4c | ||
|  | 17fe22d3bf | ||
|  | a6fdefa322 | ||
|  | 94dd6b8927 | ||
|  | a6a997c234 | ||
|  | b5fd886ee1 | ||
|  | 4fe0f9d2a9 | ||
|  | 6c0d72f9c0 | ||
|  | 199b931c07 | ||
|  | 0ee6a5604d | ||
|  | 1b37d6c305 | ||
|  | cd060fc3b4 | ||
|  | c32fe22168 | ||
|  | 853a4abab2 | ||
|  | fe9b705a2c | ||
|  | 4b7ccad682 | ||
|  | 87c964d388 | ||
|  | 85e7d7c1d8 | ||
|  | dc31d67c0e | ||
|  | acf0c0a1e1 | ||
|  | 52ef4cc59a | ||
|  | 9baad8e1ff | ||
|  | b10f995edf | ||
|  | a4b42200e9 | 
							
								
								
									
										133
									
								
								Make-config
									
									
									
									
									
								
							
							
						
						
									
										133
									
								
								Make-config
									
									
									
									
									
								
							| @@ -1,13 +1,13 @@ | ||||
| # $Id: Make-config,v 1.50.2.4 2001/12/14 17:46:20 kschultz Exp $ | ||||
| # $Id: Make-config,v 1.67 2002/11/12 02:49:14 brianp Exp $ | ||||
|  | ||||
| MESA_MAJOR=4 | ||||
| MESA_MAJOR=5 | ||||
| MESA_MINOR=0 | ||||
| MESA_TINY=0 | ||||
| VERSION=$(MESA_MAJOR).$(MESA_MINOR) | ||||
|  | ||||
| # Mesa 3-D graphics library | ||||
| #  | ||||
| # Copyright (C) 1999-2001  Brian Paul   All Rights Reserved. | ||||
| # Copyright (C) 1999-2002  Brian Paul   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"), | ||||
| @@ -155,7 +155,7 @@ cygnus: | ||||
| 	"CFLAGS = -I. -DWIN32 -D__WIN32__ -D_WINDOWS \ | ||||
| 		-O2 -funroll-loops \ | ||||
| 		-fexpensive-optimizations -fomit-frame-pointer -ffast-math \ | ||||
| 		-malign-loops=2 -malign-jumps=2 -malign-functions=2" \ | ||||
| 		-malign-loops=2 -malign-functions=2" \ | ||||
| 	"CCFLAGS = $(CFLAGS)" \ | ||||
| 	"MAKELIB = ../bin/mklib.ar-ruv" \ | ||||
| 	"WLIBS = ../lib/wing32.a -lkernel32 -luser32 -lgdi32" | ||||
| @@ -174,7 +174,7 @@ cygnus-linux: | ||||
| 	"CFLAGS = -I. -DWIN32 -D__WIN32__ -D_WINDOWS \ | ||||
| 		-O2 -funroll-loops \ | ||||
| 		-fexpensive-optimizations -fomit-frame-pointer -ffast-math \ | ||||
| 		-malign-loops=2 -malign-jumps=2 -malign-functions=2" \ | ||||
| 		-malign-loops=2 -malign-functions=2" \ | ||||
| 	"MAKELIB = ../bin/mklib.cygnus-linux" \ | ||||
| 	"WLIBS = ../lib/wing32.a -lkernel32 -luser32 -lgdi32" | ||||
|  | ||||
| @@ -308,6 +308,7 @@ hpux9-gcc-sl: | ||||
| 	"MAKELIB = ../bin/mklib.hpux" \ | ||||
| 	"APP_LIB_DEPS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11 -lm" | ||||
|  | ||||
| # The hpux10 configs should work for hpux11 as well. | ||||
| hpux10: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| 	"GL_LIB = libGL.a" \ | ||||
| @@ -316,19 +317,23 @@ hpux10: | ||||
| 	"GLW_LIB = libGLw.a" \ | ||||
| 	"OSMESA_LIB = libOSMesa.a" \ | ||||
| 	"CC = cc" \ | ||||
| 	"CPLUSPLUS = aCC" \ | ||||
| 	"CFLAGS = +O3 +DAportable -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM" \ | ||||
| 	"CCFLAGS = +O3 +DAportable -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM" \ | ||||
| 	"MAKELIB = ../bin/mklib.ar-ruv" \ | ||||
| 	"APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm" | ||||
| 	"APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm -L/usr/lib -lCsup" | ||||
|  | ||||
| hpux10-sl: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| 	"GL_LIB = libGL" \ | ||||
| 	"GLU_LIB = libGLU" \ | ||||
| 	"GLUT_LIB = libglut" \ | ||||
| 	"GLW_LIB = libGLw.a" \ | ||||
| 	"OSMESA_LIB = libOSMesa.a" \ | ||||
| 	"GLW_LIB = libGLw" \ | ||||
| 	"OSMESA_LIB = libOSMesa" \ | ||||
| 	"CC = cc" \ | ||||
| 	"CFLAGS = +z -Ae +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM" \ | ||||
| 	"CPLUSPLUS = aCC" \ | ||||
| 	"CFLAGS = +O3 +DAportable +z -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM" \ | ||||
| 	"CCFLAGS = +O3 +DAportable +Z -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM" \ | ||||
| 	"MAKELIB = ../bin/mklib.hpux" \ | ||||
| 	"APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm" | ||||
|  | ||||
| @@ -597,14 +602,40 @@ linux-x86: | ||||
| 	"APP_LIB_DEPS = -lm" \ | ||||
| 	"ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \ | ||||
| 		X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \ | ||||
| 		X86/x86_cliptest.S X86/x86_vertex.S \ | ||||
| 		X86/x86_cliptest.S \ | ||||
| 		X86/mmx_blend.S \ | ||||
| 		X86/3dnow_xform1.S X86/3dnow_xform2.S \ | ||||
| 		X86/3dnow_xform3.S X86/3dnow_xform4.S \ | ||||
| 		X86/3dnow_normal.S X86/3dnow_vertex.S \ | ||||
| 		X86/3dnow_normal.S \ | ||||
| 		X86/sse_xform1.S X86/sse_xform2.S \ | ||||
| 		X86/sse_xform3.S X86/sse_xform4.S \ | ||||
| 		X86/sse_normal.S X86/sse_vertex.S" | ||||
| 		X86/sse_normal.S" | ||||
|  | ||||
| linux-icc: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| 	"GL_LIB = libGL.so" \ | ||||
| 	"GLU_LIB = libGLU.so" \ | ||||
| 	"GLUT_LIB = libglut.so" \ | ||||
| 	"GLW_LIB = libGLw.so" \ | ||||
| 	"OSMESA_LIB = libOSMesa.so" \ | ||||
| 	"CC = icc" \ | ||||
| 	"CPLUSPLUS = g++" \ | ||||
| 	"CFLAGS = -O3 -tpp6 -axK -KPIC -D_GCC_LIMITS_H_ -D__GNUC__ -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include" \ | ||||
| 	"MAKELIB = ../bin/mklib.linux" \ | ||||
| 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lm -lpthread" \ | ||||
| 	"GLU_LIB_DEPS = -L../lib -lGL -lm" \ | ||||
| 	"GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \ | ||||
| 	"APP_LIB_DEPS = -lm" \ | ||||
| 	"ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \ | ||||
| 		X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \ | ||||
| 		X86/x86_cliptest.S \ | ||||
| 		X86/mmx_blend.S \ | ||||
| 		X86/3dnow_xform1.S X86/3dnow_xform2.S \ | ||||
| 		X86/3dnow_xform3.S X86/3dnow_xform4.S \ | ||||
| 		X86/3dnow_normal.S \ | ||||
| 		X86/sse_xform1.S X86/sse_xform2.S \ | ||||
| 		X86/sse_xform3.S X86/sse_xform4.S \ | ||||
| 		X86/sse_normal.S" | ||||
|  | ||||
| linux-x86-static: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| @@ -615,7 +646,7 @@ linux-x86-static: | ||||
| 	"OSMESA_LIB = libOSMesa.a" \ | ||||
| 	"CC = gcc" \ | ||||
| 	"CPLUSPLUS = g++" \ | ||||
| 	"CFLAGS = -Wall -O3 -ansi -pedantic -fPIC -ffast-math -funroll-loops -fomit-frame-pointer -malign-loops=2 -malign-jumps=2 -malign-functions=2 -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include" \ | ||||
| 	"CFLAGS = -Wall -O3 -ansi -pedantic -fPIC -ffast-math -funroll-loops -fomit-frame-pointer -malign-loops=2 -malign-functions=2 -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include" \ | ||||
| 	"MAKELIB = ../bin/mklib.ar-ruv" \ | ||||
| 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lm -lpthread" \ | ||||
| 	"GLU_LIB_DEPS = -L../lib -lGL -lm" \ | ||||
| @@ -623,14 +654,14 @@ linux-x86-static: | ||||
| 	"APP_LIB_DEPS = -lm" \ | ||||
| 	"ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \ | ||||
| 		X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \ | ||||
| 		X86/x86_cliptest.S X86/x86_vertex.S \ | ||||
| 		X86/x86_cliptest.S \ | ||||
| 		X86/mmx_blend.S \ | ||||
| 		X86/3dnow_xform1.S X86/3dnow_xform2.S \ | ||||
| 		X86/3dnow_xform3.S X86/3dnow_xform4.S \ | ||||
| 		X86/3dnow_normal.S X86/3dnow_vertex.S \ | ||||
| 		X86/3dnow_normal.S \ | ||||
| 		X86/sse_xform1.S X86/sse_xform2.S \ | ||||
| 		X86/sse_xform3.S X86/sse_xform4.S \ | ||||
| 		X86/sse_normal.S X86/sse_vertex.S" | ||||
| 		X86/sse_normal.S" | ||||
|  | ||||
| # Contributed by Uwe_Maurer@t-online.de | ||||
| linux-ggi: | ||||
| @@ -663,7 +694,7 @@ linux-386-ggi: | ||||
| 	"APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lggi -lm" \ | ||||
| 	"ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \ | ||||
| 		X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \ | ||||
| 		X86/x86_cliptest.S X86/x86_vertex.S" | ||||
| 		X86/x86_cliptest.S" | ||||
|  | ||||
| linux-glide: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| @@ -697,10 +728,10 @@ linux-386-glide: | ||||
| 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -L/usr/local/glide/lib -lglide2x -lm -lpthread" \ | ||||
| 	"GLU_LIB_DEPS = -L../lib -lGL -lm" \ | ||||
| 	"GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \ | ||||
| 	"APP_LIB_DEPS = -L/usr/local/glide/lib -lglide2x -lglut -lGLU -lGL" | ||||
| 	"APP_LIB_DEPS = -L/usr/local/glide/lib -lglide2x -lglut -lGLU -lGL" \ | ||||
| 	"ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \ | ||||
| 		X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \ | ||||
| 		X86/x86_cliptest.S X86/x86_vertex.S" | ||||
| 		X86/x86_cliptest.S" | ||||
|  | ||||
| linux-386-opt-glide: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| @@ -711,7 +742,7 @@ linux-386-opt-glide: | ||||
| 	"OSMESA_LIB = libOSMesa.so" \ | ||||
| 	"CC = gcc" \ | ||||
| 	"CPLUSPLUS = g++" \ | ||||
| 	"CFLAGS = -O3 -m486 -fomit-frame-pointer -pipe -ansi -pedantic -ffast-math -fexpensive-optimizations -malign-loops=2 -malign-jumps=2 -malign-functions=2 -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DFX -DUSE_X86_ASM -DPTHREADS -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include" \ | ||||
| 	"CFLAGS = -O3 -m486 -fomit-frame-pointer -pipe -ansi -pedantic -ffast-math -fexpensive-optimizations -malign-loops=2 -malign-functions=2 -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DFX -DUSE_X86_ASM -DPTHREADS -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include" \ | ||||
| 	"CCFLAGS = $(CFLAGS)" \ | ||||
| 	"MAKELIB = ../bin/mklib.linux" \ | ||||
| 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -L/usr/local/glide/lib -lglide2x -lm -lpthread" \ | ||||
| @@ -720,7 +751,7 @@ linux-386-opt-glide: | ||||
| 	"APP_LIB_DEPS = -lm" \ | ||||
| 	"ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \ | ||||
| 		X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \ | ||||
| 		X86/x86_cliptest.S X86/x86_vertex.S" | ||||
| 		X86/x86_cliptest.S" | ||||
|  | ||||
| linux-x86-glide: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| @@ -731,7 +762,7 @@ linux-x86-glide: | ||||
| 	"OSMESA_LIB = libOSMesa.so" \ | ||||
| 	"CC = gcc" \ | ||||
| 	"CPLUSPLUS = g++" \ | ||||
| 	"CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -funroll-loops -fomit-frame-pointer -malign-loops=2 -malign-jumps=2 -malign-functions=2 -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DUSE_XSHM -DFX -DPTHREADS -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include -I/usr/src/mesa-glx/src/FX/X86" \ | ||||
| 	"CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -funroll-loops -fomit-frame-pointer -malign-loops=2 -malign-functions=2 -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DUSE_XSHM -DFX -DPTHREADS -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include -I/usr/src/mesa-glx/src/FX/X86" \ | ||||
| 	"MAKELIB = ../bin/mklib.linux" \ | ||||
| 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -L/usr/local/glide/lib -lglide2x -lm -lpthread" \ | ||||
| 	"GLU_LIB_DEPS = -L../lib -lGL -lm" \ | ||||
| @@ -739,15 +770,15 @@ linux-x86-glide: | ||||
| 	"APP_LIB_DEPS = -lm" \ | ||||
| 	"ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \ | ||||
| 		X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \ | ||||
| 		X86/x86_cliptest.S X86/x86_vertex.S \ | ||||
| 		X86/x86_cliptest.S  \ | ||||
| 		X86/mmx_blend.S \ | ||||
| 		X86/3dnow_xform1.S X86/3dnow_xform2.S \ | ||||
| 		X86/3dnow_xform3.S X86/3dnow_xform4.S \ | ||||
| 		X86/3dnow_normal.S X86/3dnow_vertex.S \ | ||||
| 		X86/3dnow_normal.S  \ | ||||
| 		FX/X86/fx_3dnow_fastpath.S \ | ||||
| 		X86/sse_xform1.S X86/sse_xform2.S \ | ||||
| 		X86/sse_xform3.S X86/sse_xform4.S \ | ||||
| 		X86/sse_normal.S X86/sse_vertex.S" | ||||
| 		X86/sse_normal.S " | ||||
|  | ||||
| linux-alpha: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| @@ -867,7 +898,7 @@ linux-osmesa16: | ||||
| 	"OSMESA16_LIB = libOSMesa16.so" \ | ||||
| 	"CC = gcc" \ | ||||
| 	"CPLUSPLUS = g++" \ | ||||
| 	"CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31" \ | ||||
| 	"CFLAGS = -O3 -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31" \ | ||||
| 	"CCFLAGS = $(CFLAGS)" \ | ||||
| 	"MAKELIB = ../bin/mklib.linux" \ | ||||
| 	"GL_LIB_DEPS = -lm -lpthread" \ | ||||
| @@ -879,7 +910,7 @@ linux-osmesa32: | ||||
| 	"OSMESA16_LIB = libOSMesa32.so" \ | ||||
| 	"CC = gcc" \ | ||||
| 	"CPLUSPLUS = g++" \ | ||||
| 	"CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31" \ | ||||
| 	"CFLAGS = -O3 -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31" \ | ||||
| 	"CCFLAGS = $(CFLAGS)" \ | ||||
| 	"MAKELIB = ../bin/mklib.linux" \ | ||||
| 	"GL_LIB_DEPS = -lm -lpthread" \ | ||||
| @@ -888,7 +919,7 @@ linux-osmesa32: | ||||
| # May want to add these CFLAGS for better performance under LynxOS and GCC: | ||||
| # -fPIC -O2 -ansi -pedantic -mieee-fp -DUSE_XSHM -funroll-loops | ||||
| # -fexpensive-optimizations -fomit-frame-pointer -ffast-math | ||||
| # and  -malign-loops=2 -malign-jumps=2 -malign-functions=2 for Pentium | ||||
| # and  -malign-loops=2 -malign-functions=2 for Pentium | ||||
| lynxos: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| 	"GL_LIB = libGL.a" \ | ||||
| @@ -1017,7 +1048,7 @@ os2-x11: | ||||
| 	"APP_LIB_DEPS = -Zmt -Zcrtdll -Zexe -L$(X11ROOT)/XFree86/lib -lXt -lX11 -lm" \ | ||||
| 	"ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \ | ||||
| 		X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \ | ||||
| 		X86/x86_cliptest.S X86/x86_vertex.S" | ||||
| 		X86/x86_cliptest.S" | ||||
|  | ||||
| osf1: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| @@ -1212,6 +1243,7 @@ sunos5: | ||||
| 	"GLW_LIB = libGLw.a" \ | ||||
| 	"OSMESA_LIB = libOSMesa.a" \ | ||||
| 	"CC = cc" \ | ||||
| 	"CPLUSPLUS = CC" \ | ||||
| 	"CFLAGS = -Xa -fast -xO4 -native -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \ | ||||
| 	"MAKELIB = ../bin/mklib.ar-ruv" \ | ||||
| 	"APP_LIB_DEPS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm" | ||||
| @@ -1224,6 +1256,7 @@ sunos5-sl: | ||||
| 	"GLW_LIB = libGLw.so" \ | ||||
| 	"OSMESA_LIB = libOSMesa.so" \ | ||||
| 	"CC = cc" \ | ||||
| 	"CPLUSPLUS = CC" \ | ||||
| 	"CFLAGS = -KPIC -Xa -O -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \ | ||||
| 	"MAKELIB = ../bin/mklib.sunos5" \ | ||||
| 	"APP_LIB_DEPS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm" | ||||
| @@ -1236,6 +1269,7 @@ sunos5-ultra: | ||||
| 	"GLW_LIB = libGLw.a" \ | ||||
| 	"OSMESA_LIB = libOSMesa.a" \ | ||||
| 	"CC = cc" \ | ||||
| 	"CPLUSPLUS = CC" \ | ||||
| 	"CFLAGS = -Xa -fast -xO5 -xtarget=ultra -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \ | ||||
| 	"MAKELIB = ../bin/mklib.ar-ruv" \ | ||||
| 	"APP_LIB_DEPS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm" | ||||
| @@ -1248,6 +1282,7 @@ sunos5-ultra-sl: | ||||
| 	"GLW_LIB = libGLw.so" \ | ||||
| 	"OSMESA_LIB = libOSMesa.so" \ | ||||
| 	"CC = cc" \ | ||||
| 	"CPLUSPLUS = CC" \ | ||||
| 	"CFLAGS = -KPIC -Xa -fast -xO5 -xtarget=ultra -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \ | ||||
| 	"MAKELIB = ../bin/mklib.sunos5" \ | ||||
| 	"APP_LIB_DEPS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm" | ||||
| @@ -1487,24 +1522,7 @@ linux-debug: | ||||
| 	"OSMESA_LIB = libOSMesa.so" \ | ||||
| 	"CC = gcc" \ | ||||
| 	"CPLUSPLUS = g++" \ | ||||
| 	"CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG -DSVGA -I/usr/include/glide -DFX -DMESA_TRACE" \ | ||||
| 	"CCFLAGS = $(CFLAGS)" \ | ||||
| 	"MAKELIB = ../bin/mklib.linux" \ | ||||
| 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread -L/usr/local/glide/lib -lglide2x -lvga" \ | ||||
| 	"GLU_LIB_DEPS = -L../lib -lGL -lm" \ | ||||
| 	"GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \ | ||||
| 	"APP_LIB_DEPS = -lglut -lGLU -lGL -L/usr/local/glide/lib -lglide2x" | ||||
|  | ||||
| linux-x11-debug: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| 	"GL_LIB = libGL.so" \ | ||||
| 	"GLU_LIB = libGLU.so" \ | ||||
| 	"GLUT_LIB = libglut.so" \ | ||||
| 	"GLW_LIB = libGLw.so" \ | ||||
| 	"OSMESA_LIB = libOSMesa.so" \ | ||||
| 	"CC = gcc" \ | ||||
| 	"CPLUSPLUS = g++" \ | ||||
| 	"CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG -DMESA_TRACE" \ | ||||
| 	"CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG" \ | ||||
| 	"CCFLAGS = $(CFLAGS)" \ | ||||
| 	"MAKELIB = ../bin/mklib.linux" \ | ||||
| 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \ | ||||
| @@ -1512,7 +1530,6 @@ linux-x11-debug: | ||||
| 	"GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \ | ||||
| 	"APP_LIB_DEPS = -lglut -lGLU -lGL" | ||||
|  | ||||
|  | ||||
| linux-static-debug: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| 	"GL_LIB = libGL.a" \ | ||||
| @@ -1536,7 +1553,7 @@ linux-x86-debug: | ||||
| 	"OSMESA_LIB = libOSMesa.so" \ | ||||
| 	"CC = gcc" \ | ||||
| 	"CPLUSPLUS = g++" \ | ||||
| 	"CFLAGS = -O2 -g -ansi -pedantic -Wall -Wmissing-prototypes -fPIC -ffast-math -malign-loops=2 -malign-jumps=2 -malign-functions=2 -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include -DDEBUG -DMESA_DEBUG" \ | ||||
| 	"CFLAGS = -O2 -g -ansi -pedantic -Wall -Wmissing-prototypes -fPIC -ffast-math -malign-loops=2 -malign-functions=2 -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include -DDEBUG -DMESA_DEBUG" \ | ||||
| 	"MAKELIB = ../bin/mklib.linux" \ | ||||
| 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lm -lpthread" \ | ||||
| 	"GLU_LIB_DEPS = -L../lib -lGL -lm" \ | ||||
| @@ -1544,14 +1561,14 @@ linux-x86-debug: | ||||
| 	"APP_LIB_DEPS = -lm" \ | ||||
| 	"ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \ | ||||
| 		X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \ | ||||
| 		X86/x86_cliptest.S X86/x86_vertex.S \ | ||||
| 		X86/x86_cliptest.S \ | ||||
| 		X86/mmx_blend.S \ | ||||
| 		X86/3dnow_xform1.S X86/3dnow_xform2.S \ | ||||
| 		X86/3dnow_xform3.S X86/3dnow_xform4.S \ | ||||
| 		X86/3dnow_normal.S X86/3dnow_vertex.S \ | ||||
| 		X86/3dnow_normal.S \ | ||||
| 		X86/sse_xform1.S X86/sse_xform2.S \ | ||||
| 		X86/sse_xform3.S X86/sse_xform4.S \ | ||||
| 		X86/sse_normal.S X86/sse_vertex.S" | ||||
| 		X86/sse_normal.S" | ||||
|  | ||||
| linux-glide-debug: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| @@ -1583,15 +1600,15 @@ linux-prof: | ||||
| 	"APP_LIB_DEPS = -L/usr/X11/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm" \ | ||||
| 	"ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \ | ||||
| 		X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \ | ||||
| 		X86/x86_cliptest.S X86/x86_vertex.S \ | ||||
| 		X86/x86_cliptest.S  \ | ||||
| 		X86/mmx_blend.S \ | ||||
| 		X86/3dnow_xform1.S X86/3dnow_xform2.S \ | ||||
| 		X86/3dnow_xform3.S X86/3dnow_xform4.S \ | ||||
| 		X86/3dnow_normal.S X86/3dnow_vertex.S \ | ||||
| 		X86/3dnow_normal.S \ | ||||
| 		FX/X86/fx_3dnow_fastpath.S \ | ||||
| 		X86/sse_xform1.S X86/sse_xform2.S \ | ||||
| 		X86/sse_xform3.S X86/sse_xform4.S \ | ||||
| 		X86/sse_normal.S X86/sse_vertex.S" | ||||
| 		X86/sse_normal.S " | ||||
|  | ||||
| linux-glide-prof: | ||||
| 	$(MAKE) $(MFLAGS) -f Makefile.X11 targets \ | ||||
| @@ -1608,12 +1625,12 @@ linux-glide-prof: | ||||
| 	"APP_LIB_DEPS = -L/usr/local/glide/lib -lglide2x -L/usr/X11/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm" \ | ||||
| 	"ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \ | ||||
| 		X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \ | ||||
| 		X86/x86_cliptest.S X86/x86_vertex.S \ | ||||
| 		X86/x86_cliptest.S \ | ||||
| 		X86/mmx_blend.S \ | ||||
| 		X86/3dnow_xform1.S X86/3dnow_xform2.S \ | ||||
| 		X86/3dnow_xform3.S X86/3dnow_xform4.S \ | ||||
| 		X86/3dnow_normal.S X86/3dnow_vertex.S \ | ||||
| 		X86/3dnow_normal.S \ | ||||
| 		FX/X86/fx_3dnow_fastpath.S \ | ||||
| 		X86/sse_xform1.S X86/sse_xform2.S \ | ||||
| 		X86/sse_xform3.S X86/sse_xform4.S \ | ||||
| 		X86/sse_normal.S X86/sse_vertex.S" | ||||
| 		X86/sse_normal.S" | ||||
|   | ||||
							
								
								
									
										38
									
								
								Makefile.X11
									
									
									
									
									
								
							
							
						
						
									
										38
									
								
								Makefile.X11
									
									
									
									
									
								
							| @@ -1,9 +1,9 @@ | ||||
| # $Id: Makefile.X11,v 1.56.2.3 2001/12/14 17:11:46 kschultz Exp $ | ||||
| # $Id: Makefile.X11,v 1.69 2002/11/13 15:33:51 brianp Exp $ | ||||
|  | ||||
| # Mesa 3-D graphics library | ||||
| # Version:  4.0 | ||||
| # Version:  5.0 | ||||
| #  | ||||
| # Copyright (C) 1999-2001  Brian Paul   All Rights Reserved. | ||||
| # Copyright (C) 1999-2002  Brian Paul   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"), | ||||
| @@ -51,8 +51,8 @@ default: | ||||
| 	@echo "  make hpux9-sl             for HP systems with HPUX 9.x, make shared libs" | ||||
| 	@echo "  make hpux9-gcc            for HP systems with HPUX 9.x using GCC" | ||||
| 	@echo "  make hpux9-gcc-sl         for HP systems with HPUX 9.x, GCC, make shared libs" | ||||
| 	@echo "  make hpux10               for HP systems with HPUX 10.x" | ||||
| 	@echo "  make hpux10-sl            for HP systems with HPUX 10.x, shared libs" | ||||
| 	@echo "  make hpux10               for HP systems with HPUX 10.x and 11.x" | ||||
| 	@echo "  make hpux10-sl            for HP systems with HPUX 10.x and 11.x, shared libs" | ||||
| 	@echo "  make hpux10-gcc           for HP systems with HPUX 10.x w/ GCC" | ||||
| 	@echo "  make hpux10-gcc-sl        for HP systems with HPUX 10.x w/ GCC, shared libs" | ||||
| 	@echo "  make irix4                for SGI systems with IRIX 4.x" | ||||
| @@ -87,6 +87,7 @@ default: | ||||
| 	@echo "  make linux-sparc-ultra    for UltraSparc systems, make ELF shared libs" | ||||
| 	@echo "  make linux-osmesa16       for 16-bit/channel OSMesa" | ||||
| 	@echo "  make linux-osmesa32       for 32-bit/channel OSMesa" | ||||
| 	@echo "  make linux-icc            for Linux with the Intel C/C++ compiler" | ||||
| 	@echo "  make lynxos               for LynxOS systems with GCC" | ||||
| 	@echo "  make macintosh            for Macintosh" | ||||
| 	@echo "  make machten-2.2          for Macs w/ MachTen 2.2 (68k w/ FPU)" | ||||
| @@ -142,8 +143,8 @@ aix aix-sl amix bsdos bsdos4 darwin dgux freebsd freebsd-386 gcc \ | ||||
| hpux9 hpux9-sl hpux9-gcc hpux9-gcc-sl \ | ||||
| hpux10 hpux10-sl hpux10-gcc hpux10-gcc-sl \ | ||||
| irix4 irix5 irix5-gcc irix5-dso \ | ||||
| linux linux-static linux-debug linux-x11-debug linux-static-debug linux-prof \ | ||||
| linux-x86 linux-x86-static linux-x86-debug \ | ||||
| linux linux-static linux-debug linux-static-debug linux-prof \ | ||||
| linux-x86 linux-icc linux-x86-static linux-x86-debug \ | ||||
| linux-glide linux-386-glide linux-386-opt-glide \ | ||||
| linux-x86-glide linux-glide-debug linux-glide-prof \ | ||||
| linux-alpha-static linux-alpha \ | ||||
| @@ -299,6 +300,7 @@ linux-osmesa16 linux-osmesa32: | ||||
| 	-mkdir lib | ||||
| 	if [ -d src ] ; then touch src/depend ; fi | ||||
| 	if [ -d src ] ; then cd src ; $(MAKE) -f Makefile.OSMesa16 $@ ; fi | ||||
| 	 | ||||
|  | ||||
| # Remove .o files, emacs backup files, etc. | ||||
| clean: | ||||
| @@ -328,11 +330,10 @@ realclean: clean | ||||
| 	cd samples     && $(MAKE) -f Makefile.X11 realclean || true | ||||
|  | ||||
|  | ||||
|  | ||||
| DIRECTORY = Mesa-4.0 | ||||
| LIB_NAME = MesaLib-4.0 | ||||
| DEMO_NAME = MesaDemos-4.0 | ||||
| GLU_NAME = MesaGLU-4.0 | ||||
| DIRECTORY = Mesa-5.0 | ||||
| LIB_NAME = MesaLib-5.0 | ||||
| DEMO_NAME = MesaDemos-5.0 | ||||
| GLU_NAME = MesaGLU-5.0 | ||||
| GLUT_NAME = GLUT-3.7 | ||||
|  | ||||
|  | ||||
| @@ -349,17 +350,14 @@ LIB_FILES =	\ | ||||
| 	$(DIRECTORY)/configure						\ | ||||
| 	$(DIRECTORY)/configure.in					\ | ||||
| 	$(DIRECTORY)/install-sh						\ | ||||
| 	$(DIRECTORY)/ltconfig						\ | ||||
| 	$(DIRECTORY)/ltmain.sh						\ | ||||
| 	$(DIRECTORY)/missing						\ | ||||
| 	$(DIRECTORY)/mkinstalldirs					\ | ||||
| 	$(DIRECTORY)/stamp-h.in						\ | ||||
| 	$(DIRECTORY)/docs/CONFIG					\ | ||||
| 	$(DIRECTORY)/docs/CONFORM					\ | ||||
| 	$(DIRECTORY)/docs/COPYING					\ | ||||
| 	$(DIRECTORY)/docs/COPYRIGHT					\ | ||||
| 	$(DIRECTORY)/docs/DEVINFO					\ | ||||
| 	$(DIRECTORY)/docs/IAFA-PACKAGE					\ | ||||
| 	$(DIRECTORY)/docs/INSTALL					\ | ||||
| 	$(DIRECTORY)/docs/INSTALL.GNU					\ | ||||
| 	$(DIRECTORY)/docs/README					\ | ||||
| @@ -377,7 +375,7 @@ LIB_FILES =	\ | ||||
| 	$(DIRECTORY)/include/GL/internal/glcore.h			\ | ||||
| 	$(DIRECTORY)/include/GL/Makefile.in				\ | ||||
| 	$(DIRECTORY)/include/GL/Makefile.am				\ | ||||
| 	$(DIRECTORY)/include/GL/dosmesa.h				\ | ||||
| 	$(DIRECTORY)/include/GL/dmesa.h					\ | ||||
| 	$(DIRECTORY)/include/GL/amesa.h					\ | ||||
| 	$(DIRECTORY)/include/GL/fxmesa.h				\ | ||||
| 	$(DIRECTORY)/include/GL/ggimesa.h				\ | ||||
| @@ -430,6 +428,8 @@ LIB_FILES =	\ | ||||
| 	$(DIRECTORY)/src/windml/tornado/*.cdf				\ | ||||
| 	$(DIRECTORY)/src/windml/man3/*.3				\ | ||||
| 	$(DIRECTORY)/src/windml/man3/*.html				\ | ||||
| 	$(DIRECTORY)/src/DOS/*.[chS]					\ | ||||
| 	$(DIRECTORY)/src/DOS/vesa/*.[ch]				\ | ||||
| 	$(DIRECTORY)/src/BeOS/*.cpp					\ | ||||
| 	$(DIRECTORY)/src/FX/Makefile.am					\ | ||||
| 	$(DIRECTORY)/src/FX/Makefile.in					\ | ||||
| @@ -578,7 +578,6 @@ OBSOLETE_LIB_FILES = \ | ||||
| 	$(DIRECTORY)/src/D3D/*bat					\ | ||||
| 	$(DIRECTORY)/src/D3D/*DEF					\ | ||||
| 	$(DIRECTORY)/src/DOS/DEPEND.DOS					\ | ||||
| 	$(DIRECTORY)/src/DOS/*.c					\ | ||||
| 	$(DIRECTORY)/src/S3/*.[ch]					\ | ||||
| 	$(DIRECTORY)/src/S3/*.def					\ | ||||
| 	$(DIRECTORY)/src/S3/*.mak					\ | ||||
| @@ -611,6 +610,9 @@ DEMO_FILES =	\ | ||||
| 	$(DIRECTORY)/src-glut/descrip.mms	\ | ||||
| 	$(DIRECTORY)/src-glut/mms_depend	\ | ||||
| 	$(DIRECTORY)/src-glut/*.[ch]		\ | ||||
| 	$(DIRECTORY)/src-glut.dos/*.[ch]	\ | ||||
| 	$(DIRECTORY)/src-glut.dos/Makefile.DJ	\ | ||||
| 	$(DIRECTORY)/src-glut.dos/PC_HW/*.[chS]	\ | ||||
| 	$(DIRECTORY)/images/*			\ | ||||
| 	$(DIRECTORY)/demos/Makefile*		\ | ||||
| 	$(DIRECTORY)/demos/descrip.mms		\ | ||||
| @@ -620,7 +622,7 @@ DEMO_FILES =	\ | ||||
| 	$(DIRECTORY)/demos/README		\ | ||||
| 	$(DIRECTORY)/xdemos/Makefile*		\ | ||||
| 	$(DIRECTORY)/xdemos/descrip.mms		\ | ||||
| 	$(DIRECTORY)/xdemos/*.[cf]		\ | ||||
| 	$(DIRECTORY)/xdemos/*.[chf]		\ | ||||
| 	$(DIRECTORY)/book/Makefile*		\ | ||||
| 	$(DIRECTORY)/book/README		\ | ||||
| 	$(DIRECTORY)/book/*.[ch]		\ | ||||
|   | ||||
							
								
								
									
										94
									
								
								docs/MESA_agp_offset.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										94
									
								
								docs/MESA_agp_offset.spec
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,94 @@ | ||||
| Name | ||||
|  | ||||
|     MESA_agp_offset | ||||
|  | ||||
| Name Strings | ||||
|  | ||||
|     GLX_MESA_agp_offset | ||||
|  | ||||
| Contact | ||||
|  | ||||
|     Brian Paul, Tungsten Graphics, Inc. (brian 'at' tungstengraphics.com) | ||||
|     Keith Whitwell, Tungsten Graphics, Inc.  (keith 'at' tungstengraphics.com) | ||||
|  | ||||
| Status | ||||
|  | ||||
|     Shipping (Mesa 4.0.4 and later.  Only implemented in particular | ||||
|     XFree86/DRI drivers.) | ||||
|  | ||||
| Version | ||||
|  | ||||
|     1.0 | ||||
|  | ||||
| Number | ||||
|  | ||||
|     TBD | ||||
|  | ||||
| Dependencies | ||||
|  | ||||
|     OpenGL 1.0 or later is required | ||||
|     GLX_NV_vertex_array_range is required. | ||||
|     This extensions is written against the OpenGL 1.4 Specification. | ||||
|  | ||||
| Overview | ||||
|  | ||||
|     This extensions provides a way to convert pointers in an AGP memory | ||||
|     region into byte offsets into the AGP aperture. | ||||
|     Note, this extension depends on GLX_NV_vertex_array_range, for which | ||||
|     no real specification exists.  See GL_NV_vertex_array_range for more | ||||
|     information. | ||||
|  | ||||
| IP Status | ||||
|  | ||||
|     None | ||||
|  | ||||
| Issues | ||||
|  | ||||
|     None | ||||
|  | ||||
| New Procedures and Functions | ||||
|  | ||||
|     GLuint glXGetAGPOffsetMESA( const GLvoid *pointer ) | ||||
|  | ||||
| New Tokens | ||||
|  | ||||
|     None | ||||
|  | ||||
| Additions to the OpenGL 1.4 Specification | ||||
|  | ||||
|     None | ||||
|  | ||||
| Additions to Chapter 3 the GLX 1.4 Specification (Functions and Errors) | ||||
|  | ||||
|     Add a new section, 3.6 as follows: | ||||
|  | ||||
|     3.6 AGP Memory Access | ||||
|  | ||||
|     On "PC" computers, AGP memory can be allocated with glXAllocateMemoryNV | ||||
|     and freed with glXFreeMemoryNV.  Sometimes it's useful to know where a | ||||
|     block of AGP memory is located with respect to the start of the AGP | ||||
|     aperature.  The function | ||||
|  | ||||
|         GLuint glXGetAGPOffsetMESA( const GLvoid *pointer ) | ||||
|  | ||||
|     Returns the offset of the given memory block from the start of AGP | ||||
|     memory in basic machine units (i.e. bytes).  If pointer is invalid | ||||
|     the value ~0 will be returned. | ||||
|  | ||||
| GLX Protocol | ||||
|  | ||||
|     None.  This is a client side-only extension. | ||||
|  | ||||
| Errors | ||||
|  | ||||
|     glXGetAGPOffsetMESA will return ~0 if the pointer does not point to | ||||
|     an AGP memory region. | ||||
|  | ||||
| New State | ||||
|  | ||||
|     None | ||||
|  | ||||
| Revision History | ||||
|  | ||||
|     20 September 2002 - Initial draft | ||||
|     2 October 2002 - finished GLX chapter 3 additions | ||||
							
								
								
									
										138
									
								
								docs/MESA_pack_invert.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										138
									
								
								docs/MESA_pack_invert.spec
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,138 @@ | ||||
| Name | ||||
|  | ||||
|     MESA_pack_invert | ||||
|  | ||||
| Name Strings | ||||
|  | ||||
|     GL_MESA_pack_invert | ||||
|  | ||||
| Contact | ||||
|  | ||||
|     Brian Paul, Tungsten Graphics, Inc. (brian 'at' tungstengraphics.com) | ||||
|     Keith Whitwell, Tungsten Graphics, Inc.  (keith 'at' tungstengraphics.com) | ||||
|  | ||||
| Status | ||||
|  | ||||
|     Shipping (Mesa 4.0.4 and later) | ||||
|  | ||||
| Version | ||||
|  | ||||
|     1.0 | ||||
|  | ||||
| Number | ||||
|  | ||||
|     TBD | ||||
|  | ||||
| Dependencies | ||||
|  | ||||
|     OpenGL 1.0 or later is required | ||||
|     This extensions is written against the OpenGL 1.4 Specification. | ||||
|  | ||||
| Overview | ||||
|  | ||||
|     This extension adds a new pixel storage parameter to indicate that | ||||
|     images are to be packed in top-to-bottom order instead of OpenGL's | ||||
|     conventional bottom-to-top order.  Only pixel packing can be | ||||
|     inverted (i.e. for glReadPixels, glGetTexImage, glGetConvolutionFilter, | ||||
|     etc). | ||||
|  | ||||
|     Almost all known image file formats store images in top-to-bottom | ||||
|     order.  As it is, OpenGL reads images from the frame buffer in | ||||
|     bottom-to-top order.  Thus, images usually have to be inverted before | ||||
|     writing them to a file with image I/O libraries.  This extension | ||||
|     allows images to be read such that inverting isn't needed. | ||||
|  | ||||
| IP Status | ||||
|  | ||||
|     None | ||||
|  | ||||
| Issues | ||||
|  | ||||
|     1. Should we also defined UNPACK_INVERT_MESA for glDrawPixels, etc? | ||||
|  | ||||
|     Resolved:  No, we're only concerned with pixel packing.  There are other | ||||
|     solutions for inverting images when using glDrawPixels (negative Y pixel | ||||
|     zoom) or glTexImage (invert the vertex T coordinates).  It would be easy | ||||
|     enough to define a complementary extension for pixel packing in the | ||||
|     future if needed. | ||||
|  | ||||
| New Procedures and Functions | ||||
|  | ||||
|     None | ||||
|  | ||||
| New Tokens | ||||
|  | ||||
|     Accepted by the <pname> parameter of PixelStorei and PixelStoref | ||||
|     and the <pname> parameter of GetIntegerv, GetFloatv, GetDoublev | ||||
|     and GetBooleanv: | ||||
|  | ||||
|         PACK_INVERT_MESA                   0x8758 | ||||
|  | ||||
| Additions to Chapter 2 of the OpenGL 1.4 Specification (OpenGL Operation) | ||||
|  | ||||
|     None | ||||
|  | ||||
| Additions to Chapter 3 of the OpenGL 1.4 Specification (Rasterization) | ||||
|  | ||||
|     None | ||||
|  | ||||
| Additions to Chapter 4 of the OpenGL 1.4 Specification (Per-Fragment | ||||
| Operations and the Frame Buffer) | ||||
|  | ||||
|     Add the following entry to table 4.4 (PixelStore parameters) on page 182: | ||||
|  | ||||
|     Parameter Name       Type    Initial Value    Valid Range | ||||
|     --------------------------------------------------------- | ||||
|     PACK_INVERT_MESA     boolean     FALSE        TRUE/FALSE | ||||
|  | ||||
|     In the section labeled "Placement in Client Memory" on page 184 | ||||
|     insert the following text into the paragraph before the sentence | ||||
|     that starts with "If the format is RED, GREEN, BLUE...": | ||||
|  | ||||
|     "The parameter PACK_INVERT_MESA controls whether the image is packed | ||||
|      in bottom-to-top order (the default) or top-to-bottom order.  Equation | ||||
|      3.8 is modified as follows: | ||||
|  | ||||
|      ... the first element of the Nth row is indicated by | ||||
|  | ||||
|          p + Nk,                if PACK_INVERT_MESA is false | ||||
|          p + k * (H - 1) - Nk,  if PACK_INVERT_MESA is true, where H is the | ||||
|                                 image height | ||||
|     " | ||||
|  | ||||
| Additions to Chapter 5 of the OpenGL 1.4 Specification (Special Functions) | ||||
|  | ||||
|     None | ||||
|  | ||||
| Additions to Chapter 6 of the OpenGL 1.4 Specification (State and | ||||
| State Requests) | ||||
|  | ||||
|     None | ||||
|  | ||||
| Additions to Appendix A of the OpenGL 1.4 Specification (Invariance) | ||||
|  | ||||
|     None | ||||
|  | ||||
| Additions to the AGL/GLX/WGL Specifications | ||||
|  | ||||
|     None | ||||
|  | ||||
| GLX Protocol | ||||
|  | ||||
|     None | ||||
|  | ||||
| Errors | ||||
|  | ||||
|     None | ||||
|  | ||||
| New State | ||||
|  | ||||
|     Add the following entry to table 6.20 (Pixels) on page 235: | ||||
|  | ||||
|     Get Value         Type     Get Cmd    Initial Value  Description                Sec    Attribute | ||||
|     -------------------------------------------------------------------------------------------------- | ||||
|     PACK_INVERT_MESA  boolean  GetBoolean  FALSE         Value of PACK_INVERT_MESA  4.3.2  pixel-store | ||||
|  | ||||
| Revision History | ||||
|  | ||||
|     21 September 2002 - Initial draft | ||||
							
								
								
									
										197
									
								
								docs/MESA_ycbcr_texture.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										197
									
								
								docs/MESA_ycbcr_texture.spec
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,197 @@ | ||||
| Name | ||||
|  | ||||
|     MESA_ycbcr_texture | ||||
|  | ||||
| Name Strings | ||||
|  | ||||
|     GL_MESA_ycbcr_texture | ||||
|  | ||||
| Contact | ||||
|  | ||||
|     Brian Paul, Tungsten Graphics, Inc. (brian 'at' tungstengraphics.com) | ||||
|     Keith Whitwell, Tungsten Graphics, Inc.  (keith 'at' tungstengraphics.com) | ||||
|  | ||||
| Status | ||||
|  | ||||
|     Shipping (Mesa 4.0.4 and later) | ||||
|  | ||||
| Version | ||||
|  | ||||
|     1.0 | ||||
|  | ||||
| Number | ||||
|  | ||||
|     TBD | ||||
|  | ||||
| Dependencies | ||||
|  | ||||
|     OpenGL 1.0 or later is required | ||||
|     This extensions is written against the OpenGL 1.4 Specification. | ||||
|     NV_texture_rectangle effects the definition of this extension. | ||||
|  | ||||
| Overview | ||||
|  | ||||
|     This extension supports texture images in the YCbCr format.  There is | ||||
|     no support for converting YCbCr images to RGB or vice versa.  The | ||||
|     intention is for YCbCr image data to be directly sent to the renderer | ||||
|     without any pixel transfer operations.  Only 2D texture images are | ||||
|     supported (not glDrawPixels, glReadPixels, etc). | ||||
|  | ||||
|     A YCbCr pixel (texel) is a 16-bit unsigned short with two components. | ||||
|     The first component is luminance (Y).  For pixels in even-numbered | ||||
|     image columns, the second component is Cb.  For pixels in odd-numbered | ||||
|     image columns, the second component is Cr.  If one were to convert the | ||||
|     data to RGB one would need to examine two pixels from columns N and N+1 | ||||
|     (where N is even) to deduce the RGB color. | ||||
|  | ||||
| IP Status | ||||
|  | ||||
|     None | ||||
|  | ||||
| Issues | ||||
|  | ||||
|     None | ||||
|  | ||||
| New Procedures and Functions | ||||
|  | ||||
|     None | ||||
|  | ||||
| New Tokens | ||||
|  | ||||
|     Accepted by the <internalFormat> and <format> parameters of | ||||
|     TexImage2D and TexSubImage2D: | ||||
|  | ||||
|         GL_YCBCR_MESA                   0x8757 | ||||
|  | ||||
|     Accepted by the <type> parameter of TexImage2D and TexSubImage2D: | ||||
|  | ||||
|         GL_UNSIGNED_SHORT_8_8_MESA      0x85BA /* same as Apple's */ | ||||
|         GL_UNSIGNED_SHORT_8_8_REV_MESA  0x85BB /* same as Apple's */ | ||||
|  | ||||
| Additions to Chapter 2 of the OpenGL 1.4 Specification (OpenGL Operation) | ||||
|  | ||||
|     None | ||||
|  | ||||
| Additions to Chapter 3 of the OpenGL 1.4 Specification (Rasterization) | ||||
|  | ||||
|     In section 3.6.4, Rasterization of Pixel Rectangles, on page 102, | ||||
|     add the following to Table 3.8 (Packed pixel formats): | ||||
|      | ||||
|     type Parameter                GL Data   Number of        Matching | ||||
|      Token Name                    Type     Components     Pixel Formats | ||||
|     --------------                -------   ----------     ------------- | ||||
|     UNSIGNED_SHORT_8_8_MESA       ushort         3         YCBCR_422_MESA | ||||
|     UNSIGNED_SHORT_8_8_REV_MESA   ushort         3         YCBCR_422_MESA | ||||
|  | ||||
|  | ||||
|     In section 3.6.4, Rasterization of Pixel Rectangles, on page 102, | ||||
|     add the following to Table 3.10 (UNSIGNED_SHORT formats): | ||||
|  | ||||
|     UNSIGNED_SHORT_8_8_MESA: | ||||
|  | ||||
|       15  14  13  12  11  10  9   8   7   6   5   4   3   2   1   0 | ||||
|     +-------------------------------+-------------------------------+ | ||||
|     |              1st              |              2nd              | | ||||
|     +-------------------------------+-------------------------------+ | ||||
|                          | ||||
|     UNSIGNED_SHORT_8_8_REV_MESA: | ||||
|  | ||||
|       15  14  13  12  11  10  9   8   7   6   5   4   3   2   1   0 | ||||
|     +-------------------------------+-------------------------------+ | ||||
|     |              2nd              |              1st              | | ||||
|     +-------------------------------+-------------------------------+ | ||||
|  | ||||
|  | ||||
|     In section 3.6.4, Rasterization of Pixel Rectangles, on page 102, | ||||
|     add the following to Table 3.12 (Packed pixel fiedl assignments): | ||||
|  | ||||
|                        First       Second     Third      Fourth | ||||
|     Format             Element     Element    Element    Element | ||||
|     ------             -------     -------    -------    ------- | ||||
|     YCBCR_422_MESA     luminance   chroma | ||||
|  | ||||
|  | ||||
|     In section 3.8.1, Texture Image Specification, on page 125, add | ||||
|     another item to the list of TexImage2D and TexImage3D equivalence | ||||
|     exceptions: | ||||
|  | ||||
|     * The value of internalformat and format may be YCBCR_MESA to | ||||
|       indicate that the image data is in YCbCr format.  type must | ||||
|       be either UNSIGNED_SHORT_8_8_MESA or UNSIGNED_SHORT_8_8_REV_MESA | ||||
|       as seen in tables 3.8 and 3.10.  Table 3.12 describes the mapping | ||||
|       between Y and Cb/Cr to the components. | ||||
|       If NV_texture_rectangle is supported target may also be | ||||
|       TEXTURE_RECTANGLE_NV or PROXY_TEXTURE_RECTANGLE_NV. | ||||
|       All pixel transfer operations are bypassed.  The texture is stored as | ||||
|       YCbCr, not RGB.  Queries of the texture's red, green and blue component | ||||
|       sizes will return zero. | ||||
|  | ||||
|  | ||||
|     In section 3.8.1, Texture Image Specification, on page 126, add | ||||
|     another item to the list of TexImage1D and TexImage2D equivalence | ||||
|     exceptions: | ||||
|  | ||||
|     * The value of internalformat and format can not be YCBCR_MESA. | ||||
|  | ||||
|  | ||||
|     In section 3.8.2, Alternate Texture Image Specification Commands, on | ||||
|     page 129, insert this paragraph after the first full paragraph on the | ||||
|     page: | ||||
|  | ||||
|          "If the internal storage format of the image being updated by | ||||
|     TexSubImage2D is YCBCR_MESA then format must be YCBCR_MESA. | ||||
|     The error INVALID_OPERATION will be generated otherwise." | ||||
|  | ||||
|  | ||||
| Additions to Chapter 4 of the OpenGL 1.4 Specification (Per-Fragment | ||||
| Operations and the Frame Buffer) | ||||
|  | ||||
|     None | ||||
|  | ||||
| Additions to Chapter 5 of the OpenGL 1.4 Specification (Special Functions) | ||||
|  | ||||
|     None | ||||
|  | ||||
| Additions to Chapter 6 of the OpenGL 1.4 Specification (State and | ||||
| State Requests) | ||||
|  | ||||
|     None | ||||
|  | ||||
| Additions to Appendix A of the OpenGL 1.4 Specification (Invariance) | ||||
|  | ||||
|     None | ||||
|  | ||||
| Additions to the AGL/GLX/WGL Specifications | ||||
|  | ||||
|     None | ||||
|  | ||||
| GLX Protocol | ||||
|  | ||||
|     None | ||||
|  | ||||
| Errors | ||||
|  | ||||
|     INVALID_ENUM is generated by TexImage2D if <internalFormat> is | ||||
|     MESA_YCBCR but <format> is not MESA_YCBCR. | ||||
|  | ||||
|     INVALID_ENUM is generated by TexImage2D if <format> is MESA_YCBCR but | ||||
|     <internalFormat> is not MESA_YCBCR. | ||||
|  | ||||
|     INVALID_VALUE is generated by TexImage2D if <format> is MESA_YCBCR and | ||||
|     <internalFormat> is MESA_YCBCR and <border> is not zero. | ||||
|  | ||||
|     INVALID_OPERATION is generated by TexSubImage2D if the internal image | ||||
|     format is YCBCR_MESA and format is not YCBCR_MESA. | ||||
|  | ||||
|     INVALID_OPERATION is generated by CopyTexSubImage2D if the internal | ||||
|     image is YCBCR_MESA. | ||||
|      | ||||
| New State | ||||
|  | ||||
|     Edit table 6.16 on page 231: change the type of TEXTURE_INTERNAL_FORMAT | ||||
|     from n x Z42 to n x Z43 to indicate that internal format may also be | ||||
|     YCBCR_MESA. | ||||
|  | ||||
| Revision History | ||||
|  | ||||
|     20 September 2002 - Initial draft | ||||
| @@ -1,10 +1,25 @@ | ||||
|  | ||||
|                      3Dfx Glide device driver for Mesa 3.3 | ||||
| 				(see below for FAQ) | ||||
|                             3Dfx Glide device driver | ||||
|  | ||||
|  | ||||
| Warning: this document is rather out of date, but most of the information | ||||
| should still apply. | ||||
|  | ||||
| Info for Mesa 4.1 | ||||
| ----------------- | ||||
|  | ||||
| The 3dfx Glide driver in Mesa is disabled by default.  Not too many people | ||||
| use this driver anymore and at some point down the road it will be dropped. | ||||
|  | ||||
| To use/enable the Glide driver either do this: | ||||
|  | ||||
| './configure --with-glide=DIR'    Where DIR is the location of Glide, like | ||||
|                                   /usr/ or /usr/local | ||||
|  | ||||
| OR | ||||
|  | ||||
| 'make linux-x86-glide'     If using the old-style Makefile system. | ||||
|  | ||||
| The rest of this file hasn't changed since Mesa 3.3.  Some of it's out of | ||||
| date, but some is still valid. | ||||
|  | ||||
|  | ||||
|  | ||||
| @@ -17,8 +32,6 @@ What do you need ? | ||||
| 	  under Linux (more information in the "Useful Glide Environment | ||||
| 	  Variables"); | ||||
|  | ||||
| 	- Mesa 3.1; | ||||
|  | ||||
| 	- The 3Dfx Glide library 2.3 or later for your OS (the 2.4 works fine). | ||||
| 	  The Voodoo2 requires the Glide library 2.51. The Glide 3.1 is not | ||||
| 	  compatible with the Glide 2.x so it doesn't work with the current | ||||
| @@ -27,8 +40,6 @@ What do you need ? | ||||
| 	- A compiler supported by the Glide library (Micro$oft VC++ (tested), | ||||
| 	  Watcom (tested), GCC for Linux (tested), etc.); | ||||
|  | ||||
| 	- A lot of patience, this is an alpha release. | ||||
|  | ||||
| 	- It's nice to have two monitors - one for your normal graphics | ||||
| 	  card and one for your 3Dfx card. If something goes wrong with | ||||
| 	  an application using the 3Dfx hardware you can still see your | ||||
|   | ||||
| @@ -3,61 +3,71 @@ | ||||
|  | ||||
|  | ||||
|  | ||||
| Introduction | ||||
| * Introduction | ||||
|  | ||||
| Mesa 3.1 features a new driver for the BeOS.  The new driver implements | ||||
| Mesa 4.1 features a driver for the BeOS.  The driver implements | ||||
| a clone of the BGLView class.  This class, derived from BView, allows | ||||
| OpenGL rendering into a BeOS window. | ||||
| The 4.1 BeOS driver is an update of Brian Paul's BeOS driver released in Mesa 3.1. | ||||
|  | ||||
| Any application which uses the BGLView should be able to use Mesa | ||||
| instead of Be's OpenGL without changing any code. | ||||
|  | ||||
| Since Be's OpenGL implementation (as of R4) is basically just the | ||||
| Since Be's OpenGL implementation (as of R5) is basically just the | ||||
| SGI sample implementation, it's pretty slow.  You'll see that Mesa | ||||
| is considerably faster. | ||||
|  | ||||
|  | ||||
|  | ||||
| Source Code | ||||
| * Source Code | ||||
|  | ||||
| The source code for the driver is in Mesa-3.1/src/BeOS/GLView.cpp | ||||
| The source code for the driver is in Mesa-4.1/src/BeOS/ directory. | ||||
| It's not 100% finished at this time but many GLUT-based demos are | ||||
| working.  No optimizations have been made at this time. | ||||
|  | ||||
|  | ||||
|  | ||||
| Compiling | ||||
| * Compiling | ||||
|  | ||||
| In the Mesa-3.x directory type "make -f Makefile.X11 beos-r4". | ||||
| When it finishes the libMesaGL.so and libMesaGLU.so libraries for | ||||
| BeOS will be in the Mesa-3.x/lib/ directory. | ||||
| Requirements: | ||||
|   - gcc version 2.95.3 for BeOS  | ||||
|   You can find it here: http://www.bebits.com/app/2157 | ||||
|  | ||||
| Move to the Mesa-4.x src sub-directory and then type "make -f Makefile.BeOS-R5". | ||||
| When it finishes the Mesa based libGL.so library for | ||||
| BeOS will be in the Mesa-4.x/src/obj.{x86|ppc}/ directory. | ||||
|  | ||||
| To install it as Be's default libGL.so replacement, put it in your  | ||||
| /boot/home/config/lib/ directory. All your GL/GLUTapps will use  | ||||
| the Mesa based then.  | ||||
|  | ||||
| By default, it build a non-debug version library. | ||||
| The x86 (MMX, SSE and 3DNOW) optimizations are also supported for x86 target. | ||||
| Sorry, Mesa don't have ppc (Altivec) optimizations yet. | ||||
|  | ||||
|  | ||||
| * Example Programs | ||||
|  | ||||
| Example Programs | ||||
|  | ||||
| Look in the Mesa-3.x/BeOS/ directory for one or two BGLView demo | ||||
| Look in the Mesa-4.x/BeOS/ directory for one or two BGLView demo | ||||
| programs.  They should have been compiled along with the Mesa | ||||
| library. | ||||
|  | ||||
|  | ||||
| * GLUT | ||||
|  | ||||
| GLUT | ||||
|  | ||||
| A version of GLUT 2.5 for BeOS can be found in src-glut.beos/. | ||||
| A beta version of GLUT 3.7 port for BeOS can be found at  | ||||
| http://anobject.com/jehamby/Code/Glut-3.7-x86.zip. | ||||
|   | ||||
| There's is a 2.5 version in src-glut.beos/, too. | ||||
| The original distribution can be obtained from | ||||
| http://home.beoscentral.com/jehamby/Glut-3.5-x86.zip | ||||
|  | ||||
| This is a special version of GLUT adapted for the BeOS.  I don't | ||||
| They are special version of GLUT adapted for the BeOS.  I don't | ||||
| believe Mark Kilgard's normal GLUT distribution includes BeOS | ||||
| support. | ||||
|  | ||||
| It seems that you have to recompile GLUT with libMesaGL.so instead | ||||
| of libGL.so in order for everything to work.  I'm not sure why. | ||||
|  | ||||
|  | ||||
|  | ||||
| Special Features | ||||
| * Special Features | ||||
|  | ||||
| Mesa's implementation of the BGLView class has an extra member | ||||
| function:  CopySubBufferMESA().  It basically works like SwapBuffers() | ||||
| @@ -69,7 +79,9 @@ cause a fatal error when running with Be's OpenGL. | ||||
|  | ||||
|  | ||||
|  | ||||
| Work Left To Do | ||||
| * Work Left To Do | ||||
|  | ||||
| BDirectWindow single buffering support is not implemented yet. | ||||
|  | ||||
| Color index mode is not implemented yet. | ||||
|  | ||||
| @@ -80,7 +92,7 @@ rendering.  This should also be implemented for Mesa. | ||||
|  | ||||
|  | ||||
|  | ||||
| Old BeOS Driver | ||||
| * Old BeOS Driver | ||||
|  | ||||
| Mesa 2.6 had an earlier BeOS driver.  It was based on Mesa's Off-screen | ||||
| rendering interface, not BGLView.  If you're interested in the older | ||||
| @@ -88,7 +100,7 @@ driver you should get Mesa 2.6. | ||||
|  | ||||
|  | ||||
|  | ||||
| BeOS and Glide | ||||
| * BeOS and Glide | ||||
|  | ||||
| Mesa 3.0 supported the 3Dfx/Glide library on Beos.  Download Mesa 3.0 | ||||
| if interested.  Ideally, the 3Dfx/Glide support should be updated to | ||||
| @@ -99,4 +111,4 @@ of February, 1999. | ||||
|  | ||||
|  | ||||
| ---------------------------------------------------------------------- | ||||
| $Id: README.BEOS,v 1.6 1999/11/27 01:40:40 brianp Exp $ | ||||
| $Id: README.BEOS,v 1.7 2002/09/19 16:19:44 brianp Exp $ | ||||
|   | ||||
							
								
								
									
										209
									
								
								docs/README.DJ
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										209
									
								
								docs/README.DJ
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,209 @@ | ||||
| 			Mesa 4.1 DOS/DJGPP Port v1.2 | ||||
| 			~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||||
|  | ||||
|  | ||||
|  | ||||
| Description: | ||||
| ~~~~~~~~~~~~ | ||||
|  | ||||
| Well, guess what... this is the DOS port of Mesa 4.1, for DJGPP fans... Whoa! | ||||
| The driver has its origins in ddsample.c, written by Brian Paul and found by me | ||||
| in Mesa 3.4.2. | ||||
|  | ||||
|  | ||||
|  | ||||
| Legal: | ||||
| ~~~~~~ | ||||
|  | ||||
| Mesa copyright applies, provided this package is used within Mesa. For anything | ||||
| else, see GPL. | ||||
|  | ||||
|  | ||||
|  | ||||
| Installation: | ||||
| ~~~~~~~~~~~~~ | ||||
|  | ||||
| Unzip and type: | ||||
|  | ||||
| 	make -f Makefile.DJ [OPTIONS...] | ||||
|  | ||||
| Available options: | ||||
|  | ||||
|      Environment variables: | ||||
| 	CPU		optimize for the given processor. | ||||
| 			default = k6 | ||||
| 	BIG_OPT=1	crazy optimizations; not very useful, though... | ||||
| 			default = no | ||||
| 	GLIDE		absolute path to Glide library; used with FX. | ||||
| 			default = $(TOP)/include/glide3 | ||||
| 	FX=1		build for 3dfx Glide3; use it if you have the Glide | ||||
| 			SDK (designed for your platform), and, of course, a | ||||
| 			3dfx card... Note that this disables compilation of | ||||
| 			actual DMesa code, as Glide does all the stuff! | ||||
| 			default = no | ||||
| 	HAVE_X86=1	optimize for i386. | ||||
| 			default = no | ||||
| 	HAVE_MMX=1	MMX instructions; use only if you assembler/compiler | ||||
| 			supports MMX instruction set; backwards compatibility | ||||
| 			with older processors is still preserved. | ||||
| 			default = no | ||||
| 	HAVE_SSE=1	(see HAVE_MMX) | ||||
| 			default = no | ||||
| 	HAVE_3DNOW=1	(see HAVE_MMX) | ||||
| 			default = no | ||||
|  | ||||
|      Targets: | ||||
| 	all:		build everything | ||||
| 	libgl:		build GL | ||||
| 	libglu:		build GLU | ||||
| 	libglut:	build GLUT | ||||
| 	clean:		remove object files | ||||
| 	realclean:	remove all generated files | ||||
|  | ||||
|  | ||||
|  | ||||
| Tested on: | ||||
| 	CPU:		K6-2 (CXT) @500(412.5) MHz | ||||
| 	Mainboard:	ViA Apollo VP2/97 w/ 128 MB SDRAM | ||||
| 	Video card:	PowerColor Evil King3 (Voodoo3 3000) w/ 16384 kB SDRAM | ||||
| 	DJGPP:		djdev 2.04 + gcc v3.2 + make v3.79.1 | ||||
|  | ||||
|  | ||||
|  | ||||
| FAQ: | ||||
| ~~~~ | ||||
|  | ||||
| 1. Compilation | ||||
|  | ||||
|    Q) I tried to run `make' and it exits because `gcc' complains it cannot find | ||||
|       some stupid file. | ||||
|    A) You need LFN support. | ||||
|    A) When compiling for Glide (FX=1), pay attention to Glide path. | ||||
|  | ||||
| 2. Dynamic modules | ||||
|  | ||||
|    Q) What are you mumbling about dynamic modules? | ||||
|    A) You must have the DXE2 package (available on SimTel.Net, courtesy of | ||||
|       Andrew Zabolotny) installed in order to build the dynamic modules. | ||||
|  | ||||
|    Q) I have DXE2, but I couldn't build the `dxe2gen.exe'. | ||||
|    Q) I built `dxe2gen.exe', but it doesn't do the job right. | ||||
|    A) There is a patched version on my web page. | ||||
|  | ||||
|    Q) DXE2 modules give me headaches... | ||||
|    A) The DXE2 modules are not compulsory. The static libraries are still built | ||||
|       and you can use them in the old-fashioned, classic way... and learn to | ||||
|       live with your ~2MB executable size. For example: | ||||
| 	gcc -o OUT.exe IN.c -lglut -lglu -lgl | ||||
|  | ||||
|    Q) Okay, DXE2 modules are built. How can I use them? | ||||
|    A) Build your export object file; then link it with your application. | ||||
|       For example: | ||||
| 	dxe2res -o dmesadxe.c gl.dxe glu.dxe glut.dxe | ||||
| 	gcc -o dmesadxe.o dmesadxe.c | ||||
| 	gcc -o OUT.exe dmesadxe.o IN.c -liglut -liglu -ligl -ldl | ||||
|  | ||||
|    Q) What is that `dxe2res.exe' thing? | ||||
|    A) That is an utility that generates the export file for a given set of | ||||
|       modules. If you can't find it in the DXE2 package, you must be looking at | ||||
|       the wrong archive :) | ||||
|  | ||||
| 3. Using Mesa for DJGPP | ||||
|  | ||||
|    Q) Does this build work in Win9x? | ||||
|    A) Yes. | ||||
|  | ||||
|    Q) Does it work under NT (W2k, XP) core? | ||||
|    A) Uh... probably not! | ||||
|  | ||||
|    Q) I made a simple application and it does nothing. It exits right away. Not | ||||
|       even a blank screen. | ||||
|    A) The current version supports only RGB[A] modes, for it made no sense to | ||||
|       me to endorse color-index (aka palette) modes. | ||||
|    A) Single-buffered is not allowed at all. Until I can find a way to use | ||||
|       *REAL* hardware acceleration, it won't get implemented. | ||||
|    A) Another weird "feature" is that buffer width must be multiple of 4 (I'm a | ||||
|       lazy programmer and I found that the easiest way to keep buffer handling | ||||
|       at peak performance ;-). | ||||
|  | ||||
|    Q) My demo doesn't display text. I know I used the glut font routines! | ||||
|    A) Then you probably use GLUT as a DXE. Well, there is no direct access to | ||||
|       variables due to the way DXE works. Read the documentation. The author of | ||||
|       GLUT took this into account for _WIN32 DLL's only; I don't want to modify | ||||
|       his headers. The only workaround is to link GLUT the old way :-( | ||||
|  | ||||
|    Q) DMesa is so SLOOOW! The Win32 OpenGL performs so much | ||||
|       better... | ||||
|    A) Is that a question? If you have a Voodoo3/Banshee card, you're lucky. The | ||||
|       Glide port is on my web page. If you haven't, sorry; everything is done | ||||
|       in software. Suggestions? | ||||
|  | ||||
|    Q) I have a super/mega/ultra monitor and all you can do is 60Hz? My eyes are | ||||
|       leaking from the orbits... | ||||
|    A) If you were compiling for Glide, see Glide info. If not, be aware that | ||||
|       refresh rate control works only for VESA 3.0. The environment variable | ||||
|       DMESA_REFRESH sets the default screen refresh. For example: | ||||
| 	set DMESA_REFRESH=75 | ||||
|  | ||||
|  | ||||
|  | ||||
| libGLUT (the toolkit): | ||||
| ~~~~~~~~~~~~~~~~~~~~~~ | ||||
|  | ||||
| Well, this "skeletal" GLUT implementation is not mine. Thanks should go to | ||||
| Bernhard Tschirren, Mark Kilgard, Brian Paul and probably others (or probably | ||||
| not ;-). I only changed it to be self-standing (Allegro-free). The keyboard, | ||||
| mouse and timer drivers were inspired from an old project of mine (D3Xl) and | ||||
| fixed with many Allegro "infusions"; I deeply thank to Shawn Hargreaves et co. | ||||
|  | ||||
| My keyboard driver used only scancodes, but since GLUT requires ASCII values | ||||
| for keys, I borrowed the translation tables (and maybe more) from Allegro. | ||||
| Ctrl-Alt-Del (plus Ctrl-Alt-End, for Windows users) will shut down the GLUT | ||||
| engine unconditionally: it will raise SIGINT, which in turn will call the | ||||
| destructors (let's hope), thus cleaning up your/my mess ;-) NB: since the | ||||
| DJGPP guys ensured signal handlers won't go beyond program's space (and since | ||||
| dynamic modules shall) the SIGINT can't be hooked (well, it can, but it is | ||||
| useless), therefore you must live with the 'Exiting due to signal SIGINT' | ||||
| message... | ||||
|  | ||||
| The mouse driver is far from complete (lack of positioning, drawing, etc), | ||||
| but is enough to make almost all the demos work. | ||||
|  | ||||
| The timer is pretty versatile for it supports multiple timers with different | ||||
| frequencies. It may not be the most accurate timer in the known universe, but | ||||
| I think it's OK. Take this example: you have timer A with a very high rate, | ||||
| and then you have timer B with very low rate compared to A; now, A ticks OK, | ||||
| but timer B will probably loose precision! | ||||
|  | ||||
| As an addition, stdout and stderr are redirected and dumped upon exit. This | ||||
| means that printf can be safely called during graphics, but all messages come | ||||
| in bulk! A bit of a hack, I know, but I think it's better than to miss them | ||||
| at all. "Borrowed" from RHIDE (Robert Hoehne) or SETEDIT (Salvador Eduardo | ||||
| Tropea)... I'm not sure. | ||||
|  | ||||
| Window creating defaults: 640x480x16 at (0,0), 8-bit stencil, 16-bit accum. | ||||
| However, the video mode is chosen in such a way that first window will fit. | ||||
|  | ||||
|  | ||||
|  | ||||
| History: | ||||
| ~~~~~~~~ | ||||
|  | ||||
| v1.0	mar-2002	initial release | ||||
|  | ||||
| v1.1	sep-2002	+ added 3dfx Glide3 support | ||||
| 			+ added refresh rate control | ||||
| 			+ added fonts in glut | ||||
| 			* lots of minor changes | ||||
|  | ||||
| v1.2	nov-2002	* synced w/ Mesa-4.1 | ||||
| 			- removed dmesadxe.h | ||||
|  | ||||
|  | ||||
|  | ||||
| Contact: | ||||
| ~~~~~~~~ | ||||
|  | ||||
| Name:   Borca Daniel | ||||
| E-mail: dborca@yahoo.com | ||||
| WWW:    http://www.geocities.com/dborca/ | ||||
| @@ -1,12 +1,17 @@ | ||||
| File: docs/README.WIN32 | ||||
|  | ||||
| Last updated: Nov 29, 2001 - Karl Schultz - kschultz@users.sourceforge.net | ||||
| Last updated: Nov 08, 2002 - Karl Schultz - kschultz@users.sourceforge.net | ||||
|  | ||||
| Quick Start | ||||
|  | ||||
| Unzip both ZIP files (MesaLib and MesaDemos) into the same directory. | ||||
| This is important because the current makefiles in MesaLib assume that | ||||
| the directories in MesaDemos are present. | ||||
|  | ||||
| If you have Microsoft Visual C++ 6.0 installed, simply go to the top directory | ||||
| of the Mesa distribution and type 'nmake -f Makefile.win NODEBUG=1' for | ||||
| an optimized build. | ||||
| an optimized build.  Note that you may have to run ...VC98/BIN/VCVARS32.BAT | ||||
| to set up the appropriate compiler environment variables. | ||||
|  | ||||
| Details and Notes | ||||
|  | ||||
| @@ -15,11 +20,16 @@ Details and Notes | ||||
|   si-glu     MesaGLU.dll, MesaGLU.lib | ||||
|   src-glut   glut32.dll, glut32.lib | ||||
|   demos      a handful of demo executables. | ||||
|   book       more examples | ||||
|   samples    more examples | ||||
|  | ||||
| - After building, you can copy the above DLL files to a place in your PATH | ||||
|   or to the demos directory if you just want to give the demos a try. | ||||
|   The DLL and LIB files are copied to the ./lib directory.  The makefile | ||||
|   creates this directory if it does not already exist. | ||||
|   such as $SystemRoot/SYSTEM32.  If you don't like putting things in a | ||||
|   system directory, place them in the same directory as the executable(s). | ||||
|   For example, you can copy the DLL files to the demos directory if you | ||||
|   just want to run the demos. The build process places the DLL and LIB files | ||||
|   in the ./lib directory.  The makefile creates this directory if it does  | ||||
|   not already exist. | ||||
|  | ||||
| - The make targets 'clean' and 'clobber' will remove objects and libraries. | ||||
|   But the files in ./lib are never cleaned. | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
|  | ||||
|                        Mesa 4.0.1 Unix/X11 Information | ||||
|                           Mesa Unix/X11 Information | ||||
|  | ||||
|  | ||||
|  | ||||
| @@ -18,21 +18,15 @@ There are two ways to compile Mesa on Unix/X11 systems: | ||||
|     the top-level Makefile and Make-config files.  There are instructions in | ||||
|     each file. | ||||
|  | ||||
|     When finished, the Mesa libraries will be in the Mesa-x.y/lib/ directory. | ||||
|  | ||||
|  | ||||
| 2. The new way: | ||||
|     Type './configure' and then 'make'.  This uses GNU autoconfig. | ||||
|     Run 'make check' to build the demos. | ||||
|     See docs/INSTALL for more details. | ||||
|  | ||||
|  | ||||
| The top-level makefile will execute the makefiles in a number of sub- | ||||
| directories.  When finished, the Mesa libraries will be in the Mesa-4.0.1/lib/ | ||||
| directory.  A few GLUT demos in the demos/ directory should be ready to run. | ||||
|  | ||||
| If you also downloaded and unpacked the demos there should be executables | ||||
| in the "xdemos/", "samples/", and "book/" directories for you to try out. | ||||
|  | ||||
| If you have compilation problems you should try to fix them and return the | ||||
| patches to the author. | ||||
|     When finished, the Mesa libraries will be in the Mesa-x.y/src/.libs/, | ||||
|     Mesa-x.y/si-glu/.libs, etc directories. | ||||
|  | ||||
|  | ||||
| Notes on assembly language optimizations: | ||||
| @@ -323,4 +317,4 @@ Summary of X-related environment variables: | ||||
|  | ||||
|  | ||||
| ---------------------------------------------------------------------- | ||||
| $Id: README.X11,v 3.8.2.1 2001/11/23 20:47:25 brianp Exp $ | ||||
| $Id: README.X11,v 3.9 2002/10/29 23:42:48 brianp Exp $ | ||||
|   | ||||
							
								
								
									
										22
									
								
								docs/RELNOTES-3.4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								docs/RELNOTES-3.4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,22 @@ | ||||
|  | ||||
|                          Mesa 3.4 release notes | ||||
|  | ||||
|                              November 3, 2000 | ||||
|  | ||||
|                              PLEASE READ!!!! | ||||
|  | ||||
|  | ||||
|  | ||||
| Introduction | ||||
| ------------ | ||||
|  | ||||
| Mesa uses an even/odd version number scheme like the Linux kernel. | ||||
| Odd numbered versions (such as 3.3) designate new developmental releases. | ||||
| Even numbered versions (such as 3.4) designate stable releases. | ||||
|  | ||||
| Mesa 3.4 simply fixes bugs found in the Mesa 3.3 release.  For details, | ||||
| see the VERSIONS file. | ||||
|  | ||||
|  | ||||
| ---------------------------------------------------------------------- | ||||
| $Id: RELNOTES-3.4,v 1.2 2002/03/23 02:37:17 brianp Exp $ | ||||
| @@ -19,4 +19,4 @@ Mesa 4.0.1 only contains bug fixes since version 4.0. | ||||
| See the docs/VERSIONS file for the list of bug fixes. | ||||
|  | ||||
| ---------------------------------------------------------------------- | ||||
| $Id: RELNOTES-4.0.1,v 1.1.2.2 2001/12/17 19:43:38 brianp Exp $ | ||||
| $Id: RELNOTES-4.0.1,v 1.2 2001/12/18 14:08:23 brianp Exp $ | ||||
|   | ||||
							
								
								
									
										50
									
								
								docs/RELNOTES-4.0.2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								docs/RELNOTES-4.0.2
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,50 @@ | ||||
|  | ||||
|                           Mesa 4.0.2 release notes | ||||
|  | ||||
|                              March 25, 2002 | ||||
|  | ||||
|                               PLEASE READ!!!! | ||||
|  | ||||
|  | ||||
|  | ||||
| Introduction | ||||
| ------------ | ||||
|  | ||||
| Mesa uses an even/odd version number scheme like the Linux kernel. | ||||
| Odd numbered versions (such as 3.3) designate new developmental releases. | ||||
| Even numbered versions (such as 3.4) designate stable releases. | ||||
|  | ||||
| Mesa 4.0.2 only contains bug fixes and a new DOS driver since version 4.0.1. | ||||
|  | ||||
| See the docs/VERSIONS file for the list of bug fixes. | ||||
|  | ||||
|  | ||||
| Device Drivers | ||||
| -------------- | ||||
|  | ||||
| Mesa advertises itself as either OpenGL 1.2 or OpenGL 1.3 depending on the | ||||
| device driver.  If the driver enables all the ARB extensions which are part | ||||
| of OpenGL 1.3 then glGetString(GL_VERSION) will return "1.3".  Otherwise, | ||||
| it'll return "1.2". | ||||
|  | ||||
| A number of Mesa's software drivers haven't been actively maintained for | ||||
| some time.  We rely on volunteers to maintain many of the drivers. | ||||
| Here's the current status of all included drivers: | ||||
|  | ||||
| Driver			Status | ||||
| ----------------------	--------------------- | ||||
| XMesa (Xlib)		implements OpenGL 1.3 | ||||
| OSMesa (off-screen)	implements OpenGL 1.3 | ||||
| FX (3dfx Voodoo1/2)	implements OpenGL 1.3 | ||||
| SVGA			implements OpenGL 1.3 | ||||
| Wind River UGL		implements OpenGL 1.3 | ||||
| Windows/Win32		implements OpenGL 1.3 | ||||
| DOS/DJGPP		implements OpenGL 1.3 (new in Mesa 4.0.2) | ||||
| GGI			needs updating | ||||
| BeOS			needs updating | ||||
| Allegro			needs updating | ||||
| D3D			needs updating | ||||
|  | ||||
|  | ||||
| ---------------------------------------------------------------------- | ||||
| $Id: RELNOTES-4.0.2,v 1.2 2002/03/23 02:38:39 brianp Exp $ | ||||
							
								
								
									
										52
									
								
								docs/RELNOTES-4.0.3
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								docs/RELNOTES-4.0.3
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,52 @@ | ||||
|  | ||||
|                           Mesa 4.0.3 release notes | ||||
|  | ||||
|                                June 25, 2002 | ||||
|  | ||||
|                               PLEASE READ!!!! | ||||
|  | ||||
|  | ||||
|  | ||||
| Introduction | ||||
| ------------ | ||||
|  | ||||
| Mesa uses an even/odd version number scheme like the Linux kernel. | ||||
| Odd numbered versions (such as 3.3) designate new developmental releases. | ||||
| Even numbered versions (such as 3.4) designate stable releases. | ||||
|  | ||||
| Mesa 4.0.3 basically just contains bug fixes version 4.0.2. | ||||
|  | ||||
| See the docs/VERSIONS file for the list of bug fixes. | ||||
|  | ||||
| The GGI driver has been updated, thanks to Filip Spacek. | ||||
|  | ||||
|  | ||||
| Device Drivers | ||||
| -------------- | ||||
|  | ||||
| Mesa advertises itself as either OpenGL 1.2 or OpenGL 1.3 depending on the | ||||
| device driver.  If the driver enables all the ARB extensions which are part | ||||
| of OpenGL 1.3 then glGetString(GL_VERSION) will return "1.3".  Otherwise, | ||||
| it'll return "1.2". | ||||
|  | ||||
| A number of Mesa's software drivers haven't been actively maintained for | ||||
| some time.  We rely on volunteers to maintain many of the drivers. | ||||
| Here's the current status of all included drivers: | ||||
|  | ||||
| Driver			Status | ||||
| ----------------------	--------------------- | ||||
| XMesa (Xlib)		implements OpenGL 1.3 | ||||
| OSMesa (off-screen)	implements OpenGL 1.3 | ||||
| FX (3dfx Voodoo1/2)	implements OpenGL 1.3 | ||||
| SVGA			implements OpenGL 1.3 | ||||
| Wind River UGL		implements OpenGL 1.3 | ||||
| Windows/Win32		implements OpenGL 1.3 | ||||
| DOS/DJGPP		implements OpenGL 1.3 (new in Mesa 4.0.2) | ||||
| GGI			implements OpenGL 1.3 | ||||
| BeOS			needs updating | ||||
| Allegro			needs updating | ||||
| D3D			needs updating | ||||
|  | ||||
|  | ||||
| ---------------------------------------------------------------------- | ||||
| $Id: RELNOTES-4.0.3,v 1.2 2002/06/26 02:36:34 brianp Exp $ | ||||
| @@ -1,9 +1,9 @@ | ||||
|  | ||||
|                             Mesa 4.1 release notes | ||||
|  | ||||
|                             <month>, <day>, <year> | ||||
|                                October 29, 2002 | ||||
|  | ||||
|                                PLEASE READ!!!! | ||||
|                                 PLEASE READ!!!! | ||||
|  | ||||
|  | ||||
|  | ||||
| @@ -11,18 +11,298 @@ Introduction | ||||
| ------------ | ||||
|  | ||||
| Mesa uses an even/odd version number scheme like the Linux kernel. | ||||
| Odd numbered versions (such as 4.1) designate new developmental releases. | ||||
| Even numbered versions (such as 4.0) designate stable releases. | ||||
| Odd numbered versions (such as 4.1) designate new developmental releases. | ||||
|  | ||||
|  | ||||
| New Features in Mesa 4.1 | ||||
| ------------------------ | ||||
|  | ||||
| <to be determined> | ||||
| New extensions.  Docs at http://oss.sgi.com/projects/ogl-sample/registry/ | ||||
|  | ||||
| GL_NV_vertex_program | ||||
|  | ||||
|     NVIDIA's vertex programming extension | ||||
|  | ||||
| GL_NV_vertex_program1_1 | ||||
|  | ||||
|     A few features built on top of GL_NV_vertex_program | ||||
|  | ||||
| GL_ARB_window_pos | ||||
|  | ||||
|     This is the ARB-approved version of GL_MESA_window_pos | ||||
|  | ||||
| GL_ARB_depth_texture | ||||
|  | ||||
|     This is the ARB-approved version of GL_SGIX_depth_texture. | ||||
|     It allows depth (Z buffer) data to be stored in textures. | ||||
|     This is used by GL_ARB_shadow | ||||
|  | ||||
| GL_ARB_shadow | ||||
|  | ||||
|     Shadow mapping with depth textures. | ||||
|     This is the ARB-approved version of GL_SGIX_shadow. | ||||
|  | ||||
| GL_ARB_shadow_ambient | ||||
|  | ||||
|     Allows one to specify the luminance of shadowed pixels. | ||||
|     This is the ARB-approved version of GL_SGIX_shadow_ambient. | ||||
|  | ||||
| GL_EXT_shadow_funcs | ||||
|  | ||||
|     Extends the set of GL_ARB_shadow texture comparision functions to | ||||
|     include all eight of standard OpenGL dept-test functions. | ||||
|  | ||||
| GL_ARB_point_parameters | ||||
|  | ||||
|     This is basically the same as GL_EXT_point_parameters. | ||||
|  | ||||
| GL_ARB_texture_env_crossbar | ||||
|  | ||||
|     Allows any texture combine stage to reference any texture source unit. | ||||
|  | ||||
| GL_NV_point_sprite | ||||
|  | ||||
|     For rendering points as textured quads.  Useful for particle effects. | ||||
|  | ||||
| GL_NV_texture_rectangle  (new in 4.0.4 actually) | ||||
|  | ||||
|     Allows one to use textures with sizes that are not powers of two. | ||||
|     Note that mipmapping and several texture wrap modes are not allowed. | ||||
|  | ||||
| GL_EXT_multi_draw_arrays | ||||
|  | ||||
|     Allows arrays of vertex arrays to be rendered with one call. | ||||
|  | ||||
| GL_EXT_stencil_two_side | ||||
|  | ||||
|    Separate stencil modes for front and back-facing polygons. | ||||
|  | ||||
| GLX_SGIX_fbconfig & GLX_SGIX_pbuffer | ||||
|  | ||||
|    Off-screen rendering support. | ||||
|  | ||||
| GL_ATI_texture_mirror_once | ||||
|  | ||||
|    Adds two new texture wrap modes: GL_MIRROR_CLAMP_ATI and | ||||
|    GL_MIRROR_CLAMP_TO_EDGE_ATI. | ||||
|  | ||||
|  | ||||
|  | ||||
| Device Driver Status | ||||
| -------------------- | ||||
|  | ||||
| A number of Mesa's software drivers haven't been actively maintained for | ||||
| some time.  We rely on volunteers to maintain many of these drivers. | ||||
| Here's the current status of all included drivers: | ||||
|  | ||||
|  | ||||
| Driver			Status | ||||
| ----------------------	--------------------- | ||||
| XMesa (Xlib)		implements OpenGL 1.3 | ||||
| OSMesa (off-screen)	implements OpenGL 1.3 | ||||
| FX (3dfx Voodoo1/2)	implements OpenGL 1.3 | ||||
| SVGA			implements OpenGL 1.3 | ||||
| Wind River UGL		implements OpenGL 1.3 | ||||
| Windows/Win32		implements OpenGL 1.3 | ||||
| DOS/DJGPP		implements OpenGL 1.3 | ||||
| GGI			implements OpenGL 1.3 | ||||
| BeOS			needs updating (underway) | ||||
| Allegro			needs updating | ||||
| D3D			needs updating | ||||
| DOS			needs updating | ||||
|  | ||||
|  | ||||
|  | ||||
| New features in GLUT | ||||
| -------------------- | ||||
|  | ||||
| 1. Frames per second printing | ||||
|  | ||||
|    GLUT now looks for an environment variable called "GLUT_FPS".  If it's | ||||
|    set, GLUT will print out a frames/second statistic to stderr when | ||||
|    glutSwapBuffers() is called.  By default, frames/second is computed | ||||
|    and displayed once every 5 seconds.  You can specify a different | ||||
|    interval (in milliseconds) when you set the env var.  For example | ||||
|    'export GLUT_FPS=1000' or 'setenv GLUT_FPS 1000' will set the interval | ||||
|    to one second. | ||||
|  | ||||
|    NOTE: the demo or application must call the glutInit() function for | ||||
|    this to work.  Otherwise, the env var will be ignored. | ||||
|  | ||||
|    Finally, this feature may not be reliable in multi-window programs. | ||||
|  | ||||
|  | ||||
| 2. glutGetProcAddress() function | ||||
|  | ||||
|    The new function: | ||||
|  | ||||
|         void *glutGetProcAddress(const char *procName) | ||||
|  | ||||
|    is a wrapper for glXGetProcAddressARB() and wglGetProcAddress().  It | ||||
|    lets you dynamically get the address of an OpenGL function at runtime. | ||||
|    The GLUT_API_VERSION has been bumped to 5, but I haven't bumped the | ||||
|    GLUT version number from 3.7 since that's probably Mark Kilgard's role. | ||||
|  | ||||
|    This function should probably also be able to return the address of | ||||
|    GLUT functions themselves, but it doesn't do that yet. | ||||
|  | ||||
|  | ||||
|  | ||||
| XXX Things To Do Yet XXXX | ||||
| ------------------------- | ||||
|  | ||||
| isosurf with vertex program exhibits some missing triangles (probably | ||||
| when recycling the vertex buffer for long prims). | ||||
|  | ||||
|  | ||||
|  | ||||
| Porting Info | ||||
| ------------ | ||||
|  | ||||
| If you're porting a DRI or other driver from Mesa 4.0.x to Mesa 4.1 here | ||||
| are some things to change: | ||||
|  | ||||
| 1. ctx->Texture._ReallyEnabled is obsolete. | ||||
|  | ||||
|    Since there are now 5 texture targets (1D, 2D, 3D, cube and rect) that | ||||
|    left room for only 6 units (6*5 < 32) in this field. | ||||
|    This field is being replaced by ctx->Texture._EnabledUnits which has one | ||||
|    bit per texture unit.  If the bit k of _EnabledUnits is set, that means | ||||
|    ctx->Texture.Unit[k]._ReallyEnabled is non-zero.  You'll have to look at | ||||
|    ctx->Texture.Unit[k]._ReallyEnabled to learn if the 1D, 2D, 3D, cube or | ||||
|    rect texture is enabled for unit k. | ||||
|  | ||||
|    This also means that the constants TEXTURE1_*, TEXTURE2_*, etc are | ||||
|    obsolete. | ||||
|  | ||||
|    The tokens TEXTURE0_* have been replaced as well (since there's no | ||||
|    significance to the "0" part: | ||||
|  | ||||
|    old token           new token | ||||
|    TEXTURE0_1D         TEXTURE_1D_BIT | ||||
|    TEXTURE0_2D         TEXTURE_2D_BIT | ||||
|    TEXTURE0_3D         TEXTURE_3D_BIT | ||||
|    TEXTURE0_CUBE       TEXTURE_CUBE_BIT | ||||
|    <none>              TEXTURE_RECT_BIT | ||||
|  | ||||
|    These tokens are only used for the ctx->Texture.Unit[i].Enabled and | ||||
|    ctx->Texture.Unit[i]._ReallyEnabled fields.  Exactly 0 or 1 bits will | ||||
|    be set in _ReallyEnabled at any time! | ||||
|  | ||||
|    Q: "What's the purpose of Unit[i].Enabled vs Unit[i]._ReallyEnabled?" | ||||
|    A: The user can enable GL_TEXTURE_1D, GL_TEXTURE_2D, etc for any | ||||
|       texure unit all at once (an unusual thing to do). | ||||
|       OpenGL defines priorities that basically say GL_TEXTURE_2D has | ||||
|       higher priority than GL_TEXTURE_1D, etc.  Also, just because a | ||||
|       texture target is enabled by the user doesn't mean we'll actually | ||||
|       use that texture!  If a texture object is incomplete (missing mip- | ||||
|       map levels, etc) it's as if texturing is disabled for that target. | ||||
|       The _ReallyEnabled field will have a bit set ONLY if the texture | ||||
|       target is enabled and complete.  This spares the driver writer from | ||||
|       examining a _lot_ of GL state to determine which texture target is | ||||
|       to be used. | ||||
|  | ||||
|  | ||||
| 2. Tnl tokens changes | ||||
|  | ||||
|    During the implementation of GL_NV_vertex_program some of the vertex | ||||
|    buffer code was changed.  Specifically, the VERT_* bits defined in | ||||
|    tnl/t_context.h have been renamed to better match the conventions of | ||||
|    GL_NV_vertex_program.  The old names are still present but obsolete. | ||||
|    Drivers should use the newer names. | ||||
|  | ||||
|    For example:  VERT_RGBA is now VERT_BIT_COLOR0 and | ||||
|    VERT_SPEC_RGB is now VERT_BIT_COLOR1. | ||||
|  | ||||
|  | ||||
|  | ||||
| 3. Read/Draw Buffer changes | ||||
|  | ||||
|    The business of setting the current read/draw buffers in Mesa 4.0.x | ||||
|    was complicated.  It's much simpler now in Mesa 4.1. | ||||
|  | ||||
|    Here are the changes: | ||||
|  | ||||
|    - Renamed ctx->Color.DrawDestMask to ctx->Color._DrawDestMask | ||||
|    - Removed ctx->Color.DriverDrawBuffer | ||||
|    - Removed ctx->Pixel.DriverReadBuffer | ||||
|    - Removed ctx->Color.MultiDrawBuffer | ||||
|    - Removed ctx->Driver.SetDrawBuffer() | ||||
|    - Removed swrast->Driver.SetReadBuffer(). | ||||
|    - Added ctx->Color._DrawDestMask - a bitmask of FRONT/BACK_LEFT/RIGHT_BIT | ||||
|      values to indicate the current draw buffers. | ||||
|    - Added ctx->Pixel._ReadSrcMask to indicate the source for pixel reading. | ||||
|      The value is _one_ of the FRONT/BACK_LEFT/RIGHT_BIT values. | ||||
|    - Added ctx->Driver.DrawBuffer() and ctx->Driver.ReadBuffer(). | ||||
|      These functions exactly correspond to glDrawBuffer and glReadBuffer calls. | ||||
|      Many drivers will set ctx->Driver.DrawBuffer = _swrast_DrawBuffer and | ||||
|      leave ctx->Draw.ReadBuffer NULL. | ||||
|      DRI drivers should implement their own function for ctx->Driver.DrawBuffer | ||||
|      and use it to set the current hardware drawing buffer.  You'll probably | ||||
|      also want to check for GL_FRONT_AND_BACK mode and fall back to software. | ||||
|      Call _swrast_DrawBuffer() too, to update the swrast state. | ||||
|    - Added swrast->Driver.SetBuffer(). | ||||
|      This function should be implemented by all device drivers that use swrast. | ||||
|      Mesa will call it to specify the buffer to use for span reading AND | ||||
|      writing and point/line/triangle rendering. | ||||
|      There should be no confusion between current read or draw buffer anymore. | ||||
|    - Added swrast->CurrentBuffer to indicate which color buffer to read/draw. | ||||
|      Will be FRONT_LEFT_BIT, BACK_LEFT_BIT, FRONT_RIGHT_BIT or BACK_RIGHT_BIT. | ||||
|      This value is usually passed to swrast->Driver.SetBuffer(). | ||||
|  | ||||
|  | ||||
| 4. _mesa_create_context() changes.  This function now takes a pointer to | ||||
|    a __GLimports object.  The __GLimports structure contains function | ||||
|    pointers to system functions like fprintf(), malloc(), etc. | ||||
|    The _mesa_init_default_imports() function can be used to initialize | ||||
|    a __GLimports object.  Most device drivers (like the DRI drivers) | ||||
|    should use this. | ||||
|  | ||||
|  | ||||
| 5. In tnl's struct vertex_buffer, the field "ProjectedClipCoords" | ||||
|    has been replaced by "NdcPtr" to better match the OpenGL spec's | ||||
|    terminology. | ||||
|  | ||||
|  | ||||
| 6. Since GL_EXT_stencil_two_side has been implemented, many of the | ||||
|    ctx->Stencil fields are now 2-element arrays.  For example, | ||||
|    "GLenum Ref" is now "GLenum Ref[2]"  The [0] elements are the front-face | ||||
|    values and the [1] elements are the back-face values. | ||||
|    ctx->Stencil.ActiveFace is 0 or 1 to indicate the current face for | ||||
|    the glStencilOp/Func/Mask() functions. | ||||
|    ctx->Stencil.TestTwoSide controls whether or not 1 or 2-sided stenciling | ||||
|    is enabled. | ||||
|  | ||||
|  | ||||
| 7. Removed ctx->Polygon._OffsetAny.  Removed ctx->Polygon.OffsetMRD. | ||||
|  | ||||
|  | ||||
| 8. GLfloat / GLchan changes: | ||||
|  | ||||
|    - Changed ctx->Driver.ClearColor() to take GLfloat[4] instead of GLchan[4]. | ||||
|      ctx->Color.ClearColor is now GLfloat[4] too. | ||||
|    - Changed ctx->Driver.AlphaRef() to take GLfloat instead of GLchan. | ||||
|    - ctx->Color.AlphaRef is now GLfloat. | ||||
|    - texObj->BorderColor is now GLfloat[4].  texObj->_BorderChan is GLchan[4]. | ||||
|  | ||||
|    This is part of an effort to remove all GLchan types from core Mesa so | ||||
|    that someday we can support 8, 16 and 32-bit color channels dynamically | ||||
|    at runtime, instead of at compile-time. | ||||
|  | ||||
|  | ||||
| 9. GLboolean ctx->Tranform.ClipEnabled[MAX_CLIP_PLANES] has been replaced | ||||
|    by GLuint ctx->Transform.ClipPlanesEnabled.  The later is a bitfield. | ||||
|  | ||||
|  | ||||
| 10. There's a new matrix_stack type in mtypes.h used for the Modelview, | ||||
|    Projection, Color and Texcoord matrix stacks. | ||||
|  | ||||
|  | ||||
| 11. The ctx->Current.* fields have changed a lot.  Now, there's a | ||||
|    ctx->Current.Attrib[] array for all vertex attributes which matches | ||||
|    the NV vertex program conventions. | ||||
|  | ||||
|  | ||||
| ---------------------------------------------------------------------- | ||||
| $Id: RELNOTES-4.1,v 1.1 2001/10/22 22:57:23 brianp Exp $ | ||||
| $Id: RELNOTES-4.1,v 1.22 2002/10/29 15:06:37 brianp Exp $ | ||||
|   | ||||
							
								
								
									
										85
									
								
								docs/RELNOTES-5.0
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										85
									
								
								docs/RELNOTES-5.0
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,85 @@ | ||||
|  | ||||
|                             Mesa 5.0 release notes | ||||
|  | ||||
|                               November 13, 2002 | ||||
|  | ||||
|                                 PLEASE READ!!!! | ||||
|  | ||||
|  | ||||
|  | ||||
| Introduction | ||||
| ------------ | ||||
|  | ||||
| Mesa uses an even/odd version number scheme like the Linux kernel. | ||||
| Even-numbered versions (such as 5.0) designate stable releases. | ||||
| Odd-numbered versions (such as 4.1) designate new developmental releases. | ||||
|  | ||||
| Mesa 5.0 is basically just a stabilization of Mesa 4.1.  To see a list of | ||||
| bug fixes, etc. see the VERSIONS file. | ||||
|  | ||||
|  | ||||
|  | ||||
| New Features in Mesa 5.0 | ||||
| ------------------------ | ||||
|  | ||||
| Mesa 5.0 supports OpenGL 1.4.  Note Mesa's versioning convention: | ||||
|  | ||||
|    OpenGL Version    Mesa Version | ||||
|    ------------------------------ | ||||
|         1.0             1.x | ||||
|         1.1             2.x | ||||
|         1.2             3.x | ||||
|         1.3             4.x | ||||
|         1.4             5.x | ||||
|  | ||||
| OpenGL 1.4 (and Mesa 5.0) incorporates the following OpenGL extensions as | ||||
| standard features: | ||||
|  | ||||
| 	GL_ARB_depth_texture | ||||
| 	GL_ARB_shadow | ||||
| 	GL_ARB_texture_env_crossbar | ||||
| 	GL_ARB_texture_mirror_repeat | ||||
| 	GL_ARB_window_pos | ||||
| 	GL_EXT_blend_color | ||||
| 	GL_EXT_blend_func_separate | ||||
| 	GL_EXT_blend_logic_op | ||||
| 	GL_EXT_blend_minmax | ||||
| 	GL_EXT_blend_subtract | ||||
| 	GL_EXT_fog_coord | ||||
| 	GL_EXT_multi_draw_arrays | ||||
| 	GL_EXT_point_parameters | ||||
| 	GL_EXT_secondary_color | ||||
| 	GL_EXT_stencil_wrap | ||||
| 	GL_SGIS_generate_mipmap | ||||
|  | ||||
|  | ||||
|  | ||||
| Device Driver Status | ||||
| -------------------- | ||||
|  | ||||
| A number of Mesa's software drivers haven't been actively maintained for | ||||
| some time.  We rely on volunteers to maintain many of these drivers. | ||||
| Here's the current status of all included drivers: | ||||
|  | ||||
|  | ||||
| Driver			Status | ||||
| ----------------------	--------------------- | ||||
| XMesa (Xlib)		implements OpenGL 1.4 | ||||
| OSMesa (off-screen)	implements OpenGL 1.4 | ||||
| FX (3dfx Voodoo1/2)	implements OpenGL 1.3 | ||||
| SVGA			implements OpenGL 1.3 | ||||
| Wind River UGL		implements OpenGL 1.3 | ||||
| Windows/Win32		implements OpenGL 1.4 | ||||
| DOS/DJGPP		implements OpenGL 1.3 | ||||
| GGI			implements OpenGL 1.3 | ||||
| DOS			implements OpenGL 1.4 | ||||
| BeOS			needs updating (underway) | ||||
| Allegro			needs updating | ||||
| D3D			needs updating | ||||
|  | ||||
| Note: supporting OpenGL 1.4 (vs. 1.3 or 1.2) usually only requires that the | ||||
| driver call the _mesa_enable_1_4_extensions() function. | ||||
|  | ||||
|  | ||||
| ---------------------------------------------------------------------- | ||||
| $Id: RELNOTES-5.0,v 3.2 2002/11/13 15:33:51 brianp Exp $ | ||||
							
								
								
									
										158
									
								
								docs/VERSIONS
									
									
									
									
									
								
							
							
						
						
									
										158
									
								
								docs/VERSIONS
									
									
									
									
									
								
							| @@ -1,4 +1,4 @@ | ||||
| $Id: VERSIONS,v 1.73.2.14 2001/12/15 00:50:55 brianp Exp $ | ||||
| $Id: VERSIONS,v 1.118 2002/11/13 15:33:50 brianp Exp $ | ||||
|  | ||||
|  | ||||
| Mesa Version History | ||||
| @@ -898,6 +898,7 @@ Mesa Version History | ||||
| 	- lighting didn't always produce the correct alpha value | ||||
| 	- fixed 3DNow! code to not read past end of arrays (Andrew Lewycky) | ||||
|  | ||||
|  | ||||
| 4.0.1 December 17, 2001 | ||||
|     New: | ||||
| 	- better sub-pixel sample positions for AA triangles (Ray Tice) | ||||
| @@ -924,3 +925,158 @@ Mesa Version History | ||||
| 	- glTexParameter didn't flush the vertex buffer (Ray Tice) | ||||
| 	- feedback attributes for glDraw/CopyPixels and glBitmap were wrong | ||||
| 	- fixed bug in normal length caching (ParaView lighting bug) | ||||
| 	- fixed separate_specular color bug found in Chimera (18 Dec 2001) | ||||
|  | ||||
|  | ||||
| 4.0.2  April 2, 2002 | ||||
|     New: | ||||
| 	- New DOS (DJGPP) driver written by Daniel Borca | ||||
| 	- New driver interface functions for TCL drivers (such as Radeon DRI) | ||||
| 	- GL_RENDERER string returns "Mesa Offscreen16" or "Mesa Offscreen32" | ||||
| 	  if using deep color channels | ||||
| 	- latest GL/glext.h and GL/glxext.h headers from SGI | ||||
|     Bug fixes: | ||||
| 	- GL_BLEND with non-black texture env color wasn't always correct | ||||
| 	- GL_REPLACE with GL_RGB texture format wasn't always correct (alpha) | ||||
| 	- glTexEnviv( pname != GL_TEXTURE_ENV_COLOR ) was broken | ||||
| 	- glReadPixels was sometimes mistakenly clipped by the scissor box | ||||
| 	- glDraw/ReadPixels didn't catch all the errors that they should have | ||||
| 	- Fixed 24bpp rendering problem in Windows driver (Karl Schultz) | ||||
| 	- 16-bit GLchan mode fixes (m_trans_tmp.h, s_triangle.c) | ||||
| 	- Fixed 1-bit float->int conversion bug in glDrawPixels(GL_DEPTH_COMP) | ||||
| 	- glColorMask as sometimes effecting glXSwapBuffers() | ||||
| 	- fixed a potential bug in XMesaGarbageCollect() | ||||
| 	- N threads rendering into one window didn't work reliably | ||||
| 	- glCopyPixels didn't work for deep color channels | ||||
| 	- improved 8 -> 16bit/channel texture image conversion (Gerk Huisma) | ||||
| 	- glPopAttrib() didn't correctly restore user clip planes | ||||
| 	- user clip planes failed for some perspective projections (Chromium) | ||||
|     Known bugs: | ||||
| 	- mipmap LOD computation | ||||
|  | ||||
|  | ||||
| 4.0.3  June 25, 2002 | ||||
|     New: | ||||
| 	- updated GL/glext.h file (version 15) | ||||
| 	- corrected MMX blend code (Jose Fonseca) | ||||
| 	- support for software-based alpha planes in Windows driver | ||||
| 	- updated GGI driver (Filip Spacek) | ||||
|     Bug fixes: | ||||
| 	- glext.h had wrong values for GL_DOT3_RGB[A]_EXT tokens | ||||
| 	- OSMesaMakeCurrent() didn't recognize buffer size changes | ||||
| 	- assorted conformance fixes for 16-bit/channel rendering | ||||
| 	- texcombine alpha subtraction mode was broken | ||||
| 	- fixed lighting bug with non-uniform scaling and display lists | ||||
| 	- fixed bug when deleting shared display lists | ||||
| 	- disabled SPARC cliptest assembly code (Mesa bug 544665) | ||||
| 	- fixed a couple Solaris compilation/link problems | ||||
| 	- blending clipped glDrawPixels didn't always work | ||||
| 	- glGetTexImage() didn't accept packed pixel types | ||||
| 	- glPixelMapu[is]v() could explode given too large of pixelmap | ||||
| 	- glGetTexParameter[if]v() didn't accept GL_TEXTURE_MAX_ANISOTROPY_EXT | ||||
| 	- glXCopyContext() could lead to segfaults | ||||
| 	- glCullFace(GL_FRONT_AND_BACK) didn't work (bug 572665) | ||||
|     Changes: | ||||
| 	- lots of C++ (g++) code clean-ups | ||||
| 	- lots of T&L updates for the Radeon DRI driver | ||||
|     Known bugs: | ||||
| 	- mipmap LOD computation (fixed for Mesa 4.1) | ||||
|  | ||||
|  | ||||
| 4.0.4  October 3, 2002 | ||||
|     New: | ||||
| 	- GL_NV_texture_rectangle extension | ||||
| 	- updated glext.h header (version 17) | ||||
| 	- updated DOS driver (Daniel Borca) | ||||
| 	- updated BeOS R5 driver (Philippe Houdoin) | ||||
| 	- added GL_IBM_texture_mirror_repeat | ||||
| 	- glxinfo now takes -l option to print interesting OpenGL limits info | ||||
| 	- GL_MESA_ycbcr_texture extension | ||||
| 	- GL_APPLE_client_storage extension (for some DRI drivers only) | ||||
| 	- GL_MESA_pack_invert extension | ||||
|     Bug fixes: | ||||
| 	- fixed GL_LINEAR fog bug by adding clamping | ||||
| 	- fixed FP exceptions found using Alpha CPU | ||||
| 	- 3dfx MESA_GLX_FX=window (render to window) didn't work | ||||
| 	- fixed memory leak in wglCreateContest (Karl Schultz) | ||||
| 	- define GLAPIENTRY and GLAPI if undefined in glu.h | ||||
| 	- wglGetProcAddress didn't handle all API functions | ||||
| 	- when testing for OpenGL 1.2 vs 1.3, check for GL_ARB_texture_cube_map | ||||
| 	- removed GL_MAX_CONVOLUTION_WIDTH/HEIGHT from glGetInteger/Float/etc() | ||||
| 	- error checking in compressed tex image functions had some glitches | ||||
| 	- fixed AIX compile problem in src/config.c | ||||
| 	- glGetTexImage was using pixel unpacking instead of packing params | ||||
| 	- auto-mipmap generation for cube maps was incorrect | ||||
|     Changes: | ||||
| 	- max texture units reduced to six to accomodate texture rectangles | ||||
| 	- removed unfinished GL_MESA_sprite_point extension code | ||||
|  | ||||
|  | ||||
| 4.1  October 29, 2002 | ||||
|     New: | ||||
| 	- GL_NV_vertex_program extension | ||||
| 	- GL_NV_vertex_program1_1 extension | ||||
| 	- GL_ARB_window_pos extension | ||||
| 	- GL_ARB_depth_texture extension | ||||
| 	- GL_ARB_shadow extension | ||||
| 	- GL_ARB_shadow_ambient extension | ||||
| 	- GL_EXT_shadow_funcs extension | ||||
| 	- GL_ARB_point_parameters extension | ||||
| 	- GL_ARB_texture_env_crossbar | ||||
| 	- GL_NV_point_sprite extension | ||||
| 	- GL_NV_texture_rectangle extension | ||||
| 	- GL_EXT_multi_draw_arrays extension | ||||
| 	- GL_EXT_stencil_two_side extension | ||||
| 	- GLX_SGIX_fbconfig and GLX_SGIX_pbuffer extensions | ||||
| 	- GL_ATI_texture_mirror_once extension (Ian Romanick) | ||||
| 	- massive overhaul/simplification of software rasterizer module, | ||||
| 	  many contributions from Klaus Niederkrueger | ||||
| 	- faster software texturing in some cases (i.e. trilinear filtering) | ||||
| 	- new OSMesaGetProcAddress() function | ||||
| 	- more blend modes implemented with MMX code (Jose Fonseca) | ||||
| 	- added glutGetProcAddress() to GLUT | ||||
| 	- added GLUT_FPS env var to compute frames/second in glutSwapBuffers() | ||||
| 	- pbinfo and pbdemo PBuffer programs | ||||
| 	- glxinfo -v prints transprent pixel info (Gerd Sussner) | ||||
|     Bug fixes: | ||||
| 	- better mipmap LOD computation (prevents excessive blurriness) | ||||
| 	- OSMesaMakeCurrent() didn't recognize buffer size changes | ||||
| 	- assorted conformance fixes for 16-bit/channel rendering | ||||
| 	- texcombine alpha subtraction mode was broken | ||||
| 	- fixed some blend problems when GLchan==GLfloat (Gerk Huisma) | ||||
| 	- clamp colors to [0,inf] in OSMesa if GLchan==GLfloat (Gerk Huisma) | ||||
| 	- fixed divide by zero error in NURBS tessellator (Jon Perry) | ||||
| 	- fixed GL_LINEAR fog bug by adding clamping | ||||
| 	- fixed FP exceptions found using Alpha CPU | ||||
| 	- 3dfx/glide driver render-to-window feature was broken | ||||
| 	- added missing GLX_TRANSPARENT_RGB token to glx.h | ||||
| 	- fixed error checking related to paletted textures | ||||
| 	- fixed reference count error in glDeleteTextures (Randy Fayan) | ||||
|     Changes: | ||||
| 	- New spec file and Python code to generate some GL dispatch files | ||||
| 	- Glide driver defaults to "no" with autoconf/automake | ||||
| 	- updated demos/stex3d with new options | ||||
|  | ||||
|  | ||||
| 5.0  November 13, 2002 | ||||
|     New: | ||||
| 	- OpenGL 1.4 support (glGetString(GL_VERSION) returns "1.4") | ||||
| 	- removed some overlooked debugging code | ||||
| 	- glxinfo updated to support GLX_ARB_multisample | ||||
| 	- GLUT now support GLX_ARB_multisample | ||||
| 	- updated DOS driver (Daniel Borca) | ||||
|     Bug fixes: | ||||
| 	- GL_POINT and GL_LINE-mode polygons didn't obey cull state | ||||
| 	- fixed potential bug in _mesa_align_malloc/calloc() | ||||
| 	- fixed missing triangle bug when running vertex programs | ||||
| 	- fixed a few HPUX compilation problems | ||||
| 	- FX (Glide) driver didn't compile | ||||
| 	- setting GL_TEXTURE_BORDER_COLOR with glTexParameteriv() didn't work | ||||
| 	- a few EXT functions, like glGenTexturesEXT, were no-ops | ||||
| 	- a few OpenGL 1.4 functions like glFogCoord*, glBlendFuncSeparate, | ||||
| 	  glMultiDrawArrays and glMultiDrawElements were missing | ||||
| 	- glGet*(GL_ACTIVE_STENCIL_FACE_EXT) was broken | ||||
| 	- Pentium 4 Mobile was mistakenly identified as having 3DNow! | ||||
| 	- fixed one-bit error in point/line fragment Z calculation | ||||
| 	- fixed potential segfault in fakeglx code | ||||
| 	- fixed color overflow problem in DOT3 texture env mode | ||||
|   | ||||
							
								
								
									
										90
									
								
								docs/index.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										90
									
								
								docs/index.html
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,90 @@ | ||||
| <HTML> | ||||
| <HEAD> | ||||
|   <TITLE>Index to Mesa Documentation</TITLE> | ||||
| </HEAD> | ||||
|  | ||||
| <BODY> | ||||
|  | ||||
| <H1>Main Documentation</H1> | ||||
| <UL> | ||||
| <LI><A HREF="README">README</A> - general, top-level documentation | ||||
| <LI><A HREF="INSTALL">INSTALL</A> - compilation/installation instructions | ||||
| <LI><A HREF="VERSIONS">VERSIONS</A> - version history / change log | ||||
| <LI><A HREF="COPYRIGHT">COPYRIGHT</A> - copyright and license information | ||||
| <LI><A HREF="COPYING">COPYING</A> - some parts of Mesa are GPL'd | ||||
| <LI><A HREF="CONFORM">CONFORM</A> | ||||
|     - results of running the OpenGL conformance tests | ||||
| <LI><A HREF="DEVINFO">DEVINFO</A> - information for Mesa developers | ||||
| <LI><A HREF="http://www.mesa3d.org/">www.mesa3d.org</A> - Mesa website | ||||
| </UL> | ||||
|  | ||||
| <H1>Platform and Driver Information</H1> | ||||
| <P> | ||||
| Be warned, some of these files may be very out of date. | ||||
| </P> | ||||
| <UL> | ||||
| <LI><A HREF="README.X11">README.X11</A> - X Window System / Unix / Linux | ||||
| <LI><A HREF="README.WIN32">README.WIN32</A> - Microsoft Windows | ||||
| <LI><A HREF="README.VMS">README.VMS</A> - DEC VMS | ||||
| <LI><A HREF="README.GGI">README.GGI</A> - GGI | ||||
| <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.BEOS">README.BEOS</A> - BeOS | ||||
| <LI><A HREF="README.D3D">README.D3D</A> - Direct3D driver | ||||
| <LI><A HREF="README.DJ">README.DJ</A> - DJGPP | ||||
| <LI><A HREF="README.LYNXOS">README.LYNXOS</A> - LynxOS | ||||
| <LI><A HREF="README.MINGW32">README.MINGW32</A> - Mingw32 | ||||
| <LI><A HREF="README.NeXT">README.NeXT</A> - NeXT | ||||
| <LI><A HREF="README.OpenStep">README.OpenStep</A> - OpenStep | ||||
| <LI><A HREF="README.OS2">README.OS2</A> - OS/2 | ||||
| <LI><A HREF="README.WINDML">README.WINDML</A> - WindML | ||||
| </UL> | ||||
|  | ||||
| <H1>Release Notes</H1> | ||||
| <UL> | ||||
| <LI><A HREF="RELNOTES-5.0">RELNOTES-5.0</A> | ||||
| <LI><A HREF="RELNOTES-4.1">RELNOTES-4.1</A> | ||||
| <LI><A HREF="RELNOTES-4.0.3">RELNOTES-4.0.3</A> | ||||
| <LI><A HREF="RELNOTES-4.0.2">RELNOTES-4.0.2</A> | ||||
| <LI><A HREF="RELNOTES-4.0.1">RELNOTES-4.0.1</A> | ||||
| <LI><A HREF="RELNOTES-4.0">RELNOTES-4.0</A> | ||||
| <LI><A HREF="RELNOTES-3.5">RELNOTES-3.5</A> | ||||
| <LI><A HREF="RELNOTES-3.4.2">RELNOTES-3.4.2</A> | ||||
| <LI><A HREF="RELNOTES-3.4.1">RELNOTES-3.4.1</A> | ||||
| <LI><A HREF="RELNOTES-3.4">RELNOTES-3.4</A> | ||||
| <LI><A HREF="RELNOTES-3.3">RELNOTES-3.3</A> | ||||
| <LI><A HREF="RELNOTES-3.2.1">RELNOTES-3.2.1</A> | ||||
| <LI><A HREF="RELNOTES-3.2">RELNOTES-3.2</A> | ||||
| <LI><A HREF="RELNOTES-3.1">RELNOTES-3.1</A> | ||||
| </UL> | ||||
|  | ||||
| <H1>Mesa Extension Specifications</H1> | ||||
| <UL> | ||||
| <LI><A HREF="MESA_agp_offset.spec">MESA_agp_offset.spec</A> | ||||
| <LI><A HREF="MESA_copy_sub_buffer.spec">MESA_copy_sub_buffer.spec</A> | ||||
| <LI><A HREF="MESA_packed_depth_stencil.spec">MESA_packed_depth_stencil.spec</A> | ||||
| <LI><A HREF="MESA_pack_invert.spec">MESA_pack_invert.spec</A> | ||||
| <LI><A HREF="MESA_pixmap_colormap.spec">MESA_pixmap_colormap.spec</A> | ||||
| <LI><A HREF="MESA_release_buffers.spec">MESA_release_buffers.spec</A> | ||||
| <LI><A HREF="MESA_resize_buffers.spec">MESA_resize_buffers.spec</A> | ||||
| <LI><A HREF="MESA_set_3dfx_mode.spec">MESA_set_3dfx_mode.spec</A> | ||||
| <LI><A HREF="MESA_sprite_point.spec">MESA_sprite_point.spec</A> (obsolete) | ||||
| <LI><A HREF="MESA_trace.spec">MESA_trace.spec</A> (obsolete) | ||||
| <LI><A HREF="MESA_window_pos.spec">MESA_window_pos.spec</A> | ||||
| <LI><A HREF="MESA_ycbcr_texture.spec">MESA_ycbcr_texture.spec</A> | ||||
| </UL> | ||||
|  | ||||
| <H1>Source Code Documentation</H1> | ||||
| <P> | ||||
| <A HREF="http://www.doxygen.org">Doxygen</A> is used to automatically | ||||
| produce cross-referenced documentation from the Mesa sources. | ||||
| This is not included in the normal Mesa distribution. | ||||
| Download Mesa from CVS if interested. | ||||
| </P> | ||||
| <P> | ||||
| <A HREF="../doxy/core/index.html">Source documentation</A> | ||||
| </P> | ||||
|  | ||||
|  | ||||
| </BODY> | ||||
| </HTML> | ||||
							
								
								
									
										9
									
								
								doxygen/README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								doxygen/README
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
|  | ||||
| This directory is for doxygen (a source code documentation system). | ||||
|  | ||||
| See http://www.doxygen.org/ for more info. | ||||
|  | ||||
| Either run 'make' (Unix) or 'doxy.bat' (Windows) to run doxygen | ||||
| and generate souce code documentation. | ||||
|  | ||||
| Then, load doxy/core.index.html into your web browser. | ||||
							
								
								
									
										183
									
								
								doxygen/array_cache.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										183
									
								
								doxygen/array_cache.doxy
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,183 @@ | ||||
| # Doxyfile 0.1 | ||||
|  | ||||
| #--------------------------------------------------------------------------- | ||||
| # General configuration options | ||||
| #--------------------------------------------------------------------------- | ||||
| PROJECT_NAME           = "Mesa array_cache" | ||||
| PROJECT_NUMBER         = 4.1 | ||||
| OUTPUT_DIRECTORY       = . | ||||
| OUTPUT_LANGUAGE        = English | ||||
| EXTRACT_ALL            = YES | ||||
| EXTRACT_PRIVATE        = NO | ||||
| EXTRACT_STATIC         = NO | ||||
| EXTRACT_LOCAL_CLASSES  = YES | ||||
| HIDE_UNDOC_MEMBERS     = NO | ||||
| HIDE_UNDOC_CLASSES     = NO | ||||
| BRIEF_MEMBER_DESC      = YES | ||||
| REPEAT_BRIEF           = YES | ||||
| ALWAYS_DETAILED_SEC    = NO | ||||
| INLINE_INHERITED_MEMB  = NO | ||||
| FULL_PATH_NAMES        = NO | ||||
| STRIP_FROM_PATH        =  | ||||
| INTERNAL_DOCS          = NO | ||||
| STRIP_CODE_COMMENTS    = YES | ||||
| CASE_SENSE_NAMES       = YES | ||||
| SHORT_NAMES            = NO | ||||
| HIDE_SCOPE_NAMES       = NO | ||||
| VERBATIM_HEADERS       = YES | ||||
| SHOW_INCLUDE_FILES     = YES | ||||
| JAVADOC_AUTOBRIEF      = NO | ||||
| INHERIT_DOCS           = YES | ||||
| INLINE_INFO            = YES | ||||
| SORT_MEMBER_DOCS       = NO | ||||
| DISTRIBUTE_GROUP_DOC   = NO | ||||
| TAB_SIZE               = 8 | ||||
| GENERATE_TODOLIST      = YES | ||||
| GENERATE_TESTLIST      = YES | ||||
| GENERATE_BUGLIST       = YES | ||||
| ALIASES                =  | ||||
| ENABLED_SECTIONS       =  | ||||
| MAX_INITIALIZER_LINES  = 30 | ||||
| OPTIMIZE_OUTPUT_FOR_C  = YES | ||||
| SHOW_USED_FILES        = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to warning and progress messages | ||||
| #--------------------------------------------------------------------------- | ||||
| QUIET                  = YES | ||||
| WARNINGS               = YES | ||||
| WARN_IF_UNDOCUMENTED   = YES | ||||
| WARN_FORMAT            =  | ||||
| WARN_LOGFILE           =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the input files | ||||
| #--------------------------------------------------------------------------- | ||||
| INPUT                  = ../src/array_cache/ | ||||
| FILE_PATTERNS          = *.c \ | ||||
|                          *.h | ||||
| RECURSIVE              = NO | ||||
| EXCLUDE                =  | ||||
| EXCLUDE_PATTERNS       =  | ||||
| EXAMPLE_PATH           =  | ||||
| EXAMPLE_PATTERNS       =  | ||||
| EXAMPLE_RECURSIVE      = NO | ||||
| IMAGE_PATH             =  | ||||
| INPUT_FILTER           =  | ||||
| FILTER_SOURCE_FILES    = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to source browsing | ||||
| #--------------------------------------------------------------------------- | ||||
| SOURCE_BROWSER         = NO | ||||
| INLINE_SOURCES         = NO | ||||
| REFERENCED_BY_RELATION = YES | ||||
| REFERENCES_RELATION    = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the alphabetical class index | ||||
| #--------------------------------------------------------------------------- | ||||
| ALPHABETICAL_INDEX     = YES | ||||
| COLS_IN_ALPHA_INDEX    = 5 | ||||
| IGNORE_PREFIX          =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the HTML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_HTML          = YES | ||||
| HTML_OUTPUT            = array_cache | ||||
| HTML_HEADER            = header.html | ||||
| HTML_FOOTER            =  | ||||
| HTML_STYLESHEET        =  | ||||
| HTML_ALIGN_MEMBERS     = YES | ||||
| GENERATE_HTMLHELP      = NO | ||||
| GENERATE_CHI           = NO | ||||
| BINARY_TOC             = NO | ||||
| TOC_EXPAND             = NO | ||||
| DISABLE_INDEX          = NO | ||||
| ENUM_VALUES_PER_LINE   = 4 | ||||
| GENERATE_TREEVIEW      = NO | ||||
| TREEVIEW_WIDTH         = 250 | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the LaTeX output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_LATEX         = NO | ||||
| LATEX_OUTPUT           =  | ||||
| COMPACT_LATEX          = NO | ||||
| PAPER_TYPE             = a4wide | ||||
| EXTRA_PACKAGES         =  | ||||
| LATEX_HEADER           =  | ||||
| PDF_HYPERLINKS         = NO | ||||
| USE_PDFLATEX           = NO | ||||
| LATEX_BATCHMODE        = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the RTF output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_RTF           = NO | ||||
| RTF_OUTPUT             =  | ||||
| COMPACT_RTF            = NO | ||||
| RTF_HYPERLINKS         = NO | ||||
| RTF_STYLESHEET_FILE    =  | ||||
| RTF_EXTENSIONS_FILE    =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the man page output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_MAN           = NO | ||||
| MAN_OUTPUT             =  | ||||
| MAN_EXTENSION          =  | ||||
| MAN_LINKS              = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the XML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_XML           = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options for the AutoGen Definitions output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_AUTOGEN_DEF   = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the preprocessor    | ||||
| #--------------------------------------------------------------------------- | ||||
| ENABLE_PREPROCESSING   = YES | ||||
| MACRO_EXPANSION        = NO | ||||
| EXPAND_ONLY_PREDEF     = NO | ||||
| SEARCH_INCLUDES        = YES | ||||
| INCLUDE_PATH           =  | ||||
| INCLUDE_FILE_PATTERNS  =  | ||||
| PREDEFINED             =  | ||||
| EXPAND_AS_DEFINED      =  | ||||
| SKIP_FUNCTION_MACROS   = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to external references    | ||||
| #--------------------------------------------------------------------------- | ||||
| TAGFILES               = core.tag=../core \ | ||||
| 			 tnl.tag=../tnl \ | ||||
| 			 swrast_setup.tag=../swrast_setup \ | ||||
| 			 swrast.tag=../swrast \ | ||||
| 			 math.tag=../math \ | ||||
| 			 tnl_dd.tag=../tnl_dd | ||||
| GENERATE_TAGFILE       = array_cache.tag | ||||
| ALLEXTERNALS           = NO | ||||
| PERL_PATH              =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the dot tool    | ||||
| #--------------------------------------------------------------------------- | ||||
| CLASS_DIAGRAMS         = YES | ||||
| HAVE_DOT               = NO | ||||
| CLASS_GRAPH            = YES | ||||
| COLLABORATION_GRAPH    = YES | ||||
| TEMPLATE_RELATIONS     = YES | ||||
| HIDE_UNDOC_RELATIONS   = YES | ||||
| INCLUDE_GRAPH          = YES | ||||
| INCLUDED_BY_GRAPH      = YES | ||||
| GRAPHICAL_HIERARCHY    = YES | ||||
| DOT_PATH               =  | ||||
| DOTFILE_DIRS           =  | ||||
| MAX_DOT_GRAPH_WIDTH    = 1024 | ||||
| MAX_DOT_GRAPH_HEIGHT   = 1024 | ||||
| GENERATE_LEGEND        = YES | ||||
| DOT_CLEANUP            = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to the search engine    | ||||
| #--------------------------------------------------------------------------- | ||||
| SEARCHENGINE           = NO | ||||
| CGI_NAME               =  | ||||
| CGI_URL                =  | ||||
| DOC_URL                =  | ||||
| DOC_ABSPATH            =  | ||||
| BIN_ABSPATH            =  | ||||
| EXT_DOC_PATHS          =  | ||||
							
								
								
									
										183
									
								
								doxygen/core.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										183
									
								
								doxygen/core.doxy
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,183 @@ | ||||
| # Doxyfile 0.1 | ||||
|  | ||||
| #--------------------------------------------------------------------------- | ||||
| # General configuration options | ||||
| #--------------------------------------------------------------------------- | ||||
| PROJECT_NAME           = "Mesa Core" | ||||
| PROJECT_NUMBER         = 4.1 | ||||
| OUTPUT_DIRECTORY       =  | ||||
| OUTPUT_LANGUAGE        = English | ||||
| EXTRACT_ALL            = YES | ||||
| EXTRACT_PRIVATE        = NO | ||||
| EXTRACT_STATIC         = NO | ||||
| EXTRACT_LOCAL_CLASSES  = YES | ||||
| HIDE_UNDOC_MEMBERS     = NO | ||||
| HIDE_UNDOC_CLASSES     = NO | ||||
| BRIEF_MEMBER_DESC      = YES | ||||
| REPEAT_BRIEF           = YES | ||||
| ALWAYS_DETAILED_SEC    = NO | ||||
| INLINE_INHERITED_MEMB  = NO | ||||
| FULL_PATH_NAMES        = NO | ||||
| STRIP_FROM_PATH        =  | ||||
| INTERNAL_DOCS          = NO | ||||
| STRIP_CODE_COMMENTS    = YES | ||||
| CASE_SENSE_NAMES       = YES | ||||
| SHORT_NAMES            = NO | ||||
| HIDE_SCOPE_NAMES       = NO | ||||
| VERBATIM_HEADERS       = YES | ||||
| SHOW_INCLUDE_FILES     = YES | ||||
| JAVADOC_AUTOBRIEF      = NO | ||||
| INHERIT_DOCS           = YES | ||||
| INLINE_INFO            = YES | ||||
| SORT_MEMBER_DOCS       = NO | ||||
| DISTRIBUTE_GROUP_DOC   = NO | ||||
| TAB_SIZE               = 8 | ||||
| GENERATE_TODOLIST      = YES | ||||
| GENERATE_TESTLIST      = YES | ||||
| GENERATE_BUGLIST       = YES | ||||
| ALIASES                =  | ||||
| ENABLED_SECTIONS       =  | ||||
| MAX_INITIALIZER_LINES  = 30 | ||||
| OPTIMIZE_OUTPUT_FOR_C  = YES | ||||
| SHOW_USED_FILES        = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to warning and progress messages | ||||
| #--------------------------------------------------------------------------- | ||||
| QUIET                  = YES | ||||
| WARNINGS               = YES | ||||
| WARN_IF_UNDOCUMENTED   = YES | ||||
| WARN_FORMAT            =  | ||||
| WARN_LOGFILE           =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the input files | ||||
| #--------------------------------------------------------------------------- | ||||
| INPUT                  = ../src/ | ||||
| FILE_PATTERNS          = *.h *.c | ||||
| RECURSIVE              = NO | ||||
| EXCLUDE                = ../src/glapitemp.h ../src/glapioffsets.h | ||||
| EXCLUDE_PATTERNS       =  | ||||
| EXAMPLE_PATH           =  | ||||
| EXAMPLE_PATTERNS       =  | ||||
| EXAMPLE_RECURSIVE      = NO | ||||
| IMAGE_PATH             =  | ||||
| INPUT_FILTER           =  | ||||
| FILTER_SOURCE_FILES    = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to source browsing | ||||
| #--------------------------------------------------------------------------- | ||||
| SOURCE_BROWSER         = NO | ||||
| INLINE_SOURCES         = NO | ||||
| REFERENCED_BY_RELATION = YES | ||||
| REFERENCES_RELATION    = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the alphabetical class index | ||||
| #--------------------------------------------------------------------------- | ||||
| ALPHABETICAL_INDEX     = YES | ||||
| COLS_IN_ALPHA_INDEX    = 5 | ||||
| IGNORE_PREFIX          = _ | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the HTML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_HTML          = YES | ||||
| HTML_OUTPUT            = core | ||||
| HTML_HEADER            = header.html | ||||
| HTML_FOOTER            =  | ||||
| HTML_STYLESHEET        =  | ||||
| HTML_ALIGN_MEMBERS     = YES | ||||
| GENERATE_HTMLHELP      = NO | ||||
| GENERATE_CHI           = NO | ||||
| BINARY_TOC             = NO | ||||
| TOC_EXPAND             = NO | ||||
| DISABLE_INDEX          = NO | ||||
| ENUM_VALUES_PER_LINE   = 4 | ||||
| GENERATE_TREEVIEW      = NO | ||||
| TREEVIEW_WIDTH         = 250 | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the LaTeX output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_LATEX         = NO | ||||
| LATEX_OUTPUT           =  | ||||
| COMPACT_LATEX          = NO | ||||
| PAPER_TYPE             = a4wide | ||||
| EXTRA_PACKAGES         =  | ||||
| LATEX_HEADER           =  | ||||
| PDF_HYPERLINKS         = NO | ||||
| USE_PDFLATEX           = NO | ||||
| LATEX_BATCHMODE        = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the RTF output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_RTF           = NO | ||||
| RTF_OUTPUT             =  | ||||
| COMPACT_RTF            = NO | ||||
| RTF_HYPERLINKS         = NO | ||||
| RTF_STYLESHEET_FILE    =  | ||||
| RTF_EXTENSIONS_FILE    =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the man page output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_MAN           = NO | ||||
| MAN_OUTPUT             =  | ||||
| MAN_EXTENSION          =  | ||||
| MAN_LINKS              = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the XML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_XML           = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options for the AutoGen Definitions output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_AUTOGEN_DEF   = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the preprocessor    | ||||
| #--------------------------------------------------------------------------- | ||||
| ENABLE_PREPROCESSING   = YES | ||||
| MACRO_EXPANSION        = NO | ||||
| EXPAND_ONLY_PREDEF     = NO | ||||
| SEARCH_INCLUDES        = YES | ||||
| INCLUDE_PATH           = ../include/ | ||||
| INCLUDE_FILE_PATTERNS  =  | ||||
| PREDEFINED             =  | ||||
| EXPAND_AS_DEFINED      =  | ||||
| SKIP_FUNCTION_MACROS   = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to external references    | ||||
| #--------------------------------------------------------------------------- | ||||
| TAGFILES		= tnl_dd.tag=../tnl_dd \ | ||||
| 			 array_cache.tag=../array_cache \ | ||||
|                          math.tag=../math \ | ||||
|                          swrast.tag=../swrast \ | ||||
|                          swrast_setup.tag=../swrast_setup \ | ||||
|                          tnl.tag=../tnl \ | ||||
|                          array_cache.tag=array_cache | ||||
| GENERATE_TAGFILE       = core.tag | ||||
| ALLEXTERNALS           = NO | ||||
| PERL_PATH              =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the dot tool    | ||||
| #--------------------------------------------------------------------------- | ||||
| CLASS_DIAGRAMS         = NO | ||||
| HAVE_DOT               = NO | ||||
| CLASS_GRAPH            = YES | ||||
| COLLABORATION_GRAPH    = YES | ||||
| TEMPLATE_RELATIONS     = YES | ||||
| HIDE_UNDOC_RELATIONS   = YES | ||||
| INCLUDE_GRAPH          = YES | ||||
| INCLUDED_BY_GRAPH      = YES | ||||
| GRAPHICAL_HIERARCHY    = YES | ||||
| DOT_PATH               =  | ||||
| DOTFILE_DIRS           =  | ||||
| MAX_DOT_GRAPH_WIDTH    = 1024 | ||||
| MAX_DOT_GRAPH_HEIGHT   = 1024 | ||||
| GENERATE_LEGEND        = YES | ||||
| DOT_CLEANUP            = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to the search engine    | ||||
| #--------------------------------------------------------------------------- | ||||
| SEARCHENGINE           = NO | ||||
| CGI_NAME               =  | ||||
| CGI_URL                =  | ||||
| DOC_URL                =  | ||||
| DOC_ABSPATH            =  | ||||
| BIN_ABSPATH            =  | ||||
| EXT_DOC_PATHS          =  | ||||
							
								
								
									
										14
									
								
								doxygen/doxy.bat
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								doxygen/doxy.bat
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| doxygen tnl_dd.doxy | ||||
| doxygen array_cache.doxy | ||||
| doxygen math.doxy | ||||
| doxygen swrast.doxy | ||||
| doxygen swrast_setup.doxy | ||||
| doxygen tnl.doxy | ||||
| doxygen core.doxy | ||||
| echo Building again, to resolve tags | ||||
| doxygen tnl_dd.doxy | ||||
| doxygen array_cache.doxy | ||||
| doxygen math.doxy | ||||
| doxygen swrast.doxy | ||||
| doxygen swrast_setup.doxy | ||||
| doxygen tnl.doxy | ||||
							
								
								
									
										12
									
								
								doxygen/header.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								doxygen/header.html
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,12 @@ | ||||
| <html><head><title>Mesa API docs</title> | ||||
| <link href="doxygen.css" rel="stylesheet" type="text/css"> | ||||
| </head> | ||||
| <body><center> | ||||
| <a href="../array_cache/index.html">array_cache</a>  | ||||
| <a href="../core/index.html">core</a>  | ||||
| <a href="../math/index.html">math</a>  | ||||
| <a href="../swrast/index.html">swrast</a>  | ||||
| <a href="../swrast_setup/index.html">swrast_setup</a>  | ||||
| <a href="../tnl/index.html">tnl</a>  | ||||
| <a href="../tnl_dd/index.html">tnl_dd</a>  | ||||
| </center> | ||||
							
								
								
									
										21
									
								
								doxygen/makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								doxygen/makefile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,21 @@ | ||||
| default: | ||||
| 	doxygen tnl_dd.doxy | ||||
| 	doxygen array_cache.doxy | ||||
| 	doxygen math.doxy | ||||
| 	doxygen swrast.doxy | ||||
| 	doxygen swrast_setup.doxy | ||||
| 	doxygen tnl.doxy | ||||
| 	doxygen core.doxy | ||||
| 	echo "Building again, to resolve tags" | ||||
| 	doxygen tnl_dd.doxy | ||||
| 	doxygen array_cache.doxy | ||||
| 	doxygen math.doxy | ||||
| 	doxygen swrast.doxy | ||||
| 	doxygen swrast_setup.doxy | ||||
| 	doxygen tnl.doxy | ||||
|  | ||||
|  | ||||
| clean: | ||||
| 	rm -rf array_cache core math swrast swrast_setup tnl_dd tnl | ||||
| 	rm -rf *.tag | ||||
|  | ||||
							
								
								
									
										183
									
								
								doxygen/math.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										183
									
								
								doxygen/math.doxy
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,183 @@ | ||||
| # Doxyfile 0.1 | ||||
|  | ||||
| #--------------------------------------------------------------------------- | ||||
| # General configuration options | ||||
| #--------------------------------------------------------------------------- | ||||
| PROJECT_NAME           = "Mesa math" | ||||
| PROJECT_NUMBER         = 4.1 | ||||
| OUTPUT_DIRECTORY       = . | ||||
| OUTPUT_LANGUAGE        = English | ||||
| EXTRACT_ALL            = YES | ||||
| EXTRACT_PRIVATE        = NO | ||||
| EXTRACT_STATIC         = NO | ||||
| EXTRACT_LOCAL_CLASSES  = YES | ||||
| HIDE_UNDOC_MEMBERS     = NO | ||||
| HIDE_UNDOC_CLASSES     = NO | ||||
| BRIEF_MEMBER_DESC      = YES | ||||
| REPEAT_BRIEF           = YES | ||||
| ALWAYS_DETAILED_SEC    = NO | ||||
| INLINE_INHERITED_MEMB  = NO | ||||
| FULL_PATH_NAMES        = NO | ||||
| STRIP_FROM_PATH        =  | ||||
| INTERNAL_DOCS          = NO | ||||
| STRIP_CODE_COMMENTS    = YES | ||||
| CASE_SENSE_NAMES       = YES | ||||
| SHORT_NAMES            = NO | ||||
| HIDE_SCOPE_NAMES       = NO | ||||
| VERBATIM_HEADERS       = YES | ||||
| SHOW_INCLUDE_FILES     = YES | ||||
| JAVADOC_AUTOBRIEF      = NO | ||||
| INHERIT_DOCS           = YES | ||||
| INLINE_INFO            = YES | ||||
| SORT_MEMBER_DOCS       = NO | ||||
| DISTRIBUTE_GROUP_DOC   = NO | ||||
| TAB_SIZE               = 8 | ||||
| GENERATE_TODOLIST      = YES | ||||
| GENERATE_TESTLIST      = YES | ||||
| GENERATE_BUGLIST       = YES | ||||
| ALIASES                =  | ||||
| ENABLED_SECTIONS       =  | ||||
| MAX_INITIALIZER_LINES  = 30 | ||||
| OPTIMIZE_OUTPUT_FOR_C  = YES | ||||
| SHOW_USED_FILES        = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to warning and progress messages | ||||
| #--------------------------------------------------------------------------- | ||||
| QUIET                  = YES | ||||
| WARNINGS               = YES | ||||
| WARN_IF_UNDOCUMENTED   = YES | ||||
| WARN_FORMAT            =  | ||||
| WARN_LOGFILE           =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the input files | ||||
| #--------------------------------------------------------------------------- | ||||
| INPUT                  = ../src/math/ | ||||
| FILE_PATTERNS          = *.c \ | ||||
|                          *.h | ||||
| RECURSIVE              = NO | ||||
| EXCLUDE                =  | ||||
| EXCLUDE_PATTERNS       =  | ||||
| EXAMPLE_PATH           =  | ||||
| EXAMPLE_PATTERNS       =  | ||||
| EXAMPLE_RECURSIVE      = NO | ||||
| IMAGE_PATH             =  | ||||
| INPUT_FILTER           =  | ||||
| FILTER_SOURCE_FILES    = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to source browsing | ||||
| #--------------------------------------------------------------------------- | ||||
| SOURCE_BROWSER         = NO | ||||
| INLINE_SOURCES         = NO | ||||
| REFERENCED_BY_RELATION = YES | ||||
| REFERENCES_RELATION    = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the alphabetical class index | ||||
| #--------------------------------------------------------------------------- | ||||
| ALPHABETICAL_INDEX     = YES | ||||
| COLS_IN_ALPHA_INDEX    = 5 | ||||
| IGNORE_PREFIX          =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the HTML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_HTML          = YES | ||||
| HTML_OUTPUT            = math | ||||
| HTML_HEADER            = header.html | ||||
| HTML_FOOTER            =  | ||||
| HTML_STYLESHEET        =  | ||||
| HTML_ALIGN_MEMBERS     = YES | ||||
| GENERATE_HTMLHELP      = NO | ||||
| GENERATE_CHI           = NO | ||||
| BINARY_TOC             = NO | ||||
| TOC_EXPAND             = NO | ||||
| DISABLE_INDEX          = NO | ||||
| ENUM_VALUES_PER_LINE   = 4 | ||||
| GENERATE_TREEVIEW      = NO | ||||
| TREEVIEW_WIDTH         = 250 | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the LaTeX output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_LATEX         = NO | ||||
| LATEX_OUTPUT           =  | ||||
| COMPACT_LATEX          = NO | ||||
| PAPER_TYPE             = a4wide | ||||
| EXTRA_PACKAGES         =  | ||||
| LATEX_HEADER           =  | ||||
| PDF_HYPERLINKS         = NO | ||||
| USE_PDFLATEX           = NO | ||||
| LATEX_BATCHMODE        = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the RTF output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_RTF           = NO | ||||
| RTF_OUTPUT             =  | ||||
| COMPACT_RTF            = NO | ||||
| RTF_HYPERLINKS         = NO | ||||
| RTF_STYLESHEET_FILE    =  | ||||
| RTF_EXTENSIONS_FILE    =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the man page output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_MAN           = NO | ||||
| MAN_OUTPUT             =  | ||||
| MAN_EXTENSION          =  | ||||
| MAN_LINKS              = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the XML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_XML           = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options for the AutoGen Definitions output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_AUTOGEN_DEF   = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the preprocessor    | ||||
| #--------------------------------------------------------------------------- | ||||
| ENABLE_PREPROCESSING   = YES | ||||
| MACRO_EXPANSION        = NO | ||||
| EXPAND_ONLY_PREDEF     = NO | ||||
| SEARCH_INCLUDES        = YES | ||||
| INCLUDE_PATH           =  | ||||
| INCLUDE_FILE_PATTERNS  =  | ||||
| PREDEFINED             =  | ||||
| EXPAND_AS_DEFINED      =  | ||||
| SKIP_FUNCTION_MACROS   = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to external references    | ||||
| #--------------------------------------------------------------------------- | ||||
| TAGFILES               = tnl_dd.tag=../tnl_dd \ | ||||
|                          core.tag=../core \ | ||||
|                          swrast.tag=../swrast \ | ||||
|                          swrast_setup.tag=../swrast_setup \ | ||||
|                          tnl.tag=../tnl \ | ||||
|                          array_cache.tag=../array_cache | ||||
| GENERATE_TAGFILE       = math.tag | ||||
| ALLEXTERNALS           = NO | ||||
| PERL_PATH              =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the dot tool    | ||||
| #--------------------------------------------------------------------------- | ||||
| CLASS_DIAGRAMS         = YES | ||||
| HAVE_DOT               = NO | ||||
| CLASS_GRAPH            = YES | ||||
| COLLABORATION_GRAPH    = YES | ||||
| TEMPLATE_RELATIONS     = YES | ||||
| HIDE_UNDOC_RELATIONS   = YES | ||||
| INCLUDE_GRAPH          = YES | ||||
| INCLUDED_BY_GRAPH      = YES | ||||
| GRAPHICAL_HIERARCHY    = YES | ||||
| DOT_PATH               =  | ||||
| DOTFILE_DIRS           =  | ||||
| MAX_DOT_GRAPH_WIDTH    = 1024 | ||||
| MAX_DOT_GRAPH_HEIGHT   = 1024 | ||||
| GENERATE_LEGEND        = YES | ||||
| DOT_CLEANUP            = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to the search engine    | ||||
| #--------------------------------------------------------------------------- | ||||
| SEARCHENGINE           = NO | ||||
| CGI_NAME               =  | ||||
| CGI_URL                =  | ||||
| DOC_URL                =  | ||||
| DOC_ABSPATH            =  | ||||
| BIN_ABSPATH            =  | ||||
| EXT_DOC_PATHS          =  | ||||
							
								
								
									
										183
									
								
								doxygen/swrast.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										183
									
								
								doxygen/swrast.doxy
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,183 @@ | ||||
| # Doxyfile 0.1 | ||||
|  | ||||
| #--------------------------------------------------------------------------- | ||||
| # General configuration options | ||||
| #--------------------------------------------------------------------------- | ||||
| PROJECT_NAME           = "Mesa swrast" | ||||
| PROJECT_NUMBER         = 4.1 | ||||
| OUTPUT_DIRECTORY       =  | ||||
| OUTPUT_LANGUAGE        = English | ||||
| EXTRACT_ALL            = NO | ||||
| EXTRACT_PRIVATE        = NO | ||||
| EXTRACT_STATIC         = NO | ||||
| EXTRACT_LOCAL_CLASSES  = YES | ||||
| HIDE_UNDOC_MEMBERS     = NO | ||||
| HIDE_UNDOC_CLASSES     = NO | ||||
| BRIEF_MEMBER_DESC      = YES | ||||
| REPEAT_BRIEF           = YES | ||||
| ALWAYS_DETAILED_SEC    = NO | ||||
| INLINE_INHERITED_MEMB  = NO | ||||
| FULL_PATH_NAMES        = NO | ||||
| STRIP_FROM_PATH        =  | ||||
| INTERNAL_DOCS          = NO | ||||
| STRIP_CODE_COMMENTS    = YES | ||||
| CASE_SENSE_NAMES       = YES | ||||
| SHORT_NAMES            = NO | ||||
| HIDE_SCOPE_NAMES       = NO | ||||
| VERBATIM_HEADERS       = YES | ||||
| SHOW_INCLUDE_FILES     = YES | ||||
| JAVADOC_AUTOBRIEF      = NO | ||||
| INHERIT_DOCS           = YES | ||||
| INLINE_INFO            = YES | ||||
| SORT_MEMBER_DOCS       = NO | ||||
| DISTRIBUTE_GROUP_DOC   = NO | ||||
| TAB_SIZE               = 8 | ||||
| GENERATE_TODOLIST      = YES | ||||
| GENERATE_TESTLIST      = YES | ||||
| GENERATE_BUGLIST       = YES | ||||
| ALIASES                =  | ||||
| ENABLED_SECTIONS       =  | ||||
| MAX_INITIALIZER_LINES  = 30 | ||||
| OPTIMIZE_OUTPUT_FOR_C  = NO | ||||
| SHOW_USED_FILES        = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to warning and progress messages | ||||
| #--------------------------------------------------------------------------- | ||||
| QUIET                  = YES | ||||
| WARNINGS               = YES | ||||
| WARN_IF_UNDOCUMENTED   = YES | ||||
| WARN_FORMAT            =  | ||||
| WARN_LOGFILE           =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the input files | ||||
| #--------------------------------------------------------------------------- | ||||
| INPUT                  = ../src/swrast/ | ||||
| FILE_PATTERNS          = *.c \ | ||||
|                          *.h | ||||
| RECURSIVE              = NO | ||||
| EXCLUDE                =  | ||||
| EXCLUDE_PATTERNS       =  | ||||
| EXAMPLE_PATH           =  | ||||
| EXAMPLE_PATTERNS       =  | ||||
| EXAMPLE_RECURSIVE      = NO | ||||
| IMAGE_PATH             =  | ||||
| INPUT_FILTER           =  | ||||
| FILTER_SOURCE_FILES    = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to source browsing | ||||
| #--------------------------------------------------------------------------- | ||||
| SOURCE_BROWSER         = NO | ||||
| INLINE_SOURCES         = NO | ||||
| REFERENCED_BY_RELATION = YES | ||||
| REFERENCES_RELATION    = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the alphabetical class index | ||||
| #--------------------------------------------------------------------------- | ||||
| ALPHABETICAL_INDEX     = YES | ||||
| COLS_IN_ALPHA_INDEX    = 5 | ||||
| IGNORE_PREFIX          =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the HTML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_HTML          = YES | ||||
| HTML_OUTPUT            = swrast | ||||
| HTML_HEADER            = header.html | ||||
| HTML_FOOTER            =  | ||||
| HTML_STYLESHEET        =  | ||||
| HTML_ALIGN_MEMBERS     = YES | ||||
| GENERATE_HTMLHELP      = NO | ||||
| GENERATE_CHI           = NO | ||||
| BINARY_TOC             = NO | ||||
| TOC_EXPAND             = NO | ||||
| DISABLE_INDEX          = NO | ||||
| ENUM_VALUES_PER_LINE   = 4 | ||||
| GENERATE_TREEVIEW      = NO | ||||
| TREEVIEW_WIDTH         = 250 | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the LaTeX output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_LATEX         = NO | ||||
| LATEX_OUTPUT           =  | ||||
| COMPACT_LATEX          = NO | ||||
| PAPER_TYPE             = a4wide | ||||
| EXTRA_PACKAGES         =  | ||||
| LATEX_HEADER           =  | ||||
| PDF_HYPERLINKS         = NO | ||||
| USE_PDFLATEX           = NO | ||||
| LATEX_BATCHMODE        = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the RTF output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_RTF           = NO | ||||
| RTF_OUTPUT             =  | ||||
| COMPACT_RTF            = NO | ||||
| RTF_HYPERLINKS         = NO | ||||
| RTF_STYLESHEET_FILE    =  | ||||
| RTF_EXTENSIONS_FILE    =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the man page output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_MAN           = NO | ||||
| MAN_OUTPUT             =  | ||||
| MAN_EXTENSION          =  | ||||
| MAN_LINKS              = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the XML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_XML           = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options for the AutoGen Definitions output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_AUTOGEN_DEF   = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the preprocessor    | ||||
| #--------------------------------------------------------------------------- | ||||
| ENABLE_PREPROCESSING   = YES | ||||
| MACRO_EXPANSION        = NO | ||||
| EXPAND_ONLY_PREDEF     = NO | ||||
| SEARCH_INCLUDES        = YES | ||||
| INCLUDE_PATH           =  | ||||
| INCLUDE_FILE_PATTERNS  =  | ||||
| PREDEFINED             =  | ||||
| EXPAND_AS_DEFINED      =  | ||||
| SKIP_FUNCTION_MACROS   = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to external references    | ||||
| #--------------------------------------------------------------------------- | ||||
| TAGFILES               = core.tag=../core \ | ||||
|                          math.tag=../math \ | ||||
|                          tnl_dd.tag=../tnl_dd \ | ||||
|                          swrast_setup.tag=../swrast_setup \ | ||||
|                          tnl.tag=../tnl \ | ||||
|                          array_cache.tag=array_cache | ||||
| GENERATE_TAGFILE       = swrast.tag | ||||
| ALLEXTERNALS           = NO | ||||
| PERL_PATH              =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the dot tool    | ||||
| #--------------------------------------------------------------------------- | ||||
| CLASS_DIAGRAMS         = YES | ||||
| HAVE_DOT               = NO | ||||
| CLASS_GRAPH            = YES | ||||
| COLLABORATION_GRAPH    = YES | ||||
| TEMPLATE_RELATIONS     = YES | ||||
| HIDE_UNDOC_RELATIONS   = YES | ||||
| INCLUDE_GRAPH          = YES | ||||
| INCLUDED_BY_GRAPH      = YES | ||||
| GRAPHICAL_HIERARCHY    = YES | ||||
| DOT_PATH               =  | ||||
| DOTFILE_DIRS           =  | ||||
| MAX_DOT_GRAPH_WIDTH    = 1024 | ||||
| MAX_DOT_GRAPH_HEIGHT   = 1024 | ||||
| GENERATE_LEGEND        = YES | ||||
| DOT_CLEANUP            = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to the search engine    | ||||
| #--------------------------------------------------------------------------- | ||||
| SEARCHENGINE           = NO | ||||
| CGI_NAME               =  | ||||
| CGI_URL                =  | ||||
| DOC_URL                =  | ||||
| DOC_ABSPATH            =  | ||||
| BIN_ABSPATH            =  | ||||
| EXT_DOC_PATHS          =  | ||||
							
								
								
									
										183
									
								
								doxygen/swrast_setup.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										183
									
								
								doxygen/swrast_setup.doxy
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,183 @@ | ||||
| # Doxyfile 0.1 | ||||
|  | ||||
| #--------------------------------------------------------------------------- | ||||
| # General configuration options | ||||
| #--------------------------------------------------------------------------- | ||||
| PROJECT_NAME           = "Mesa swrast_setup" | ||||
| PROJECT_NUMBER         = 4.1 | ||||
| OUTPUT_DIRECTORY       =  | ||||
| OUTPUT_LANGUAGE        = English | ||||
| EXTRACT_ALL            = YES | ||||
| EXTRACT_PRIVATE        = NO | ||||
| EXTRACT_STATIC         = NO | ||||
| EXTRACT_LOCAL_CLASSES  = YES | ||||
| HIDE_UNDOC_MEMBERS     = NO | ||||
| HIDE_UNDOC_CLASSES     = NO | ||||
| BRIEF_MEMBER_DESC      = YES | ||||
| REPEAT_BRIEF           = YES | ||||
| ALWAYS_DETAILED_SEC    = NO | ||||
| INLINE_INHERITED_MEMB  = NO | ||||
| FULL_PATH_NAMES        = NO | ||||
| STRIP_FROM_PATH        =  | ||||
| INTERNAL_DOCS          = NO | ||||
| STRIP_CODE_COMMENTS    = YES | ||||
| CASE_SENSE_NAMES       = YES | ||||
| SHORT_NAMES            = NO | ||||
| HIDE_SCOPE_NAMES       = NO | ||||
| VERBATIM_HEADERS       = YES | ||||
| SHOW_INCLUDE_FILES     = YES | ||||
| JAVADOC_AUTOBRIEF      = NO | ||||
| INHERIT_DOCS           = YES | ||||
| INLINE_INFO            = YES | ||||
| SORT_MEMBER_DOCS       = NO | ||||
| DISTRIBUTE_GROUP_DOC   = NO | ||||
| TAB_SIZE               = 8 | ||||
| GENERATE_TODOLIST      = YES | ||||
| GENERATE_TESTLIST      = YES | ||||
| GENERATE_BUGLIST       = YES | ||||
| ALIASES                =  | ||||
| ENABLED_SECTIONS       =  | ||||
| MAX_INITIALIZER_LINES  = 30 | ||||
| OPTIMIZE_OUTPUT_FOR_C  = YES | ||||
| SHOW_USED_FILES        = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to warning and progress messages | ||||
| #--------------------------------------------------------------------------- | ||||
| QUIET                  = YES | ||||
| WARNINGS               = YES | ||||
| WARN_IF_UNDOCUMENTED   = YES | ||||
| WARN_FORMAT            =  | ||||
| WARN_LOGFILE           =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the input files | ||||
| #--------------------------------------------------------------------------- | ||||
| INPUT                  = ../src/swrast_setup/ | ||||
| FILE_PATTERNS          = *.c \ | ||||
|                          *.h | ||||
| RECURSIVE              = NO | ||||
| EXCLUDE                =  | ||||
| EXCLUDE_PATTERNS       =  | ||||
| EXAMPLE_PATH           =  | ||||
| EXAMPLE_PATTERNS       =  | ||||
| EXAMPLE_RECURSIVE      = NO | ||||
| IMAGE_PATH             =  | ||||
| INPUT_FILTER           =  | ||||
| FILTER_SOURCE_FILES    = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to source browsing | ||||
| #--------------------------------------------------------------------------- | ||||
| SOURCE_BROWSER         = NO | ||||
| INLINE_SOURCES         = NO | ||||
| REFERENCED_BY_RELATION = YES | ||||
| REFERENCES_RELATION    = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the alphabetical class index | ||||
| #--------------------------------------------------------------------------- | ||||
| ALPHABETICAL_INDEX     = YES | ||||
| COLS_IN_ALPHA_INDEX    = 5 | ||||
| IGNORE_PREFIX          =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the HTML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_HTML          = YES | ||||
| HTML_OUTPUT            = swrast_setup | ||||
| HTML_HEADER            = header.html | ||||
| HTML_FOOTER            =  | ||||
| HTML_STYLESHEET        =  | ||||
| HTML_ALIGN_MEMBERS     = YES | ||||
| GENERATE_HTMLHELP      = NO | ||||
| GENERATE_CHI           = NO | ||||
| BINARY_TOC             = NO | ||||
| TOC_EXPAND             = NO | ||||
| DISABLE_INDEX          = NO | ||||
| ENUM_VALUES_PER_LINE   = 4 | ||||
| GENERATE_TREEVIEW      = NO | ||||
| TREEVIEW_WIDTH         = 250 | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the LaTeX output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_LATEX         = NO | ||||
| LATEX_OUTPUT           =  | ||||
| COMPACT_LATEX          = NO | ||||
| PAPER_TYPE             = a4wide | ||||
| EXTRA_PACKAGES         =  | ||||
| LATEX_HEADER           =  | ||||
| PDF_HYPERLINKS         = NO | ||||
| USE_PDFLATEX           = NO | ||||
| LATEX_BATCHMODE        = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the RTF output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_RTF           = NO | ||||
| RTF_OUTPUT             =  | ||||
| COMPACT_RTF            = NO | ||||
| RTF_HYPERLINKS         = NO | ||||
| RTF_STYLESHEET_FILE    =  | ||||
| RTF_EXTENSIONS_FILE    =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the man page output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_MAN           = NO | ||||
| MAN_OUTPUT             =  | ||||
| MAN_EXTENSION          =  | ||||
| MAN_LINKS              = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the XML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_XML           = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options for the AutoGen Definitions output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_AUTOGEN_DEF   = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the preprocessor    | ||||
| #--------------------------------------------------------------------------- | ||||
| ENABLE_PREPROCESSING   = YES | ||||
| MACRO_EXPANSION        = NO | ||||
| EXPAND_ONLY_PREDEF     = NO | ||||
| SEARCH_INCLUDES        = YES | ||||
| INCLUDE_PATH           =  | ||||
| INCLUDE_FILE_PATTERNS  =  | ||||
| PREDEFINED             =  | ||||
| EXPAND_AS_DEFINED      =  | ||||
| SKIP_FUNCTION_MACROS   = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to external references    | ||||
| #--------------------------------------------------------------------------- | ||||
| TAGFILES               = tnl_dd.tag=../tnl_dd \ | ||||
|                          core.tag=../core \ | ||||
|                          math.tag=../math \ | ||||
|                          swrast.tag=../swrast \ | ||||
|                          tnl.tag=../tnl \ | ||||
|                          array_cache.tag=../array_cache | ||||
| GENERATE_TAGFILE       = swrast_setup.tag | ||||
| ALLEXTERNALS           = YES | ||||
| PERL_PATH              =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the dot tool    | ||||
| #--------------------------------------------------------------------------- | ||||
| CLASS_DIAGRAMS         = YES | ||||
| HAVE_DOT               = NO | ||||
| CLASS_GRAPH            = YES | ||||
| COLLABORATION_GRAPH    = YES | ||||
| TEMPLATE_RELATIONS     = YES | ||||
| HIDE_UNDOC_RELATIONS   = YES | ||||
| INCLUDE_GRAPH          = YES | ||||
| INCLUDED_BY_GRAPH      = YES | ||||
| GRAPHICAL_HIERARCHY    = YES | ||||
| DOT_PATH               =  | ||||
| DOTFILE_DIRS           =  | ||||
| MAX_DOT_GRAPH_WIDTH    = 1024 | ||||
| MAX_DOT_GRAPH_HEIGHT   = 1024 | ||||
| GENERATE_LEGEND        = YES | ||||
| DOT_CLEANUP            = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to the search engine    | ||||
| #--------------------------------------------------------------------------- | ||||
| SEARCHENGINE           = NO | ||||
| CGI_NAME               =  | ||||
| CGI_URL                =  | ||||
| DOC_URL                =  | ||||
| DOC_ABSPATH            =  | ||||
| BIN_ABSPATH            =  | ||||
| EXT_DOC_PATHS          =  | ||||
							
								
								
									
										183
									
								
								doxygen/tnl.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										183
									
								
								doxygen/tnl.doxy
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,183 @@ | ||||
| # Doxyfile 0.1 | ||||
|  | ||||
| #--------------------------------------------------------------------------- | ||||
| # General configuration options | ||||
| #--------------------------------------------------------------------------- | ||||
| PROJECT_NAME           = "Mesa tnl" | ||||
| PROJECT_NUMBER         = 4.1 | ||||
| OUTPUT_DIRECTORY       =  | ||||
| OUTPUT_LANGUAGE        = English | ||||
| EXTRACT_ALL            = YES | ||||
| EXTRACT_PRIVATE        = NO | ||||
| EXTRACT_STATIC         = NO | ||||
| EXTRACT_LOCAL_CLASSES  = YES | ||||
| HIDE_UNDOC_MEMBERS     = NO | ||||
| HIDE_UNDOC_CLASSES     = NO | ||||
| BRIEF_MEMBER_DESC      = YES | ||||
| REPEAT_BRIEF           = YES | ||||
| ALWAYS_DETAILED_SEC    = NO | ||||
| INLINE_INHERITED_MEMB  = NO | ||||
| FULL_PATH_NAMES        = NO | ||||
| STRIP_FROM_PATH        =  | ||||
| INTERNAL_DOCS          = NO | ||||
| STRIP_CODE_COMMENTS    = YES | ||||
| CASE_SENSE_NAMES       = YES | ||||
| SHORT_NAMES            = NO | ||||
| HIDE_SCOPE_NAMES       = NO | ||||
| VERBATIM_HEADERS       = YES | ||||
| SHOW_INCLUDE_FILES     = YES | ||||
| JAVADOC_AUTOBRIEF      = NO | ||||
| INHERIT_DOCS           = YES | ||||
| INLINE_INFO            = YES | ||||
| SORT_MEMBER_DOCS       = NO | ||||
| DISTRIBUTE_GROUP_DOC   = NO | ||||
| TAB_SIZE               = 8 | ||||
| GENERATE_TODOLIST      = YES | ||||
| GENERATE_TESTLIST      = YES | ||||
| GENERATE_BUGLIST       = YES | ||||
| ALIASES                =  | ||||
| ENABLED_SECTIONS       =  | ||||
| MAX_INITIALIZER_LINES  = 30 | ||||
| OPTIMIZE_OUTPUT_FOR_C  = YES | ||||
| SHOW_USED_FILES        = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to warning and progress messages | ||||
| #--------------------------------------------------------------------------- | ||||
| QUIET                  = YES | ||||
| WARNINGS               = YES | ||||
| WARN_IF_UNDOCUMENTED   = YES | ||||
| WARN_FORMAT            =  | ||||
| WARN_LOGFILE           =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the input files | ||||
| #--------------------------------------------------------------------------- | ||||
| INPUT                  = ../src/tnl/ | ||||
| FILE_PATTERNS          = *.c \ | ||||
|                          *.h | ||||
| RECURSIVE              = NO | ||||
| EXCLUDE                =  | ||||
| EXCLUDE_PATTERNS       =  | ||||
| EXAMPLE_PATH           =  | ||||
| EXAMPLE_PATTERNS       =  | ||||
| EXAMPLE_RECURSIVE      = NO | ||||
| IMAGE_PATH             =  | ||||
| INPUT_FILTER           =  | ||||
| FILTER_SOURCE_FILES    = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to source browsing | ||||
| #--------------------------------------------------------------------------- | ||||
| SOURCE_BROWSER         = NO | ||||
| INLINE_SOURCES         = NO | ||||
| REFERENCED_BY_RELATION = YES | ||||
| REFERENCES_RELATION    = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the alphabetical class index | ||||
| #--------------------------------------------------------------------------- | ||||
| ALPHABETICAL_INDEX     = YES | ||||
| COLS_IN_ALPHA_INDEX    = 5 | ||||
| IGNORE_PREFIX          =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the HTML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_HTML          = YES | ||||
| HTML_OUTPUT            = tnl | ||||
| HTML_HEADER            = header.html | ||||
| HTML_FOOTER            =  | ||||
| HTML_STYLESHEET        =  | ||||
| HTML_ALIGN_MEMBERS     = YES | ||||
| GENERATE_HTMLHELP      = NO | ||||
| GENERATE_CHI           = NO | ||||
| BINARY_TOC             = NO | ||||
| TOC_EXPAND             = NO | ||||
| DISABLE_INDEX          = NO | ||||
| ENUM_VALUES_PER_LINE   = 4 | ||||
| GENERATE_TREEVIEW      = NO | ||||
| TREEVIEW_WIDTH         = 250 | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the LaTeX output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_LATEX         = NO | ||||
| LATEX_OUTPUT           =  | ||||
| COMPACT_LATEX          = NO | ||||
| PAPER_TYPE             = a4wide | ||||
| EXTRA_PACKAGES         =  | ||||
| LATEX_HEADER           =  | ||||
| PDF_HYPERLINKS         = NO | ||||
| USE_PDFLATEX           = NO | ||||
| LATEX_BATCHMODE        = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the RTF output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_RTF           = NO | ||||
| RTF_OUTPUT             =  | ||||
| COMPACT_RTF            = NO | ||||
| RTF_HYPERLINKS         = NO | ||||
| RTF_STYLESHEET_FILE    =  | ||||
| RTF_EXTENSIONS_FILE    =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the man page output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_MAN           = NO | ||||
| MAN_OUTPUT             =  | ||||
| MAN_EXTENSION          =  | ||||
| MAN_LINKS              = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the XML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_XML           = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options for the AutoGen Definitions output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_AUTOGEN_DEF   = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the preprocessor    | ||||
| #--------------------------------------------------------------------------- | ||||
| ENABLE_PREPROCESSING   = YES | ||||
| MACRO_EXPANSION        = NO | ||||
| EXPAND_ONLY_PREDEF     = NO | ||||
| SEARCH_INCLUDES        = YES | ||||
| INCLUDE_PATH           =  | ||||
| INCLUDE_FILE_PATTERNS  =  | ||||
| PREDEFINED             =  | ||||
| EXPAND_AS_DEFINED      =  | ||||
| SKIP_FUNCTION_MACROS   = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to external references    | ||||
| #--------------------------------------------------------------------------- | ||||
| TAGFILES               = tnl_dd.tag=../tnl \ | ||||
|                          core.tag=../core \ | ||||
|                          math.tag=../math \ | ||||
|                          swrast.tag=../swrast \ | ||||
|                          swrast_setup.tag=swrast_setup \ | ||||
|                          array_cache.tag=array_cache | ||||
| GENERATE_TAGFILE       = tnl.tag | ||||
| ALLEXTERNALS           = YES | ||||
| PERL_PATH              =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the dot tool    | ||||
| #--------------------------------------------------------------------------- | ||||
| CLASS_DIAGRAMS         = YES | ||||
| HAVE_DOT               = NO | ||||
| CLASS_GRAPH            = YES | ||||
| COLLABORATION_GRAPH    = YES | ||||
| TEMPLATE_RELATIONS     = YES | ||||
| HIDE_UNDOC_RELATIONS   = YES | ||||
| INCLUDE_GRAPH          = YES | ||||
| INCLUDED_BY_GRAPH      = YES | ||||
| GRAPHICAL_HIERARCHY    = YES | ||||
| DOT_PATH               =  | ||||
| DOTFILE_DIRS           =  | ||||
| MAX_DOT_GRAPH_WIDTH    = 1024 | ||||
| MAX_DOT_GRAPH_HEIGHT   = 1024 | ||||
| GENERATE_LEGEND        = YES | ||||
| DOT_CLEANUP            = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to the search engine    | ||||
| #--------------------------------------------------------------------------- | ||||
| SEARCHENGINE           = NO | ||||
| CGI_NAME               =  | ||||
| CGI_URL                =  | ||||
| DOC_URL                =  | ||||
| DOC_ABSPATH            =  | ||||
| BIN_ABSPATH            =  | ||||
| EXT_DOC_PATHS          =  | ||||
							
								
								
									
										182
									
								
								doxygen/tnl_dd.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										182
									
								
								doxygen/tnl_dd.doxy
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,182 @@ | ||||
| # Doxyfile 0.1 | ||||
|  | ||||
| #--------------------------------------------------------------------------- | ||||
| # General configuration options | ||||
| #--------------------------------------------------------------------------- | ||||
| PROJECT_NAME           = "Mesa tnl_dd" | ||||
| PROJECT_NUMBER         = 4.1 | ||||
| OUTPUT_DIRECTORY       =  | ||||
| OUTPUT_LANGUAGE        = English | ||||
| EXTRACT_ALL            = YES | ||||
| EXTRACT_PRIVATE        = NO | ||||
| EXTRACT_STATIC         = NO | ||||
| EXTRACT_LOCAL_CLASSES  = YES | ||||
| HIDE_UNDOC_MEMBERS     = NO | ||||
| HIDE_UNDOC_CLASSES     = NO | ||||
| BRIEF_MEMBER_DESC      = YES | ||||
| REPEAT_BRIEF           = YES | ||||
| ALWAYS_DETAILED_SEC    = NO | ||||
| INLINE_INHERITED_MEMB  = NO | ||||
| FULL_PATH_NAMES        = NO | ||||
| STRIP_FROM_PATH        =  | ||||
| INTERNAL_DOCS          = NO | ||||
| STRIP_CODE_COMMENTS    = YES | ||||
| CASE_SENSE_NAMES       = YES | ||||
| SHORT_NAMES            = NO | ||||
| HIDE_SCOPE_NAMES       = NO | ||||
| VERBATIM_HEADERS       = YES | ||||
| SHOW_INCLUDE_FILES     = YES | ||||
| JAVADOC_AUTOBRIEF      = NO | ||||
| INHERIT_DOCS           = YES | ||||
| INLINE_INFO            = NO | ||||
| SORT_MEMBER_DOCS       = NO | ||||
| DISTRIBUTE_GROUP_DOC   = NO | ||||
| TAB_SIZE               = 8 | ||||
| GENERATE_TODOLIST      = YES | ||||
| GENERATE_TESTLIST      = YES | ||||
| GENERATE_BUGLIST       = YES | ||||
| ALIASES                =  | ||||
| ENABLED_SECTIONS       =  | ||||
| MAX_INITIALIZER_LINES  = 30 | ||||
| OPTIMIZE_OUTPUT_FOR_C  = YES | ||||
| SHOW_USED_FILES        = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to warning and progress messages | ||||
| #--------------------------------------------------------------------------- | ||||
| QUIET                  = YES | ||||
| WARNINGS               = YES | ||||
| WARN_IF_UNDOCUMENTED   = YES | ||||
| WARN_FORMAT            =  | ||||
| WARN_LOGFILE           =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the input files | ||||
| #--------------------------------------------------------------------------- | ||||
| INPUT                  = ../src/tnl_dd/ | ||||
| FILE_PATTERNS          = *.h | ||||
| RECURSIVE              = YES | ||||
| EXCLUDE                =  | ||||
| EXCLUDE_PATTERNS       =  | ||||
| EXAMPLE_PATH           =  | ||||
| EXAMPLE_PATTERNS       =  | ||||
| EXAMPLE_RECURSIVE      = NO | ||||
| IMAGE_PATH             =  | ||||
| INPUT_FILTER           =  | ||||
| FILTER_SOURCE_FILES    = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to source browsing | ||||
| #--------------------------------------------------------------------------- | ||||
| SOURCE_BROWSER         = NO | ||||
| INLINE_SOURCES         = NO | ||||
| REFERENCED_BY_RELATION = YES | ||||
| REFERENCES_RELATION    = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the alphabetical class index | ||||
| #--------------------------------------------------------------------------- | ||||
| ALPHABETICAL_INDEX     = YES | ||||
| COLS_IN_ALPHA_INDEX    = 5 | ||||
| IGNORE_PREFIX          =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the HTML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_HTML          = YES | ||||
| HTML_OUTPUT            = tnl_dd | ||||
| HTML_HEADER            = header.html | ||||
| HTML_FOOTER            =  | ||||
| HTML_STYLESHEET        =  | ||||
| HTML_ALIGN_MEMBERS     = YES | ||||
| GENERATE_HTMLHELP      = NO | ||||
| GENERATE_CHI           = NO | ||||
| BINARY_TOC             = NO | ||||
| TOC_EXPAND             = NO | ||||
| DISABLE_INDEX          = NO | ||||
| ENUM_VALUES_PER_LINE   = 4 | ||||
| GENERATE_TREEVIEW      = NO | ||||
| TREEVIEW_WIDTH         = 250 | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the LaTeX output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_LATEX         = NO | ||||
| LATEX_OUTPUT           =  | ||||
| COMPACT_LATEX          = NO | ||||
| PAPER_TYPE             = a4wide | ||||
| EXTRA_PACKAGES         =  | ||||
| LATEX_HEADER           =  | ||||
| PDF_HYPERLINKS         = NO | ||||
| USE_PDFLATEX           = NO | ||||
| LATEX_BATCHMODE        = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the RTF output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_RTF           = NO | ||||
| RTF_OUTPUT             =  | ||||
| COMPACT_RTF            = NO | ||||
| RTF_HYPERLINKS         = NO | ||||
| RTF_STYLESHEET_FILE    =  | ||||
| RTF_EXTENSIONS_FILE    =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the man page output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_MAN           = NO | ||||
| MAN_OUTPUT             =  | ||||
| MAN_EXTENSION          =  | ||||
| MAN_LINKS              = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options related to the XML output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_XML           = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # configuration options for the AutoGen Definitions output | ||||
| #--------------------------------------------------------------------------- | ||||
| GENERATE_AUTOGEN_DEF   = NO | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the preprocessor    | ||||
| #--------------------------------------------------------------------------- | ||||
| ENABLE_PREPROCESSING   = YES | ||||
| MACRO_EXPANSION        = NO | ||||
| EXPAND_ONLY_PREDEF     = NO | ||||
| SEARCH_INCLUDES        = YES | ||||
| INCLUDE_PATH           =  | ||||
| INCLUDE_FILE_PATTERNS  =  | ||||
| PREDEFINED             =  | ||||
| EXPAND_AS_DEFINED      =  | ||||
| SKIP_FUNCTION_MACROS   = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to external references    | ||||
| #--------------------------------------------------------------------------- | ||||
| TAGFILES               = core.tag=../core \ | ||||
|                          math.tag=../math \ | ||||
|                          swrast.tag=../swrast \ | ||||
|                          swrast_setup.tag=../swrast_setup \ | ||||
|                          tnl.tag=../tnl \ | ||||
|                          array_cache.tag=array_cache | ||||
| GENERATE_TAGFILE       = tnl_dd.tag | ||||
| ALLEXTERNALS           = NO | ||||
| PERL_PATH              =  | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration options related to the dot tool    | ||||
| #--------------------------------------------------------------------------- | ||||
| CLASS_DIAGRAMS         = YES | ||||
| HAVE_DOT               = NO | ||||
| CLASS_GRAPH            = YES | ||||
| COLLABORATION_GRAPH    = YES | ||||
| TEMPLATE_RELATIONS     = YES | ||||
| HIDE_UNDOC_RELATIONS   = YES | ||||
| INCLUDE_GRAPH          = YES | ||||
| INCLUDED_BY_GRAPH      = YES | ||||
| GRAPHICAL_HIERARCHY    = YES | ||||
| DOT_PATH               =  | ||||
| DOTFILE_DIRS           =  | ||||
| MAX_DOT_GRAPH_WIDTH    = 1024 | ||||
| MAX_DOT_GRAPH_HEIGHT   = 1024 | ||||
| GENERATE_LEGEND        = YES | ||||
| DOT_CLEANUP            = YES | ||||
| #--------------------------------------------------------------------------- | ||||
| # Configuration::addtions related to the search engine    | ||||
| #--------------------------------------------------------------------------- | ||||
| SEARCHENGINE           = NO | ||||
| CGI_NAME               =  | ||||
| CGI_URL                =  | ||||
| DOC_URL                =  | ||||
| DOC_ABSPATH            =  | ||||
| BIN_ABSPATH            =  | ||||
| EXT_DOC_PATHS          =  | ||||
							
								
								
									
										79
									
								
								include/GL/dmesa.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										79
									
								
								include/GL/dmesa.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,79 @@ | ||||
| /* | ||||
|  * Mesa 3-D graphics library | ||||
|  * Version:  5.0 | ||||
|  *  | ||||
|  * Copyright (C) 1999-2002  Brian Paul   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. | ||||
|  */ | ||||
|  | ||||
| /* | ||||
|  * DOS/DJGPP device driver v1.2 for Mesa 4.1 | ||||
|  * | ||||
|  *  Copyright (C) 2002 - Borca Daniel | ||||
|  *  Email : dborca@yahoo.com | ||||
|  *  Web   : http://www.geocities.com/dborca | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #ifndef DMESA_H_included | ||||
| #define DMESA_H_included | ||||
|  | ||||
| #define DMESA_MAJOR_VERSION 5 | ||||
| #define DMESA_MINOR_VERSION 0 | ||||
|  | ||||
| typedef struct dmesa_context *DMesaContext; | ||||
| typedef struct dmesa_visual *DMesaVisual; | ||||
| typedef struct dmesa_buffer *DMesaBuffer; | ||||
|  | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
|  | ||||
| DMesaVisual DMesaCreateVisual (GLint width, GLint height, | ||||
|                                GLint colDepth, | ||||
|                                GLboolean dbFlag, | ||||
|                                GLint depthSize, | ||||
|                                GLint stencilSize, | ||||
|                                GLint accumSize); | ||||
|  | ||||
| void DMesaDestroyVisual (DMesaVisual v); | ||||
|  | ||||
| DMesaBuffer DMesaCreateBuffer (DMesaVisual visual, | ||||
|                                GLint xpos, GLint ypos, | ||||
|                                GLint width, GLint height); | ||||
|  | ||||
| void DMesaDestroyBuffer (DMesaBuffer b); | ||||
|  | ||||
| DMesaContext DMesaCreateContext (DMesaVisual visual, DMesaContext share); | ||||
|  | ||||
| void DMesaDestroyContext (DMesaContext c); | ||||
|  | ||||
| GLboolean DMesaViewport (DMesaBuffer b, | ||||
|                          GLint xpos, GLint ypos, | ||||
|                          GLint width, GLint height); | ||||
|  | ||||
| GLboolean DMesaMakeCurrent (DMesaContext c, DMesaBuffer b); | ||||
|  | ||||
| void DMesaSwapBuffers (DMesaBuffer b); | ||||
|  | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
|  | ||||
| #endif | ||||
| @@ -1,10 +1,11 @@ | ||||
| /* $Id: ggimesa.h,v 1.3 2000/02/09 19:03:28 brianp Exp $ */ | ||||
| /* $Id: ggimesa.h,v 1.4 2002/06/10 15:16:44 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Mesa 3-D graphics library | ||||
|  * Version:  3.3 | ||||
|  * Mesa 3-D graphics library GGI bindings (GGIGL [giggle]) | ||||
|  * Version:  4.0 | ||||
|  * Copyright (C) 1995-2000  Brian Paul | ||||
|  * Copyright (C) 1998  Uwe Maurer | ||||
|  * Copyrigth (C) 2001 Filip Spacek | ||||
|  * | ||||
|  * This library is free software; you can redistribute it and/or | ||||
|  * modify it under the terms of the GNU Library General Public | ||||
| @@ -25,34 +26,59 @@ | ||||
| #ifndef GGIMESA_H | ||||
| #define GGIMESA_H | ||||
|  | ||||
|  | ||||
| #define GGIMESA_MAJOR_VERSION 3 | ||||
| #define GGIMESA_MINOR_VERSION 3 | ||||
|  | ||||
| #define GGIMESA_MAJOR_VERSION 4 | ||||
| #define GGIMESA_MINOR_VERSION 0 | ||||
|  | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
|  | ||||
| #include "GL/gl.h" | ||||
|  | ||||
|  | ||||
| typedef struct ggi_mesa_context *GGIMesaContext; | ||||
|  | ||||
| #include <ggi/ggi.h> | ||||
| #include "GL/gl.h" | ||||
|    | ||||
| typedef struct ggi_mesa_context *ggi_mesa_context_t; | ||||
|  | ||||
| extern GGIMesaContext GGIMesaCreateContext(void); | ||||
| /* | ||||
|  * Initialize Mesa GGI extension | ||||
|  */ | ||||
| int ggiMesaInit(void); | ||||
| /* | ||||
|  * Clean up Mesa GGI exension | ||||
|  */ | ||||
| int ggiMesaExit(void); | ||||
|  | ||||
| extern void GGIMesaDestroyContext(GGIMesaContext ctx); | ||||
| /* | ||||
|  * Attach Mesa GGI extension to the visual 'vis' | ||||
|  */ | ||||
| int ggiMesaAttach(ggi_visual_t vis); | ||||
| /* | ||||
|  * Detach Mesa GGI extension from the visual 'vis' | ||||
|  */ | ||||
| int ggiMesaDetach(ggi_visual_t vis); | ||||
|  | ||||
| extern void GGIMesaMakeCurrent(GGIMesaContext ctx); | ||||
| int ggiMesaExtendVisual(ggi_visual_t vis, GLboolean alpha_flag, | ||||
| 			GLboolean stereo_flag, GLint depth_size, | ||||
| 			GLint stencil_size, GLint accum_red_size, | ||||
| 			GLint accum_green_size, GLint accum_blue_size, | ||||
| 			GLint accum_alpha_size, GLint num_samples); | ||||
|  | ||||
| extern GGIMesaContext GGIMesaGetCurrentContext(void); | ||||
| /* | ||||
|  * Create a new context capable of displaying on the visual vis. | ||||
|  */ | ||||
| ggi_mesa_context_t ggiMesaCreateContext(ggi_visual_t vis); | ||||
| /* | ||||
|  * Destroy the context 'ctx' | ||||
|  */ | ||||
| void ggiMesaDestroyContext(ggi_mesa_context_t ctx); | ||||
|  | ||||
| extern void GGIMesaSwapBuffers(void); | ||||
| /* | ||||
|  * Make context 'ctx' the current context and bind it to visual 'vis'. | ||||
|  * Note that the context must have been created with respect to that visual. | ||||
|  */ | ||||
| void ggiMesaMakeCurrent(ggi_mesa_context_t ctx, ggi_visual_t vis); | ||||
|  | ||||
| void ggiMesaSwapBuffers(void); | ||||
|  | ||||
| extern int GGIMesaSetVisual(GGIMesaContext ctx, ggi_visual_t vis, | ||||
| 			    GLboolean rgb_flag, GLboolean db_flag); | ||||
|  | ||||
| #ifdef __cplusplus | ||||
| } | ||||
|   | ||||
							
								
								
									
										724
									
								
								include/GL/gl.h
									
									
									
									
									
								
							
							
						
						
									
										724
									
								
								include/GL/gl.h
									
									
									
									
									
								
							| @@ -1,10 +1,10 @@ | ||||
| /* $Id: gl.h,v 1.59.2.1 2001/11/09 21:54:05 brianp Exp $ */ | ||||
| /* $Id: gl.h,v 1.72 2002/10/17 19:39:31 kschultz Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Mesa 3-D graphics library | ||||
|  * Version:  4.0 | ||||
|  * Version:  4.1 | ||||
|  * | ||||
|  * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved. | ||||
|  * Copyright (C) 1999-2002  Brian Paul   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"), | ||||
| @@ -63,6 +63,23 @@ | ||||
| #  define GLAPIENTRY | ||||
| #endif /* WIN32 / CYGWIN bracket */ | ||||
|  | ||||
| #if (defined(__BEOS__) && defined(__POWERPC__)) || defined(__QUICKDRAW__) | ||||
| #  define PRAGMA_EXPORT_SUPPORTED		1 | ||||
| #endif | ||||
|  | ||||
| /* | ||||
|  * WINDOWS: Include windows.h here to define APIENTRY. | ||||
|  * It is also useful when applications include this file by | ||||
|  * including only glut.h, since glut.h depends on windows.h. | ||||
|  * Applications needing to include windows.h with parms other | ||||
|  * than "WIN32_LEAN_AND_MEAN" may include windows.h before | ||||
|  * glut.h or gl.h. | ||||
|  */ | ||||
| #if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) | ||||
| #define WIN32_LEAN_AND_MEAN 1 | ||||
| #include <windows.h> | ||||
| #endif | ||||
|  | ||||
| #if defined(_WIN32) && !defined(_WINGDI_) && !defined(_GNU_H_WINDOWS32_DEFINES) && !defined(OPENSTEP) && !defined(__CYGWIN__) | ||||
| #include <gl/mesa_wgl.h> | ||||
| #endif | ||||
| @@ -70,6 +87,19 @@ | ||||
| #if defined(macintosh) && PRAGMA_IMPORT_SUPPORTED | ||||
| #pragma import on | ||||
| #endif | ||||
|  | ||||
| #ifndef APIENTRY | ||||
| #define APIENTRY GLAPIENTRY | ||||
| #endif | ||||
|  | ||||
| #ifdef CENTERLINE_CLPP | ||||
| #define signed | ||||
| #endif | ||||
|  | ||||
| #if defined(PRAGMA_EXPORT_SUPPORTED) | ||||
| #pragma export on | ||||
| #endif | ||||
|  | ||||
| /* | ||||
|  * End system-specific stuff. | ||||
|  **********************************************************************/ | ||||
| @@ -89,13 +119,8 @@ extern "C" { | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * | ||||
|  * Datatypes | ||||
|  * | ||||
|  */ | ||||
| #ifdef CENTERLINE_CLPP | ||||
| #define signed | ||||
| #endif | ||||
| typedef unsigned int	GLenum; | ||||
| typedef unsigned char	GLboolean; | ||||
| typedef unsigned int	GLbitfield; | ||||
| @@ -115,9 +140,7 @@ typedef double		GLclampd;	/* double precision float in [0,1] */ | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * | ||||
|  * Constants | ||||
|  * | ||||
|  */ | ||||
|  | ||||
| /* Boolean values */ | ||||
| @@ -333,10 +356,6 @@ typedef double		GLclampd;	/* double precision float in [0,1] */ | ||||
| #define GL_DST_COLOR				0x0306 | ||||
| #define GL_ONE_MINUS_DST_COLOR			0x0307 | ||||
| #define GL_SRC_ALPHA_SATURATE			0x0308 | ||||
| #define GL_CONSTANT_COLOR			0x8001 | ||||
| #define GL_ONE_MINUS_CONSTANT_COLOR		0x8002 | ||||
| #define GL_CONSTANT_ALPHA			0x8003 | ||||
| #define GL_ONE_MINUS_CONSTANT_ALPHA		0x8004 | ||||
|  | ||||
| /* Render Mode */ | ||||
| #define GL_FEEDBACK				0x1C01 | ||||
| @@ -504,8 +523,6 @@ typedef double		GLclampd;	/* double precision float in [0,1] */ | ||||
| /* Evaluators */ | ||||
| #define GL_AUTO_NORMAL				0x0D80 | ||||
| #define GL_MAP1_COLOR_4				0x0D90 | ||||
| #define GL_MAP1_GRID_DOMAIN			0x0DD0 | ||||
| #define GL_MAP1_GRID_SEGMENTS			0x0DD1 | ||||
| #define GL_MAP1_INDEX				0x0D91 | ||||
| #define GL_MAP1_NORMAL				0x0D92 | ||||
| #define GL_MAP1_TEXTURE_COORD_1			0x0D93 | ||||
| @@ -515,8 +532,6 @@ typedef double		GLclampd;	/* double precision float in [0,1] */ | ||||
| #define GL_MAP1_VERTEX_3			0x0D97 | ||||
| #define GL_MAP1_VERTEX_4			0x0D98 | ||||
| #define GL_MAP2_COLOR_4				0x0DB0 | ||||
| #define GL_MAP2_GRID_DOMAIN			0x0DD2 | ||||
| #define GL_MAP2_GRID_SEGMENTS			0x0DD3 | ||||
| #define GL_MAP2_INDEX				0x0DB1 | ||||
| #define GL_MAP2_NORMAL				0x0DB2 | ||||
| #define GL_MAP2_TEXTURE_COORD_1			0x0DB3 | ||||
| @@ -525,6 +540,10 @@ typedef double		GLclampd;	/* double precision float in [0,1] */ | ||||
| #define GL_MAP2_TEXTURE_COORD_4			0x0DB6 | ||||
| #define GL_MAP2_VERTEX_3			0x0DB7 | ||||
| #define GL_MAP2_VERTEX_4			0x0DB8 | ||||
| #define GL_MAP1_GRID_DOMAIN			0x0DD0 | ||||
| #define GL_MAP1_GRID_SEGMENTS			0x0DD1 | ||||
| #define GL_MAP2_GRID_DOMAIN			0x0DD2 | ||||
| #define GL_MAP2_GRID_SEGMENTS			0x0DD3 | ||||
| #define GL_COEFF				0x0A00 | ||||
| #define GL_DOMAIN				0x0A02 | ||||
| #define GL_ORDER				0x0A01 | ||||
| @@ -724,243 +743,6 @@ typedef double		GLclampd;	/* double precision float in [0,1] */ | ||||
| #define GL_CLIENT_ALL_ATTRIB_BITS 		0xFFFFFFFF | ||||
|  | ||||
|  | ||||
| /* OpenGL 1.2 */ | ||||
| #define GL_RESCALE_NORMAL			0x803A | ||||
| #define GL_CLAMP_TO_EDGE			0x812F | ||||
| #define GL_MAX_ELEMENTS_VERTICES		0x80E8 | ||||
| #define GL_MAX_ELEMENTS_INDICES			0x80E9 | ||||
| #define GL_BGR					0x80E0 | ||||
| #define GL_BGRA					0x80E1 | ||||
| #define GL_UNSIGNED_BYTE_3_3_2			0x8032 | ||||
| #define GL_UNSIGNED_BYTE_2_3_3_REV		0x8362 | ||||
| #define GL_UNSIGNED_SHORT_5_6_5			0x8363 | ||||
| #define GL_UNSIGNED_SHORT_5_6_5_REV		0x8364 | ||||
| #define GL_UNSIGNED_SHORT_4_4_4_4		0x8033 | ||||
| #define GL_UNSIGNED_SHORT_4_4_4_4_REV		0x8365 | ||||
| #define GL_UNSIGNED_SHORT_5_5_5_1		0x8034 | ||||
| #define GL_UNSIGNED_SHORT_1_5_5_5_REV		0x8366 | ||||
| #define GL_UNSIGNED_INT_8_8_8_8			0x8035 | ||||
| #define GL_UNSIGNED_INT_8_8_8_8_REV		0x8367 | ||||
| #define GL_UNSIGNED_INT_10_10_10_2		0x8036 | ||||
| #define GL_UNSIGNED_INT_2_10_10_10_REV		0x8368 | ||||
| #define GL_LIGHT_MODEL_COLOR_CONTROL		0x81F8 | ||||
| #define GL_SINGLE_COLOR				0x81F9 | ||||
| #define GL_SEPARATE_SPECULAR_COLOR		0x81FA | ||||
| #define GL_TEXTURE_MIN_LOD			0x813A | ||||
| #define GL_TEXTURE_MAX_LOD			0x813B | ||||
| #define GL_TEXTURE_BASE_LEVEL			0x813C | ||||
| #define GL_TEXTURE_MAX_LEVEL			0x813D | ||||
| #define GL_SMOOTH_POINT_SIZE_RANGE		0x0B12 | ||||
| #define GL_SMOOTH_POINT_SIZE_GRANULARITY	0x0B13 | ||||
| #define GL_SMOOTH_LINE_WIDTH_RANGE		0x0B22 | ||||
| #define GL_SMOOTH_LINE_WIDTH_GRANULARITY	0x0B23 | ||||
| #define GL_ALIASED_POINT_SIZE_RANGE		0x846D | ||||
| #define GL_ALIASED_LINE_WIDTH_RANGE		0x846E | ||||
| #define GL_PACK_SKIP_IMAGES			0x806B | ||||
| #define GL_PACK_IMAGE_HEIGHT			0x806C | ||||
| #define GL_UNPACK_SKIP_IMAGES			0x806D | ||||
| #define GL_UNPACK_IMAGE_HEIGHT			0x806E | ||||
| #define GL_TEXTURE_3D				0x806F | ||||
| #define GL_PROXY_TEXTURE_3D			0x8070 | ||||
| #define GL_TEXTURE_DEPTH			0x8071 | ||||
| #define GL_TEXTURE_WRAP_R			0x8072 | ||||
| #define GL_MAX_3D_TEXTURE_SIZE			0x8073 | ||||
| #define GL_TEXTURE_BINDING_3D			0x806A | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * OpenGL 1.2 imaging subset | ||||
|  */ | ||||
| /* GL_EXT_color_table */ | ||||
| #define GL_COLOR_TABLE				0x80D0 | ||||
| #define GL_POST_CONVOLUTION_COLOR_TABLE		0x80D1 | ||||
| #define GL_POST_COLOR_MATRIX_COLOR_TABLE	0x80D2 | ||||
| #define GL_PROXY_COLOR_TABLE			0x80D3 | ||||
| #define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE	0x80D4 | ||||
| #define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE	0x80D5 | ||||
| #define GL_COLOR_TABLE_SCALE			0x80D6 | ||||
| #define GL_COLOR_TABLE_BIAS			0x80D7 | ||||
| #define GL_COLOR_TABLE_FORMAT			0x80D8 | ||||
| #define GL_COLOR_TABLE_WIDTH			0x80D9 | ||||
| #define GL_COLOR_TABLE_RED_SIZE			0x80DA | ||||
| #define GL_COLOR_TABLE_GREEN_SIZE		0x80DB | ||||
| #define GL_COLOR_TABLE_BLUE_SIZE		0x80DC | ||||
| #define GL_COLOR_TABLE_ALPHA_SIZE		0x80DD | ||||
| #define GL_COLOR_TABLE_LUMINANCE_SIZE		0x80DE | ||||
| #define GL_COLOR_TABLE_INTENSITY_SIZE		0x80DF | ||||
| /* GL_EXT_convolution and GL_HP_convolution_border_modes */ | ||||
| #define GL_CONVOLUTION_1D			0x8010 | ||||
| #define GL_CONVOLUTION_2D			0x8011 | ||||
| #define GL_SEPARABLE_2D				0x8012 | ||||
| #define GL_CONVOLUTION_BORDER_MODE		0x8013 | ||||
| #define GL_CONVOLUTION_FILTER_SCALE		0x8014 | ||||
| #define GL_CONVOLUTION_FILTER_BIAS		0x8015 | ||||
| #define GL_REDUCE				0x8016 | ||||
| #define GL_CONVOLUTION_FORMAT			0x8017 | ||||
| #define GL_CONVOLUTION_WIDTH			0x8018 | ||||
| #define GL_CONVOLUTION_HEIGHT			0x8019 | ||||
| #define GL_MAX_CONVOLUTION_WIDTH		0x801A | ||||
| #define GL_MAX_CONVOLUTION_HEIGHT		0x801B | ||||
| #define GL_POST_CONVOLUTION_RED_SCALE		0x801C | ||||
| #define GL_POST_CONVOLUTION_GREEN_SCALE		0x801D | ||||
| #define GL_POST_CONVOLUTION_BLUE_SCALE		0x801E | ||||
| #define GL_POST_CONVOLUTION_ALPHA_SCALE		0x801F | ||||
| #define GL_POST_CONVOLUTION_RED_BIAS		0x8020 | ||||
| #define GL_POST_CONVOLUTION_GREEN_BIAS		0x8021 | ||||
| #define GL_POST_CONVOLUTION_BLUE_BIAS		0x8022 | ||||
| #define GL_POST_CONVOLUTION_ALPHA_BIAS		0x8023 | ||||
| #define GL_CONSTANT_BORDER			0x8151 | ||||
| #define GL_REPLICATE_BORDER			0x8153 | ||||
| #define GL_CONVOLUTION_BORDER_COLOR		0x8154 | ||||
| /* GL_SGI_color_matrix */ | ||||
| #define GL_COLOR_MATRIX				0x80B1 | ||||
| #define GL_COLOR_MATRIX_STACK_DEPTH		0x80B2 | ||||
| #define GL_MAX_COLOR_MATRIX_STACK_DEPTH		0x80B3 | ||||
| #define GL_POST_COLOR_MATRIX_RED_SCALE		0x80B4 | ||||
| #define GL_POST_COLOR_MATRIX_GREEN_SCALE	0x80B5 | ||||
| #define GL_POST_COLOR_MATRIX_BLUE_SCALE		0x80B6 | ||||
| #define GL_POST_COLOR_MATRIX_ALPHA_SCALE	0x80B7 | ||||
| #define GL_POST_COLOR_MATRIX_RED_BIAS		0x80B8 | ||||
| #define GL_POST_COLOR_MATRIX_GREEN_BIAS		0x80B9 | ||||
| #define GL_POST_COLOR_MATRIX_BLUE_BIAS		0x80BA | ||||
| #define GL_POST_COLOR_MATRIX_ALPHA_BIAS		0x80BB | ||||
| /* GL_EXT_histogram */ | ||||
| #define GL_HISTOGRAM				0x8024 | ||||
| #define GL_PROXY_HISTOGRAM			0x8025 | ||||
| #define GL_HISTOGRAM_WIDTH			0x8026 | ||||
| #define GL_HISTOGRAM_FORMAT			0x8027 | ||||
| #define GL_HISTOGRAM_RED_SIZE			0x8028 | ||||
| #define GL_HISTOGRAM_GREEN_SIZE			0x8029 | ||||
| #define GL_HISTOGRAM_BLUE_SIZE			0x802A | ||||
| #define GL_HISTOGRAM_ALPHA_SIZE			0x802B | ||||
| #define GL_HISTOGRAM_LUMINANCE_SIZE		0x802C | ||||
| #define GL_HISTOGRAM_SINK			0x802D | ||||
| #define GL_MINMAX				0x802E | ||||
| #define GL_MINMAX_FORMAT			0x802F | ||||
| #define GL_MINMAX_SINK				0x8030 | ||||
| #define GL_TABLE_TOO_LARGE			0x8031 | ||||
| /* GL_EXT_blend_color, GL_EXT_blend_minmax */ | ||||
| #define GL_BLEND_EQUATION			0x8009 | ||||
| #define GL_MIN					0x8007 | ||||
| #define GL_MAX					0x8008 | ||||
| #define GL_FUNC_ADD				0x8006 | ||||
| #define GL_FUNC_SUBTRACT			0x800A | ||||
| #define GL_FUNC_REVERSE_SUBTRACT		0x800B | ||||
| #define GL_BLEND_COLOR				0x8005 | ||||
|  | ||||
|  | ||||
| /* OpenGL 1.3 */ | ||||
| /* multitexture */ | ||||
| #define GL_TEXTURE0				0x84C0 | ||||
| #define GL_TEXTURE1				0x84C1 | ||||
| #define GL_TEXTURE2				0x84C2 | ||||
| #define GL_TEXTURE3				0x84C3 | ||||
| #define GL_TEXTURE4				0x84C4 | ||||
| #define GL_TEXTURE5				0x84C5 | ||||
| #define GL_TEXTURE6				0x84C6 | ||||
| #define GL_TEXTURE7				0x84C7 | ||||
| #define GL_TEXTURE8				0x84C8 | ||||
| #define GL_TEXTURE9				0x84C9 | ||||
| #define GL_TEXTURE10				0x84CA | ||||
| #define GL_TEXTURE11				0x84CB | ||||
| #define GL_TEXTURE12				0x84CC | ||||
| #define GL_TEXTURE13				0x84CD | ||||
| #define GL_TEXTURE14				0x84CE | ||||
| #define GL_TEXTURE15				0x84CF | ||||
| #define GL_TEXTURE16				0x84D0 | ||||
| #define GL_TEXTURE17				0x84D1 | ||||
| #define GL_TEXTURE18				0x84D2 | ||||
| #define GL_TEXTURE19				0x84D3 | ||||
| #define GL_TEXTURE20				0x84D4 | ||||
| #define GL_TEXTURE21				0x84D5 | ||||
| #define GL_TEXTURE22				0x84D6 | ||||
| #define GL_TEXTURE23				0x84D7 | ||||
| #define GL_TEXTURE24				0x84D8 | ||||
| #define GL_TEXTURE25				0x84D9 | ||||
| #define GL_TEXTURE26				0x84DA | ||||
| #define GL_TEXTURE27				0x84DB | ||||
| #define GL_TEXTURE28				0x84DC | ||||
| #define GL_TEXTURE29				0x84DD | ||||
| #define GL_TEXTURE30				0x84DE | ||||
| #define GL_TEXTURE31				0x84DF | ||||
| #define GL_ACTIVE_TEXTURE			0x84E0 | ||||
| #define GL_CLIENT_ACTIVE_TEXTURE		0x84E1 | ||||
| #define GL_MAX_TEXTURE_UNITS			0x84E2 | ||||
| /* texture_cube_map */ | ||||
| #define GL_NORMAL_MAP				0x8511 | ||||
| #define GL_REFLECTION_MAP			0x8512 | ||||
| #define GL_TEXTURE_CUBE_MAP			0x8513 | ||||
| #define GL_TEXTURE_BINDING_CUBE_MAP		0x8514 | ||||
| #define GL_TEXTURE_CUBE_MAP_POSITIVE_X		0x8515 | ||||
| #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X		0x8516 | ||||
| #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y		0x8517 | ||||
| #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y		0x8518 | ||||
| #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z		0x8519 | ||||
| #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z		0x851A | ||||
| #define GL_PROXY_TEXTURE_CUBE_MAP		0x851B | ||||
| #define GL_MAX_CUBE_MAP_TEXTURE_SIZE		0x851C | ||||
| /* texture_compression */ | ||||
| #define GL_COMPRESSED_ALPHA			0x84E9 | ||||
| #define GL_COMPRESSED_LUMINANCE			0x84EA | ||||
| #define GL_COMPRESSED_LUMINANCE_ALPHA		0x84EB | ||||
| #define GL_COMPRESSED_INTENSITY			0x84EC | ||||
| #define GL_COMPRESSED_RGB			0x84ED | ||||
| #define GL_COMPRESSED_RGBA			0x84EE | ||||
| #define GL_TEXTURE_COMPRESSION_HINT		0x84EF | ||||
| #define GL_TEXTURE_COMPRESSED_IMAGE_SIZE	0x86A0 | ||||
| #define GL_TEXTURE_COMPRESSED			0x86A1 | ||||
| #define GL_NUM_COMPRESSED_TEXTURE_FORMATS	0x86A2 | ||||
| #define GL_COMPRESSED_TEXTURE_FORMATS		0x86A3 | ||||
| /* multisample */ | ||||
| #define GL_MULTISAMPLE				0x809D | ||||
| #define GL_SAMPLE_ALPHA_TO_COVERAGE		0x809E | ||||
| #define GL_SAMPLE_ALPHA_TO_ONE			0x809F | ||||
| #define GL_SAMPLE_COVERAGE			0x80A0 | ||||
| #define GL_SAMPLE_BUFFERS			0x80A8 | ||||
| #define GL_SAMPLES				0x80A9 | ||||
| #define GL_SAMPLE_COVERAGE_VALUE		0x80AA | ||||
| #define GL_SAMPLE_COVERAGE_INVERT		0x80AB | ||||
| #define GL_MULTISAMPLE_BIT			0x20000000 | ||||
| /* transpose_matrix */ | ||||
| #define GL_TRANSPOSE_MODELVIEW_MATRIX		0x84E3 | ||||
| #define GL_TRANSPOSE_PROJECTION_MATRIX		0x84E4 | ||||
| #define GL_TRANSPOSE_TEXTURE_MATRIX		0x84E5 | ||||
| #define GL_TRANSPOSE_COLOR_MATRIX		0x84E6 | ||||
| /* texture_env_combine */ | ||||
| #define GL_COMBINE				0x8570 | ||||
| #define GL_COMBINE_RGB				0x8571 | ||||
| #define GL_COMBINE_ALPHA			0x8572 | ||||
| #define GL_SOURCE0_RGB				0x8580 | ||||
| #define GL_SOURCE1_RGB				0x8581 | ||||
| #define GL_SOURCE2_RGB				0x8582 | ||||
| #define GL_SOURCE0_ALPHA			0x8588 | ||||
| #define GL_SOURCE1_ALPHA			0x8589 | ||||
| #define GL_SOURCE2_ALPHA			0x858A | ||||
| #define GL_OPERAND0_RGB				0x8590 | ||||
| #define GL_OPERAND1_RGB				0x8591 | ||||
| #define GL_OPERAND2_RGB				0x8592 | ||||
| #define GL_OPERAND0_ALPHA			0x8598 | ||||
| #define GL_OPERAND1_ALPHA			0x8599 | ||||
| #define GL_OPERAND2_ALPHA			0x859A | ||||
| #define GL_RGB_SCALE				0x8573 | ||||
| #define GL_ADD_SIGNED				0x8574 | ||||
| #define GL_INTERPOLATE				0x8575 | ||||
| #define GL_SUBTRACT				0x84E7 | ||||
| #define GL_CONSTANT				0x8576 | ||||
| #define GL_PRIMARY_COLOR			0x8577 | ||||
| #define GL_PREVIOUS				0x8578 | ||||
| /* texture_env_dot3 */ | ||||
| #define GL_DOT3_RGB				0x86AE | ||||
| #define GL_DOT3_RGBA				0x86AF | ||||
| /* texture_border_clamp */ | ||||
| #define GL_CLAMP_TO_BORDER			0x812D | ||||
|  | ||||
|  | ||||
|  | ||||
| #if defined(__BEOS__) || defined(__QUICKDRAW__) | ||||
| #pragma export on | ||||
| #endif | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Miscellaneous | ||||
| @@ -1058,7 +840,6 @@ GLAPI void GLAPIENTRY glFlush( void ); | ||||
| GLAPI void GLAPIENTRY glHint( GLenum target, GLenum mode ); | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Depth Buffer | ||||
|  */ | ||||
| @@ -1081,7 +862,6 @@ GLAPI void GLAPIENTRY glClearAccum( GLfloat red, GLfloat green, GLfloat blue, GL | ||||
| GLAPI void GLAPIENTRY glAccum( GLenum op, GLfloat value ); | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Transformation | ||||
|  */ | ||||
| @@ -1123,7 +903,6 @@ GLAPI void GLAPIENTRY glTranslated( GLdouble x, GLdouble y, GLdouble z ); | ||||
| GLAPI void GLAPIENTRY glTranslatef( GLfloat x, GLfloat y, GLfloat z ); | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Display Lists | ||||
|  */ | ||||
| @@ -1146,7 +925,6 @@ GLAPI void GLAPIENTRY glCallLists( GLsizei n, GLenum type, | ||||
| GLAPI void GLAPIENTRY glListBase( GLuint base ); | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Drawing Functions | ||||
|  */ | ||||
| @@ -1342,7 +1120,6 @@ GLAPI void GLAPIENTRY glRectiv( const GLint *v1, const GLint *v2 ); | ||||
| GLAPI void GLAPIENTRY glRectsv( const GLshort *v1, const GLshort *v2 ); | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Vertex Arrays  (1.1) | ||||
|  */ | ||||
| @@ -1376,7 +1153,6 @@ GLAPI void GLAPIENTRY glDrawElements( GLenum mode, GLsizei count, | ||||
| GLAPI void GLAPIENTRY glInterleavedArrays( GLenum format, GLsizei stride, | ||||
|                                            const GLvoid *pointer ); | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Lighting | ||||
|  */ | ||||
| @@ -1411,8 +1187,6 @@ GLAPI void GLAPIENTRY glGetMaterialiv( GLenum face, GLenum pname, GLint *params | ||||
| GLAPI void GLAPIENTRY glColorMaterial( GLenum face, GLenum mode ); | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Raster functions | ||||
|  */ | ||||
| @@ -1454,8 +1228,6 @@ GLAPI void GLAPIENTRY glCopyPixels( GLint x, GLint y, | ||||
|                                     GLsizei width, GLsizei height, | ||||
|                                     GLenum type ); | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Stenciling | ||||
|  */ | ||||
| @@ -1533,7 +1305,6 @@ GLAPI void GLAPIENTRY glGetTexImage( GLenum target, GLint level, | ||||
|                                      GLvoid *pixels ); | ||||
|  | ||||
|  | ||||
|  | ||||
| /* 1.1 functions */ | ||||
|  | ||||
| GLAPI void GLAPIENTRY glGenTextures( GLsizei n, GLuint *textures ); | ||||
| @@ -1590,8 +1361,6 @@ GLAPI void GLAPIENTRY glCopyTexSubImage2D( GLenum target, GLint level, | ||||
|                                            GLsizei width, GLsizei height ); | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Evaluators | ||||
|  */ | ||||
| @@ -1645,7 +1414,6 @@ GLAPI void GLAPIENTRY glEvalMesh1( GLenum mode, GLint i1, GLint i2 ); | ||||
| GLAPI void GLAPIENTRY glEvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ); | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Fog | ||||
|  */ | ||||
| @@ -1659,7 +1427,6 @@ GLAPI void GLAPIENTRY glFogfv( GLenum pname, const GLfloat *params ); | ||||
| GLAPI void GLAPIENTRY glFogiv( GLenum pname, const GLint *params ); | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Selection and Feedback | ||||
|  */ | ||||
| @@ -1680,12 +1447,57 @@ GLAPI void GLAPIENTRY glPopName( void ); | ||||
|  | ||||
|  | ||||
|  | ||||
| /* 1.2 functions */ | ||||
| /* | ||||
|  * OpenGL 1.2 | ||||
|  */ | ||||
|  | ||||
| #define GL_RESCALE_NORMAL			0x803A | ||||
| #define GL_CLAMP_TO_EDGE			0x812F | ||||
| #define GL_MAX_ELEMENTS_VERTICES		0x80E8 | ||||
| #define GL_MAX_ELEMENTS_INDICES			0x80E9 | ||||
| #define GL_BGR					0x80E0 | ||||
| #define GL_BGRA					0x80E1 | ||||
| #define GL_UNSIGNED_BYTE_3_3_2			0x8032 | ||||
| #define GL_UNSIGNED_BYTE_2_3_3_REV		0x8362 | ||||
| #define GL_UNSIGNED_SHORT_5_6_5			0x8363 | ||||
| #define GL_UNSIGNED_SHORT_5_6_5_REV		0x8364 | ||||
| #define GL_UNSIGNED_SHORT_4_4_4_4		0x8033 | ||||
| #define GL_UNSIGNED_SHORT_4_4_4_4_REV		0x8365 | ||||
| #define GL_UNSIGNED_SHORT_5_5_5_1		0x8034 | ||||
| #define GL_UNSIGNED_SHORT_1_5_5_5_REV		0x8366 | ||||
| #define GL_UNSIGNED_INT_8_8_8_8			0x8035 | ||||
| #define GL_UNSIGNED_INT_8_8_8_8_REV		0x8367 | ||||
| #define GL_UNSIGNED_INT_10_10_10_2		0x8036 | ||||
| #define GL_UNSIGNED_INT_2_10_10_10_REV		0x8368 | ||||
| #define GL_LIGHT_MODEL_COLOR_CONTROL		0x81F8 | ||||
| #define GL_SINGLE_COLOR				0x81F9 | ||||
| #define GL_SEPARATE_SPECULAR_COLOR		0x81FA | ||||
| #define GL_TEXTURE_MIN_LOD			0x813A | ||||
| #define GL_TEXTURE_MAX_LOD			0x813B | ||||
| #define GL_TEXTURE_BASE_LEVEL			0x813C | ||||
| #define GL_TEXTURE_MAX_LEVEL			0x813D | ||||
| #define GL_SMOOTH_POINT_SIZE_RANGE		0x0B12 | ||||
| #define GL_SMOOTH_POINT_SIZE_GRANULARITY	0x0B13 | ||||
| #define GL_SMOOTH_LINE_WIDTH_RANGE		0x0B22 | ||||
| #define GL_SMOOTH_LINE_WIDTH_GRANULARITY	0x0B23 | ||||
| #define GL_ALIASED_POINT_SIZE_RANGE		0x846D | ||||
| #define GL_ALIASED_LINE_WIDTH_RANGE		0x846E | ||||
| #define GL_PACK_SKIP_IMAGES			0x806B | ||||
| #define GL_PACK_IMAGE_HEIGHT			0x806C | ||||
| #define GL_UNPACK_SKIP_IMAGES			0x806D | ||||
| #define GL_UNPACK_IMAGE_HEIGHT			0x806E | ||||
| #define GL_TEXTURE_3D				0x806F | ||||
| #define GL_PROXY_TEXTURE_3D			0x8070 | ||||
| #define GL_TEXTURE_DEPTH			0x8071 | ||||
| #define GL_TEXTURE_WRAP_R			0x8072 | ||||
| #define GL_MAX_3D_TEXTURE_SIZE			0x8073 | ||||
| #define GL_TEXTURE_BINDING_3D			0x806A | ||||
|  | ||||
| GLAPI void GLAPIENTRY glDrawRangeElements( GLenum mode, GLuint start, | ||||
| 	GLuint end, GLsizei count, GLenum type, const GLvoid *indices ); | ||||
|  | ||||
| GLAPI void GLAPIENTRY glTexImage3D( GLenum target, GLint level, | ||||
|                                       GLenum internalFormat, | ||||
|                                       GLint internalFormat, | ||||
|                                       GLsizei width, GLsizei height, | ||||
|                                       GLsizei depth, GLint border, | ||||
|                                       GLenum format, GLenum type, | ||||
| @@ -1704,8 +1516,92 @@ GLAPI void GLAPIENTRY glCopyTexSubImage3D( GLenum target, GLint level, | ||||
|                                              GLint y, GLsizei width, | ||||
|                                              GLsizei height ); | ||||
|  | ||||
| typedef void (APIENTRY * PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices); | ||||
| typedef void (APIENTRY * PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels); | ||||
| typedef void (APIENTRY * PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels); | ||||
| typedef void (APIENTRY * PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * GL_ARB_imaging | ||||
|  */ | ||||
|  | ||||
| #define GL_CONSTANT_COLOR			0x8001 | ||||
| #define GL_ONE_MINUS_CONSTANT_COLOR		0x8002 | ||||
| #define GL_CONSTANT_ALPHA			0x8003 | ||||
| #define GL_ONE_MINUS_CONSTANT_ALPHA		0x8004 | ||||
| #define GL_COLOR_TABLE				0x80D0 | ||||
| #define GL_POST_CONVOLUTION_COLOR_TABLE		0x80D1 | ||||
| #define GL_POST_COLOR_MATRIX_COLOR_TABLE	0x80D2 | ||||
| #define GL_PROXY_COLOR_TABLE			0x80D3 | ||||
| #define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE	0x80D4 | ||||
| #define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE	0x80D5 | ||||
| #define GL_COLOR_TABLE_SCALE			0x80D6 | ||||
| #define GL_COLOR_TABLE_BIAS			0x80D7 | ||||
| #define GL_COLOR_TABLE_FORMAT			0x80D8 | ||||
| #define GL_COLOR_TABLE_WIDTH			0x80D9 | ||||
| #define GL_COLOR_TABLE_RED_SIZE			0x80DA | ||||
| #define GL_COLOR_TABLE_GREEN_SIZE		0x80DB | ||||
| #define GL_COLOR_TABLE_BLUE_SIZE		0x80DC | ||||
| #define GL_COLOR_TABLE_ALPHA_SIZE		0x80DD | ||||
| #define GL_COLOR_TABLE_LUMINANCE_SIZE		0x80DE | ||||
| #define GL_COLOR_TABLE_INTENSITY_SIZE		0x80DF | ||||
| #define GL_CONVOLUTION_1D			0x8010 | ||||
| #define GL_CONVOLUTION_2D			0x8011 | ||||
| #define GL_SEPARABLE_2D				0x8012 | ||||
| #define GL_CONVOLUTION_BORDER_MODE		0x8013 | ||||
| #define GL_CONVOLUTION_FILTER_SCALE		0x8014 | ||||
| #define GL_CONVOLUTION_FILTER_BIAS		0x8015 | ||||
| #define GL_REDUCE				0x8016 | ||||
| #define GL_CONVOLUTION_FORMAT			0x8017 | ||||
| #define GL_CONVOLUTION_WIDTH			0x8018 | ||||
| #define GL_CONVOLUTION_HEIGHT			0x8019 | ||||
| #define GL_MAX_CONVOLUTION_WIDTH		0x801A | ||||
| #define GL_MAX_CONVOLUTION_HEIGHT		0x801B | ||||
| #define GL_POST_CONVOLUTION_RED_SCALE		0x801C | ||||
| #define GL_POST_CONVOLUTION_GREEN_SCALE		0x801D | ||||
| #define GL_POST_CONVOLUTION_BLUE_SCALE		0x801E | ||||
| #define GL_POST_CONVOLUTION_ALPHA_SCALE		0x801F | ||||
| #define GL_POST_CONVOLUTION_RED_BIAS		0x8020 | ||||
| #define GL_POST_CONVOLUTION_GREEN_BIAS		0x8021 | ||||
| #define GL_POST_CONVOLUTION_BLUE_BIAS		0x8022 | ||||
| #define GL_POST_CONVOLUTION_ALPHA_BIAS		0x8023 | ||||
| #define GL_CONSTANT_BORDER			0x8151 | ||||
| #define GL_REPLICATE_BORDER			0x8153 | ||||
| #define GL_CONVOLUTION_BORDER_COLOR		0x8154 | ||||
| #define GL_COLOR_MATRIX				0x80B1 | ||||
| #define GL_COLOR_MATRIX_STACK_DEPTH		0x80B2 | ||||
| #define GL_MAX_COLOR_MATRIX_STACK_DEPTH		0x80B3 | ||||
| #define GL_POST_COLOR_MATRIX_RED_SCALE		0x80B4 | ||||
| #define GL_POST_COLOR_MATRIX_GREEN_SCALE	0x80B5 | ||||
| #define GL_POST_COLOR_MATRIX_BLUE_SCALE		0x80B6 | ||||
| #define GL_POST_COLOR_MATRIX_ALPHA_SCALE	0x80B7 | ||||
| #define GL_POST_COLOR_MATRIX_RED_BIAS		0x80B8 | ||||
| #define GL_POST_COLOR_MATRIX_GREEN_BIAS		0x80B9 | ||||
| #define GL_POST_COLOR_MATRIX_BLUE_BIAS		0x80BA | ||||
| #define GL_POST_COLOR_MATRIX_ALPHA_BIAS		0x80BB | ||||
| #define GL_HISTOGRAM				0x8024 | ||||
| #define GL_PROXY_HISTOGRAM			0x8025 | ||||
| #define GL_HISTOGRAM_WIDTH			0x8026 | ||||
| #define GL_HISTOGRAM_FORMAT			0x8027 | ||||
| #define GL_HISTOGRAM_RED_SIZE			0x8028 | ||||
| #define GL_HISTOGRAM_GREEN_SIZE			0x8029 | ||||
| #define GL_HISTOGRAM_BLUE_SIZE			0x802A | ||||
| #define GL_HISTOGRAM_ALPHA_SIZE			0x802B | ||||
| #define GL_HISTOGRAM_LUMINANCE_SIZE		0x802C | ||||
| #define GL_HISTOGRAM_SINK			0x802D | ||||
| #define GL_MINMAX				0x802E | ||||
| #define GL_MINMAX_FORMAT			0x802F | ||||
| #define GL_MINMAX_SINK				0x8030 | ||||
| #define GL_TABLE_TOO_LARGE			0x8031 | ||||
| #define GL_BLEND_EQUATION			0x8009 | ||||
| #define GL_MIN					0x8007 | ||||
| #define GL_MAX					0x8008 | ||||
| #define GL_FUNC_ADD				0x8006 | ||||
| #define GL_FUNC_SUBTRACT			0x800A | ||||
| #define GL_FUNC_REVERSE_SUBTRACT		0x800B | ||||
| #define GL_BLEND_COLOR				0x8005 | ||||
|  | ||||
| /* 1.2 imaging extension functions */ | ||||
|  | ||||
| GLAPI void GLAPIENTRY glColorTable( GLenum target, GLenum internalformat, | ||||
|                                     GLsizei width, GLenum format, | ||||
| @@ -1815,9 +1711,151 @@ GLAPI void GLAPIENTRY glSeparableFilter2D( GLenum target, | ||||
| GLAPI void GLAPIENTRY glGetSeparableFilter( GLenum target, GLenum format, | ||||
| 	GLenum type, GLvoid *row, GLvoid *column, GLvoid *span ); | ||||
|  | ||||
| typedef void (APIENTRY * PFNGLBLENDCOLORPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); | ||||
| typedef void (APIENTRY * PFNGLBLENDEQUATIONPROC) (GLenum mode); | ||||
| typedef void (APIENTRY * PFNGLCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table); | ||||
| typedef void (APIENTRY * PFNGLCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params); | ||||
| typedef void (APIENTRY * PFNGLCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params); | ||||
| typedef void (APIENTRY * PFNGLCOPYCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); | ||||
| typedef void (APIENTRY * PFNGLGETCOLORTABLEPROC) (GLenum target, GLenum format, GLenum type, GLvoid *table); | ||||
| typedef void (APIENTRY * PFNGLGETCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params); | ||||
| typedef void (APIENTRY * PFNGLGETCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params); | ||||
| typedef void (APIENTRY * PFNGLCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data); | ||||
| typedef void (APIENTRY * PFNGLCOPYCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width); | ||||
| typedef void (APIENTRY * PFNGLCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image); | ||||
| typedef void (APIENTRY * PFNGLCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image); | ||||
| typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERFPROC) (GLenum target, GLenum pname, GLfloat params); | ||||
| typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params); | ||||
| typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERIPROC) (GLenum target, GLenum pname, GLint params); | ||||
| typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params); | ||||
| typedef void (APIENTRY * PFNGLCOPYCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); | ||||
| typedef void (APIENTRY * PFNGLCOPYCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height); | ||||
| typedef void (APIENTRY * PFNGLGETCONVOLUTIONFILTERPROC) (GLenum target, GLenum format, GLenum type, GLvoid *image); | ||||
| typedef void (APIENTRY * PFNGLGETCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params); | ||||
| typedef void (APIENTRY * PFNGLGETCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params); | ||||
| typedef void (APIENTRY * PFNGLGETSEPARABLEFILTERPROC) (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span); | ||||
| typedef void (APIENTRY * PFNGLSEPARABLEFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column); | ||||
| typedef void (APIENTRY * PFNGLGETHISTOGRAMPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values); | ||||
| typedef void (APIENTRY * PFNGLGETHISTOGRAMPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params); | ||||
| typedef void (APIENTRY * PFNGLGETHISTOGRAMPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params); | ||||
| typedef void (APIENTRY * PFNGLGETMINMAXPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values); | ||||
| typedef void (APIENTRY * PFNGLGETMINMAXPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params); | ||||
| typedef void (APIENTRY * PFNGLGETMINMAXPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params); | ||||
| typedef void (APIENTRY * PFNGLHISTOGRAMPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink); | ||||
| typedef void (APIENTRY * PFNGLMINMAXPROC) (GLenum target, GLenum internalformat, GLboolean sink); | ||||
| typedef void (APIENTRY * PFNGLRESETHISTOGRAMPROC) (GLenum target); | ||||
| typedef void (APIENTRY * PFNGLRESETMINMAXPROC) (GLenum target); | ||||
|  | ||||
|  | ||||
| /* 1.3 functions */ | ||||
|  | ||||
| /* | ||||
|  * OpenGL 1.3 | ||||
|  */ | ||||
|  | ||||
| /* multitexture */ | ||||
| #define GL_TEXTURE0				0x84C0 | ||||
| #define GL_TEXTURE1				0x84C1 | ||||
| #define GL_TEXTURE2				0x84C2 | ||||
| #define GL_TEXTURE3				0x84C3 | ||||
| #define GL_TEXTURE4				0x84C4 | ||||
| #define GL_TEXTURE5				0x84C5 | ||||
| #define GL_TEXTURE6				0x84C6 | ||||
| #define GL_TEXTURE7				0x84C7 | ||||
| #define GL_TEXTURE8				0x84C8 | ||||
| #define GL_TEXTURE9				0x84C9 | ||||
| #define GL_TEXTURE10				0x84CA | ||||
| #define GL_TEXTURE11				0x84CB | ||||
| #define GL_TEXTURE12				0x84CC | ||||
| #define GL_TEXTURE13				0x84CD | ||||
| #define GL_TEXTURE14				0x84CE | ||||
| #define GL_TEXTURE15				0x84CF | ||||
| #define GL_TEXTURE16				0x84D0 | ||||
| #define GL_TEXTURE17				0x84D1 | ||||
| #define GL_TEXTURE18				0x84D2 | ||||
| #define GL_TEXTURE19				0x84D3 | ||||
| #define GL_TEXTURE20				0x84D4 | ||||
| #define GL_TEXTURE21				0x84D5 | ||||
| #define GL_TEXTURE22				0x84D6 | ||||
| #define GL_TEXTURE23				0x84D7 | ||||
| #define GL_TEXTURE24				0x84D8 | ||||
| #define GL_TEXTURE25				0x84D9 | ||||
| #define GL_TEXTURE26				0x84DA | ||||
| #define GL_TEXTURE27				0x84DB | ||||
| #define GL_TEXTURE28				0x84DC | ||||
| #define GL_TEXTURE29				0x84DD | ||||
| #define GL_TEXTURE30				0x84DE | ||||
| #define GL_TEXTURE31				0x84DF | ||||
| #define GL_ACTIVE_TEXTURE			0x84E0 | ||||
| #define GL_CLIENT_ACTIVE_TEXTURE		0x84E1 | ||||
| #define GL_MAX_TEXTURE_UNITS			0x84E2 | ||||
| /* texture_cube_map */ | ||||
| #define GL_NORMAL_MAP				0x8511 | ||||
| #define GL_REFLECTION_MAP			0x8512 | ||||
| #define GL_TEXTURE_CUBE_MAP			0x8513 | ||||
| #define GL_TEXTURE_BINDING_CUBE_MAP		0x8514 | ||||
| #define GL_TEXTURE_CUBE_MAP_POSITIVE_X		0x8515 | ||||
| #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X		0x8516 | ||||
| #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y		0x8517 | ||||
| #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y		0x8518 | ||||
| #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z		0x8519 | ||||
| #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z		0x851A | ||||
| #define GL_PROXY_TEXTURE_CUBE_MAP		0x851B | ||||
| #define GL_MAX_CUBE_MAP_TEXTURE_SIZE		0x851C | ||||
| /* texture_compression */ | ||||
| #define GL_COMPRESSED_ALPHA			0x84E9 | ||||
| #define GL_COMPRESSED_LUMINANCE			0x84EA | ||||
| #define GL_COMPRESSED_LUMINANCE_ALPHA		0x84EB | ||||
| #define GL_COMPRESSED_INTENSITY			0x84EC | ||||
| #define GL_COMPRESSED_RGB			0x84ED | ||||
| #define GL_COMPRESSED_RGBA			0x84EE | ||||
| #define GL_TEXTURE_COMPRESSION_HINT		0x84EF | ||||
| #define GL_TEXTURE_COMPRESSED_IMAGE_SIZE	0x86A0 | ||||
| #define GL_TEXTURE_COMPRESSED			0x86A1 | ||||
| #define GL_NUM_COMPRESSED_TEXTURE_FORMATS	0x86A2 | ||||
| #define GL_COMPRESSED_TEXTURE_FORMATS		0x86A3 | ||||
| /* multisample */ | ||||
| #define GL_MULTISAMPLE				0x809D | ||||
| #define GL_SAMPLE_ALPHA_TO_COVERAGE		0x809E | ||||
| #define GL_SAMPLE_ALPHA_TO_ONE			0x809F | ||||
| #define GL_SAMPLE_COVERAGE			0x80A0 | ||||
| #define GL_SAMPLE_BUFFERS			0x80A8 | ||||
| #define GL_SAMPLES				0x80A9 | ||||
| #define GL_SAMPLE_COVERAGE_VALUE		0x80AA | ||||
| #define GL_SAMPLE_COVERAGE_INVERT		0x80AB | ||||
| #define GL_MULTISAMPLE_BIT			0x20000000 | ||||
| /* transpose_matrix */ | ||||
| #define GL_TRANSPOSE_MODELVIEW_MATRIX		0x84E3 | ||||
| #define GL_TRANSPOSE_PROJECTION_MATRIX		0x84E4 | ||||
| #define GL_TRANSPOSE_TEXTURE_MATRIX		0x84E5 | ||||
| #define GL_TRANSPOSE_COLOR_MATRIX		0x84E6 | ||||
| /* texture_env_combine */ | ||||
| #define GL_COMBINE				0x8570 | ||||
| #define GL_COMBINE_RGB				0x8571 | ||||
| #define GL_COMBINE_ALPHA			0x8572 | ||||
| #define GL_SOURCE0_RGB				0x8580 | ||||
| #define GL_SOURCE1_RGB				0x8581 | ||||
| #define GL_SOURCE2_RGB				0x8582 | ||||
| #define GL_SOURCE0_ALPHA			0x8588 | ||||
| #define GL_SOURCE1_ALPHA			0x8589 | ||||
| #define GL_SOURCE2_ALPHA			0x858A | ||||
| #define GL_OPERAND0_RGB				0x8590 | ||||
| #define GL_OPERAND1_RGB				0x8591 | ||||
| #define GL_OPERAND2_RGB				0x8592 | ||||
| #define GL_OPERAND0_ALPHA			0x8598 | ||||
| #define GL_OPERAND1_ALPHA			0x8599 | ||||
| #define GL_OPERAND2_ALPHA			0x859A | ||||
| #define GL_RGB_SCALE				0x8573 | ||||
| #define GL_ADD_SIGNED				0x8574 | ||||
| #define GL_INTERPOLATE				0x8575 | ||||
| #define GL_SUBTRACT				0x84E7 | ||||
| #define GL_CONSTANT				0x8576 | ||||
| #define GL_PRIMARY_COLOR			0x8577 | ||||
| #define GL_PREVIOUS				0x8578 | ||||
| /* texture_env_dot3 */ | ||||
| #define GL_DOT3_RGB				0x86AE | ||||
| #define GL_DOT3_RGBA				0x86AF | ||||
| /* texture_border_clamp */ | ||||
| #define GL_CLAMP_TO_BORDER			0x812D | ||||
|  | ||||
| GLAPI void GLAPIENTRY glActiveTexture( GLenum texture ); | ||||
|  | ||||
| @@ -1912,7 +1950,52 @@ GLAPI void GLAPIENTRY glMultTransposeMatrixf( const GLfloat m[16] ); | ||||
|  | ||||
| GLAPI void GLAPIENTRY glSampleCoverage( GLclampf value, GLboolean invert ); | ||||
|  | ||||
| GLAPI void GLAPIENTRY glSamplePass( GLenum pass ); | ||||
| typedef void (APIENTRY * PFNGLACTIVETEXTUREPROC) (GLenum texture); | ||||
| typedef void (APIENTRY * PFNGLCLIENTACTIVETEXTUREPROC) (GLenum texture); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1DPROC) (GLenum target, GLdouble s); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1DVPROC) (GLenum target, const GLdouble *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1FPROC) (GLenum target, GLfloat s); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1FVPROC) (GLenum target, const GLfloat *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1IPROC) (GLenum target, GLint s); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1IVPROC) (GLenum target, const GLint *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1SPROC) (GLenum target, GLshort s); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1SVPROC) (GLenum target, const GLshort *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2DPROC) (GLenum target, GLdouble s, GLdouble t); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2DVPROC) (GLenum target, const GLdouble *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2FVPROC) (GLenum target, const GLfloat *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2IPROC) (GLenum target, GLint s, GLint t); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2IVPROC) (GLenum target, const GLint *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2SPROC) (GLenum target, GLshort s, GLshort t); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2SVPROC) (GLenum target, const GLshort *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3DVPROC) (GLenum target, const GLdouble *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3FVPROC) (GLenum target, const GLfloat *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3IPROC) (GLenum target, GLint s, GLint t, GLint r); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3IVPROC) (GLenum target, const GLint *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3SPROC) (GLenum target, GLshort s, GLshort t, GLshort r); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3SVPROC) (GLenum target, const GLshort *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4DVPROC) (GLenum target, const GLdouble *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4FVPROC) (GLenum target, const GLfloat *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4IPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4IVPROC) (GLenum target, const GLint *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4SPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4SVPROC) (GLenum target, const GLshort *v); | ||||
| typedef void (APIENTRY * PFNGLLOADTRANSPOSEMATRIXFPROC) (const GLfloat *m); | ||||
| typedef void (APIENTRY * PFNGLLOADTRANSPOSEMATRIXDPROC) (const GLdouble *m); | ||||
| typedef void (APIENTRY * PFNGLMULTTRANSPOSEMATRIXFPROC) (const GLfloat *m); | ||||
| typedef void (APIENTRY * PFNGLMULTTRANSPOSEMATRIXDPROC) (const GLdouble *m); | ||||
| typedef void (APIENTRY * PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert); | ||||
| typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data); | ||||
| typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data); | ||||
| typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data); | ||||
| typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data); | ||||
| typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data); | ||||
| typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data); | ||||
| typedef void (APIENTRY * PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, void *img); | ||||
|  | ||||
|  | ||||
| /* | ||||
| @@ -1992,11 +2075,49 @@ GLAPI void GLAPIENTRY glMultiTexCoord4ivARB(GLenum target, const GLint *v); | ||||
| GLAPI void GLAPIENTRY glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); | ||||
| GLAPI void GLAPIENTRY glMultiTexCoord4svARB(GLenum target, const GLshort *v); | ||||
|  | ||||
| typedef void (APIENTRY * PFNGLACTIVETEXTUREARBPROC) (GLenum texture); | ||||
| typedef void (APIENTRY * PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); | ||||
| typedef void (APIENTRY * PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v); | ||||
|  | ||||
| #endif /* GL_ARB_multitexture */ | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Define this token if you want "old-style" header file behaviour (extensions | ||||
|  * defined in gl.h).  Otherwise, extensions will be included from glext.h. | ||||
|  */ | ||||
| #if defined(GL_GLEXT_LEGACY) | ||||
|  | ||||
|  | ||||
| @@ -2372,8 +2493,6 @@ GLAPI void GLAPIENTRY glUnlockArraysEXT( void ); | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * 197. GL_MESA_window_pos | ||||
|  */ | ||||
| @@ -2443,7 +2562,7 @@ GLAPI void GLAPIENTRY glResizeBuffersMESA( void ); | ||||
|  | ||||
| /* | ||||
|  * ???. GL_MESA_trace | ||||
|  * XXX this should go into glext.h at some point | ||||
|  * XXX obsolete | ||||
|  */ | ||||
| #ifndef GL_MESA_trace | ||||
| #define GL_MESA_trace 1 | ||||
| @@ -2474,7 +2593,7 @@ GLAPI void GLAPIENTRY glTracePointerRangeMESA( const GLvoid* first, const GLvoid | ||||
|  | ||||
| /* | ||||
|  * ???. GL_MESA_packed_depth_stencil | ||||
|  * XXX this will be in glext.h someday | ||||
|  * XXX obsolete | ||||
|  */ | ||||
| #ifndef GL_MESA_packed_depth_stencil | ||||
| #define GL_MESA_packed_depth_stencil 1 | ||||
| @@ -2488,21 +2607,50 @@ GLAPI void GLAPIENTRY glTracePointerRangeMESA( const GLvoid* first, const GLvoid | ||||
| #endif /* GL_MESA_packed_depth_stencil */ | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * ??. GL_MESA_sprite_point | ||||
|  */ | ||||
| #ifndef GL_MESA_sprite_point | ||||
| #define GL_MESA_sprite_point 1 | ||||
| #ifndef GL_MESA_ycbcr_texture | ||||
| #define GL_MESA_ycbcr_texture 1 | ||||
|  | ||||
| #define GL_SPRITE_POINT_MESA 0x8757  /* XXX not finalized! */ | ||||
| #define GL_YCBCR_MESA				0x8757 | ||||
| #define GL_UNSIGNED_SHORT_8_8_MESA		0x85BA /* same as Apple */ | ||||
| #define GL_UNSIGNED_SHORT_8_8_REV_MESA		0x85BB /* same as Apple */ | ||||
|  | ||||
| #endif /* GL_MESA_texture_ycbcr */ | ||||
|  | ||||
|  | ||||
|  | ||||
| #ifndef GL_MESA_pack_invert | ||||
| #define GL_MESA_pack_invert 1 | ||||
|  | ||||
| #define GL_PACK_INVERT_MESA                     0x8758 | ||||
|  | ||||
| #endif /* GL_MESA_pack_invert */ | ||||
|  | ||||
|  | ||||
|  | ||||
| #ifndef GL_APPLE_client_storage | ||||
| #define GL_APPLE_client_storage 1 | ||||
|  | ||||
| #define GL_UNPACK_CLIENT_STORAGE_APPLE          0x85B2 | ||||
|  | ||||
| #endif /* GL_APPLE_client_storage */ | ||||
|  | ||||
|  | ||||
|  | ||||
| #ifndef GL_APPLE_ycbcr_422 | ||||
| #define GL_APPLE_ycbcr_422 1 | ||||
|  | ||||
| #define GL_YCBCR_422_APPLE			0x85B9 | ||||
| #define GL_UNSIGNED_SHORT_8_8_APPLE		0x85BA | ||||
| #define GL_UNSIGNED_SHORT_8_8_REV_APPLE		0x85BB | ||||
|  | ||||
| #endif /* GL_APPLE_ycbcr_422 */ | ||||
|  | ||||
| #endif | ||||
|  | ||||
|  | ||||
| /********************************************************************** | ||||
|  * Begin system-specific stuff | ||||
|  */ | ||||
| #if defined(__BEOS__) || defined(__QUICKDRAW__) | ||||
| #if defined(PRAGMA_EXPORT_SUPPORTED) | ||||
| #pragma export off | ||||
| #endif | ||||
|  | ||||
|   | ||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1244
									
								
								include/GL/glext.h
									
									
									
									
									
								
							
							
						
						
									
										1244
									
								
								include/GL/glext.h
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -36,6 +36,14 @@ | ||||
|  | ||||
| #include <GL/gl.h> | ||||
|  | ||||
| #ifndef GLAPIENTRY | ||||
| #define GLAPIENTRY | ||||
| #endif | ||||
|  | ||||
| #ifndef GLAPI | ||||
| #define GLAPI | ||||
| #endif | ||||
|  | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
|   | ||||
| @@ -223,9 +223,11 @@ WGLAPI int   GLAPIENTRY SetPixelFormat(HDC,int,const PIXELFORMATDESCRIPTOR *); | ||||
|  video resize subAPI, glutPostWindowRedisplay, glutKeyboardUpFunc, | ||||
|  glutSpecialUpFunc, glutIgnoreKeyRepeat, glutSetKeyRepeat, | ||||
|  glutJoystickFunc, glutForceJoystickFunc (NOT FINALIZED!). | ||||
|  | ||||
|  GLUT_API_VERSION=5  glutGetProcAddress (added by BrianP) | ||||
| **/ | ||||
| #ifndef GLUT_API_VERSION  /* allow this to be overriden */ | ||||
| #define GLUT_API_VERSION		3 | ||||
| #define GLUT_API_VERSION		5 | ||||
| #endif | ||||
|  | ||||
| /** | ||||
| @@ -661,6 +663,9 @@ GLUTAPI int GLUTAPIENTRY glutExtensionSupported(const char *name); | ||||
| GLUTAPI int GLUTAPIENTRY glutGetModifiers(void); | ||||
| GLUTAPI int GLUTAPIENTRY glutLayerGet(GLenum type); | ||||
| #endif | ||||
| #if (GLUT_API_VERSION >= 5) | ||||
| GLUTAPI void * GLUTAPIENTRY glutGetProcAddress(const char *procName); | ||||
| #endif | ||||
|  | ||||
| /* GLUT font sub-API */ | ||||
| GLUTAPI void GLUTAPIENTRY glutBitmapCharacter(void *font, int character); | ||||
|   | ||||
| @@ -1,10 +1,10 @@ | ||||
| /* $Id: glx.h,v 1.33.2.1 2001/12/14 03:20:57 brianp Exp $ */ | ||||
| /* $Id: glx.h,v 1.38 2002/10/14 13:52:27 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Mesa 3-D graphics library | ||||
|  * Version:  4.0 | ||||
|  * Version:  4.1 | ||||
|  *  | ||||
|  * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved. | ||||
|  * Copyright (C) 1999-2002  Brian Paul   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"), | ||||
| @@ -154,6 +154,7 @@ extern "C" { | ||||
| #define GLX_STATIC_COLOR		0x8005 | ||||
| #define GLX_GRAY_SCALE			0x8006 | ||||
| #define GLX_STATIC_GRAY			0x8007 | ||||
| #define GLX_TRANSPARENT_RGB		0x8008 | ||||
| #define GLX_TRANSPARENT_INDEX		0x8009 | ||||
| #define GLX_RGBA_TYPE			0x8014 | ||||
| #define GLX_COLOR_INDEX_TYPE		0x8015 | ||||
| @@ -297,7 +298,6 @@ extern void glXGetSelectedEvent( Display *dpy, GLXDrawable drawable, | ||||
| extern void (*glXGetProcAddress(const GLubyte *procname))(); | ||||
|  | ||||
|  | ||||
|  | ||||
| #ifndef GLX_GLXEXT_LEGACY | ||||
|  | ||||
| #include <GL/glxext.h> | ||||
| @@ -453,6 +453,38 @@ extern void (*glXGetProcAddressARB(const GLubyte *procName))(); | ||||
| #endif /* GLX_GLXEXT_LEGACY */ | ||||
|  | ||||
|  | ||||
| /** | ||||
|  ** The following aren't in glxext.h yet. | ||||
|  **/ | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * ???. GLX_NV_vertex_array_range | ||||
|  */ | ||||
| #ifndef GLX_NV_vertex_array_range | ||||
| #define GLX_NV_vertex_array_range | ||||
|  | ||||
| extern void *glXAllocateMemoryNV(GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority); | ||||
| extern void glXFreeMemoryNV(GLvoid *pointer); | ||||
| typedef void * ( * PFNGLXALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority); | ||||
| typedef void ( * PFNGLXFREEMEMORYNVPROC) (GLvoid *pointer); | ||||
|  | ||||
| #endif /* GLX_NV_vertex_array_range */ | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * ???. GLX_MESA_agp_offset | ||||
|  */  | ||||
| #ifndef GLX_MESA_agp_offset | ||||
| #define GLX_MESA_agp_offset 1 | ||||
|  | ||||
| extern GLuint glXGetAGPOffsetMESA(const GLvoid *pointer); | ||||
| typedef GLuint (* PFNGLXGETAGPOFFSETMESAPROC) (const GLvoid *pointer); | ||||
|  | ||||
| #endif /* GLX_MESA_agp_offset */ | ||||
|  | ||||
|  | ||||
|  | ||||
| #ifdef __cplusplus | ||||
| } | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: glx_mangle.h,v 1.1.1.1.8.1 2001/11/09 22:00:26 brianp Exp $ */ | ||||
| /* $Id: glx_mangle.h,v 1.2 2001/11/09 22:01:02 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Mesa 3-D graphics library | ||||
|   | ||||
| @@ -42,12 +42,16 @@ extern "C" { | ||||
| #ifndef APIENTRY | ||||
| #define APIENTRY | ||||
| #endif | ||||
| #ifndef GLAPI | ||||
| #define GLAPI extern | ||||
| #endif | ||||
|  | ||||
| /*************************************************************/ | ||||
|  | ||||
| /* Header file version number, required by OpenGL ABI for Linux */ | ||||
| /* glxext.h last updated 2001/09/26 */ | ||||
| #define GLX_GLXEXT_VERSION 3 | ||||
| /* glxext.h last updated 2002/03/22 */ | ||||
| /* Current version at http://oss.sgi.com/projects/ogl-sample/registry/ */ | ||||
| #define GLX_GLXEXT_VERSION 5 | ||||
|  | ||||
| #ifndef GLX_VERSION_1_3 | ||||
| #define GLX_WINDOW_BIT                     0x00000001 | ||||
| @@ -113,6 +117,9 @@ extern "C" { | ||||
| #define GLX_SAMPLES                        100001 | ||||
| #endif | ||||
|  | ||||
| #ifndef GLX_ARB_get_proc_address | ||||
| #endif | ||||
|  | ||||
| #ifndef GLX_ARB_multisample | ||||
| #define GLX_SAMPLE_BUFFERS_ARB             100000 | ||||
| #define GLX_SAMPLES_ARB                    100001 | ||||
| @@ -276,7 +283,6 @@ extern "C" { | ||||
| /*************************************************************/ | ||||
|  | ||||
| #ifndef GLX_ARB_get_proc_address | ||||
| /* XXX Added void parameter to silence many, many warnings (BrianP) */ | ||||
| typedef void (*__GLXextFuncPtr)(void); | ||||
| #endif | ||||
|  | ||||
| @@ -348,6 +354,14 @@ typedef void ( * PFNGLXSELECTEVENTPROC) (Display *dpy, GLXDrawable draw, unsigne | ||||
| typedef void ( * PFNGLXGETSELECTEDEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long *event_mask); | ||||
| #endif | ||||
|  | ||||
| #ifndef GLX_VERSION_1_4 | ||||
| #define GLX_VERSION_1_4 1 | ||||
| #ifdef GLX_GLXEXT_PROTOTYPES | ||||
| extern __GLXextFuncPtr glXGetProcAddress (const GLubyte *); | ||||
| #endif /* GLX_GLXEXT_PROTOTYPES */ | ||||
| typedef __GLXextFuncPtr ( * PFNGLXGETPROCADDRESSPROC) (const GLubyte *procName); | ||||
| #endif | ||||
|  | ||||
| #ifndef GLX_ARB_get_proc_address | ||||
| #define GLX_ARB_get_proc_address 1 | ||||
| #ifdef GLX_GLXEXT_PROTOTYPES | ||||
| @@ -356,6 +370,10 @@ extern __GLXextFuncPtr glXGetProcAddressARB (const GLubyte *); | ||||
| typedef __GLXextFuncPtr ( * PFNGLXGETPROCADDRESSARBPROC) (const GLubyte *procName); | ||||
| #endif | ||||
|  | ||||
| #ifndef GLX_ARB_multisample | ||||
| #define GLX_ARB_multisample 1 | ||||
| #endif | ||||
|  | ||||
| #ifndef GLX_SGIS_multisample | ||||
| #define GLX_SGIS_multisample 1 | ||||
| #endif | ||||
| @@ -419,7 +437,7 @@ extern void glXFreeContextEXT (Display *, GLXContext); | ||||
| #endif /* GLX_GLXEXT_PROTOTYPES */ | ||||
| typedef Display * ( * PFNGLXGETCURRENTDISPLAYEXTPROC) (void); | ||||
| typedef int ( * PFNGLXQUERYCONTEXTINFOEXTPROC) (Display *dpy, GLXContext context, int attribute, int *value); | ||||
| typedef GLXContextID ( * PFNGLXGETCONTEXTIDEXTPROC) (GLXContext context); | ||||
| typedef GLXContextID ( * PFNGLXGETCONTEXTIDEXTPROC) (const GLXContext context); | ||||
| typedef GLXContext ( * PFNGLXIMPORTCONTEXTEXTPROC) (Display *dpy, GLXContextID contextID); | ||||
| typedef void ( * PFNGLXFREECONTEXTEXTPROC) (Display *dpy, GLXContext context); | ||||
| #endif | ||||
| @@ -554,14 +572,33 @@ typedef Bool ( * PFNGLXSET3DFXMODEMESAPROC) (int mode); | ||||
| #define GLX_SGIX_visual_select_group 1 | ||||
| #endif | ||||
|  | ||||
| #ifndef GLX_GLX_OML_swap_method | ||||
| #define GLX_GLX_OML_swap_method 1 | ||||
| #ifndef GLX_OML_swap_method | ||||
| #define GLX_OML_swap_method 1 | ||||
| #endif | ||||
|  | ||||
| #ifndef GLX_GLX_OML_sync_control | ||||
| #define GLX_GLX_OML_sync_control 1 | ||||
| #if defined(__STDC_VERSION__) | ||||
| #if __STDC_VERSION__ >= 199901L | ||||
| /* Include ISO C99 integer types for OML_sync_control; need a better test */ | ||||
| #include <inttypes.h> | ||||
|  | ||||
| #ifndef GLX_OML_sync_control | ||||
| #define GLX_OML_sync_control 1 | ||||
| #ifdef GLX_GLXEXT_PROTOTYPES | ||||
| extern Bool glXGetSyncValuesOML (Display *, GLXDrawable, int64_t *, int64_t *, int64_t *); | ||||
| extern Bool glXGetMscRateOML (Display *, GLXDrawable, int32_t *, int32_t *); | ||||
| extern int64_t glXSwapBuffersMscOML (Display *, GLXDrawable, int64_t, int64_t, int64_t); | ||||
| extern Bool glXWaitForMscOML (Display *, GLXDrawable, int64_t, int64_t, int64_t, int64_t *, int64_t *, int64_t *); | ||||
| extern Bool glXWaitForSbcOML (Display *, GLXDrawable, int64_t, int64_t *, int64_t *, int64_t *); | ||||
| #endif /* GLX_GLXEXT_PROTOTYPES */ | ||||
| typedef Bool ( * PFNGLXGETSYNCVALUESOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t *ust, int64_t *msc, int64_t *sbc); | ||||
| typedef Bool ( * PFNGLXGETMSCRATEOMLPROC) (Display *dpy, GLXDrawable drawable, int32_t *numerator, int32_t *denominator); | ||||
| typedef int64_t ( * PFNGLXSWAPBUFFERSMSCOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder); | ||||
| typedef Bool ( * PFNGLXWAITFORMSCOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder, int64_t *ust, int64_t *msc, int64_t *sbc); | ||||
| typedef Bool ( * PFNGLXWAITFORSBCOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t target_sbc, int64_t *ust, int64_t *msc, int64_t *sbc); | ||||
| #endif | ||||
|  | ||||
| #endif /* C99 version test */ | ||||
| #endif /* STDC test */ | ||||
|  | ||||
| #ifdef __cplusplus | ||||
| } | ||||
|   | ||||
| @@ -314,7 +314,9 @@ struct __GLdrawablePrivateRec { | ||||
|     void (*unlockDP)(__GLdrawablePrivate *glPriv); | ||||
|  | ||||
|     /* exported */ | ||||
| #if 0 /* disable, just like in __GLimportsRec */ | ||||
|     void *wsPriv;	/* pointer to the window system DrawablePrivate */ | ||||
| #endif | ||||
| #ifdef __cplusplus | ||||
|     void *privatePtr; | ||||
| #else | ||||
| @@ -373,8 +375,13 @@ typedef struct __GLimportsRec { | ||||
|     /* Drawing surface management */ | ||||
|     __GLdrawablePrivate *(*getDrawablePrivate)(__GLcontext *gc); | ||||
|  | ||||
| #if 0 | ||||
|    /* At some point, this field got removed from the XFree86 glcore.h file. | ||||
|     * we're removing it here to prevent interop problems. (Brian) | ||||
|     */ | ||||
|     /* Pointer to the window system context */ | ||||
|     void *wscx; | ||||
| #endif | ||||
|  | ||||
|     /* Operating system dependent data goes here */ | ||||
|     void *other; | ||||
|   | ||||
| @@ -1,10 +1,10 @@ | ||||
| /* $Id: osmesa.h,v 1.9 2001/09/23 16:06:13 brianp Exp $ */ | ||||
| /* $Id: osmesa.h,v 1.10 2002/04/04 16:58:04 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Mesa 3-D graphics library | ||||
|  * Version:  4.0 | ||||
|  * Version:  4.1 | ||||
|  *  | ||||
|  * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved. | ||||
|  * Copyright (C) 1999-2002  Brian Paul   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"), | ||||
| @@ -63,7 +63,7 @@ extern "C" { | ||||
|  | ||||
|  | ||||
| #define OSMESA_MAJOR_VERSION 4 | ||||
| #define OSMESA_MINOR_VERSION 0 | ||||
| #define OSMESA_MINOR_VERSION 1 | ||||
| #define OSMESA_PATCH_VERSION 0 | ||||
|  | ||||
|  | ||||
| @@ -254,6 +254,15 @@ OSMesaGetColorBuffer( OSMesaContext c, GLint *width, GLint *height, | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Return pointer to the named function. | ||||
|  * | ||||
|  * New in Mesa 4.1 | ||||
|  */ | ||||
| GLAPI void * GLAPIENTRY | ||||
| OSMesaGetProcAddress( const char *funcName ); | ||||
|  | ||||
|  | ||||
| #if defined(__BEOS__) || defined(__QUICKDRAW__) | ||||
| #pragma export off | ||||
| #endif | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: wmesa.h,v 1.1 1999/08/19 00:55:40 jtg Exp $ */ | ||||
| /* $Id: wmesa.h,v 1.2 2002/04/23 18:23:32 kschultz Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Mesa 3-D graphics library | ||||
| @@ -24,8 +24,17 @@ | ||||
|  | ||||
| /* | ||||
|  * $Log: wmesa.h,v $ | ||||
|  * Revision 1.1  1999/08/19 00:55:40  jtg | ||||
|  * Initial revision | ||||
|  * Revision 1.2  2002/04/23 18:23:32  kschultz | ||||
|  * Fix up alpha buffer handling for Windows. | ||||
|  * - add two new Pixel Format Descriptors that do not have alpha bits to | ||||
|  * mirror the two that do. | ||||
|  * - add logic to wglChoosePixelFormat to match PFD's with respect to alpha. | ||||
|  * - Create/clear software alpha buffer as required. | ||||
|  * Now a wgl or GLUT program can control the creation of a software alpha | ||||
|  * buffer via the PFD or GLUT parms, respectively. | ||||
|  * | ||||
|  * Revision 1.1.1.1  1999/08/19 00:55:40  jtg | ||||
|  * Imported sources | ||||
|  * | ||||
|  * Revision 3.2  1999/01/03 02:54:45  brianp | ||||
|  * updated per Ted Jump | ||||
| @@ -101,13 +110,17 @@ typedef struct wmesa_context *WMesaContext; | ||||
|  *                    GL_FALSE = color index mode | ||||
|  *         db_flag - GL_TRUE = double-buffered, | ||||
|  *                   GL_FALSE = single buffered | ||||
|  *         alpha_flag - GL_TRUE = create software alpha buffer, | ||||
|  *                      GL_FALSE = no software alpha buffer | ||||
|  * | ||||
|  * Note: Indexed mode requires double buffering under Windows. | ||||
|  * | ||||
|  * Return:  a WMesa_context or NULL if error. | ||||
|  */ | ||||
| extern WMesaContext WMesaCreateContext(HWND hWnd,HPALETTE* pPal, | ||||
|                                        GLboolean rgb_flag,GLboolean db_flag); | ||||
|                                        GLboolean rgb_flag, | ||||
|                                        GLboolean db_flag, | ||||
|                                        GLboolean alpha_flag); | ||||
|  | ||||
|  | ||||
| /* | ||||
|   | ||||
| @@ -1,10 +1,10 @@ | ||||
| /* $Id: xmesa.h,v 1.12 2001/09/23 16:06:13 brianp Exp $ */ | ||||
| /* $Id: xmesa.h,v 1.14 2002/10/05 03:03:37 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Mesa 3-D graphics library | ||||
|  * Version:  4.0 | ||||
|  * Version:  4.1 | ||||
|  *  | ||||
|  * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved. | ||||
|  * Copyright (C) 1999-2002  Brian Paul   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"), | ||||
| @@ -90,7 +90,7 @@ extern struct Library *XLibBase; | ||||
|  | ||||
|  | ||||
| #define XMESA_MAJOR_VERSION 4 | ||||
| #define XMESA_MINOR_VERSION 0 | ||||
| #define XMESA_MINOR_VERSION 1 | ||||
|  | ||||
|  | ||||
|  | ||||
| @@ -365,6 +365,25 @@ extern GLboolean XMesaSetFXmode( GLint mode ); | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Reallocate the back/depth/stencil/accum/etc/ buffers associated with | ||||
|  * buffer <b> if its size has changed. | ||||
|  * | ||||
|  * New in Mesa 4.0.2 | ||||
|  */ | ||||
| extern void XMesaResizeBuffers( XMesaBuffer b ); | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * Create a pbuffer. | ||||
|  * New in Mesa 4.1 | ||||
|  */ | ||||
| extern XMesaBuffer XMesaCreatePBuffer(XMesaVisual v, XMesaColormap cmap, | ||||
|                                       unsigned int width, unsigned int height); | ||||
|  | ||||
|  | ||||
|  | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
|   | ||||
| @@ -32,7 +32,7 @@ class SampleGLWindow : public BWindow | ||||
| { | ||||
| public: | ||||
|    SampleGLWindow(BRect frame, uint32 type); | ||||
|    virtual bool   QuitRequested() { return true; } | ||||
|    virtual bool   QuitRequested() { be_app->PostMessage(B_QUIT_REQUESTED); return true; } | ||||
|     | ||||
| private: | ||||
|    SampleGLView   *theView; | ||||
| @@ -135,7 +135,7 @@ void SampleGLView::gInit(void) | ||||
|    use_stipple_mode = GL_FALSE; | ||||
|    use_smooth_mode = GL_TRUE; | ||||
|    linesize = 2; | ||||
|    pointsize = 4; | ||||
|    pointsize = 6; | ||||
| } | ||||
|  | ||||
|  | ||||
| @@ -147,35 +147,46 @@ void SampleGLView::gDraw(void) | ||||
|    glClear(GL_COLOR_BUFFER_BIT); | ||||
|    glLineWidth(linesize); | ||||
|     | ||||
| /* | ||||
|  | ||||
|    if (use_stipple_mode) { | ||||
|       glEnable(GL_LINE_STIPPLE); | ||||
|    } else { | ||||
|       glDisable(GL_LINE_STIPPLE); | ||||
|    } | ||||
|     | ||||
|    if (use_smooth_mode) { | ||||
|       glEnable(GL_LINE_SMOOTH); | ||||
|       glEnable(GL_BLEND); | ||||
|    } else { | ||||
|       glDisable(GL_LINE_SMOOTH); | ||||
|       glDisable(GL_BLEND); | ||||
|    } | ||||
|     | ||||
| */ | ||||
|  | ||||
|    glDisable(GL_POINT_SMOOTH); | ||||
|  | ||||
|  | ||||
|    glPushMatrix(); | ||||
|     | ||||
|    glPointSize(pointsize);         // Set size for point | ||||
|  | ||||
|    for (i = 0; i < 360; i += 5) { | ||||
|       glRotatef(5.0, 0,0,1);         // Rotate right 5 degrees | ||||
|  | ||||
| 	  if (use_smooth_mode) { | ||||
| 		glEnable(GL_LINE_SMOOTH); | ||||
| 	    glEnable(GL_BLEND); | ||||
| 	   } else { | ||||
| 	      glDisable(GL_LINE_SMOOTH); | ||||
| 	      glDisable(GL_BLEND); | ||||
| 	   } | ||||
|  | ||||
|       glColor3f(1.0, 1.0, 0.0);      // Set color for line | ||||
|       glBegin(GL_LINE_STRIP);         // And create the line | ||||
|       glVertex3fv(pntA); | ||||
|       glVertex3fv(pntB); | ||||
|       	glVertex3fv(pntA); | ||||
|       	glVertex3fv(pntB); | ||||
|       glEnd(); | ||||
|        | ||||
|       glPointSize(pointsize);         // Set size for point | ||||
|  | ||||
|       glDisable(GL_POINT_SMOOTH); | ||||
|       glDisable(GL_BLEND); | ||||
|  | ||||
|       glColor3f(0.0, 1.0, 0.0);      // Set color for point | ||||
|       glBegin(GL_POINTS); | ||||
|       glVertex3fv(pntA);         // Draw point at one end | ||||
|       glVertex3fv(pntB);         // Draw point at other end | ||||
|       	glVertex3fv(pntA);         // Draw point at one end | ||||
|       	glVertex3fv(pntB);         // Draw point at other end | ||||
|       glEnd(); | ||||
|    } | ||||
|     | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| # $Id: Makefile.win,v 1.5.2.1 2001/10/26 21:03:15 kschultz Exp $ | ||||
| # $Id: Makefile.win,v 1.7 2002/01/16 00:48:43 kschultz Exp $ | ||||
|  | ||||
| # Mesa 3-D graphics library | ||||
| # Version:  3.5 | ||||
| @@ -67,12 +67,41 @@ SRCS = \ | ||||
| 	geartrain.c \ | ||||
| 	glinfo.c \ | ||||
| 	gloss.c \ | ||||
| 	gltestperf.c \ | ||||
| 	glutfx.c \ | ||||
| 	isosurf.c \ | ||||
| 	lodbias.c \ | ||||
| 	morph3d.c \ | ||||
| 	teapot.c | ||||
| 	multiarb.c \ | ||||
| 	occlude.c \ | ||||
| 	paltex.c \ | ||||
| 	pixeltex.c \ | ||||
| 	pointblast.c \ | ||||
| 	ray.c \ | ||||
| 	readpix.c \ | ||||
| 	reflect.c \ | ||||
| 	renormal.c \ | ||||
| 	shadowtex.c \ | ||||
| 	spectex.c \ | ||||
| 	stex3d.c \ | ||||
| 	teapot.c \ | ||||
| 	terrain.c \ | ||||
| 	tessdemo.c \ | ||||
| 	texcyl.c \ | ||||
| 	texdown.c \ | ||||
| 	texenv.c \ | ||||
| 	texobj.c \ | ||||
| 	trispd.c \ | ||||
| 	tunnel.c \ | ||||
| 	tunnel2.c \ | ||||
| 	winpos.c | ||||
|  | ||||
| CXXSRCS = \ | ||||
| 	rain.cxx | ||||
|  | ||||
| OSMESASRCS = osdemo.c | ||||
|  | ||||
| IPERSSRCS = ipers.c | ||||
| IPERSEXES = $(IPERSSRCS:.c=.exe) | ||||
| !include "../mesawin32.mak" | ||||
|  | ||||
| ##### TARGETS ##### | ||||
| @@ -90,9 +119,12 @@ $(OSMESAEXES) : $*.obj | ||||
| 	@echo $@ | ||||
| 	$(link) $(lcommon) -out:$@ $* /LIBPATH:$(LIBDIR) $(LIBS) $(EXTRALIBS) | ||||
|  | ||||
| $(IPERSEXES) : $*.obj | ||||
| 	@echo $@ | ||||
| 	$(link) -out:$@ $* /LIBPATH:$(LIBDIR) $(LIBS) winmm.lib | ||||
|  | ||||
| readtex.c: | ||||
| 	-copy ..\util\readtex.c . | ||||
|  | ||||
| readtex.h: | ||||
| 	-copy ..\util\readtex.h . | ||||
|  | ||||
| 	-copy ..\util\readtex.h . | ||||
| @@ -1,36 +1,10 @@ | ||||
| /* $Id: clearspd.c,v 1.3 2000/12/07 21:50:39 brianp Exp $ */ | ||||
| /* $Id: clearspd.c,v 1.5 2002/10/31 12:38:32 keithw Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Simple GLUT program to measure glClear() and glutSwapBuffers() speed. | ||||
|  * Brian Paul  February 15, 1997  This file in public domain. | ||||
|  */ | ||||
|  | ||||
| /* | ||||
|  * $Log: clearspd.c,v $ | ||||
|  * Revision 1.3  2000/12/07 21:50:39  brianp | ||||
|  * call glFinish() before getting t1 time | ||||
|  * | ||||
|  * Revision 1.2  2000/04/10 16:25:15  brianp | ||||
|  * fixed visual selection and reporting results | ||||
|  * | ||||
|  * Revision 1.1.1.1  1999/08/19 00:55:40  jtg | ||||
|  * Imported sources | ||||
|  * | ||||
|  * Revision 3.3  1999/03/28 18:18:33  brianp | ||||
|  * minor clean-up | ||||
|  * | ||||
|  * Revision 3.2  1999/03/18 08:16:34  joukj | ||||
|  * | ||||
|  *     cmpstr needs string.h to included to avoid warnings | ||||
|  * | ||||
|  * Revision 3.1  1998/06/29 02:38:30  brianp | ||||
|  * removed unneeded includes | ||||
|  * | ||||
|  * Revision 3.0  1998/02/14 18:42:29  brianp | ||||
|  * initial rev | ||||
|  * | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| @@ -87,6 +61,12 @@ static void Display( void ) | ||||
|       glutSwapBuffers(); | ||||
|    } | ||||
|  | ||||
|    /* NOTE: If clearspd doesn't map it's window immediately on | ||||
|     * starting, swaps will be istantaneous, so this will send Loops | ||||
|     * towards infinity.  When a window is finally mapped, it may be | ||||
|     * minutes before the first call to glutSwapBuffers, making it look | ||||
|     * like there's a driver bug. | ||||
|     */ | ||||
|    if (t1-t0 < MinPeriod) { | ||||
|       /* Next time do more clears to get longer elapsed time */ | ||||
|       Loops *= 2; | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: cubemap.c,v 1.3 2000/06/27 17:04:43 brianp Exp $ */ | ||||
| /* $Id: cubemap.c,v 1.4 2002/10/25 17:20:26 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * GL_ARB_texture_cube_map demo | ||||
| @@ -36,25 +36,100 @@ | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #include <assert.h> | ||||
| #include <math.h> | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
| #include "GL/glut.h" | ||||
| #include "../util/readtex.c" /* a hack */ | ||||
|  | ||||
|  | ||||
| static GLfloat Xrot = 0, Yrot = 0; | ||||
| static GLfloat EyeDist = 10; | ||||
|  | ||||
|  | ||||
| static void draw_skybox( void ) | ||||
| { | ||||
|    const GLfloat eps1 = 0.99; | ||||
|    const GLfloat br = 20.0; /* box radius */ | ||||
|  | ||||
|    glBegin(GL_QUADS); | ||||
|  | ||||
|    /* +X side */ | ||||
|    glTexCoord3f(1.0, -eps1, -eps1);  glVertex3f(br, -br, -br); | ||||
|    glTexCoord3f(1.0, -eps1,  eps1);  glVertex3f(br, -br,  br); | ||||
|    glTexCoord3f(1.0,  eps1,  eps1);  glVertex3f(br,  br,  br); | ||||
|    glTexCoord3f(1.0,  eps1, -eps1);  glVertex3f(br,  br, -br); | ||||
|  | ||||
|    /* -X side */ | ||||
|    glTexCoord3f(-1.0,  eps1, -eps1);  glVertex3f(-br,  br, -br); | ||||
|    glTexCoord3f(-1.0,  eps1,  eps1);  glVertex3f(-br,  br,  br); | ||||
|    glTexCoord3f(-1.0, -eps1,  eps1);  glVertex3f(-br, -br,  br); | ||||
|    glTexCoord3f(-1.0, -eps1, -eps1);  glVertex3f(-br, -br, -br); | ||||
|  | ||||
|    /* +Y side */ | ||||
|    glTexCoord3f(-eps1, 1.0, -eps1);  glVertex3f(-br,  br, -br); | ||||
|    glTexCoord3f(-eps1, 1.0,  eps1);  glVertex3f(-br,  br,  br); | ||||
|    glTexCoord3f( eps1, 1.0,  eps1);  glVertex3f( br,  br,  br); | ||||
|    glTexCoord3f( eps1, 1.0, -eps1);  glVertex3f( br,  br, -br); | ||||
|  | ||||
|    /* -Y side */ | ||||
|    glTexCoord3f(-eps1, -1.0, -eps1);  glVertex3f(-br, -br, -br); | ||||
|    glTexCoord3f(-eps1, -1.0,  eps1);  glVertex3f(-br, -br,  br); | ||||
|    glTexCoord3f( eps1, -1.0,  eps1);  glVertex3f( br, -br,  br); | ||||
|    glTexCoord3f( eps1, -1.0, -eps1);  glVertex3f( br, -br, -br); | ||||
|  | ||||
|    /* +Z side */ | ||||
|    glTexCoord3f( eps1, -eps1, 1.0);  glVertex3f( br, -br, br); | ||||
|    glTexCoord3f(-eps1, -eps1, 1.0);  glVertex3f(-br, -br, br); | ||||
|    glTexCoord3f(-eps1,  eps1, 1.0);  glVertex3f(-br,  br, br); | ||||
|    glTexCoord3f( eps1,  eps1, 1.0);  glVertex3f( br,  br, br); | ||||
|  | ||||
|    /* -Z side */ | ||||
|    glTexCoord3f( eps1,  eps1, -1.0);  glVertex3f( br,  br, -br); | ||||
|    glTexCoord3f(-eps1,  eps1, -1.0);  glVertex3f(-br,  br, -br); | ||||
|    glTexCoord3f(-eps1, -eps1, -1.0);  glVertex3f(-br, -br, -br); | ||||
|    glTexCoord3f( eps1, -eps1, -1.0);  glVertex3f( br, -br, -br); | ||||
|  | ||||
|    glEnd(); | ||||
| } | ||||
|  | ||||
|  | ||||
| static void draw( void ) | ||||
| { | ||||
|    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); | ||||
|  | ||||
|    glMatrixMode(GL_TEXTURE); | ||||
|    glLoadIdentity(); | ||||
|    glRotatef(Xrot, 1, 0, 0); | ||||
|    glRotatef(Yrot, 0, 1, 0); | ||||
|    glutSolidSphere(2.0, 20, 20); | ||||
|    glMatrixMode(GL_MODELVIEW); | ||||
|    glPushMatrix(); /*MODELVIEW*/ | ||||
|       glTranslatef( 0.0, 0.0, -EyeDist ); | ||||
|  | ||||
|       /* skybox */ | ||||
|       glDisable(GL_TEXTURE_GEN_S); | ||||
|       glDisable(GL_TEXTURE_GEN_T); | ||||
|       glDisable(GL_TEXTURE_GEN_R); | ||||
|  | ||||
|       glMatrixMode(GL_MODELVIEW); | ||||
|       glPushMatrix(); | ||||
|          glRotatef(Xrot, 1, 0, 0); | ||||
|          glRotatef(Yrot, 0, 1, 0); | ||||
|          draw_skybox(); | ||||
|       glPopMatrix(); | ||||
|  | ||||
|       /* sphere */ | ||||
|       glMatrixMode(GL_TEXTURE); | ||||
|       glLoadIdentity(); | ||||
|       glRotatef(-Yrot, 0, 1, 0); | ||||
|       glRotatef(-Xrot, 1, 0, 0); | ||||
|  | ||||
|       glEnable(GL_TEXTURE_GEN_S); | ||||
|       glEnable(GL_TEXTURE_GEN_T); | ||||
|       glEnable(GL_TEXTURE_GEN_R); | ||||
|       glutSolidSphere(2.0, 20, 20); | ||||
|  | ||||
|       glLoadIdentity(); /* texture */ | ||||
|  | ||||
|       glMatrixMode(GL_MODELVIEW); | ||||
|    glPopMatrix(); | ||||
|  | ||||
|    glutSwapBuffers(); | ||||
| } | ||||
| @@ -62,7 +137,8 @@ static void draw( void ) | ||||
|  | ||||
| static void idle(void) | ||||
| { | ||||
|    Yrot += 5.0; | ||||
|    GLfloat t = 0.05 * glutGet(GLUT_ELAPSED_TIME); | ||||
|    Yrot = t; | ||||
|    glutPostRedisplay(); | ||||
| } | ||||
|  | ||||
| @@ -81,9 +157,6 @@ static void set_mode(GLuint mode) | ||||
|       glTexGeni(GL_R, GL_TEXTURE_GEN_MODE, GL_NORMAL_MAP_ARB); | ||||
|       printf("GL_NORMAL_MAP_ARB mode\n"); | ||||
|    } | ||||
|    glEnable(GL_TEXTURE_GEN_S); | ||||
|    glEnable(GL_TEXTURE_GEN_T); | ||||
|    glEnable(GL_TEXTURE_GEN_R); | ||||
| } | ||||
|  | ||||
|  | ||||
| @@ -105,6 +178,16 @@ static void key(unsigned char k, int x, int y) | ||||
|          mode = !mode; | ||||
|          set_mode(mode); | ||||
|          break; | ||||
|       case 'z': | ||||
|          EyeDist -= 0.5; | ||||
|          if (EyeDist < 6.0) | ||||
|             EyeDist = 6.0; | ||||
|          break; | ||||
|       case 'Z': | ||||
|          EyeDist += 0.5; | ||||
|          if (EyeDist > 90.0) | ||||
|             EyeDist = 90; | ||||
|          break; | ||||
|       case 27: | ||||
|          exit(0); | ||||
|    } | ||||
| @@ -114,15 +197,15 @@ static void key(unsigned char k, int x, int y) | ||||
|  | ||||
| static void specialkey(int key, int x, int y) | ||||
| { | ||||
|    GLfloat step = 10; | ||||
|    GLfloat step = 5; | ||||
|    (void) x; | ||||
|    (void) y; | ||||
|    switch (key) { | ||||
|       case GLUT_KEY_UP: | ||||
|          Xrot -= step; | ||||
|          Xrot += step; | ||||
|          break; | ||||
|       case GLUT_KEY_DOWN: | ||||
|          Xrot += step; | ||||
|          Xrot -= step; | ||||
|          break; | ||||
|       case GLUT_KEY_LEFT: | ||||
|          Yrot -= step; | ||||
| @@ -138,17 +221,17 @@ static void specialkey(int key, int x, int y) | ||||
| /* 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, 2.0, -2.0, 2.0, 6.0, 20.0 ); | ||||
|    glFrustum( -2.0*ar, 2.0*ar, -2.0, 2.0, 4.0, 100.0 ); | ||||
|    glMatrixMode(GL_MODELVIEW); | ||||
|    glLoadIdentity(); | ||||
|    glTranslatef( 0.0, 0.0, -8.0 ); | ||||
| } | ||||
|  | ||||
|  | ||||
| static void init( void ) | ||||
| static void init_checkers( void ) | ||||
| { | ||||
| #define CUBE_TEX_SIZE 64 | ||||
|    GLubyte image[CUBE_TEX_SIZE][CUBE_TEX_SIZE][3]; | ||||
| @@ -171,16 +254,6 @@ static void init( void ) | ||||
|  | ||||
|    GLint i, j, f; | ||||
|  | ||||
|    /* check for extension */ | ||||
|    { | ||||
|       char *exten = (char *) glGetString(GL_EXTENSIONS); | ||||
|       if (!strstr(exten, "GL_ARB_texture_cube_map")) { | ||||
|          printf("Sorry, this demo requires GL_ARB_texture_cube_map\n"); | ||||
|          exit(0); | ||||
|       } | ||||
|    } | ||||
|  | ||||
|  | ||||
|    glPixelStorei(GL_UNPACK_ALIGNMENT, 1); | ||||
|  | ||||
|    /* make colored checkerboard cube faces */ | ||||
| @@ -203,18 +276,102 @@ static void init( void ) | ||||
|       glTexImage2D(targets[f], 0, GL_RGB, CUBE_TEX_SIZE, CUBE_TEX_SIZE, 0, | ||||
|                    GL_RGB, GL_UNSIGNED_BYTE, image); | ||||
|    } | ||||
| } | ||||
|  | ||||
| #if 1 | ||||
|    glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB, GL_TEXTURE_MIN_FILTER, GL_NEAREST); | ||||
|    glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB, GL_TEXTURE_MAG_FILTER, GL_NEAREST); | ||||
| #else | ||||
|    glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB, GL_TEXTURE_MIN_FILTER, GL_LINEAR); | ||||
|    glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB, GL_TEXTURE_MAG_FILTER, GL_LINEAR); | ||||
| #endif | ||||
|  | ||||
| static void load(GLenum target, const char *filename, | ||||
|                  GLboolean flipTB, GLboolean flipLR) | ||||
| { | ||||
|    GLint w, h; | ||||
|    GLenum format; | ||||
|    GLubyte *img = LoadRGBImage( filename, &w, &h, &format ); | ||||
|    if (!img) { | ||||
|       printf("Error: couldn't load texture image %s\n", filename); | ||||
|       exit(1); | ||||
|    } | ||||
|    assert(format == GL_RGB); | ||||
|  | ||||
|    /* <sigh> the way the texture cube mapping works, we have to flip | ||||
|     * images to make things look right. | ||||
|     */ | ||||
|    if (flipTB) { | ||||
|       const int stride = 3 * w; | ||||
|       GLubyte temp[3*1024]; | ||||
|       int i; | ||||
|       for (i = 0; i < h / 2; i++) { | ||||
|          memcpy(temp, img + i * stride, stride); | ||||
|          memcpy(img + i * stride, img + (h - i - 1) * stride, stride); | ||||
|          memcpy(img + (h - i - 1) * stride, temp, stride); | ||||
|       } | ||||
|    } | ||||
|    if (flipLR) { | ||||
|       const int stride = 3 * w; | ||||
|       GLubyte temp[3]; | ||||
|       GLubyte *row; | ||||
|       int i, j; | ||||
|       for (i = 0; i < h; i++) { | ||||
|          row = img + i * stride; | ||||
|          for (j = 0; j < w / 2; j++) { | ||||
|             int k = w - j - 1; | ||||
|             temp[0] = row[j*3+0]; | ||||
|             temp[1] = row[j*3+1]; | ||||
|             temp[2] = row[j*3+2]; | ||||
|             row[j*3+0] = row[k*3+0]; | ||||
|             row[j*3+1] = row[k*3+1]; | ||||
|             row[j*3+2] = row[k*3+2]; | ||||
|             row[k*3+0] = temp[0]; | ||||
|             row[k*3+1] = temp[1]; | ||||
|             row[k*3+2] = temp[2]; | ||||
|          } | ||||
|       } | ||||
|    } | ||||
|  | ||||
|    gluBuild2DMipmaps(target, GL_RGB, w, h, format, GL_UNSIGNED_BYTE, img); | ||||
|    free(img); | ||||
| } | ||||
|  | ||||
|  | ||||
| static void load_envmaps(void) | ||||
| { | ||||
|    load(GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB, "right.rgb", GL_TRUE, GL_FALSE); | ||||
|    load(GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB, "left.rgb", GL_TRUE, GL_FALSE); | ||||
|    load(GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB, "top.rgb", GL_FALSE, GL_TRUE); | ||||
|    load(GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB, "bottom.rgb", GL_FALSE, GL_TRUE); | ||||
|    load(GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB, "front.rgb", GL_TRUE, GL_FALSE); | ||||
|    load(GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB, "back.rgb", GL_TRUE, GL_FALSE); | ||||
| } | ||||
|  | ||||
|  | ||||
| static void init( GLboolean useImageFiles ) | ||||
| { | ||||
|    GLenum filter; | ||||
|  | ||||
|    /* check for extension */ | ||||
|    { | ||||
|       char *exten = (char *) glGetString(GL_EXTENSIONS); | ||||
|       if (!strstr(exten, "GL_ARB_texture_cube_map")) { | ||||
|          printf("Sorry, this demo requires GL_ARB_texture_cube_map\n"); | ||||
|          exit(0); | ||||
|       } | ||||
|    } | ||||
|    printf("GL_RENDERER: %s\n", (char *) glGetString(GL_RENDERER)); | ||||
|  | ||||
|    if (useImageFiles) { | ||||
|       load_envmaps(); | ||||
|       filter = GL_LINEAR; | ||||
|    } | ||||
|    else { | ||||
|       init_checkers(); | ||||
|       filter = GL_NEAREST; | ||||
|    } | ||||
|  | ||||
|    glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB, GL_TEXTURE_MIN_FILTER, filter); | ||||
|    glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB, GL_TEXTURE_MAG_FILTER, filter); | ||||
|    glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); | ||||
|    glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); | ||||
|  | ||||
|    glEnable(GL_TEXTURE_CUBE_MAP_ARB); | ||||
|    glEnable(GL_DEPTH_TEST); | ||||
|  | ||||
|    glClearColor(.3, .3, .3, 0); | ||||
|    glColor3f( 1.0, 1.0, 1.0 ); | ||||
| @@ -229,16 +386,21 @@ static void usage(void) | ||||
|    printf("  SPACE - toggle animation\n"); | ||||
|    printf("  CURSOR KEYS - rotation\n"); | ||||
|    printf("  m - toggle texgen reflection mode\n"); | ||||
|    printf("  z/Z - change viewing distance\n"); | ||||
| } | ||||
|  | ||||
|  | ||||
| int main( int argc, char *argv[] ) | ||||
| { | ||||
|    glutInitWindowPosition(0, 0); | ||||
|    glutInitWindowSize(300, 300); | ||||
|    glutInitWindowSize(600, 500); | ||||
|    glutInitDisplayMode( GLUT_RGB | GLUT_DEPTH | GLUT_DOUBLE ); | ||||
|    glutCreateWindow("Texture Cube Maping"); | ||||
|    init(); | ||||
|  | ||||
|    if (argc > 1 && strcmp(argv[1] , "-i") == 0) | ||||
|       init( 1 ); | ||||
|    else | ||||
|       init( 0 ); | ||||
|    glutReshapeFunc( reshape ); | ||||
|    glutKeyboardFunc( key ); | ||||
|    glutSpecialFunc( specialkey ); | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: drawpix.c,v 1.5 2000/12/24 22:53:54 pesco Exp $ */ | ||||
| /* $Id: drawpix.c,v 1.8 2002/07/12 15:54:02 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * glDrawPixels demo/test/benchmark | ||||
| @@ -6,61 +6,6 @@ | ||||
|  * Brian Paul   September 25, 1997  This file is in the public domain. | ||||
|  */ | ||||
|  | ||||
| /* | ||||
|  * $Log: drawpix.c,v $ | ||||
|  * Revision 1.5  2000/12/24 22:53:54  pesco | ||||
|  * * demos/Makefile.am (INCLUDES): Added -I$(top_srcdir)/util. | ||||
|  * * demos/Makefile.X11, demos/Makefile.BeOS-R4, demos/Makefile.cygnus: | ||||
|  * Essentially the same. | ||||
|  * Program files updated to include "readtex.c", not "../util/readtex.c". | ||||
|  * * demos/reflect.c: Likewise for "showbuffer.c". | ||||
|  * | ||||
|  * | ||||
|  * * Makefile.am (EXTRA_DIST): Added top-level regular files. | ||||
|  * | ||||
|  * * include/GL/Makefile.am (INC_X11): Added glxext.h. | ||||
|  * | ||||
|  * | ||||
|  * * src/GGI/include/ggi/mesa/Makefile.am (EXTRA_HEADERS): Include | ||||
|  * Mesa GGI headers in dist even if HAVE_GGI is not given. | ||||
|  * | ||||
|  * * configure.in: Look for GLUT and demo source dirs in $srcdir. | ||||
|  * | ||||
|  * * src/swrast/Makefile.am (libMesaSwrast_la_SOURCES): Set to *.[ch]. | ||||
|  * More source list updates in various Makefile.am's. | ||||
|  * | ||||
|  * * Makefile.am (dist-hook): Remove CVS directory from distribution. | ||||
|  * (DIST_SUBDIRS): List all possible subdirs here. | ||||
|  * (SUBDIRS): Only list subdirs selected for build again. | ||||
|  * The above two applied to all subdir Makefile.am's also. | ||||
|  * | ||||
|  * Revision 1.4  2000/09/08 21:45:21  brianp | ||||
|  * added dither key option | ||||
|  * | ||||
|  * Revision 1.3  1999/10/28 18:23:29  brianp | ||||
|  * minor changes to Usage() function | ||||
|  * | ||||
|  * Revision 1.2  1999/10/21 22:13:58  brianp | ||||
|  * added f key to toggle front/back drawing | ||||
|  * | ||||
|  * Revision 1.1.1.1  1999/08/19 00:55:40  jtg | ||||
|  * Imported sources | ||||
|  * | ||||
|  * Revision 3.3  1999/03/28 18:18:33  brianp | ||||
|  * minor clean-up | ||||
|  * | ||||
|  * Revision 3.2  1998/11/05 04:34:04  brianp | ||||
|  * moved image files to ../images/ directory | ||||
|  * | ||||
|  * Revision 3.1  1998/02/22 16:43:17  brianp | ||||
|  * added a few casts to silence compiler warnings | ||||
|  * | ||||
|  * Revision 3.0  1998/02/14 18:42:29  brianp | ||||
|  * initial rev | ||||
|  * | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <math.h> | ||||
| @@ -78,6 +23,8 @@ static int Xpos, Ypos; | ||||
| static int SkipPixels, SkipRows; | ||||
| static int DrawWidth, DrawHeight; | ||||
| static int Scissor = 0; | ||||
| static int Fog = 0; | ||||
| static GLfloat Zpos = -1.0; | ||||
| static float Xzoom, Yzoom; | ||||
| static GLboolean DrawFront = GL_FALSE; | ||||
| static GLboolean Dither = GL_TRUE; | ||||
| @@ -90,6 +37,8 @@ static void Reset( void ) | ||||
|    DrawHeight = ImgHeight; | ||||
|    SkipPixels = SkipRows = 0; | ||||
|    Scissor = 0; | ||||
|    Fog = 0; | ||||
|    Zpos = -1.0; | ||||
|    Xzoom = Yzoom = 1.0; | ||||
| } | ||||
|  | ||||
| @@ -102,7 +51,7 @@ static void Display( void ) | ||||
|    glRasterPos2i(Xpos, Ypos); | ||||
| #else | ||||
|    /* This allows negative raster positions: */ | ||||
|    glRasterPos2i(0, 0); | ||||
|    glRasterPos3f(0, 0, Zpos); | ||||
|    glBitmap(0, 0, 0, 0, Xpos, Ypos, NULL); | ||||
| #endif | ||||
|  | ||||
| @@ -114,9 +63,13 @@ static void Display( void ) | ||||
|    if (Scissor) | ||||
|       glEnable(GL_SCISSOR_TEST); | ||||
|  | ||||
|    if (Fog) | ||||
|       glEnable(GL_FOG); | ||||
|  | ||||
|    glDrawPixels(DrawWidth, DrawHeight, ImgFormat, GL_UNSIGNED_BYTE, Image); | ||||
|  | ||||
|    glDisable(GL_SCISSOR_TEST); | ||||
|    glDisable(GL_FOG); | ||||
|  | ||||
|    if (!DrawFront) | ||||
|       glutSwapBuffers(); | ||||
| @@ -136,6 +89,8 @@ static void Benchmark( void ) | ||||
|    glPixelZoom( Xzoom, Yzoom ); | ||||
|    if (Scissor) | ||||
|       glEnable(GL_SCISSOR_TEST); | ||||
|    if (Fog) | ||||
|       glEnable(GL_FOG); | ||||
|  | ||||
|    if (DrawFront) | ||||
|       glDrawBuffer(GL_FRONT); | ||||
| @@ -153,6 +108,7 @@ static void Benchmark( void ) | ||||
|  | ||||
|    /* GL clean-up */ | ||||
|    glDisable(GL_SCISSOR_TEST); | ||||
|    glDisable(GL_FOG); | ||||
|  | ||||
|    /* Results */ | ||||
|    seconds = (double) (endTime - startTime) / 1000.0; | ||||
| @@ -167,7 +123,7 @@ static void Reshape( int width, int height ) | ||||
|    glViewport( 0, 0, width, height ); | ||||
|    glMatrixMode( GL_PROJECTION ); | ||||
|    glLoadIdentity(); | ||||
|    glOrtho( 0.0, width, 0.0, height, -1.0, 1.0 ); | ||||
|    glOrtho( 0.0, width, 0.0, height, 0.0, 2.0 ); | ||||
|    glMatrixMode( GL_MODELVIEW ); | ||||
|    glLoadIdentity(); | ||||
|  | ||||
| @@ -233,9 +189,21 @@ static void Key( unsigned char key, int x, int y ) | ||||
|       case 'Y': | ||||
|          Yzoom += 0.1; | ||||
|          break; | ||||
|       case 'z': | ||||
|          Zpos -= 0.1; | ||||
|          printf("RasterPos Z = %g\n", Zpos); | ||||
|          break; | ||||
|       case 'Z': | ||||
|          Zpos += 0.1; | ||||
|          printf("RasterPos Z = %g\n", Zpos); | ||||
|          break; | ||||
|       case 'b': | ||||
|          Benchmark(); | ||||
|          break; | ||||
|       case 'F': | ||||
|          Fog = !Fog; | ||||
|          printf("Fog %d\n", Fog); | ||||
|          break; | ||||
|       case 'f': | ||||
|          DrawFront = !DrawFront; | ||||
|          if (DrawFront) | ||||
| @@ -276,6 +244,8 @@ static void SpecialKey( int key, int x, int y ) | ||||
|  | ||||
| static void Init( GLboolean ciMode ) | ||||
| { | ||||
|    static const GLfloat fogColor[4] = {0, 1, 0, 0}; | ||||
|  | ||||
|    printf("GL_VERSION = %s\n", (char *) glGetString(GL_VERSION)); | ||||
|    printf("GL_RENDERER = %s\n", (char *) glGetString(GL_RENDERER)); | ||||
|  | ||||
| @@ -287,7 +257,7 @@ static void Init( GLboolean ciMode ) | ||||
|  | ||||
|    if (ciMode) { | ||||
|       /* Convert RGB image to grayscale */ | ||||
|       GLubyte *indexImage = malloc( ImgWidth * ImgHeight ); | ||||
|       GLubyte *indexImage = (GLubyte *) malloc( ImgWidth * ImgHeight ); | ||||
|       GLint i; | ||||
|       for (i=0; i<ImgWidth*ImgHeight; i++) { | ||||
|          int gray = Image[i*3] + Image[i*3+1] + Image[i*3+2]; | ||||
| @@ -308,6 +278,11 @@ static void Init( GLboolean ciMode ) | ||||
|    glPixelStorei(GL_UNPACK_ALIGNMENT, 1); | ||||
|    glPixelStorei(GL_UNPACK_ROW_LENGTH, ImgWidth); | ||||
|  | ||||
|    glFogi(GL_FOG_MODE, GL_LINEAR); | ||||
|    glFogf(GL_FOG_START, 0); | ||||
|    glFogf(GL_FOG_END, 2); | ||||
|    glFogfv(GL_FOG_COLOR, fogColor); | ||||
|  | ||||
|    Reset(); | ||||
| } | ||||
|  | ||||
| @@ -331,6 +306,10 @@ static void Usage(void) | ||||
|    printf("           r  Decrease GL_UNPACK_SKIP_ROWS*\n"); | ||||
|    printf("           R  Increase GL_UNPACK_SKIP_ROWS*\n"); | ||||
|    printf("           s  Toggle GL_SCISSOR_TEST\n"); | ||||
|    printf("           F  Toggle GL_FOG\n"); | ||||
|    printf("           z  Decrease RasterPos Z\n"); | ||||
|    printf("           Z  Increase RasterPos Z\n"); | ||||
|     | ||||
|    printf("           f  Toggle front/back buffer drawing\n"); | ||||
|    printf("           b  Benchmark test\n"); | ||||
|    printf("         ESC  Exit\n"); | ||||
|   | ||||
| @@ -660,7 +660,7 @@ inittextures(void) | ||||
|  | ||||
|       if ((gluerr = gluBuild2DMipmaps(GL_TEXTURE_2D, 4, 128, 128, GL_RGBA, | ||||
| 				      GL_UNSIGNED_BYTE, (GLvoid *) (tex)))) { | ||||
| 	 fprintf(stderr, "GLULib%s\n", gluErrorString(gluerr)); | ||||
| 	 fprintf(stderr, "GLULib%s\n", (char *) gluErrorString(gluerr)); | ||||
| 	 exit(-1); | ||||
|       } | ||||
|    } | ||||
| @@ -752,7 +752,7 @@ main(int ac, char **av) | ||||
|    glFogfv(GL_FOG_COLOR, fogcolor); | ||||
|    glFogf(GL_FOG_DENSITY, 0.1); | ||||
|  | ||||
|    p = malloc(sizeof(part) * np); | ||||
|    p = (part *) malloc(sizeof(part) * np); | ||||
|  | ||||
|    for (i = 0; i < np; i++) | ||||
|       setnewpart(&p[i]); | ||||
|   | ||||
| @@ -1,5 +1,4 @@ | ||||
|  | ||||
| /* $Id: gamma.c,v 1.2 2000/03/18 01:13:29 brianp Exp $ */ | ||||
| /* $Id: gamma.c,v 1.3 2002/04/22 16:03:37 brianp Exp $ */ | ||||
|  | ||||
| /* Draw test patterns to help determine correct gamma value for a display. | ||||
|    When the intensities of the inner squares nearly match the intensities | ||||
| @@ -23,22 +22,6 @@ | ||||
|  | ||||
| /* Conversion to GLUT by Mark J. Kilgard */ | ||||
|  | ||||
| /* | ||||
|  * $Log: gamma.c,v $ | ||||
|  * Revision 1.2  2000/03/18 01:13:29  brianp | ||||
|  * colors were computed incorrectly (Hans Nelles) | ||||
|  * | ||||
|  * Revision 1.1.1.1  1999/08/19 00:55:40  jtg | ||||
|  * Imported sources | ||||
|  * | ||||
|  * Revision 3.1  1999/06/19 01:35:38  brianp | ||||
|  * merged in Kai Schuetz's RGB changes | ||||
|  * | ||||
|  * Revision 3.0  1998/02/14 18:42:29  brianp | ||||
|  * initial rev | ||||
|  * | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <string.h> | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: glinfo.c,v 1.1 1999/08/19 00:55:40 jtg Exp $ */ | ||||
| /* $Id: glinfo.c,v 1.2 2002/04/22 16:03:37 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Print GL, GLU and GLUT version and extension info | ||||
| @@ -8,23 +8,6 @@ | ||||
|  */ | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * $Log: glinfo.c,v $ | ||||
|  * Revision 1.1  1999/08/19 00:55:40  jtg | ||||
|  * Initial revision | ||||
|  * | ||||
|  * Revision 3.2  1999/02/02 04:45:49  brianp | ||||
|  * include stdio.h before glut.h | ||||
|  * | ||||
|  * Revision 3.1  1998/02/22 16:42:54  brianp | ||||
|  * added casts to prevent compiler warnings | ||||
|  * | ||||
|  * Revision 3.0  1998/02/14 18:42:29  brianp | ||||
|  * initial rev | ||||
|  * | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <GL/glut.h> | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: glutfx.c,v 1.2 2000/06/27 17:04:43 brianp Exp $ */ | ||||
| /* $Id: glutfx.c,v 1.3 2002/04/22 16:03:37 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Example of how one might use GLUT with the 3Dfx driver in full-screen mode. | ||||
| @@ -14,25 +14,6 @@ | ||||
|  * Brian Paul   This file is in the public domain. | ||||
|  */ | ||||
|  | ||||
| /* | ||||
|  * $Log: glutfx.c,v $ | ||||
|  * Revision 1.2  2000/06/27 17:04:43  brianp | ||||
|  * fixed compiler warnings | ||||
|  * | ||||
|  * Revision 1.1.1.1  1999/08/19 00:55:40  jtg | ||||
|  * Imported sources | ||||
|  * | ||||
|  * Revision 3.2  1999/03/28 18:18:33  brianp | ||||
|  * minor clean-up | ||||
|  * | ||||
|  * Revision 3.1  1998/06/29 02:37:30  brianp | ||||
|  * minor changes for Windows (Ted Jump) | ||||
|  * | ||||
|  * Revision 3.0  1998/02/14 18:42:29  brianp | ||||
|  * initial rev | ||||
|  * | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
|   | ||||
| @@ -11,7 +11,7 @@ | ||||
| #include <math.h> | ||||
| #include <time.h> | ||||
|  | ||||
| #ifdef WIN32 | ||||
| #if defined (WIN32)|| defined(_WIN32) | ||||
| #include <windows.h> | ||||
| #include <mmsystem.h> | ||||
| #endif | ||||
| @@ -186,7 +186,7 @@ inittextures(void) | ||||
|        (gluerr = | ||||
| 	gluBuild2DMipmaps(GL_TEXTURE_2D, 3, TEX_SKY_WIDTH, TEX_SKY_HEIGHT, | ||||
| 			  GL_RGB, GL_UNSIGNED_BYTE, (GLvoid *) (tsky)))) { | ||||
|       fprintf(stderr, "GLULib%s\n", gluErrorString(gluerr)); | ||||
|       fprintf(stderr, "GLULib%s\n", (char *) gluErrorString(gluerr)); | ||||
|       exit(-1); | ||||
|    } | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: isosurf.c,v 1.13 2001/10/04 19:14:26 kschultz Exp $ */ | ||||
| /* $Id: isosurf.c,v 1.15 2002/10/18 17:47:35 kschultz Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Display an isosurface of 3-D wind speed volume. | ||||
| @@ -32,6 +32,7 @@ | ||||
| #include <math.h> | ||||
| #ifdef _WIN32 | ||||
| #include <windows.h> | ||||
| #undef CLIP_MASK | ||||
| #endif | ||||
| #define GL_GLEXT_LEGACY | ||||
| #include "GL/glut.h" | ||||
| @@ -39,34 +40,36 @@ | ||||
| #include "readtex.c"   /* I know, this is a hack.  KW: me too. */ | ||||
| #define TEXTURE_FILE "../images/reflect.rgb" | ||||
|  | ||||
| #define LIT		0x1 | ||||
| #define UNLIT		0x2 | ||||
| #define REFLECT		0x10 | ||||
| #define POINT_FILTER	0x40 | ||||
| #define LINEAR_FILTER	0x80 | ||||
| #define GLVERTEX	0x100 | ||||
| #define DRAW_ELTS	0x4  | ||||
| #define DRAW_ARRAYS	0x200  | ||||
| #define ARRAY_ELT	0x400 | ||||
| #define LOCKED	        0x800 | ||||
| #define UNLOCKED	0x8  | ||||
| #define IMMEDIATE	0x1000 | ||||
| #define DISPLAYLIST	0x2000000 | ||||
| #define SHADE_SMOOTH	0x2000 | ||||
| #define SHADE_FLAT	0x4000 | ||||
| #define TRIANGLES	0x8000 | ||||
| #define STRIPS		0x10000 | ||||
| #define POINTS		0x20000 | ||||
| #define USER_CLIP	0x40000 | ||||
| #define NO_USER_CLIP	0x80000 | ||||
| #define MATERIALS	0x100000 | ||||
| #define NO_MATERIALS	0x200000 | ||||
| #define FOG		0x400000 | ||||
| #define NO_FOG		0x800000 | ||||
| #define QUIT		0x1000000 | ||||
| #define GLINFO		0x4000000 | ||||
| #define STIPPLE		0x8000000 | ||||
| #define NO_STIPPLE	0x20 | ||||
| #define LIT		0x00000001 | ||||
| #define UNLIT		0x00000002 | ||||
| #define REFLECT		0x00000004 | ||||
| #define POINT_FILTER	0x00000008 | ||||
| #define LINEAR_FILTER	0x00000010 | ||||
| #define GLVERTEX	0x00000020 | ||||
| #define DRAW_ELTS	0x00000040  | ||||
| #define DRAW_ARRAYS	0x00000080  | ||||
| #define ARRAY_ELT	0x00000100 | ||||
| #define LOCKED	        0x00000200 | ||||
| #define UNLOCKED	0x00000400  | ||||
| #define IMMEDIATE	0x00000800 | ||||
| #define DISPLAYLIST	0x00001000 | ||||
| #define SHADE_SMOOTH	0x00002000 | ||||
| #define SHADE_FLAT	0x00004000 | ||||
| #define TRIANGLES	0x00008000 | ||||
| #define STRIPS		0x00010000 | ||||
| #define POINTS		0x00020000 | ||||
| #define USER_CLIP	0x00040000 | ||||
| #define NO_USER_CLIP	0x00080000 | ||||
| #define MATERIALS	0x00100000 | ||||
| #define NO_MATERIALS	0x00200000 | ||||
| #define FOG		0x00400000 | ||||
| #define NO_FOG		0x00800000 | ||||
| #define QUIT		0x01000000 | ||||
| #define GLINFO		0x02000000 | ||||
| #define STIPPLE		0x04000000 | ||||
| #define NO_STIPPLE	0x08000000 | ||||
| #define POLYGON_FILL	0x10000000 | ||||
| #define POLYGON_LINE	0x20000000 | ||||
|  | ||||
| #define LIGHT_MASK		(LIT|UNLIT|REFLECT) | ||||
| #define FILTER_MASK		(POINT_FILTER|LINEAR_FILTER) | ||||
| @@ -79,9 +82,10 @@ | ||||
| #define SHADE_MASK		(SHADE_SMOOTH|SHADE_FLAT) | ||||
| #define FOG_MASK		(FOG|NO_FOG) | ||||
| #define STIPPLE_MASK		(STIPPLE|NO_STIPPLE) | ||||
| #define POLYGON_MASK		(POLYGON_FILL|POLYGON_LINE) | ||||
|  | ||||
| #define MAXVERTS 10000 | ||||
| static GLuint maxverts = MAXVERTS; | ||||
| static GLint maxverts = MAXVERTS; | ||||
| static float data[MAXVERTS][6]; | ||||
| static float compressed_data[MAXVERTS][6]; | ||||
| static float expanded_data[MAXVERTS*3][6]; | ||||
| @@ -144,7 +148,7 @@ static void read_surface( char *filename ) | ||||
| static void print_flags( const char *msg, GLuint flags )  | ||||
| { | ||||
|    fprintf(stderr,  | ||||
| 	   "%s (0x%x): %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s\n", | ||||
| 	   "%s (0x%x): %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s\n", | ||||
| 	   msg, flags, | ||||
| 	   (flags & GLVERTEX) ? "glVertex, " : "", | ||||
| 	   (flags & DRAW_ARRAYS) ? "glDrawArrays, " : "", | ||||
| @@ -162,7 +166,8 @@ static void print_flags( const char *msg, GLuint flags ) | ||||
| 	   (flags & USER_CLIP) ? "user_clip, " : "", | ||||
| 	   (flags & MATERIALS) ? "materials, " : "", | ||||
| 	   (flags & FOG) ? "fog, " : "", | ||||
| 	   (flags & STIPPLE) ? "stipple, " : ""); | ||||
| 	   (flags & STIPPLE) ? "stipple, " : "", | ||||
| 	   (flags & POLYGON_LINE) ? "polygon mode line, " : ""); | ||||
| } | ||||
|  | ||||
|  | ||||
| @@ -333,7 +338,7 @@ static void make_tri_indices( void ) | ||||
| { | ||||
|    unsigned int *v = tri_indices; | ||||
|    unsigned int parity = 0; | ||||
|    unsigned int i, j; | ||||
|    int i, j; | ||||
|  | ||||
|    for (j=2;j<numverts;j++,parity^=1) { | ||||
|       if (parity) { | ||||
| @@ -363,9 +368,9 @@ static void make_tri_indices( void ) | ||||
|  | ||||
| #define MIN(x,y) (x < y) ? x : y | ||||
|  | ||||
| static void draw_surface( int with_state ) | ||||
| static void draw_surface( unsigned int with_state ) | ||||
| { | ||||
|    GLuint i, j; | ||||
|    GLint i, j; | ||||
|     | ||||
|    if (with_state & DISPLAYLIST) { | ||||
|       if ((with_state & (RENDER_STYLE_MASK|PRIMITIVE_MASK|MATERIAL_MASK)) !=  | ||||
| @@ -684,28 +689,34 @@ static void ModeMenu(int m) | ||||
|  | ||||
|    if (CHANGED(state, m, FOG_MASK)) { | ||||
|       UPDATE(state, m, FOG_MASK); | ||||
|       if (m & FOG) | ||||
|       { | ||||
|       if (m & FOG) { | ||||
| 	 glEnable(GL_FOG); | ||||
|       } | ||||
|       else | ||||
|       { | ||||
|       else { | ||||
| 	 glDisable(GL_FOG); | ||||
|       } | ||||
|    } | ||||
|  | ||||
|    if (CHANGED(state, m, STIPPLE_MASK)) { | ||||
|       UPDATE(state, m, STIPPLE_MASK); | ||||
|       if (m & STIPPLE) | ||||
|       { | ||||
|       if (m & STIPPLE) { | ||||
| 	 glEnable(GL_POLYGON_STIPPLE); | ||||
|       } | ||||
|       else | ||||
|       { | ||||
|       else { | ||||
| 	 glDisable(GL_POLYGON_STIPPLE); | ||||
|       } | ||||
|    } | ||||
|  | ||||
|    if (CHANGED(state, m, POLYGON_MASK)) { | ||||
|       UPDATE(state, m, POLYGON_MASK); | ||||
|       if (m & POLYGON_FILL) { | ||||
| 	 glPolygonMode(GL_FRONT_AND_BACK, GL_FILL); | ||||
|       } | ||||
|       else { | ||||
| 	 glPolygonMode(GL_FRONT_AND_BACK, GL_LINE); | ||||
|       } | ||||
|    } | ||||
|  | ||||
| #ifdef GL_EXT_vertex_array | ||||
|    if (CHANGED(state, m, (LOCK_MASK|RENDER_STYLE_MASK|PRIMITIVE_MASK))) | ||||
|    { | ||||
| @@ -1077,6 +1088,9 @@ int main(int argc, char **argv) | ||||
|    glutAddMenuEntry("Stipple",               STIPPLE); | ||||
|    glutAddMenuEntry("No Stipple",            NO_STIPPLE); | ||||
|    glutAddMenuEntry("", 0); | ||||
|    glutAddMenuEntry("Polygon Mode Fill",     POLYGON_FILL); | ||||
|    glutAddMenuEntry("Polygon Mode Line",     POLYGON_LINE); | ||||
|    glutAddMenuEntry("", 0); | ||||
|    glutAddMenuEntry("Point Filtered",        POINT_FILTER); | ||||
|    glutAddMenuEntry("Linear Filtered",       LINEAR_FILTER); | ||||
|    glutAddMenuEntry("", 0); | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: multiarb.c,v 1.10 2001/06/20 19:12:30 brianp Exp $ */ | ||||
| /* $Id: multiarb.c,v 1.11 2002/02/13 02:23:33 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * GL_ARB_multitexture demo | ||||
| @@ -8,72 +8,7 @@ | ||||
|  * | ||||
|  * | ||||
|  * Brian Paul  November 1998  This program is in the public domain. | ||||
|  */ | ||||
|  | ||||
| /* | ||||
|  * $Log: multiarb.c,v $ | ||||
|  * Revision 1.10  2001/06/20 19:12:30  brianp | ||||
|  * also print GL_MAX_TEXTURE_SIZE | ||||
|  * | ||||
|  * Revision 1.9  2001/06/13 14:33:16  brianp | ||||
|  * moved glTexEnvi calls to better logical locations | ||||
|  * | ||||
|  * Revision 1.8  2000/12/24 22:53:54  pesco | ||||
|  * * demos/Makefile.am (INCLUDES): Added -I$(top_srcdir)/util. | ||||
|  * * demos/Makefile.X11, demos/Makefile.BeOS-R4, demos/Makefile.cygnus: | ||||
|  * Essentially the same. | ||||
|  * Program files updated to include "readtex.c", not "../util/readtex.c". | ||||
|  * * demos/reflect.c: Likewise for "showbuffer.c". | ||||
|  * | ||||
|  * | ||||
|  * * Makefile.am (EXTRA_DIST): Added top-level regular files. | ||||
|  * | ||||
|  * * include/GL/Makefile.am (INC_X11): Added glxext.h. | ||||
|  * | ||||
|  * | ||||
|  * * src/GGI/include/ggi/mesa/Makefile.am (EXTRA_HEADERS): Include | ||||
|  * Mesa GGI headers in dist even if HAVE_GGI is not given. | ||||
|  * | ||||
|  * * configure.in: Look for GLUT and demo source dirs in $srcdir. | ||||
|  * | ||||
|  * * src/swrast/Makefile.am (libMesaSwrast_la_SOURCES): Set to *.[ch]. | ||||
|  * More source list updates in various Makefile.am's. | ||||
|  * | ||||
|  * * Makefile.am (dist-hook): Remove CVS directory from distribution. | ||||
|  * (DIST_SUBDIRS): List all possible subdirs here. | ||||
|  * (SUBDIRS): Only list subdirs selected for build again. | ||||
|  * The above two applied to all subdir Makefile.am's also. | ||||
|  * | ||||
|  * Revision 1.7  2000/11/01 16:02:01  brianp | ||||
|  * print number of texture units | ||||
|  * | ||||
|  * Revision 1.6  2000/05/23 23:21:00  brianp | ||||
|  * set default window pos | ||||
|  * | ||||
|  * Revision 1.5  2000/02/02 17:31:45  brianp | ||||
|  * changed > to >= | ||||
|  * | ||||
|  * Revision 1.4  2000/02/02 01:07:21  brianp | ||||
|  * limit Drift to [0, 1] | ||||
|  * | ||||
|  * Revision 1.3  1999/10/21 16:40:32  brianp | ||||
|  * added -info command line option | ||||
|  * | ||||
|  * Revision 1.2  1999/10/13 12:02:13  brianp | ||||
|  * use texture objects now | ||||
|  * | ||||
|  * Revision 1.1.1.1  1999/08/19 00:55:40  jtg | ||||
|  * Imported sources | ||||
|  * | ||||
|  * Revision 1.3  1999/03/28 18:20:49  brianp | ||||
|  * minor clean-up | ||||
|  * | ||||
|  * Revision 1.2  1998/11/05 04:34:04  brianp | ||||
|  * moved image files to ../images/ directory | ||||
|  * | ||||
|  * Revision 1.1  1998/11/03 01:36:33  brianp | ||||
|  * Initial revision | ||||
|  * | ||||
|  * Modified on 12 Feb 2002 for > 2 texture units. | ||||
|  */ | ||||
|  | ||||
|  | ||||
| @@ -89,12 +24,13 @@ | ||||
| #define TEXTURE_2_FILE "../images/reflect.rgb" | ||||
|  | ||||
| #define TEX0 1 | ||||
| #define TEX1 2 | ||||
| #define TEXBOTH 3 | ||||
| #define TEX7 8 | ||||
| #define ANIMATE 10 | ||||
| #define QUIT 100 | ||||
|  | ||||
| static GLboolean Animate = GL_TRUE; | ||||
| static GLint NumUnits = 1; | ||||
| static GLboolean TexEnabled[8]; | ||||
|  | ||||
| static GLfloat Drift = 0.0; | ||||
| static GLfloat Xrot = 20.0, Yrot = 30.0, Zrot = 0.0; | ||||
| @@ -104,24 +40,30 @@ static GLfloat Xrot = 20.0, Yrot = 30.0, Zrot = 0.0; | ||||
| static void Idle( void ) | ||||
| { | ||||
|    if (Animate) { | ||||
|       GLint i; | ||||
|  | ||||
|       Drift += 0.05; | ||||
|       if (Drift >= 1.0) | ||||
|          Drift = 0.0; | ||||
|  | ||||
| #ifdef GL_ARB_multitexture | ||||
|       glActiveTextureARB(GL_TEXTURE0_ARB); | ||||
| #endif | ||||
|       glMatrixMode(GL_TEXTURE); | ||||
|       glLoadIdentity(); | ||||
|       glTranslatef(Drift, 0.0, 0.0); | ||||
|       glMatrixMode(GL_MODELVIEW); | ||||
|  | ||||
| #ifdef GL_ARB_multitexture | ||||
|       glActiveTextureARB(GL_TEXTURE1_ARB); | ||||
| #endif | ||||
|       glMatrixMode(GL_TEXTURE); | ||||
|       glLoadIdentity(); | ||||
|       glTranslatef(0.0, Drift, 0.0); | ||||
|       for (i = 0; i < NumUnits; i++) { | ||||
|          glActiveTextureARB(GL_TEXTURE0_ARB + i); | ||||
|          glMatrixMode(GL_TEXTURE); | ||||
|          glLoadIdentity(); | ||||
|          if (i == 0) { | ||||
|             glTranslatef(Drift, 0.0, 0.0); | ||||
|             glScalef(2, 2, 2); | ||||
|          } | ||||
|          else if (i == 1) { | ||||
|             glTranslatef(0.0, Drift, 0.0); | ||||
|          } | ||||
|          else { | ||||
|             glTranslatef(0.5, 0.5, 0.0); | ||||
|             glRotatef(180.0 * Drift, 0, 0, 1); | ||||
|             glScalef(1.0/i, 1.0/i, 1.0/i); | ||||
|             glTranslatef(-0.5, -0.5, 0.0); | ||||
|          } | ||||
|       } | ||||
|       glMatrixMode(GL_MODELVIEW); | ||||
|  | ||||
|       glutPostRedisplay(); | ||||
| @@ -131,37 +73,30 @@ static void Idle( void ) | ||||
|  | ||||
| static void DrawObject(void) | ||||
| { | ||||
|    GLint i; | ||||
|  | ||||
|    if (!TexEnabled[0] && !TexEnabled[1]) | ||||
|       glColor3f(0.1, 0.1, 0.1);  /* add onto this */ | ||||
|    else | ||||
|       glColor3f(1, 1, 1);  /* modulate this */ | ||||
|  | ||||
|    glBegin(GL_QUADS); | ||||
|  | ||||
| #ifdef GL_ARB_multitexture | ||||
|    glMultiTexCoord2fARB(GL_TEXTURE0_ARB, 0.0, 0.0); | ||||
|    glMultiTexCoord2fARB(GL_TEXTURE1_ARB, 0.0, 0.0); | ||||
|    for (i = 0; i < NumUnits; i++) | ||||
|       glMultiTexCoord2fARB(GL_TEXTURE0_ARB + i, 0.0, 0.0); | ||||
|    glVertex2f(-1.0, -1.0); | ||||
|  | ||||
|    glMultiTexCoord2fARB(GL_TEXTURE0_ARB, 2.0, 0.0); | ||||
|    glMultiTexCoord2fARB(GL_TEXTURE1_ARB, 1.0, 0.0); | ||||
|    for (i = 0; i < NumUnits; i++) | ||||
|       glMultiTexCoord2fARB(GL_TEXTURE0_ARB + i, 1.0, 0.0); | ||||
|    glVertex2f(1.0, -1.0); | ||||
|  | ||||
|    glMultiTexCoord2fARB(GL_TEXTURE0_ARB, 2.0, 2.0); | ||||
|    glMultiTexCoord2fARB(GL_TEXTURE1_ARB, 1.0, 1.0); | ||||
|    for (i = 0; i < NumUnits; i++) | ||||
|       glMultiTexCoord2fARB(GL_TEXTURE0_ARB + i, 1.0, 1.0); | ||||
|    glVertex2f(1.0, 1.0); | ||||
|  | ||||
|    glMultiTexCoord2fARB(GL_TEXTURE0_ARB, 0.0, 2.0); | ||||
|    glMultiTexCoord2fARB(GL_TEXTURE1_ARB, 0.0, 1.0); | ||||
|    for (i = 0; i < NumUnits; i++) | ||||
|       glMultiTexCoord2fARB(GL_TEXTURE0_ARB + i, 0.0, 1.0); | ||||
|    glVertex2f(-1.0, 1.0); | ||||
| #else | ||||
|    glTexCoord2f(0.0, 0.0); | ||||
|    glVertex2f(-1.0, -1.0); | ||||
|  | ||||
|    glTexCoord2f(1.0, 0.0); | ||||
|    glVertex2f(1.0, -1.0); | ||||
|  | ||||
|    glTexCoord2f(1.0, 1.0); | ||||
|    glVertex2f(1.0, 1.0); | ||||
|  | ||||
|    glTexCoord2f(0.0, 1.0); | ||||
|    glVertex2f(-1.0, 1.0); | ||||
| #endif | ||||
|  | ||||
|    glEnd(); | ||||
| } | ||||
| @@ -199,16 +134,19 @@ static void Reshape( int width, int height ) | ||||
|  | ||||
| static void ModeMenu(int entry) | ||||
| { | ||||
|    GLboolean enable0 = GL_FALSE, enable1 = GL_FALSE; | ||||
|    if (entry==TEX0) { | ||||
|       enable0 = GL_TRUE; | ||||
|    } | ||||
|    else if (entry==TEX1) { | ||||
|       enable1 = GL_TRUE; | ||||
|    } | ||||
|    else if (entry==TEXBOTH) { | ||||
|       enable0 = GL_TRUE; | ||||
|       enable1 = GL_TRUE; | ||||
|    if (entry >= TEX0 && entry <= TEX7) { | ||||
|       /* toggle */ | ||||
|       GLint i = entry - TEX0; | ||||
|       TexEnabled[i] = !TexEnabled[i]; | ||||
|       glActiveTextureARB(GL_TEXTURE0_ARB + i); | ||||
|       if (TexEnabled[i]) | ||||
|          glEnable(GL_TEXTURE_2D); | ||||
|       else | ||||
|          glDisable(GL_TEXTURE_2D); | ||||
|       printf("Enabled: "); | ||||
|       for (i = 0; i < NumUnits; i++) | ||||
|          printf("%d ", (int) TexEnabled[i]); | ||||
|       printf("\n"); | ||||
|    } | ||||
|    else if (entry==ANIMATE) { | ||||
|       Animate = !Animate; | ||||
| @@ -217,26 +155,6 @@ static void ModeMenu(int entry) | ||||
|       exit(0); | ||||
|    } | ||||
|  | ||||
|    if (entry != ANIMATE) { | ||||
| #ifdef GL_ARB_multitexture | ||||
|       glActiveTextureARB(GL_TEXTURE0_ARB); | ||||
| #endif | ||||
|       if (enable0) { | ||||
|          glEnable(GL_TEXTURE_2D); | ||||
|       } | ||||
|       else | ||||
|          glDisable(GL_TEXTURE_2D); | ||||
|  | ||||
| #ifdef GL_ARB_multitexture | ||||
|       glActiveTextureARB(GL_TEXTURE1_ARB); | ||||
| #endif | ||||
|       if (enable1) { | ||||
|          glEnable(GL_TEXTURE_2D); | ||||
|       } | ||||
|       else | ||||
|          glDisable(GL_TEXTURE_2D); | ||||
|    } | ||||
|  | ||||
|    glutPostRedisplay(); | ||||
| } | ||||
|  | ||||
| @@ -280,8 +198,8 @@ static void SpecialKey( int key, int x, int y ) | ||||
|  | ||||
| static void Init( int argc, char *argv[] ) | ||||
| { | ||||
|    GLuint texObj[2]; | ||||
|    GLint units, size; | ||||
|    GLuint texObj[8]; | ||||
|    GLint size, i; | ||||
|  | ||||
|    const char *exten = (const char *) glGetString(GL_EXTENSIONS); | ||||
|    if (!strstr(exten, "GL_ARB_multitexture")) { | ||||
| @@ -289,64 +207,82 @@ static void Init( int argc, char *argv[] ) | ||||
|       exit(1); | ||||
|    } | ||||
|  | ||||
|    glGetIntegerv(GL_MAX_TEXTURE_UNITS_ARB, &units); | ||||
|    printf("%d texture units supported\n", units); | ||||
|    glGetIntegerv(GL_MAX_TEXTURE_UNITS_ARB, &NumUnits); | ||||
|    printf("%d texture units supported\n", NumUnits); | ||||
|    if (NumUnits > 8) | ||||
|       NumUnits = 8; | ||||
|  | ||||
|    glGetIntegerv(GL_MAX_TEXTURE_SIZE, &size); | ||||
|    printf("%d x %d max texture size\n", size, size); | ||||
|  | ||||
|    glPixelStorei(GL_UNPACK_ALIGNMENT, 1); | ||||
|  | ||||
|    for (i = 0; i < NumUnits; i++) { | ||||
|       if (i < 2) | ||||
|          TexEnabled[i] = GL_TRUE; | ||||
|       else | ||||
|          TexEnabled[i] = GL_FALSE; | ||||
|    } | ||||
|  | ||||
|    /* allocate two texture objects */ | ||||
|    glGenTextures(2, texObj); | ||||
|    glGenTextures(NumUnits, texObj); | ||||
|  | ||||
|    /* setup texture obj 0 */ | ||||
|    glBindTexture(GL_TEXTURE_2D, texObj[0]); | ||||
| #ifdef LINEAR_FILTER | ||||
|    /* linear filtering looks much nicer but is much slower for Mesa */ | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); | ||||
| #else | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); | ||||
| #endif | ||||
|    if (!LoadRGBMipmaps(TEXTURE_1_FILE, GL_RGB)) { | ||||
|       printf("Error: couldn't load texture image\n"); | ||||
|       exit(1); | ||||
|    /* setup the texture objects */ | ||||
|    for (i = 0; i < NumUnits; i++) { | ||||
|  | ||||
|       glActiveTextureARB(GL_TEXTURE0_ARB + i); | ||||
|       glBindTexture(GL_TEXTURE_2D, texObj[i]); | ||||
|  | ||||
|       glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); | ||||
|       glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); | ||||
|  | ||||
|       if (i == 0) { | ||||
|          if (!LoadRGBMipmaps(TEXTURE_1_FILE, GL_RGB)) { | ||||
|             printf("Error: couldn't load texture image\n"); | ||||
|             exit(1); | ||||
|          } | ||||
|       } | ||||
|       else if (i == 1) { | ||||
|          if (!LoadRGBMipmaps(TEXTURE_2_FILE, GL_RGB)) { | ||||
|             printf("Error: couldn't load texture image\n"); | ||||
|             exit(1); | ||||
|          } | ||||
|       } | ||||
|       else { | ||||
|          /* checker */ | ||||
|          GLubyte image[8][8][3]; | ||||
|          GLint i, j; | ||||
|          for (i = 0; i < 8; i++) { | ||||
|             for (j = 0; j < 8; j++) { | ||||
|                if ((i + j) & 1) { | ||||
|                   image[i][j][0] = 50; | ||||
|                   image[i][j][1] = 50; | ||||
|                   image[i][j][2] = 50; | ||||
|                } | ||||
|                else { | ||||
|                   image[i][j][0] = 25; | ||||
|                   image[i][j][1] = 25; | ||||
|                   image[i][j][2] = 25; | ||||
|                } | ||||
|             } | ||||
|          } | ||||
|          glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 8, 8, 0, | ||||
|                       GL_RGB, GL_UNSIGNED_BYTE, (GLvoid *) image); | ||||
|       } | ||||
|  | ||||
|       /* Bind texObj[i] to ith texture unit */ | ||||
|       if (i < 2) | ||||
|          glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE); | ||||
|       else | ||||
|          glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_ADD); | ||||
|  | ||||
|       if (TexEnabled[i]) | ||||
|          glEnable(GL_TEXTURE_2D); | ||||
|    } | ||||
|  | ||||
|  | ||||
|    /* setup texture obj 1 */ | ||||
|    glBindTexture(GL_TEXTURE_2D, texObj[1]); | ||||
| #ifdef LINEAR_FILTER | ||||
|    /* linear filtering looks much nicer but is much slower for Mesa */ | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); | ||||
| #else | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); | ||||
| #endif | ||||
|    if (!LoadRGBMipmaps(TEXTURE_2_FILE, GL_RGB)) { | ||||
|       printf("Error: couldn't load texture image\n"); | ||||
|       exit(1); | ||||
|    } | ||||
|  | ||||
|  | ||||
|    /* now bind the texture objects to the respective texture units */ | ||||
| #ifdef GL_ARB_multitexture | ||||
|    glActiveTextureARB(GL_TEXTURE0_ARB); | ||||
|    glBindTexture(GL_TEXTURE_2D, texObj[0]); | ||||
|    glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE); | ||||
|    glActiveTextureARB(GL_TEXTURE1_ARB); | ||||
|    glBindTexture(GL_TEXTURE_2D, texObj[1]); | ||||
|    glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE); | ||||
| #endif | ||||
|  | ||||
|    glShadeModel(GL_FLAT); | ||||
|    glClearColor(0.3, 0.3, 0.4, 1.0); | ||||
|  | ||||
|    ModeMenu(TEXBOTH); | ||||
|  | ||||
|    if (argc > 1 && strcmp(argv[1], "-info")==0) { | ||||
|       printf("GL_RENDERER   = %s\n", (char *) glGetString(GL_RENDERER)); | ||||
|       printf("GL_VERSION    = %s\n", (char *) glGetString(GL_VERSION)); | ||||
| @@ -358,6 +294,8 @@ static void Init( int argc, char *argv[] ) | ||||
|  | ||||
| int main( int argc, char *argv[] ) | ||||
| { | ||||
|    GLint i; | ||||
|  | ||||
|    glutInit( &argc, argv ); | ||||
|    glutInitWindowSize( 300, 300 ); | ||||
|    glutInitWindowPosition( 0, 0 ); | ||||
| @@ -373,9 +311,12 @@ int main( int argc, char *argv[] ) | ||||
|    glutIdleFunc( Idle ); | ||||
|  | ||||
|    glutCreateMenu(ModeMenu); | ||||
|    glutAddMenuEntry("Texture 0", TEX0); | ||||
|    glutAddMenuEntry("Texture 1", TEX1); | ||||
|    glutAddMenuEntry("Multi-texture", TEXBOTH); | ||||
|  | ||||
|    for (i = 0; i < NumUnits; i++) { | ||||
|       char s[100]; | ||||
|       sprintf(s, "Toggle Texture %d", i); | ||||
|       glutAddMenuEntry(s, TEX0 + i); | ||||
|    } | ||||
|    glutAddMenuEntry("Toggle Animation", ANIMATE); | ||||
|    glutAddMenuEntry("Quit", QUIT); | ||||
|    glutAttachMenu(GLUT_RIGHT_BUTTON); | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: osdemo.c,v 1.7 2001/09/24 15:29:27 kschultz Exp $ */ | ||||
| /* $Id: osdemo.c,v 1.9 2002/07/12 15:54:19 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Demo of off-screen Mesa rendering | ||||
| @@ -14,11 +14,17 @@ | ||||
|  * | ||||
|  * PPM output provided by Joerg Schmalzl. | ||||
|  * ASCII PPM output added by Brian Paul. | ||||
|  * | ||||
|  * Usage: osdemo [-perf] [filename] | ||||
|  * | ||||
|  * -perf: Redraws the image 1000 times, displaying the FPS every 5 secs. | ||||
|  * filename: file to store the TGA or PPM output | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
| #include "GL/osmesa.h" | ||||
| #include "GL/glut.h" | ||||
|  | ||||
| @@ -29,7 +35,9 @@ | ||||
| #define WIDTH 400 | ||||
| #define HEIGHT 400 | ||||
|  | ||||
|  | ||||
| static GLint T0 = 0; | ||||
| static GLint Frames = 0; | ||||
| static int perf = 0; | ||||
|  | ||||
| static void render_image( void ) | ||||
| { | ||||
| @@ -76,7 +84,7 @@ static void render_image( void ) | ||||
|    glPopMatrix(); | ||||
|  | ||||
| #ifdef GL_HP_occlusion_test | ||||
|    { | ||||
|    if (perf == 0) { | ||||
|       GLboolean bRet; | ||||
|       glDepthMask(GL_FALSE); | ||||
|       glColorMask(GL_FALSE,GL_FALSE,GL_FALSE,GL_FALSE); | ||||
| @@ -105,7 +113,7 @@ static void render_image( void ) | ||||
|    glPopMatrix(); | ||||
|  | ||||
| #ifdef GL_HP_occlusion_test | ||||
|    { | ||||
|    if (perf == 0){ | ||||
|       GLboolean bRet; | ||||
|  | ||||
|       glDepthMask(GL_FALSE); | ||||
| @@ -130,9 +138,22 @@ static void render_image( void ) | ||||
| #endif | ||||
|  | ||||
|    glPopMatrix(); | ||||
|  | ||||
|    Frames++; | ||||
|    if (perf) { | ||||
|      GLint t = glutGet(GLUT_ELAPSED_TIME); | ||||
|      if (t - T0 >= 5000) { | ||||
|         GLfloat seconds = (t - T0) / 1000.0; | ||||
|         GLfloat fps = Frames / seconds; | ||||
|         printf("%d frames in %6.3f seconds = %6.3f FPS\n", Frames, seconds, fps); | ||||
|         T0 = t; | ||||
|         Frames = 0; | ||||
|      } | ||||
|    } | ||||
| } | ||||
|  | ||||
|  | ||||
| #ifdef SAVE_TARGA | ||||
|  | ||||
| static void | ||||
| write_targa(const char *filename, const GLubyte *buffer, int width, int height) | ||||
| @@ -173,6 +194,7 @@ write_targa(const char *filename, const GLubyte *buffer, int width, int height) | ||||
|    } | ||||
| } | ||||
|  | ||||
| #else | ||||
|  | ||||
| static void | ||||
| write_ppm(const char *filename, const GLubyte *buffer, int width, int height) | ||||
| @@ -219,11 +241,15 @@ write_ppm(const char *filename, const GLubyte *buffer, int width, int height) | ||||
|    } | ||||
| } | ||||
|  | ||||
| #endif | ||||
|  | ||||
|  | ||||
|  | ||||
| int main( int argc, char *argv[] ) | ||||
| { | ||||
|    void *buffer; | ||||
|    int i; | ||||
|    char *filename = NULL; | ||||
|  | ||||
|    /* Create an RGBA-mode context */ | ||||
| #if OSMESA_MAJOR_VERSION * 100 + OSMESA_MINOR_VERSION >= 305 | ||||
| @@ -237,6 +263,11 @@ int main( int argc, char *argv[] ) | ||||
|       return 0; | ||||
|    } | ||||
|  | ||||
|    for ( i=1; i<argc; i++ ) { | ||||
|       if (argv[i][0] != '-') filename = argv[i]; | ||||
|       if (strcmp(argv[i], "-perf")==0) perf = 1; | ||||
|    } | ||||
|  | ||||
|    /* Allocate the image buffer */ | ||||
|    buffer = malloc( WIDTH * HEIGHT * 4 * sizeof(GLubyte) ); | ||||
|    if (!buffer) { | ||||
| @@ -256,16 +287,19 @@ int main( int argc, char *argv[] ) | ||||
|       glGetIntegerv(GL_DEPTH_BITS, &z); | ||||
|       glGetIntegerv(GL_STENCIL_BITS, &s); | ||||
|       glGetIntegerv(GL_ACCUM_RED_BITS, &a); | ||||
|       printf("%d %d %d\n", z, s, a); | ||||
|       printf("Depth=%d Stencil=%d Accum=%d\n", z, s, a); | ||||
|    } | ||||
|  | ||||
|    render_image(); | ||||
|    if (perf) | ||||
|       for(i=0; i< 1000; i++) | ||||
|          render_image(); | ||||
|  | ||||
|    if (argc>1) { | ||||
|    if (filename != NULL) { | ||||
| #ifdef SAVE_TARGA | ||||
|       write_targa(argv[1], buffer, WIDTH, HEIGHT); | ||||
|       write_targa(filename, buffer, WIDTH, HEIGHT); | ||||
| #else | ||||
|       write_ppm(argv[1], buffer, WIDTH, HEIGHT); | ||||
|       write_ppm(filename, buffer, WIDTH, HEIGHT); | ||||
| #endif | ||||
|    } | ||||
|    else { | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: paltex.c,v 1.6 2000/10/05 07:17:43 joukj Exp $ */ | ||||
| /* $Id: paltex.c,v 1.9 2002/07/22 13:45:31 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Paletted texture demo.  Written by Brian Paul. | ||||
| @@ -9,6 +9,9 @@ | ||||
| #include <stdlib.h> | ||||
| #include <math.h> | ||||
| #include <string.h> | ||||
| #ifdef _WIN32 | ||||
| #include <windows.h> | ||||
| #endif | ||||
| #define GL_GLEXT_LEGACY | ||||
| #include <GL/glut.h> | ||||
|  | ||||
| @@ -91,15 +94,16 @@ static void Init( void ) | ||||
| { | ||||
| #define HEIGHT 8 | ||||
| #define WIDTH 32 | ||||
|    static char texture[HEIGHT][WIDTH] = { | ||||
|          "                                ", | ||||
|          "    MMM    EEEE   SSS    AAA    ", | ||||
|          "   M M M  E      S   S  A   A   ", | ||||
|          "   M M M  EEEE    SS    A   A   ", | ||||
|          "   M M M  E         SS  AAAAA   ", | ||||
|          "   M   M  E      S   S  A   A   ", | ||||
|          "   M   M   EEEE   SSS   A   A   ", | ||||
|          "                                " | ||||
|    /* 257 = HEIGHT * WIDTH + 1 (for trailing '\0') */ | ||||
|    static char texture[257] = {"\ | ||||
|                                 \ | ||||
|     MMM    EEEE   SSS    AAA    \ | ||||
|    M M M  E      S   S  A   A   \ | ||||
|    M M M  EEEE    SS    A   A   \ | ||||
|    M M M  E         SS  AAAAA   \ | ||||
|    M   M  E      S   S  A   A   \ | ||||
|    M   M   EEEE   SSS   A   A   \ | ||||
|                                 " | ||||
|       }; | ||||
|    GLubyte table[256][4]; | ||||
|  | ||||
| @@ -158,7 +162,7 @@ static void Init( void ) | ||||
|                 0,                   /* border */ | ||||
|                 GL_COLOR_INDEX,      /* texture format */ | ||||
|                 GL_UNSIGNED_BYTE,    /* texture type */ | ||||
|                 texture);            /* teh texture */ | ||||
|                 texture);            /* the texture */ | ||||
| #endif | ||||
|  | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); | ||||
|   | ||||
| @@ -11,33 +11,13 @@ | ||||
|    is present , the particle size is attenuated based on eye distance. */ | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * $Log: pointblast.c,v $ | ||||
|  * Revision 1.2  2000/06/27 17:04:43  brianp | ||||
|  * fixed compiler warnings | ||||
|  * | ||||
|  * Revision 1.1.1.1  1999/08/19 00:55:40  jtg | ||||
|  * Imported sources | ||||
|  * | ||||
|  * Revision 3.3  1998/07/26 01:24:27  brianp | ||||
|  * removed include of gl.h | ||||
|  * | ||||
|  * Revision 3.2  1998/02/14 18:51:46  brianp | ||||
|  * fixed a small compiler warning | ||||
|  * | ||||
|  * Revision 3.1  1998/02/14 18:45:25  brianp | ||||
|  * optimized to use flat shading, don't blend ground polygon | ||||
|  * | ||||
|  * Revision 3.0  1998/02/14 18:42:29  brianp | ||||
|  * initial rev | ||||
|  * | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
| #include <math.h>       /* for cos(), sin(), and sqrt() */ | ||||
| #ifdef _WIN32 | ||||
| #include <windows.h> | ||||
| #endif | ||||
| #define GL_GLEXT_LEGACY | ||||
| #include <GL/glut.h> | ||||
|  | ||||
|   | ||||
| @@ -11,15 +11,20 @@ | ||||
| #include <math.h> | ||||
| #include <time.h> | ||||
| #include <GL/glut.h> | ||||
| #ifndef M_PI | ||||
| #define M_PI 3.14159265 | ||||
| #endif | ||||
|  | ||||
| #include "particles.h" | ||||
| extern "C" { | ||||
| #include "image.h" | ||||
| #include "readtex.h" | ||||
| } | ||||
|  | ||||
| #ifdef WIN32 | ||||
| #ifdef _WIN32 | ||||
| #include <windows.h> | ||||
| #include <mmsystem.h> | ||||
| #include "particles.cxx" | ||||
| #include "readtex.c" | ||||
| #endif | ||||
|  | ||||
| #ifdef XMESA | ||||
| @@ -297,20 +302,21 @@ static void key(unsigned char key, int x, int y) | ||||
|  | ||||
| static void inittextures(void) | ||||
| { | ||||
|   IMAGE *img; | ||||
|   GLubyte *img; | ||||
|   GLint width,height; | ||||
|   GLenum format; | ||||
|   GLenum gluerr; | ||||
|  | ||||
|   glGenTextures(1,&groundid); | ||||
|   glBindTexture(GL_TEXTURE_2D,groundid); | ||||
|  | ||||
|   if(!(img=ImageLoad("s128.rgb"))) { | ||||
|     fprintf(stderr,"Error reading a texture.\n"); | ||||
|     exit(-1); | ||||
|   if(!(img=LoadRGBImage("../images/s128.rgb",&width,&height,&format))){ | ||||
|   	fprintf(stderr,"Error reading a texture.\n"); | ||||
|   	exit(-1); | ||||
|   } | ||||
|  | ||||
|   glPixelStorei(GL_UNPACK_ALIGNMENT,4); | ||||
|   if((gluerr=(GLenum)gluBuild2DMipmaps(GL_TEXTURE_2D, 3, img->sizeX, img->sizeY, GL_RGB, | ||||
| 			       GL_UNSIGNED_BYTE, (GLvoid *)(img->data)))) { | ||||
|   if((gluerr=(GLenum)gluBuild2DMipmaps(GL_TEXTURE_2D, 3, width, height,GL_RGB, | ||||
| 			       GL_UNSIGNED_BYTE, (GLvoid *)(img)))) { | ||||
|     fprintf(stderr,"GLULib%s\n",gluErrorString(gluerr)); | ||||
|     exit(-1); | ||||
|   } | ||||
|   | ||||
| @@ -8,6 +8,7 @@ | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
| #include <math.h> | ||||
|  | ||||
| #ifdef WIN32 | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: readpix.c,v 1.4 2000/10/16 21:24:39 brianp Exp $ */ | ||||
| /* $Id: readpix.c,v 1.8 2002/07/12 15:54:02 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * glReadPixels and glCopyPixels test | ||||
| @@ -6,23 +6,6 @@ | ||||
|  * Brian Paul   March 1, 2000  This file is in the public domain. | ||||
|  */ | ||||
|  | ||||
| /* | ||||
|  * $Log: readpix.c,v $ | ||||
|  * Revision 1.4  2000/10/16 21:24:39  brianp | ||||
|  * use gray background, memset TempImage to white to help with debugging | ||||
|  * | ||||
|  * Revision 1.3  2000/03/31 01:01:31  brianp | ||||
|  * tweaks to allow different read formats/types | ||||
|  * | ||||
|  * Revision 1.2  2000/03/23 19:47:25  brianp | ||||
|  * added benchmarking | ||||
|  * | ||||
|  * Revision 1.1  2000/03/01 16:23:14  brianp | ||||
|  * test glDraw/Read/CopyPixels() | ||||
|  * | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #include <assert.h> | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| @@ -173,6 +156,8 @@ Display( void ) | ||||
|  | ||||
|    if (!DrawFront) | ||||
|       glutSwapBuffers(); | ||||
|    else | ||||
|       glFinish(); | ||||
| } | ||||
|  | ||||
|  | ||||
| @@ -234,7 +219,7 @@ Init( GLboolean ciMode ) | ||||
|  | ||||
|    if (ciMode) { | ||||
|       /* Convert RGB image to grayscale */ | ||||
|       GLubyte *indexImage = malloc( ImgWidth * ImgHeight ); | ||||
|       GLubyte *indexImage = (GLubyte *) malloc( ImgWidth * ImgHeight ); | ||||
|       GLint i; | ||||
|       for (i=0; i<ImgWidth*ImgHeight; i++) { | ||||
|          int gray = Image[i*3] + Image[i*3+1] + Image[i*3+2]; | ||||
|   | ||||
| @@ -1,12 +1,14 @@ | ||||
| /* $Id: shadowtex.c,v 1.4 2001/02/28 18:41:50 brianp Exp $ */ | ||||
| /* $Id: shadowtex.c,v 1.7 2002/07/12 15:54:02 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Shadow demo using the GL_SGIX_depth_texture, GL_SGIX_shadow and | ||||
|  * GL_SGIX_shadow_ambient extensions. | ||||
|  * Shadow demo using the GL_ARB_depth_texture, GL_ARB_shadow and | ||||
|  * GL_ARB_shadow_ambient extensions (or the old SGIX extensions). | ||||
|  * | ||||
|  * Brian Paul | ||||
|  * 19 Feb 2001 | ||||
|  * | ||||
|  * Added GL_EXT_shadow_funcs support on 23 March 2002 | ||||
|  * | ||||
|  * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved. | ||||
|  * | ||||
|  * Permission is hereby granted, free of charge, to any person obtaining a | ||||
| @@ -35,6 +37,12 @@ | ||||
| #include <GL/glut.h> | ||||
| #include "../util/showbuffer.c" | ||||
|  | ||||
| #if 0 /* change to 1 if you want to use the old SGIX extensions */ | ||||
| #undef GL_ARB_depth_texture | ||||
| #undef GL_ARB_shadow | ||||
| #undef GL_ARB_shadow_ambient | ||||
| #endif | ||||
|  | ||||
|  | ||||
| #define DEG_TO_RAD (3.14159 / 180.0) | ||||
|  | ||||
| @@ -61,6 +69,16 @@ static GLfloat Bias = -0.06; | ||||
|  | ||||
| static GLboolean Anim = GL_TRUE; | ||||
|  | ||||
| static GLboolean HaveEXTshadowFuncs = GL_FALSE; | ||||
| static GLint Operator = 0; | ||||
| static const GLenum OperatorFunc[8] = { | ||||
|    GL_LEQUAL, GL_LESS, GL_GEQUAL, GL_GREATER, | ||||
|    GL_EQUAL, GL_NOTEQUAL, GL_ALWAYS, GL_NEVER }; | ||||
| static const char *OperatorName[8] = { | ||||
|    "GL_LEQUAL", "GL_LESS", "GL_GEQUAL", "GL_GREATER", | ||||
|    "GL_EQUAL", "GL_NOTEQUAL", "GL_ALWAYS", "GL_NEVER" }; | ||||
|  | ||||
|  | ||||
| static GLuint DisplayMode; | ||||
| #define SHOW_NORMAL         0 | ||||
| #define SHOW_DEPTH_IMAGE    1 | ||||
| @@ -231,6 +249,7 @@ Display(void) | ||||
| { | ||||
|    GLfloat ar = (GLfloat) WindowWidth / (GLfloat) WindowHeight; | ||||
|    GLfloat d; | ||||
|    GLenum error; | ||||
|  | ||||
|    ComputeLightPos(LightDist, LightLatitude, LightLongitude, | ||||
|                    LightPos, SpotDir); | ||||
| @@ -257,8 +276,8 @@ Display(void) | ||||
|     */ | ||||
|    if (DisplayMode == SHOW_DEPTH_MAPPING) { | ||||
|       /* load depth image as gray-scale luminance texture */ | ||||
|       GLfloat *depth = malloc(ShadowTexWidth * ShadowTexHeight | ||||
|                               * sizeof(GLfloat)); | ||||
|       GLfloat *depth = (GLfloat *) malloc(ShadowTexWidth * ShadowTexHeight | ||||
|                                           * sizeof(GLfloat)); | ||||
|       if (depth) { | ||||
|          glReadPixels(0, 0, ShadowTexWidth, ShadowTexHeight, | ||||
|                       GL_DEPTH_COMPONENT, GL_FLOAT, depth); | ||||
| @@ -302,7 +321,11 @@ Display(void) | ||||
|          glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); | ||||
|       } | ||||
|       if (DisplayMode == SHOW_DEPTH_MAPPING) { | ||||
| #if defined(GL_ARB_shadow) | ||||
|          glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE_ARB, GL_NONE); | ||||
| #elif defined(GL_SGIX_shadow) | ||||
|          glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_SGIX, GL_FALSE); | ||||
| #endif | ||||
|          glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE); | ||||
|          glEnable(GL_TEXTURE_2D); | ||||
|          MakeShadowMatrix(LightPos, SpotDir, SpotAngle, ShadowNear, ShadowFar); | ||||
| @@ -318,7 +341,12 @@ Display(void) | ||||
|       } | ||||
|       else { | ||||
|          assert(DisplayMode == SHOW_NORMAL); | ||||
| #if defined(GL_ARB_shadow) | ||||
|          glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE_ARB, | ||||
|                          GL_COMPARE_R_TO_TEXTURE_ARB); | ||||
| #elif defined(GL_SGIX_shadow) | ||||
|          glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_SGIX, GL_TRUE); | ||||
| #endif | ||||
|          glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE); | ||||
|          glEnable(GL_TEXTURE_2D); | ||||
|          MakeShadowMatrix(LightPos, SpotDir, SpotAngle, ShadowNear, ShadowFar); | ||||
| @@ -331,6 +359,11 @@ Display(void) | ||||
|    } | ||||
|  | ||||
|    glutSwapBuffers(); | ||||
|  | ||||
|    error = glGetError(); | ||||
|    if (error) { | ||||
|       printf("GL Error: %s\n", gluErrorString(error)); | ||||
|    } | ||||
| } | ||||
|  | ||||
|  | ||||
| @@ -400,6 +433,16 @@ Key(unsigned char key, int x, int y) | ||||
|       case ' ': | ||||
|          DisplayMode = SHOW_NORMAL; | ||||
|          break; | ||||
|       case 'o': | ||||
|          if (HaveEXTshadowFuncs) { | ||||
|             Operator++; | ||||
|             if (Operator >= 8) | ||||
|                Operator = 0; | ||||
|             printf("Operator: %s\n", OperatorName[Operator]); | ||||
|             glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FUNC_ARB, | ||||
|                             OperatorFunc[Operator]); | ||||
|          } | ||||
|          break; | ||||
|       case 'z': | ||||
|          Zrot -= step; | ||||
|          break; | ||||
| @@ -454,11 +497,22 @@ SpecialKey(int key, int x, int y) | ||||
| static void | ||||
| Init(void) | ||||
| { | ||||
| #if defined(GL_ARB_depth_texture) && defined(GL_ARB_shadow) | ||||
|    if (!glutExtensionSupported("GL_ARB_depth_texture") || | ||||
|        !glutExtensionSupported("GL_ARB_shadow")) { | ||||
|       printf("Sorry, this demo requires the GL_ARB_depth_texture and GL_ARB_shadow extensions\n"); | ||||
|       exit(1); | ||||
|    } | ||||
|    printf("Using GL_ARB_depth_texture and GL_ARB_shadow\n"); | ||||
| #elif defined(GL_SGIX_depth_texture) && defined(GL_SGIX_shadow) | ||||
|    if (!glutExtensionSupported("GL_SGIX_depth_texture") || | ||||
|        !glutExtensionSupported("GL_SGIX_shadow")) { | ||||
|       printf("Sorry, this demo requires the GL_SGIX_depth_texture and GL_SGIX_shadow extensions\n"); | ||||
|       exit(1); | ||||
|    } | ||||
|    printf("Using GL_SGIX_depth_texture and GL_SGIX_shadow\n"); | ||||
| #endif | ||||
|    HaveEXTshadowFuncs = glutExtensionSupported("GL_EXT_shadow_funcs"); | ||||
|  | ||||
|    glTexParameteri(GL_TEXTURE_1D, GL_TEXTURE_WRAP_S, GL_CLAMP); | ||||
|    glTexParameteri(GL_TEXTURE_1D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); | ||||
| @@ -466,13 +520,25 @@ Init(void) | ||||
|    glTexParameteri(GL_TEXTURE_1D, GL_TEXTURE_WRAP_T, GL_CLAMP); | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP); | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP); | ||||
| #ifdef GL_SGIX_shadow | ||||
| #if defined(GL_ARB_shadow) | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE_ARB, | ||||
|                    GL_COMPARE_R_TO_TEXTURE_ARB); | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FUNC_ARB, GL_LEQUAL); | ||||
| #elif defined(GL_SGIX_shadow) | ||||
|    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_OPERATOR_SGIX, | ||||
|                    GL_TEXTURE_LEQUAL_R_SGIX); | ||||
| #endif | ||||
| #ifdef GL_SGIX_shadow_ambient | ||||
|    if (glutExtensionSupported("GL_SGIX_shadow_ambient")) | ||||
|  | ||||
| #if defined(GL_ARB_shadow_ambient) | ||||
|    if (glutExtensionSupported("GL_ARB_shadow_ambient")) { | ||||
|       glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FAIL_VALUE_ARB, 0.3); | ||||
|       printf("and GL_ARB_shadow_ambient\n"); | ||||
|    } | ||||
| #elif defined(GL_SGIX_shadow_ambient) | ||||
|    if (glutExtensionSupported("GL_SGIX_shadow_ambient")) { | ||||
|       glTexParameterf(GL_TEXTURE_2D, GL_SHADOW_AMBIENT_SGIX, 0.3); | ||||
|       printf("and GL_SGIX_shadow_ambient\n"); | ||||
|    } | ||||
| #endif | ||||
|  | ||||
|    /* setup 1-D grayscale texture image for SHOW_DISTANCE mode */ | ||||
| @@ -504,6 +570,8 @@ PrintHelp(void) | ||||
|    printf("  b/B = decrease/increase shadow map Z bias\n"); | ||||
|    printf("  cursor keys = rotate scene\n"); | ||||
|    printf("  <shift> + cursor keys = rotate light source\n"); | ||||
|    if (HaveEXTshadowFuncs) | ||||
|       printf("  o = cycle through comparison modes\n"); | ||||
| } | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: spectex.c,v 1.1 1999/08/19 00:55:40 jtg Exp $ */ | ||||
| /* $Id: spectex.c,v 1.2 2002/04/22 16:03:37 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * GLUT demonstration of texturing with specular highlights. | ||||
| @@ -17,24 +17,6 @@ | ||||
|  * Brian Paul  February 1997 | ||||
|  */ | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * $Log: spectex.c,v $ | ||||
|  * Revision 1.1  1999/08/19 00:55:40  jtg | ||||
|  * Initial revision | ||||
|  * | ||||
|  * Revision 3.2  1999/03/28 18:22:05  brianp | ||||
|  * minor clean-up | ||||
|  * | ||||
|  * Revision 3.1  1998/02/14 18:47:48  brianp | ||||
|  * added OpenGL 1.2 separate specular interpolation support | ||||
|  * | ||||
|  * Revision 3.0  1998/02/14 18:42:29  brianp | ||||
|  * initial rev | ||||
|  * | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <math.h> | ||||
|   | ||||
							
								
								
									
										1058
									
								
								progs/demos/stex3d.c
									
									
									
									
									
								
							
							
						
						
									
										1058
									
								
								progs/demos/stex3d.c
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -11,6 +11,7 @@ | ||||
| #include <stdio.h> | ||||
| #include <math.h> | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
| #include <time.h> | ||||
|  | ||||
| #ifdef WIN32 | ||||
| @@ -571,7 +572,7 @@ loadpic(void) | ||||
|    if ((gluerr = gluBuild2DMipmaps(GL_TEXTURE_2D, 1, 256, 256, GL_LUMINANCE, | ||||
| 				   GL_UNSIGNED_BYTE, | ||||
| 				   (GLvoid *) (&terrainpic[0])))) { | ||||
|       fprintf(stderr, "GLULib%s\n", gluErrorString(gluerr)); | ||||
|       fprintf(stderr, "GLULib%s\n", (char *) gluErrorString(gluerr)); | ||||
|       exit(-1); | ||||
|    } | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: tessdemo.c,v 1.11 2001/03/21 02:47:32 gareth Exp $ */ | ||||
| /* $Id: tessdemo.c,v 1.13 2002/10/18 17:47:36 kschultz Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * A demo of the GLU polygon tesselation functions written by Bogdan Sikorski. | ||||
| @@ -90,7 +90,7 @@ static void GLCALLBACK edge_callback( GLenum flag ) | ||||
|  | ||||
| static void GLCALLBACK end_callback() | ||||
| { | ||||
|    GLint	i; | ||||
|    GLuint	i; | ||||
|  | ||||
|    glBegin( GL_LINES ); | ||||
|  | ||||
| @@ -165,6 +165,8 @@ static void set_screen_wh( GLsizei w, GLsizei h ) | ||||
|    height = h; | ||||
| } | ||||
|  | ||||
| typedef void (GLAPIENTRY *callback_t)(); | ||||
|  | ||||
| static void tesse( void ) | ||||
| { | ||||
|    GLUtesselator	*tobj; | ||||
| @@ -177,11 +179,11 @@ static void tesse( void ) | ||||
|  | ||||
|    if ( tobj != NULL ) { | ||||
|       gluTessNormal( tobj, 0.0, 0.0, 1.0 ); | ||||
|       gluTessCallback( tobj, GLU_TESS_BEGIN, glBegin ); | ||||
|       gluTessCallback( tobj, GLU_TESS_VERTEX, glVertex2fv ); | ||||
|       gluTessCallback( tobj, GLU_TESS_END, glEnd ); | ||||
|       gluTessCallback( tobj, GLU_TESS_ERROR, error_callback ); | ||||
|       gluTessCallback( tobj, GLU_TESS_COMBINE, combine_callback ); | ||||
|       gluTessCallback( tobj, GLU_TESS_BEGIN, (callback_t) glBegin ); | ||||
|       gluTessCallback( tobj, GLU_TESS_VERTEX, (callback_t) glVertex2fv ); | ||||
|       gluTessCallback( tobj, GLU_TESS_END, (callback_t) glEnd ); | ||||
|       gluTessCallback( tobj, GLU_TESS_ERROR, (callback_t) error_callback ); | ||||
|       gluTessCallback( tobj, GLU_TESS_COMBINE, (callback_t) combine_callback ); | ||||
|  | ||||
|       glNewList( list_start, GL_COMPILE ); | ||||
|       gluBeginPolygon( tobj ); | ||||
| @@ -201,10 +203,10 @@ static void tesse( void ) | ||||
|       gluEndPolygon( tobj ); | ||||
|       glEndList(); | ||||
|  | ||||
|       gluTessCallback( tobj, GLU_TESS_BEGIN, begin_callback ); | ||||
|       gluTessCallback( tobj, GLU_TESS_VERTEX, vertex_callback ); | ||||
|       gluTessCallback( tobj, GLU_TESS_END, end_callback ); | ||||
|       gluTessCallback( tobj, GLU_TESS_EDGE_FLAG, edge_callback ); | ||||
|       gluTessCallback( tobj, GLU_TESS_BEGIN, (callback_t) begin_callback ); | ||||
|       gluTessCallback( tobj, GLU_TESS_VERTEX, (callback_t) vertex_callback ); | ||||
|       gluTessCallback( tobj, GLU_TESS_END, (callback_t) end_callback ); | ||||
|       gluTessCallback( tobj, GLU_TESS_EDGE_FLAG, (callback_t) edge_callback ); | ||||
|  | ||||
|       glNewList( list_start + 1, GL_COMPILE ); | ||||
|       gluBeginPolygon( tobj ); | ||||
| @@ -308,6 +310,7 @@ static void mouse_clicked( int button, int state, int x, int y ) | ||||
| static void display( void ) | ||||
| { | ||||
|    GLuint i,j; | ||||
|    GLsizei ii, jj; | ||||
|    GLuint point_cnt; | ||||
|  | ||||
|    glClear( GL_COLOR_BUFFER_BIT ); | ||||
| @@ -319,12 +322,12 @@ static void display( void ) | ||||
|  | ||||
|       glBegin( GL_LINES ); | ||||
|  | ||||
|       for ( i = 0 ; i < width ; i += 10 ) { | ||||
| 	 for ( j = 0 ; j < height ; j += 10 ) { | ||||
| 	    glVertex2i( 0, j ); | ||||
| 	    glVertex2i( width, j ); | ||||
| 	    glVertex2i( i, height ); | ||||
| 	    glVertex2i( i, 0 ); | ||||
|       for ( ii = 0 ; ii < width ; ii += 10 ) { | ||||
| 	 for ( jj = 0 ; jj < height ; jj += 10 ) { | ||||
| 	    glVertex2i( 0, jj ); | ||||
| 	    glVertex2i( width, jj ); | ||||
| 	    glVertex2i( ii, height ); | ||||
| 	    glVertex2i( ii, 0 ); | ||||
| 	 } | ||||
|       } | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: texcyl.c,v 1.5 2001/03/27 17:35:26 brianp Exp $ */ | ||||
| /* $Id: texcyl.c,v 1.6 2002/04/22 16:03:37 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Textured cylinder demo: lighting, texturing, reflection mapping. | ||||
| @@ -10,61 +10,6 @@ | ||||
|  * Brian Paul  May 1997  This program is in the public domain. | ||||
|  */ | ||||
|  | ||||
| /* | ||||
|  * $Log: texcyl.c,v $ | ||||
|  * Revision 1.5  2001/03/27 17:35:26  brianp | ||||
|  * set initial window pos | ||||
|  * | ||||
|  * Revision 1.4  2000/12/24 22:53:54  pesco | ||||
|  * * demos/Makefile.am (INCLUDES): Added -I$(top_srcdir)/util. | ||||
|  * * demos/Makefile.X11, demos/Makefile.BeOS-R4, demos/Makefile.cygnus: | ||||
|  * Essentially the same. | ||||
|  * Program files updated to include "readtex.c", not "../util/readtex.c". | ||||
|  * * demos/reflect.c: Likewise for "showbuffer.c". | ||||
|  * | ||||
|  * | ||||
|  * * Makefile.am (EXTRA_DIST): Added top-level regular files. | ||||
|  * | ||||
|  * * include/GL/Makefile.am (INC_X11): Added glxext.h. | ||||
|  * | ||||
|  * | ||||
|  * * src/GGI/include/ggi/mesa/Makefile.am (EXTRA_HEADERS): Include | ||||
|  * Mesa GGI headers in dist even if HAVE_GGI is not given. | ||||
|  * | ||||
|  * * configure.in: Look for GLUT and demo source dirs in $srcdir. | ||||
|  * | ||||
|  * * src/swrast/Makefile.am (libMesaSwrast_la_SOURCES): Set to *.[ch]. | ||||
|  * More source list updates in various Makefile.am's. | ||||
|  * | ||||
|  * * Makefile.am (dist-hook): Remove CVS directory from distribution. | ||||
|  * (DIST_SUBDIRS): List all possible subdirs here. | ||||
|  * (SUBDIRS): Only list subdirs selected for build again. | ||||
|  * The above two applied to all subdir Makefile.am's also. | ||||
|  * | ||||
|  * Revision 1.3  2000/09/29 23:09:39  brianp | ||||
|  * added fps output | ||||
|  * | ||||
|  * Revision 1.2  1999/10/21 16:39:06  brianp | ||||
|  * added -info command line option | ||||
|  * | ||||
|  * Revision 1.1.1.1  1999/08/19 00:55:40  jtg | ||||
|  * Imported sources | ||||
|  * | ||||
|  * Revision 3.3  1999/03/28 18:24:37  brianp | ||||
|  * minor clean-up | ||||
|  * | ||||
|  * Revision 3.2  1998/11/05 04:34:04  brianp | ||||
|  * moved image files to ../images/ directory | ||||
|  * | ||||
|  * Revision 3.1  1998/06/23 03:16:51  brianp | ||||
|  * added Point/Linear sampling menu items | ||||
|  * | ||||
|  * Revision 3.0  1998/02/14 18:42:29  brianp | ||||
|  * initial rev | ||||
|  * | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <math.h> | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: texobj.c,v 1.5 2000/07/19 23:57:24 brianp Exp $ */ | ||||
| /* $Id: texobj.c,v 1.6 2002/01/04 21:05:57 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Example of using the 1.1 texture object functions. | ||||
| @@ -7,6 +7,7 @@ | ||||
|  * Brian Paul   June 1996   This file is in the public domain. | ||||
|  */ | ||||
|  | ||||
| #include <assert.h> | ||||
| #include <math.h> | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
| @@ -173,6 +174,7 @@ static void init( void ) | ||||
|    if (UseObj) { | ||||
| #ifdef TEXTURE_OBJECT | ||||
|       glBindTexture( GL_TEXTURE_2D, TexObj[0] ); | ||||
|       assert(glIsTexture(TexObj[0])); | ||||
| #endif | ||||
|    } | ||||
|    else { | ||||
| @@ -206,7 +208,9 @@ static void init( void ) | ||||
|    if (UseObj) { | ||||
| #ifdef TEXTURE_OBJECT | ||||
|       glBindTexture( GL_TEXTURE_2D, TexObj[1] ); | ||||
|       assert(glIsTexture(TexObj[1])); | ||||
| #endif | ||||
|       assert(!glIsTexture(TexObj[1] + 999)); | ||||
|    } | ||||
|    else { | ||||
|       glNewList( TexObj[1], GL_COMPILE ); | ||||
|   | ||||
| @@ -1,37 +1,10 @@ | ||||
| /* $Id: trispd.c,v 1.2 2000/10/26 15:26:14 brianp Exp $ */ | ||||
| /* $Id: trispd.c,v 1.4 2002/07/12 15:54:02 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Simple GLUT program to measure triangle strip rendering speed. | ||||
|  * Brian Paul  February 15, 1997  This file is in the public domain. | ||||
|  */ | ||||
|  | ||||
| /* | ||||
|  * $Log: trispd.c,v $ | ||||
|  * Revision 1.2  2000/10/26 15:26:14  brianp | ||||
|  * added a glFinish() call | ||||
|  * | ||||
|  * Revision 1.1.1.1  1999/08/19 00:55:40  jtg | ||||
|  * Imported sources | ||||
|  * | ||||
|  * Revision 3.4  1999/03/28 18:24:37  brianp | ||||
|  * minor clean-up | ||||
|  * | ||||
|  * Revision 3.3  1999/03/18 08:16:52  joukj | ||||
|  * | ||||
|  *     cmpstr needs string.h to included to avoid warnings | ||||
|  * | ||||
|  * Revision 3.2  1998/07/08 03:02:00  brianp | ||||
|  * added Marten Stromberg's texture options | ||||
|  * | ||||
|  * Revision 3.1  1998/06/29 02:36:58  brianp | ||||
|  * removed unneeded includes | ||||
|  * | ||||
|  * Revision 3.0  1998/02/14 18:42:29  brianp | ||||
|  * initial rev | ||||
|  * | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <math.h> | ||||
| @@ -158,7 +131,7 @@ static void LoadTex(int comp, int filter) | ||||
| { | ||||
|    GLubyte *pixels; | ||||
|    int x, y; | ||||
|    pixels = malloc(4*256*256); | ||||
|    pixels = (GLubyte *) malloc(4*256*256); | ||||
|    for (y = 0; y < 256; ++y) | ||||
|       for (x = 0; x < 256; ++x) { | ||||
| 	 pixels[(y*256+x)*4+0] = (int)(128.5 + 127.0 * cos(0.024544 * x)); | ||||
|   | ||||
| @@ -1,64 +1,17 @@ | ||||
| /* $Id: winpos.c,v 1.3 2000/12/24 22:53:54 pesco Exp $ */ | ||||
| /* $Id: winpos.c,v 1.5 2002/04/22 16:03:37 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Example of how to use the GL_MESA_window_pos extension. | ||||
|  * Brian Paul   This file is in the public domain. | ||||
|  */ | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * $Log: winpos.c,v $ | ||||
|  * Revision 1.3  2000/12/24 22:53:54  pesco | ||||
|  * * demos/Makefile.am (INCLUDES): Added -I$(top_srcdir)/util. | ||||
|  * * demos/Makefile.X11, demos/Makefile.BeOS-R4, demos/Makefile.cygnus: | ||||
|  * Essentially the same. | ||||
|  * Program files updated to include "readtex.c", not "../util/readtex.c". | ||||
|  * * demos/reflect.c: Likewise for "showbuffer.c". | ||||
|  * | ||||
|  * | ||||
|  * * Makefile.am (EXTRA_DIST): Added top-level regular files. | ||||
|  * | ||||
|  * * include/GL/Makefile.am (INC_X11): Added glxext.h. | ||||
|  * | ||||
|  * | ||||
|  * * src/GGI/include/ggi/mesa/Makefile.am (EXTRA_HEADERS): Include | ||||
|  * Mesa GGI headers in dist even if HAVE_GGI is not given. | ||||
|  * | ||||
|  * * configure.in: Look for GLUT and demo source dirs in $srcdir. | ||||
|  * | ||||
|  * * src/swrast/Makefile.am (libMesaSwrast_la_SOURCES): Set to *.[ch]. | ||||
|  * More source list updates in various Makefile.am's. | ||||
|  * | ||||
|  * * Makefile.am (dist-hook): Remove CVS directory from distribution. | ||||
|  * (DIST_SUBDIRS): List all possible subdirs here. | ||||
|  * (SUBDIRS): Only list subdirs selected for build again. | ||||
|  * The above two applied to all subdir Makefile.am's also. | ||||
|  * | ||||
|  * Revision 1.2  2000/06/27 17:04:43  brianp | ||||
|  * fixed compiler warnings | ||||
|  * | ||||
|  * Revision 1.1.1.1  1999/08/19 00:55:40  jtg | ||||
|  * Imported sources | ||||
|  * | ||||
|  * Revision 3.3  1999/03/28 18:24:37  brianp | ||||
|  * minor clean-up | ||||
|  * | ||||
|  * Revision 3.2  1998/11/05 04:34:04  brianp | ||||
|  * moved image files to ../images/ directory | ||||
|  * | ||||
|  * Revision 3.1  1998/02/22 16:36:10  brianp | ||||
|  * changed image file and set unpack alignment to 1 | ||||
|  * | ||||
|  * Revision 3.0  1998/02/14 18:42:29  brianp | ||||
|  * initial rev | ||||
|  * | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #include <math.h> | ||||
| #include <string.h> | ||||
| #include <stdlib.h> | ||||
| #include <stdio.h> | ||||
| #ifdef _WIN32 | ||||
| #include <windows.h> | ||||
| #endif | ||||
| #define GL_GLEXT_LEGACY | ||||
| #include "GL/glut.h" | ||||
|  | ||||
|   | ||||
| @@ -19,6 +19,7 @@ | ||||
|  | ||||
| ggi_visual_t vis; | ||||
| char text[100]; | ||||
| int db_flag,vis_x, vis_y, vir_x, vir_y, gt; | ||||
|  | ||||
| /* | ||||
|  * Draw a gear wheel.  You'll probably want to call this function when | ||||
| @@ -157,6 +158,7 @@ static GLuint count = 1; | ||||
|  | ||||
| static void draw( void ) | ||||
| { | ||||
|    static int n = 0; | ||||
|    glClearColor(0,0,0,0); | ||||
|    glClearIndex(0); | ||||
|    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ); | ||||
| @@ -197,12 +199,25 @@ static void draw( void ) | ||||
|    ggiPuts(vis,0,ggiGetInfo(vis)->mode->visible.y+16,text); | ||||
| #endif | ||||
|  | ||||
|    GGIMesaSwapBuffers(); | ||||
|     if(db_flag) | ||||
|    ggiMesaSwapBuffers(); | ||||
|  			 | ||||
|    count++; | ||||
|    if (count==limit) { | ||||
|       exit(1); | ||||
|    } | ||||
|     ++n; | ||||
|     /* | ||||
|    if (!(n%10)){ | ||||
| 	ggi_color rgb = { 10000, 10000, 10000 }; | ||||
| 	ggiSetSimpleMode(vis,vis_x+(n/10),vis_y+(n/10),db_flag?2:1, gt);  | ||||
| 	glViewport(0, 0,vis_x+(n/10),vis_y+(n/10)); | ||||
| 	ggiSetGCForeground(vis, ggiMapColor(vis, &rgb)); | ||||
| 	ggiDrawBox(vis, 20, 20, 100, 100); | ||||
| 	if(db_flag) | ||||
| 	  ggiSetWriteFrame(vis, 1); | ||||
|     } | ||||
|     */ | ||||
| } | ||||
|  | ||||
| static void idle( void ) | ||||
| @@ -216,6 +231,10 @@ static void reshape( int width, int height ) | ||||
| { | ||||
|    GLfloat  h = (GLfloat) height / (GLfloat) width; | ||||
|  | ||||
|     if(db_flag) | ||||
| 	glDrawBuffer(GL_BACK); | ||||
|     else | ||||
| 	glDrawBuffer(GL_FRONT); | ||||
|    glViewport(0, 0, (GLint)width, (GLint)height); | ||||
|    glMatrixMode(GL_PROJECTION); | ||||
|    glLoadIdentity(); | ||||
| @@ -231,8 +250,8 @@ static void reshape( int width, int height ) | ||||
| static void init( void ) | ||||
| { | ||||
|    static GLfloat pos[4] = {5.0, 5.0, 10.0, 0.0 }; | ||||
|    static GLfloat red[4] = {0.8, 0.1, 0.0, 1.0 }; | ||||
|    static GLfloat green[4] = {0.0, 0.8, 0.2, 1.0 }; | ||||
|    static GLfloat red[4] = {0.9, 0.9, 0.9, 1.0 }; | ||||
|    static GLfloat green[4] = {0.0, 0.8, 0.9, 1.0 }; | ||||
|    static GLfloat blue[4] = {0.2, 0.2, 1.0, 1.0 }; | ||||
|  | ||||
|    glLightfv( GL_LIGHT0, GL_POSITION, pos ); | ||||
| @@ -276,9 +295,9 @@ static void usage(char *s) | ||||
|  | ||||
| int main( int argc, char *argv[] ) | ||||
| { | ||||
| 	GGIMesaContext ctx; | ||||
| 	int vis_x,vis_y,vir_x,vir_y,bpp,db_flag,gt; | ||||
| 	ggi_mesa_context_t ctx; | ||||
| 	ggi_mode mode; | ||||
| 	int bpp; | ||||
|  | ||||
| 	limit=0; | ||||
|  | ||||
| @@ -313,13 +332,12 @@ int main( int argc, char *argv[] ) | ||||
| 		exit(1); | ||||
| 	} | ||||
|   | ||||
| 	ctx=GGIMesaCreateContext();  | ||||
| 	if (ctx==NULL) | ||||
| 	if (ggiMesaInit() < 0) | ||||
| 	{ | ||||
| 		printf("GGIMesaCreateContext() failed\n"); | ||||
| 		printf("ggiMesaInit failed\n"); | ||||
| 		exit(1); | ||||
| 	} | ||||
|  | ||||
| 	 | ||||
| 	vis=ggiOpen(NULL); | ||||
| 	if (vis==NULL) | ||||
| 	{ | ||||
| @@ -327,29 +345,42 @@ int main( int argc, char *argv[] ) | ||||
| 		exit(1); | ||||
| 	} | ||||
|  | ||||
| 	if (ggiSetGraphMode(vis,vis_x,vis_y,vir_x,vir_y,gt)<0)  | ||||
| 	if (ggiSetSimpleMode(vis,vis_x,vis_y,db_flag ? 2 : 1,gt)<0)  | ||||
| 	{ | ||||
| 		printf("%s: can't set graphmode (%i %i %i %i)  %i BPP\n", | ||||
| 			argv[0],vis_x,vis_y,vir_x,vir_y,bpp); | ||||
| 		exit(1); | ||||
| 	} | ||||
|  | ||||
| 	if (GGIMesaSetVisual(ctx,vis,GL_TRUE,db_flag)<0) | ||||
| 	if (ggiMesaAttach(vis) < 0) | ||||
| 	{ | ||||
| 		printf("ggiMesaAttach failed\n"); | ||||
| 		exit(1); | ||||
| 	} | ||||
| 	if (ggiMesaExtendVisual(vis, GL_FALSE, GL_FALSE, 16, | ||||
| 	                        0, 0, 0, 0, 0, 1)  < 0) | ||||
| 	{ | ||||
| 		printf ("GGIMesaSetVisual() failed\n"); | ||||
| 		exit(1); | ||||
| 	} | ||||
|  | ||||
| 	GGIMesaMakeCurrent(ctx); | ||||
| 	ctx = ggiMesaCreateContext(vis);  | ||||
| 	if (ctx==NULL) | ||||
| 	{ | ||||
| 		printf("GGIMesaCreateContext() failed\n"); | ||||
| 		exit(1); | ||||
| 	} | ||||
|  | ||||
| 	ggiMesaMakeCurrent(ctx, vis); | ||||
| 	ggiGetMode(vis,&mode); | ||||
|  | ||||
| 	reshape(mode.visible.x,mode.visible.y); | ||||
|  | ||||
| 	init(); | ||||
|   | ||||
| 	while (!ggiKbhit(vis)) idle(); | ||||
| 	while (!ggiKbhit(vis)) { /*sleep(1);*/ idle(); } | ||||
|  | ||||
| 	GGIMesaDestroyContext(ctx); | ||||
| 	ggiMesaDestroyContext(ctx); | ||||
| 	ggiClose(vis); | ||||
|  | ||||
| 	printf("%s\n",text); | ||||
|   | ||||
| @@ -1,62 +1,51 @@ | ||||
| # Makefile for Win32 | ||||
|  | ||||
| TOP = .. | ||||
|  | ||||
| !include "$(TOP)/names.win" | ||||
| TOP    = .. | ||||
| INCDIR = ..\include | ||||
| LIBDIR = ..\lib | ||||
|  | ||||
| !include <win32.mak> | ||||
|  | ||||
| SRCS= \ | ||||
|    aaindex.c \ | ||||
|    aapoly.c \ | ||||
|    aargb.c \ | ||||
|    accanti.c \ | ||||
|    accnot.c   \ | ||||
|    accum.c    \ | ||||
|    aim.c      \ | ||||
|    accpersp.c \ | ||||
|    alpha.c    \ | ||||
|    alpha3D.c  \ | ||||
|    anti.c     \ | ||||
|    antiindex.c  \ | ||||
|    antipindex.c \ | ||||
|    antipoint.c  \ | ||||
|    antipoly.c  \ | ||||
|    bezcurve.c  \ | ||||
|    bezmesh.c   \ | ||||
|    bezsurf.c   \ | ||||
|    checker.c   \ | ||||
|    checker2.c  \ | ||||
|    chess.c     \ | ||||
|    clip.c      \ | ||||
|    colormat.c  \ | ||||
|    cone.c      \ | ||||
|    cube.c      \ | ||||
|    curve.c     \ | ||||
|    depthcue.c  \ | ||||
|    disk.c      \ | ||||
|    dof.c       \ | ||||
|    dofnot.c    \ | ||||
|    double.c    \ | ||||
|    drawf.c     \ | ||||
|    feedback.c  \ | ||||
|    fog.c       \ | ||||
|    fogindex.c  \ | ||||
|    font.c      \ | ||||
|    hello.c     \ | ||||
|    image.c     \ | ||||
|    light.c     \ | ||||
|    linelist.c  \ | ||||
|    lines.c     \ | ||||
|    list.c      \ | ||||
|    list2.c     \ | ||||
|    maplight.c  \ | ||||
|    material.c  \ | ||||
|    mipmap.c    \ | ||||
|    model.c     \ | ||||
|    movelight.c \ | ||||
|    nurbs.c     \ | ||||
|    pickdepth.c \ | ||||
|    pickline.c  \ | ||||
|    picksquare.c \ | ||||
|    plane.c     \ | ||||
|    planet.c    \ | ||||
|    planetup.c  \ | ||||
|    polyoff.c  \ | ||||
|    polys.c     \ | ||||
|    quadric.c   \ | ||||
|    robot.c     \ | ||||
|    sccolorlight.c \ | ||||
|    scene.c     \ | ||||
| @@ -64,18 +53,26 @@ SRCS= \ | ||||
|    sceneflat.c \ | ||||
|    select.c    \ | ||||
|    smooth.c    \ | ||||
|    sphere.c    \ | ||||
|    stencil.c   \ | ||||
|    stroke.c    \ | ||||
|    surface.c   \ | ||||
|    tea.c       \ | ||||
|    teaambient.c \ | ||||
|    teapots.c   \ | ||||
|    tess.c      \ | ||||
|    tesswind.c  \ | ||||
|    texbind.c   \ | ||||
|    texgen.c    \ | ||||
|    texprox.c   \ | ||||
|    texsub.c    \ | ||||
|    texturesurf.c \ | ||||
|    trim.c      | ||||
|  | ||||
| EXTRALIBS = $(MESAGL).lib $(MESAGLU).lib $(MESATK).lib $(MESAAUX).lib | ||||
|    torus.c     \ | ||||
|    trim.c     \ | ||||
|    unproject.c \ | ||||
|    varray.c   \ | ||||
|    wrap.c | ||||
|  | ||||
| !include "$(TOP)/mesawin32.mak" | ||||
|  | ||||
| $(EXES) : $*.obj | ||||
| 	@echo $@ | ||||
| 	$(link) -out:$@ $* /LIBPATH:$(LIBDIR) $(LIBS) | ||||
| @@ -42,6 +42,7 @@ | ||||
|  *  two rectangles.  This program clamps the texture, if | ||||
|  *  the texture coordinates fall outside 0.0 and 1.0. | ||||
|  */ | ||||
| #include <stdlib.h> | ||||
| #include <GL/glut.h> | ||||
|  | ||||
| /*	Create checkerboard texture	*/ | ||||
|   | ||||
| @@ -143,6 +143,8 @@ void display(void) | ||||
|  | ||||
|    size = glRenderMode (GL_RENDER); | ||||
|    printBuffer (size, feedBuffer); | ||||
|  | ||||
|    glFinish(); | ||||
| } | ||||
|  | ||||
| /* ARGSUSED1 */ | ||||
|   | ||||
| @@ -62,7 +62,7 @@ selectFog(int mode) | ||||
| 	/* falls through */ | ||||
|     case GL_EXP2: | ||||
|     case GL_EXP: | ||||
|         glFogi(GL_FOG_MODE, mode); | ||||
| 	glFogiv(GL_FOG_MODE, (int *) &mode); | ||||
| 	glutPostRedisplay(); | ||||
| 	break; | ||||
|     case 0: | ||||
| @@ -190,7 +190,7 @@ main(int argc, char **argv) | ||||
|     glutDisplayFunc(display); | ||||
|     glutCreateMenu(selectFog); | ||||
|     glutAddMenuEntry("Fog EXP", GL_EXP); | ||||
|     glutAddMenuEntry("Fog EXP2", GL_EXP2); | ||||
|     glutAddMenuEntry("Fog EXP2", /*GL_EXP2*/ 0xffff); | ||||
|     glutAddMenuEntry("Fog LINEAR", GL_LINEAR); | ||||
|     glutAddMenuEntry("Quit", 0); | ||||
|     glutAttachMenu(GLUT_RIGHT_BUTTON); | ||||
|   | ||||
| @@ -39,6 +39,7 @@ | ||||
|  * hello.c | ||||
|  * This is a simple, introductory OpenGL program. | ||||
|  */ | ||||
| #include <stdlib.h> | ||||
| #include <GL/glut.h> | ||||
|  | ||||
| void display(void) | ||||
|   | ||||
| @@ -103,8 +103,8 @@ drawRects(GLenum mode) | ||||
| void | ||||
| processHits(GLint hits, GLuint buffer[]) | ||||
| { | ||||
|   unsigned int i, j; | ||||
|   GLuint names, *ptr; | ||||
|   GLint i; | ||||
|   GLuint j, names, *ptr; | ||||
|  | ||||
|   printf("hits = %d\n", hits); | ||||
|   ptr = (GLuint *) buffer; | ||||
|   | ||||
| @@ -87,8 +87,8 @@ void drawSquares(GLenum mode) | ||||
|  */ | ||||
| void processHits (GLint hits, GLuint buffer[]) | ||||
| { | ||||
|    unsigned int i, j; | ||||
|    GLuint ii = 0, jj = 0, names, *ptr; | ||||
|    GLint i; | ||||
|    GLuint j, ii = 0, jj = 0, names, *ptr; | ||||
|  | ||||
|    printf ("hits = %d\n", hits); | ||||
|    ptr = (GLuint *) buffer; | ||||
|   | ||||
| @@ -44,6 +44,7 @@ | ||||
| #include <GL/glut.h> | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
|  | ||||
| #ifdef GL_VERSION_1_1 | ||||
| GLuint list; | ||||
| @@ -149,7 +150,7 @@ static void Benchmark( float xdiff, float ydiff ) | ||||
| { | ||||
|    int startTime, endTime; | ||||
|    int draws; | ||||
|    double seconds, fps, triPerSecond; | ||||
|    double seconds, fps; | ||||
|  | ||||
|    printf("Benchmarking...\n"); | ||||
|  | ||||
|   | ||||
| @@ -124,8 +124,8 @@ void drawScene (void) | ||||
|  */ | ||||
| void processHits (GLint hits, GLuint buffer[]) | ||||
| { | ||||
|    unsigned int i, j; | ||||
|    GLuint names, *ptr; | ||||
|    GLint i; | ||||
|    GLuint j, names, *ptr; | ||||
|  | ||||
|    printf ("hits = %d\n", hits); | ||||
|    ptr = (GLuint *) buffer; | ||||
|   | ||||
| @@ -41,6 +41,7 @@ | ||||
|  *  This program draws a NURBS surface in the shape of a | ||||
|  *  symmetrical hill. | ||||
|  */ | ||||
| #include <stdlib.h> | ||||
| #include <GL/glut.h> | ||||
|  | ||||
| GLfloat ctlpoints[4][4][3]; | ||||
|   | ||||
| @@ -94,7 +94,7 @@ void CALLBACK vertexCallback(GLvoid *vertex) | ||||
|  | ||||
|    pointer = (GLdouble *) vertex; | ||||
|    glColor3dv(pointer+3); | ||||
|    glVertex3dv(vertex); | ||||
|    glVertex3dv(pointer); | ||||
| } | ||||
|  | ||||
| /*  combineCallback is used to create a new vertex when edges | ||||
|   | ||||
							
								
								
									
										42
									
								
								progs/samples/Makefile.win
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								progs/samples/Makefile.win
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,42 @@ | ||||
| # $Id: Makefile.win,v 1.1 2002/01/16 00:57:54 kschultz Exp $ | ||||
|  | ||||
| # Mesa 3-D graphics library | ||||
| # Version:  3.5 | ||||
| # Copyright (C) 1995-2001  Brian Paul | ||||
|  | ||||
| # Makefile for GLUT-based demo programs for Windows | ||||
|  | ||||
| !include <win32.mak> | ||||
|  | ||||
| ##### MACROS ##### | ||||
|  | ||||
| TOP    = .. | ||||
| INCDIR = ..\include | ||||
| LIBDIR = ..\lib | ||||
|  | ||||
| PROGS = accum bitmap1 bitmap2 blendeq blendxor copy cursor depth eval fog \ | ||||
| 	font line logo nurb oglinfo olympic overlay point prim quad select \ | ||||
| 	shape sphere star stencil stretch texture tri wave | ||||
|  | ||||
| SRCS = \ | ||||
|     accum.c \ | ||||
|     bitmap1.c \ | ||||
|     bitmap2.c \ | ||||
|     blendeq.c \ | ||||
|     blendxor.c \ | ||||
|     copy.c \ | ||||
|     cursor.c depth.c eval.c fog.c \ | ||||
| 	font.c line.c logo.c nurb.c olympic.c overlay.c point.c prim.c quad.c select.c \ | ||||
| 	shape.c sphere.c star.c stencil.c stretch.c texture.c tri.c wave.c | ||||
|  | ||||
| !include "../mesawin32.mak" | ||||
|  | ||||
| ##### TARGETS ##### | ||||
|  | ||||
| clean:: | ||||
|  | ||||
| clobber:: | ||||
|  | ||||
| $(EXES) : $*.obj | ||||
| 	@echo $@ | ||||
| 	$(link) -out:$@ $* /LIBPATH:$(LIBDIR) $(LIBS) | ||||
| @@ -11,6 +11,10 @@ | ||||
| #include <string.h> | ||||
| #include <stdlib.h> | ||||
| #include <stdio.h> | ||||
| #ifdef _WIN32 | ||||
| #include <windows.h> | ||||
| #endif | ||||
| #define GL_GLEXT_LEGACY | ||||
| #include <GL/glut.h> | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -10,6 +10,10 @@ | ||||
| #include <unistd.h> | ||||
| #endif | ||||
| #include <stdlib.h> | ||||
| #ifdef _WIN32 | ||||
| #include <windows.h> | ||||
| #endif | ||||
| #define GL_GLEXT_LEGACY | ||||
| #include <GL/glut.h> | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
|  | ||||
| typedef struct { | ||||
|     int sizeX, sizeY; | ||||
|     size_t sizeX, sizeY; | ||||
|     GLubyte *data; | ||||
| } PPMImage; | ||||
|  | ||||
| @@ -30,7 +30,7 @@ static PPMImage *LoadPPM(const char *filename) | ||||
| 	exit(1); | ||||
|     } | ||||
|  | ||||
|     result = malloc(sizeof(PPMImage)); | ||||
|     result = (PPMImage *) malloc(sizeof(PPMImage)); | ||||
|     if (!result) | ||||
|     { | ||||
| 	fprintf(stderr, "Unable to allocate memory\n"); | ||||
| @@ -52,7 +52,7 @@ static PPMImage *LoadPPM(const char *filename) | ||||
|     while (fgetc(fp) != '\n') | ||||
| 	; | ||||
|  | ||||
|     result->data = malloc(3 * result->sizeX * result->sizeY); | ||||
|     result->data = (GLubyte *) malloc(3 * result->sizeX * result->sizeY); | ||||
|     if (!result) | ||||
|     { | ||||
| 	fprintf(stderr, "Unable to allocate memory\n"); | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: logo.c,v 1.2 1999/12/15 13:02:09 brianp Exp $ */ | ||||
| /* $Id: logo.c,v 1.3 2002/11/05 20:59:16 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Copyright (c) 1991, 1992, 1993 Silicon Graphics, Inc. | ||||
| @@ -1397,12 +1397,15 @@ static void Key(unsigned char key, int x, int y) | ||||
| 	switch (polyMode) { | ||||
| 	  case GL_BACK: | ||||
| 	    polyMode = GL_FRONT; | ||||
|             printf("PolygonMode GL_FRONT\n"); | ||||
| 	    break; | ||||
| 	  case GL_FRONT: | ||||
| 	    polyMode = GL_FRONT_AND_BACK; | ||||
|             printf("PolygonMode GL_FRONT_AND_BACK\n"); | ||||
| 	    break; | ||||
| 	  case GL_FRONT_AND_BACK: | ||||
| 	    polyMode = GL_BACK; | ||||
|             printf("PolygonMode GL_BACK\n"); | ||||
| 	    break; | ||||
|           default: | ||||
|             break; | ||||
| @@ -1455,14 +1458,17 @@ static void Key(unsigned char key, int x, int y) | ||||
|  | ||||
|       case 'q': | ||||
| 	glDisable(GL_CULL_FACE); | ||||
|         printf("disable culling\n"); | ||||
| 	break; | ||||
|       case 'w': | ||||
| 	glEnable(GL_CULL_FACE); | ||||
| 	glCullFace(GL_FRONT); | ||||
|         printf("enable front face culling\n"); | ||||
| 	break; | ||||
|       case 'e': | ||||
| 	glEnable(GL_CULL_FACE); | ||||
| 	glCullFace(GL_BACK); | ||||
|         printf("enable back face culling\n"); | ||||
| 	break; | ||||
|  | ||||
|       case 'r': | ||||
|   | ||||
| @@ -216,11 +216,13 @@ static void CALLBACK ErrorCallback(GLenum which) | ||||
|     } | ||||
| } | ||||
|  | ||||
| typedef void (GLAPIENTRY *callback_t)(); | ||||
|  | ||||
| static void Init(void) | ||||
| { | ||||
|  | ||||
|     theNurbs = gluNewNurbsRenderer(); | ||||
|     gluNurbsCallback(theNurbs, GLU_ERROR, ErrorCallback); | ||||
|     gluNurbsCallback(theNurbs, GLU_ERROR, (callback_t) ErrorCallback); | ||||
|  | ||||
|     gluNurbsProperty(theNurbs, GLU_SAMPLING_TOLERANCE, 15.0); | ||||
|     gluNurbsProperty(theNurbs, GLU_DISPLAY_MODE, GLU_OUTLINE_PATCH); | ||||
|   | ||||
| @@ -102,6 +102,8 @@ static void CALLBACK ErrorHandler(GLenum which) | ||||
|     fprintf(stderr, "Quad Error: %s\n", gluErrorString(which)); | ||||
| } | ||||
|  | ||||
| typedef void (GLAPIENTRY *callback_t)(); | ||||
|  | ||||
| static void Init(void) | ||||
| { | ||||
|     static GLint colorIndexes[3] = {0, 200, 255}; | ||||
| @@ -163,7 +165,7 @@ static void Init(void) | ||||
|     } | ||||
|  | ||||
|     quadObj = gluNewQuadric(); | ||||
|     gluQuadricCallback(quadObj, GLU_ERROR, ErrorHandler); | ||||
|     gluQuadricCallback(quadObj, GLU_ERROR, (callback_t) ErrorHandler); | ||||
|  | ||||
|     radius1 = 10; | ||||
|     radius2 = 5; | ||||
|   | ||||
| @@ -174,7 +174,7 @@ static void DeleteTri(GLint h) | ||||
| static void GrowTri(GLint h) | ||||
| { | ||||
|     float v[2]; | ||||
|     float *oldV; | ||||
|     float *oldV = NULL; | ||||
|     GLint i; | ||||
|  | ||||
|     v[0] = objects[h].v1[0] + objects[h].v2[0] + objects[h].v3[0]; | ||||
|   | ||||
| @@ -1,23 +1,31 @@ | ||||
|  | ||||
| # Simple makefile for compiling test programs on Linux | ||||
| # These programs aren't intended to be included with the normal | ||||
| # distro as they're not too interesting but good for testing during | ||||
| # development. | ||||
| # distro.  They're not too interesting but they're good for testing. | ||||
|  | ||||
|  | ||||
| CC = gcc | ||||
| CFLAGS = -g -I../include | ||||
| LIBS = -L../lib -lglut -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXext -lm | ||||
|  | ||||
| PROGS = cva \ | ||||
| PROGS = antialias \ | ||||
| 	cva \ | ||||
| 	dinoshade \ | ||||
| 	fogcoord \ | ||||
| 	getprocaddress \ | ||||
| 	manytex \ | ||||
| 	multipal \ | ||||
| 	projtex \ | ||||
| 	seccolor \ | ||||
| 	sharedtex \ | ||||
| 	texline | ||||
| 	stencilwrap \ | ||||
| 	texline \ | ||||
| 	texwrap \ | ||||
| 	vptest1 \ | ||||
| 	vptest2 \ | ||||
| 	vptest3 \ | ||||
| 	vptorus \ | ||||
| 	vpwarpmesh | ||||
|  | ||||
|  | ||||
| ##### RULES ##### | ||||
| @@ -36,3 +44,11 @@ default: $(PROGS) | ||||
| clean: | ||||
| 	rm -f $(PROGS) | ||||
| 	rm -f *.o | ||||
|  | ||||
|  | ||||
| # auto code generation | ||||
| getprocaddress: getprocaddress.c getproclist.h | ||||
|  | ||||
| getproclist.h: ../bin/APIspec getprocaddress.c getprocaddress.py | ||||
| 	python getprocaddress.py > getproclist.h | ||||
|  | ||||
|   | ||||
							
								
								
									
										44
									
								
								progs/tests/Makefile.win
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								progs/tests/Makefile.win
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,44 @@ | ||||
| # $Id: Makefile.win,v 1.1 2002/01/16 01:03:25 kschultz Exp $ | ||||
|  | ||||
| # Mesa 3-D graphics library | ||||
| # Version:  3.5 | ||||
| # Copyright (C) 1995-2001  Brian Paul | ||||
|  | ||||
| # Makefile for GLUT-based demo programs for Windows | ||||
|  | ||||
| !include <win32.mak> | ||||
|  | ||||
| ##### MACROS ##### | ||||
|  | ||||
| TOP    = .. | ||||
| INCDIR = ..\include | ||||
| LIBDIR = ..\lib | ||||
|  | ||||
| SRCS = cva.c \ | ||||
| 	dinoshade.c \ | ||||
| 	fogcoord.c \ | ||||
| 	manytex.c \ | ||||
| 	multipal.c \ | ||||
| 	projtex.c \ | ||||
| 	seccolor.c \ | ||||
| #	sharedtex.c \ | ||||
| 	texline.c \ | ||||
| 	texwrap.c \ | ||||
| 	vptest1.c \ | ||||
| 	vptest2.c \ | ||||
| 	vptest3.c \ | ||||
| 	vptorus.c \ | ||||
| 	vpwarpmesh.c | ||||
| 	 | ||||
| !include "../mesawin32.mak" | ||||
|  | ||||
| ##### TARGETS ##### | ||||
|  | ||||
| clean:: | ||||
|  | ||||
| clobber:: | ||||
| 	@del readtex.c readtex.h | ||||
|  | ||||
| $(EXES) :$*.obj | ||||
| 	@echo $@ | ||||
| 	$(link) -out:$@ $* /LIBPATH:$(LIBDIR) $(LIBS) | ||||
							
								
								
									
										226
									
								
								progs/tests/antialias.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										226
									
								
								progs/tests/antialias.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,226 @@ | ||||
| /* $Id: antialias.c,v 1.1 2002/11/08 18:30:26 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Test multisampling and polygon smoothing. | ||||
|  * | ||||
|  * Brian Paul | ||||
|  * 4 November 2002 | ||||
|  */ | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <math.h> | ||||
| #include <GL/glut.h> | ||||
|  | ||||
|  | ||||
| static GLfloat Zrot = 0; | ||||
| static GLboolean Anim = GL_TRUE; | ||||
| static GLboolean HaveMultisample = GL_TRUE; | ||||
|  | ||||
|  | ||||
| static void | ||||
| PrintString(const char *s) | ||||
| { | ||||
|    while (*s) { | ||||
|       glutBitmapCharacter(GLUT_BITMAP_8_BY_13, (int) *s); | ||||
|       s++; | ||||
|    } | ||||
| } | ||||
|  | ||||
|  | ||||
| static void | ||||
| Polygon( GLint verts, GLfloat radius, GLfloat z ) | ||||
| { | ||||
|    int i; | ||||
|    for (i = 0; i < verts; i++) { | ||||
|       float a = (i * 2.0 * 3.14159) / verts; | ||||
|       float x = radius * cos(a); | ||||
|       float y = radius * sin(a); | ||||
|       glVertex3f(x, y, z); | ||||
|    } | ||||
| } | ||||
|  | ||||
|  | ||||
| static void | ||||
| DrawObject( void ) | ||||
| { | ||||
|    glLineWidth(3.0); | ||||
|    glColor3f(1, 1, 1); | ||||
|    glBegin(GL_LINE_LOOP); | ||||
|    Polygon(12, 1.2, 0); | ||||
|    glEnd(); | ||||
|  | ||||
|    glLineWidth(1.0); | ||||
|    glColor3f(1, 1, 1); | ||||
|    glBegin(GL_LINE_LOOP); | ||||
|    Polygon(12, 1.1, 0); | ||||
|    glEnd(); | ||||
|  | ||||
|    glColor3f(1, 0, 0); | ||||
|    glBegin(GL_POLYGON); | ||||
|    Polygon(12, 0.4, 0.3); | ||||
|    glEnd(); | ||||
|  | ||||
|    glColor3f(0, 1, 0); | ||||
|    glBegin(GL_POLYGON); | ||||
|    Polygon(12, 0.6, 0.2); | ||||
|    glEnd(); | ||||
|  | ||||
|    glColor3f(0, 0, 1); | ||||
|    glBegin(GL_POLYGON); | ||||
|    Polygon(12, 0.8, 0.1); | ||||
|    glEnd(); | ||||
|  | ||||
|    glColor3f(1, 1, 1); | ||||
|    glBegin(GL_POLYGON); | ||||
|    Polygon(12, 1.0, 0); | ||||
|    glEnd(); | ||||
| } | ||||
|  | ||||
|  | ||||
| static void | ||||
| Display( void ) | ||||
| { | ||||
|    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ); | ||||
|  | ||||
|    glColor3f(1, 1, 1); | ||||
|    if (HaveMultisample) { | ||||
|       glRasterPos2f(-3.1, -1.6); | ||||
|       PrintString("MULTISAMPLE"); | ||||
|    } | ||||
|    glRasterPos2f(-0.8, -1.6); | ||||
|    PrintString("No antialiasing"); | ||||
|    glRasterPos2f(1.6, -1.6); | ||||
|    PrintString("GL_POLYGON_SMOOTH"); | ||||
|  | ||||
|    /* multisample */ | ||||
|    if (HaveMultisample) { | ||||
|       glEnable(GL_DEPTH_TEST); | ||||
|       glEnable(GL_MULTISAMPLE_ARB); | ||||
|       glPushMatrix(); | ||||
|       glTranslatef(-2.5, 0, 0); | ||||
|       glPushMatrix(); | ||||
|       glRotatef(Zrot, 0, 0, 1); | ||||
|       DrawObject(); | ||||
|       glPopMatrix(); | ||||
|       glPopMatrix(); | ||||
|       glDisable(GL_MULTISAMPLE_ARB); | ||||
|       glDisable(GL_DEPTH_TEST); | ||||
|    } | ||||
|  | ||||
|    /* non-aa */ | ||||
|    glEnable(GL_DEPTH_TEST); | ||||
|    glPushMatrix(); | ||||
|    glTranslatef(0, 0, 0); | ||||
|    glPushMatrix(); | ||||
|    glRotatef(Zrot, 0, 0, 1); | ||||
|    DrawObject(); | ||||
|    glPopMatrix(); | ||||
|    glPopMatrix(); | ||||
|    glDisable(GL_DEPTH_TEST); | ||||
|  | ||||
|    /* polygon smooth */ | ||||
|    glEnable(GL_POLYGON_SMOOTH); | ||||
|    glEnable(GL_LINE_SMOOTH); | ||||
|    glEnable(GL_BLEND); | ||||
|    glPushMatrix(); | ||||
|    glTranslatef(2.5, 0, 0); | ||||
|    glPushMatrix(); | ||||
|    glRotatef(Zrot, 0, 0, 1); | ||||
|    DrawObject(); | ||||
|    glPopMatrix(); | ||||
|    glPopMatrix(); | ||||
|    glDisable(GL_LINE_SMOOTH); | ||||
|    glDisable(GL_POLYGON_SMOOTH); | ||||
|    glDisable(GL_BLEND); | ||||
|  | ||||
|    glutSwapBuffers(); | ||||
| } | ||||
|  | ||||
|  | ||||
| static void | ||||
| Reshape( int width, int height ) | ||||
| { | ||||
|    GLfloat ar = (float) width / (float) height; | ||||
|    glViewport( 0, 0, width, height ); | ||||
|    glMatrixMode( GL_PROJECTION ); | ||||
|    glLoadIdentity(); | ||||
|    glOrtho(-2.0*ar, 2.0*ar, -2.0, 2.0, -1.0, 1.0); | ||||
|    glMatrixMode( GL_MODELVIEW ); | ||||
|    glLoadIdentity(); | ||||
| } | ||||
|  | ||||
|  | ||||
| static void | ||||
| Idle( void ) | ||||
| { | ||||
|    Zrot = 0.01 * glutGet(GLUT_ELAPSED_TIME); | ||||
|    glutPostRedisplay(); | ||||
| } | ||||
|  | ||||
|  | ||||
| static void | ||||
| Key( unsigned char key, int x, int y ) | ||||
| { | ||||
|    const GLfloat step = 1.0; | ||||
|    (void) x; | ||||
|    (void) y; | ||||
|    switch (key) { | ||||
|       case 'a': | ||||
|          Anim = !Anim; | ||||
|          if (Anim) | ||||
|             glutIdleFunc(Idle); | ||||
|          else | ||||
|             glutIdleFunc(NULL); | ||||
|          break; | ||||
|       case 'z': | ||||
|          Zrot = (int) (Zrot - step); | ||||
|          break; | ||||
|       case 'Z': | ||||
|          Zrot = (int) (Zrot + step); | ||||
|          break; | ||||
|       case 27: | ||||
|          exit(0); | ||||
|          break; | ||||
|    } | ||||
|    glutPostRedisplay(); | ||||
| } | ||||
|  | ||||
|  | ||||
| static void | ||||
| Init( void ) | ||||
| { | ||||
|    /* GLUT imposes the four samples/pixel requirement */ | ||||
|    int s; | ||||
|    glGetIntegerv(GL_SAMPLES_ARB, &s); | ||||
|    if (!glutExtensionSupported("GL_ARB_multisample") || s < 1) { | ||||
|       printf("Warning: multisample antialiasing not supported.\n"); | ||||
|       HaveMultisample = GL_FALSE; | ||||
|    } | ||||
|    printf("GL_RENDERER = %s\n", (char *) glGetString(GL_RENDERER)); | ||||
|    printf("GL_SAMPLES_ARB = %d\n", s); | ||||
|  | ||||
|    glBlendFunc(GL_SRC_ALPHA, GL_ONE); | ||||
|    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); | ||||
|    glBlendFunc(GL_SRC_ALPHA_SATURATE, GL_ONE); | ||||
| } | ||||
|  | ||||
|  | ||||
| int | ||||
| main( int argc, char *argv[] ) | ||||
| { | ||||
|    glutInit( &argc, argv ); | ||||
|    glutInitWindowPosition( 0, 0 ); | ||||
|    glutInitWindowSize( 600, 300 ); | ||||
|    glutInitDisplayMode( GLUT_RGB | GLUT_ALPHA | GLUT_DOUBLE | | ||||
|                         GLUT_DEPTH | GLUT_MULTISAMPLE ); | ||||
|    glutCreateWindow(argv[0]); | ||||
|    glutReshapeFunc( Reshape ); | ||||
|    glutKeyboardFunc( Key ); | ||||
|    glutDisplayFunc( Display ); | ||||
|    if (Anim) | ||||
|       glutIdleFunc( Idle ); | ||||
|    Init(); | ||||
|    glutMainLoop(); | ||||
|    return 0; | ||||
| } | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: cva.c,v 1.3 2000/11/30 03:06:56 gareth Exp $ */ | ||||
| /* $Id: cva.c,v 1.4 2002/01/16 01:03:25 kschultz Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Trivial CVA test, good for testing driver fastpaths (especially | ||||
| @@ -11,6 +11,9 @@ | ||||
| #include <stdlib.h> | ||||
| #include <stdio.h> | ||||
| #include <string.h> | ||||
| #ifdef _WIN32 | ||||
| #include <windows.h> | ||||
| #endif | ||||
| #define GL_GLEXT_LEGACY | ||||
| #include <GL/glut.h> | ||||
|  | ||||
| @@ -130,7 +133,7 @@ int main( int argc, char **argv ) | ||||
|     */ | ||||
|    string = (char *) glGetString( GL_VERSION ); | ||||
|  | ||||
|    if ( !strstr( string, "1.2" ) ) { | ||||
|    if ( (!strstr( string, "1.2" ))&&(!strstr(string,"1.3"))) { | ||||
|       fprintf( stderr, "This program requires OpenGL 1.2 vertex arrays.\n" ); | ||||
|       exit( -1 ); | ||||
|    } | ||||
|   | ||||
							
								
								
									
										68
									
								
								progs/tests/descrip.mms
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										68
									
								
								progs/tests/descrip.mms
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,68 @@ | ||||
| # Makefile for GLUT-based demo programs for VMS | ||||
| # contributed by Jouk Jansen  joukj@crys.chem.uva.nl | ||||
|  | ||||
|  | ||||
| .first | ||||
| 	define gl [-.include.gl] | ||||
|  | ||||
| .include [-]mms-config. | ||||
|  | ||||
| ##### MACROS ##### | ||||
|  | ||||
| INCDIR = ([-.include],[-.util]) | ||||
| CFLAGS = /include=$(INCDIR)/prefix=all/name=(as_is,short) | ||||
|  | ||||
| .ifdef SHARE | ||||
| GL_LIBS = $(XLIBS) | ||||
| .else | ||||
| GL_LIBS = [-.lib]libGLUT/l,libMesaGLU/l,libMesaGL/l,$(XLIBS) | ||||
| .endif | ||||
|  | ||||
| LIB_DEP = [-.lib]$(GL_LIB) [-.lib]$(GLU_LIB) [-.lib]$(GLUT_LIB) | ||||
|  | ||||
| PROGS = cva.exe,\ | ||||
| 	dinoshade.exe,\ | ||||
| 	fogcoord.exe,\ | ||||
| 	manytex.exe,\ | ||||
| 	multipal.exe,\ | ||||
| 	projtex.exe,\ | ||||
| 	seccolor.exe,\ | ||||
| 	sharedtex.exe,\ | ||||
| 	texline.exe,\ | ||||
| 	texwrap.exe,\ | ||||
| 	vptest1.exe,\ | ||||
| 	vptest2.exe,\ | ||||
| 	vptest3.exe,\ | ||||
| 	vptorus.exe,\ | ||||
| 	vpwarpmesh.exe | ||||
|  | ||||
| ##### RULES ##### | ||||
| .obj.exe : | ||||
| 	cxxlink $(MMS$TARGET_NAME),$(GL_LIBS) | ||||
|  | ||||
| ##### TARGETS ##### | ||||
| default : | ||||
| 	$(MMS)$(MMSQUALIFIERS) $(PROGS) | ||||
|  | ||||
| clean : | ||||
| 	delete *.obj;* | ||||
|  | ||||
| realclean : | ||||
| 	delete $(PROGS) | ||||
| 	delete *.obj;* | ||||
|  | ||||
| cva.exe : cva.obj $(LIB_DEP) | ||||
| dinoshade.exe : dinoshade.obj $(LIB_DEP) | ||||
| fogcoord.exe : fogcoord.obj $(LIB_DEP) | ||||
| manytex.exe : manytex.obj $(LIB_DEP) | ||||
| multipal.exe : multipal.obj $(LIB_DEP) | ||||
| projtex.exe : projtex.obj $(LIB_DEP) | ||||
| seccolor.exe : seccolor.obj $(LIB_DEP) | ||||
| sharedtex.exe : sharedtex.obj $(LIB_DEP) | ||||
| texline.exe : texline.obj $(LIB_DEP) | ||||
| texwrap.exe : texwrap.obj $(LIB_DEP) | ||||
| vptest1.exe : vptest1.obj $(LIB_DEP) | ||||
| vptest2.exe : vptest2.obj $(LIB_DEP) | ||||
| vptest3.exe : vptest3.obj $(LIB_DEP) | ||||
| vptorus.exe : vptorus.obj $(LIB_DEP) | ||||
| vpwarpmesh.exe : vpwarpmesh.obj $(LIB_DEP) | ||||
| @@ -38,6 +38,10 @@ | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
| #include <math.h>       /* for cos(), sin(), and sqrt() */ | ||||
| #ifdef _WIN32 | ||||
| #include <windows.h> | ||||
| #endif | ||||
| #define GL_GLEXT_LEGACY | ||||
| #include <GL/glut.h>    /* OpenGL Utility Toolkit header */ | ||||
|  | ||||
| /* Some <math.h> files do not define M_PI... */ | ||||
|   | ||||
							
								
								
									
										250
									
								
								progs/tests/getprocaddress.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										250
									
								
								progs/tests/getprocaddress.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,250 @@ | ||||
| /* $Id: getprocaddress.c,v 1.6 2002/11/08 15:35:46 brianp Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * Copyright (C) 1999-2002  Brian Paul   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. | ||||
|  */ | ||||
|  | ||||
| /* | ||||
|  * Test that glXGetProcAddress works. | ||||
|  */ | ||||
|  | ||||
| #define GLX_GLXEXT_PROTOTYPES | ||||
|  | ||||
| #include <X11/Xlib.h> | ||||
| #include <X11/Xutil.h> | ||||
| #include <GL/gl.h> | ||||
| #include <GL/glx.h> | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
|  | ||||
|  | ||||
| static GLboolean | ||||
| test_ActiveTextureARB(void *func) | ||||
| { | ||||
|    PFNGLACTIVETEXTUREARBPROC activeTexture = (PFNGLACTIVETEXTUREARBPROC) func; | ||||
|    GLint t; | ||||
|    GLboolean pass; | ||||
|    (*activeTexture)(GL_TEXTURE1_ARB); | ||||
|    glGetIntegerv(GL_ACTIVE_TEXTURE_ARB, &t); | ||||
|    pass = (t == GL_TEXTURE1_ARB); | ||||
|    (*activeTexture)(GL_TEXTURE0_ARB);  /* restore default */ | ||||
|    return pass; | ||||
| } | ||||
|  | ||||
|  | ||||
| static GLboolean | ||||
| test_SecondaryColor3fEXT(void *func) | ||||
| { | ||||
|    PFNGLSECONDARYCOLOR3FEXTPROC secColor3f = (PFNGLSECONDARYCOLOR3FEXTPROC) func; | ||||
|    GLfloat color[4]; | ||||
|    GLboolean pass; | ||||
|    (*secColor3f)(1.0, 1.0, 0.0); | ||||
|    glGetFloatv(GL_CURRENT_SECONDARY_COLOR_EXT, color); | ||||
|    pass = (color[0] == 1.0 && color[1] == 1.0 && color[2] == 0.0); | ||||
|    (*secColor3f)(0.0, 0.0, 0.0);  /* restore default */ | ||||
|    return pass; | ||||
| } | ||||
|  | ||||
|  | ||||
| static GLboolean | ||||
| test_ActiveStencilFaceEXT(void *func) | ||||
| { | ||||
|    PFNGLACTIVESTENCILFACEEXTPROC activeFace = (PFNGLACTIVESTENCILFACEEXTPROC) func; | ||||
|    GLint face; | ||||
|    GLboolean pass; | ||||
|    (*activeFace)(GL_BACK); | ||||
|    glGetIntegerv(GL_ACTIVE_STENCIL_FACE_EXT, &face); | ||||
|    pass = (face == GL_BACK); | ||||
|    (*activeFace)(GL_FRONT);  /* restore default */ | ||||
|    return pass; | ||||
| } | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
|  * The following header file is auto-generated with Python.  The Python | ||||
|  * script looks in this file for functions named "test_*" as seen above. | ||||
|  */ | ||||
| #include "getproclist.h" | ||||
|  | ||||
|  | ||||
|  | ||||
| static int | ||||
| extension_supported(const char *haystack, const char *needle) | ||||
| { | ||||
|    if (strstr(haystack, needle)) | ||||
|       return 1; | ||||
|    else | ||||
|       return 0; | ||||
| } | ||||
|  | ||||
|  | ||||
| static void | ||||
| check_functions( const char *extensions ) | ||||
| { | ||||
|    struct name_test_pair *entry; | ||||
|    int failures = 0, passes = 0; | ||||
|    int totalFail = 0, totalPass = 0; | ||||
|    int doTests; | ||||
|  | ||||
|    for (entry = functions; entry->name; entry++) { | ||||
|       if (entry->name[0] == '-') { | ||||
|          if (entry->name[1] == '1') { | ||||
|             doTests = 1; | ||||
|          } | ||||
|          else { | ||||
|             /* check if the named extension is available */ | ||||
|             doTests = extension_supported(extensions, entry->name+1); | ||||
|          } | ||||
|          if (doTests) | ||||
|             printf("Testing %s functions\n", entry->name + 1); | ||||
|          totalFail += failures; | ||||
|          totalPass += passes; | ||||
|          failures = 0; | ||||
|          passes = 0; | ||||
|       } | ||||
|       else if (doTests) { | ||||
|          void *funcPtr = (void *) glXGetProcAddressARB((const GLubyte *) entry->name); | ||||
|          if (funcPtr) { | ||||
|             if (entry->test) { | ||||
|                GLboolean b; | ||||
|                printf("   Validating %s:", entry->name); | ||||
|                b = (*entry->test)(funcPtr); | ||||
|                if (b) { | ||||
|                   printf(" Pass\n"); | ||||
|                   passes++; | ||||
|                } | ||||
|                else { | ||||
|                   printf(" FAIL!!!\n"); | ||||
|                   failures++; | ||||
|                } | ||||
|             } | ||||
|             else { | ||||
|                passes++; | ||||
|             } | ||||
|          } | ||||
|          else { | ||||
|             printf("   glXGetProcAddress(%s) failed!\n", entry->name); | ||||
|             failures++; | ||||
|          } | ||||
|       } | ||||
|  | ||||
|       if (doTests && (!(entry+1)->name || (entry+1)->name[0] == '-')) { | ||||
|          if (failures > 0) { | ||||
|             printf("   %d failed.\n", failures); | ||||
|          } | ||||
|          if (passes > 0) { | ||||
|             printf("   %d passed.\n", passes); | ||||
|          } | ||||
|       } | ||||
|    } | ||||
|    totalFail += failures; | ||||
|    totalPass += passes; | ||||
|  | ||||
|    printf("-----------------------------\n"); | ||||
|    printf("Total: %d pass  %d fail\n", totalPass, totalFail); | ||||
| } | ||||
|  | ||||
|  | ||||
|  | ||||
| static void | ||||
| print_screen_info(Display *dpy, int scrnum, Bool allowDirect) | ||||
| { | ||||
|    Window win; | ||||
|    int attribSingle[] = { | ||||
|       GLX_RGBA, | ||||
|       GLX_RED_SIZE, 1, | ||||
|       GLX_GREEN_SIZE, 1, | ||||
|       GLX_BLUE_SIZE, 1, | ||||
|       None }; | ||||
|    int attribDouble[] = { | ||||
|       GLX_RGBA, | ||||
|       GLX_RED_SIZE, 1, | ||||
|       GLX_GREEN_SIZE, 1, | ||||
|       GLX_BLUE_SIZE, 1, | ||||
|       GLX_DOUBLEBUFFER, | ||||
|       None }; | ||||
|  | ||||
|    XSetWindowAttributes attr; | ||||
|    unsigned long mask; | ||||
|    Window root; | ||||
|    GLXContext ctx; | ||||
|    XVisualInfo *visinfo; | ||||
|    int width = 100, height = 100; | ||||
|  | ||||
|    root = RootWindow(dpy, scrnum); | ||||
|  | ||||
|    visinfo = glXChooseVisual(dpy, scrnum, attribSingle); | ||||
|    if (!visinfo) { | ||||
|       visinfo = glXChooseVisual(dpy, scrnum, attribDouble); | ||||
|       if (!visinfo) { | ||||
|          fprintf(stderr, "Error: couldn't find RGB GLX visual\n"); | ||||
|          return; | ||||
|       } | ||||
|    } | ||||
|  | ||||
|    attr.background_pixel = 0; | ||||
|    attr.border_pixel = 0; | ||||
|    attr.colormap = XCreateColormap(dpy, root, visinfo->visual, AllocNone); | ||||
|    attr.event_mask = StructureNotifyMask | ExposureMask; | ||||
|    mask = CWBackPixel | CWBorderPixel | CWColormap | CWEventMask; | ||||
|    win = XCreateWindow(dpy, root, 0, 0, width, height, | ||||
| 		       0, visinfo->depth, InputOutput, | ||||
| 		       visinfo->visual, mask, &attr); | ||||
|  | ||||
|    ctx = glXCreateContext( dpy, visinfo, NULL, allowDirect ); | ||||
|    if (!ctx) { | ||||
|       fprintf(stderr, "Error: glXCreateContext failed\n"); | ||||
|       XDestroyWindow(dpy, win); | ||||
|       return; | ||||
|    } | ||||
|  | ||||
|    if (glXMakeCurrent(dpy, win, ctx)) { | ||||
|       check_functions( (const char *) glGetString(GL_EXTENSIONS) ); | ||||
|    } | ||||
|    else { | ||||
|       fprintf(stderr, "Error: glXMakeCurrent failed\n"); | ||||
|    } | ||||
|  | ||||
|    glXDestroyContext(dpy, ctx); | ||||
|    XDestroyWindow(dpy, win); | ||||
| } | ||||
|  | ||||
|  | ||||
| int | ||||
| main(int argc, char *argv[]) | ||||
| { | ||||
|    char *displayName = NULL; | ||||
|    Display *dpy; | ||||
|  | ||||
|    dpy = XOpenDisplay(displayName); | ||||
|    if (!dpy) { | ||||
|       fprintf(stderr, "Error: unable to open display %s\n", displayName); | ||||
|       return -1; | ||||
|    } | ||||
|  | ||||
|    print_screen_info(dpy, 0, GL_TRUE); | ||||
|  | ||||
|    XCloseDisplay(dpy); | ||||
|  | ||||
|    return 0; | ||||
| } | ||||
							
								
								
									
										96
									
								
								progs/tests/getprocaddress.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										96
									
								
								progs/tests/getprocaddress.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,96 @@ | ||||
| #!/usr/bin/env python | ||||
|  | ||||
| # $Id: getprocaddress.py,v 1.2 2002/11/08 15:49:31 brianp Exp $ | ||||
|  | ||||
| # Helper for the getprocaddress.c test. | ||||
|  | ||||
|  | ||||
| import re, string | ||||
|  | ||||
|  | ||||
| def PrintHead(): | ||||
| 	print """ | ||||
| struct name_test_pair { | ||||
|    const char *name; | ||||
|    GLboolean (*test)(void *); | ||||
| }; | ||||
|     | ||||
| static struct name_test_pair functions[] = {""" | ||||
|  | ||||
|  | ||||
| def PrintTail(): | ||||
| 	print""" | ||||
|    { NULL, NULL } | ||||
| }; | ||||
| """ | ||||
|  | ||||
|  | ||||
| def HaveTest(function): | ||||
| 	testFuncs = [ | ||||
| 		"glActiveTextureARB", | ||||
| 		"glSampleCoverageARB" | ||||
| 	] | ||||
| 	if function in testFuncs: | ||||
| 		return 1 | ||||
| 	else: | ||||
| 		return 0 | ||||
|  | ||||
|  | ||||
| def FindTestFunctions(): | ||||
| 	"""Scan getprocaddress.c for lines that start with "test_" to find | ||||
| 	extension function tests.  Return a list of names found.""" | ||||
| 	functions = [] | ||||
| 	f = open("getprocaddress.c") | ||||
| 	if not f: | ||||
| 		return functions | ||||
| 	for line in f.readlines(): | ||||
| 		v = re.search("^test_([a-zA-Z0-9]+)", line) | ||||
| 		if v: | ||||
| 			func = v.group(1) | ||||
| 			functions.append(func) | ||||
| 	f.close | ||||
| 	return functions | ||||
|  | ||||
|  | ||||
| def PrintFunctions(specFile, tests): | ||||
|  | ||||
| 	# init some vars | ||||
| 	prevCategory = '' | ||||
| 	funcName = '' | ||||
|  | ||||
| 	f = open(specFile) | ||||
| 	for line in f.readlines(): | ||||
|  | ||||
| 		# split line into tokens | ||||
| 		tokens = string.split(line) | ||||
|  | ||||
| 		if len(tokens) > 0 and line[0] != '#': | ||||
|  | ||||
| 			if tokens[0] == 'name': | ||||
| 				if funcName != '': | ||||
| 					if category != prevCategory: | ||||
| 						print '   { "-%s", NULL},' % category | ||||
| 						prevCategory = category | ||||
|  | ||||
| 					if funcName in tests: | ||||
| 						test = "test_%s" % funcName | ||||
| 					else: | ||||
| 						test = "NULL" | ||||
| 					print '   { "gl%s", %s },' % (funcName, test) | ||||
| 				funcName = tokens[1] | ||||
|  | ||||
| 			elif tokens[0] == 'category': | ||||
| 				category = tokens[1] | ||||
|  | ||||
| 			#endif | ||||
| 		#endif | ||||
| 	#endfor | ||||
| #enddef | ||||
|  | ||||
|  | ||||
| tests = FindTestFunctions() | ||||
| PrintHead() | ||||
| PrintFunctions("../bin/APIspec", tests) | ||||
| PrintTail() | ||||
|  | ||||
|  | ||||
							
								
								
									
										177
									
								
								progs/tests/jkrahntest.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										177
									
								
								progs/tests/jkrahntest.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,177 @@ | ||||
| /* $Id: jkrahntest.c,v 1.1 2002/06/16 03:57:48 brianp Exp $ */ | ||||
|  | ||||
| /* This is a good test for glXSwapBuffers on non-current windows, | ||||
|  * and the glXCopyContext function.  Fixed several Mesa/DRI bugs with | ||||
|  * this program on 15 June 2002. | ||||
|  * | ||||
|  * Joe's comments follow: | ||||
|  * | ||||
|  * I have tried some different approaches for being able to | ||||
|  * draw to multiple windows using one context, or a copied | ||||
|  * context. Mesa/indirect rendering works to use one context | ||||
|  * for multiple windows, but crashes with glXCopyContext. | ||||
|  * DRI is badly broken, at least for ATI. | ||||
|  * | ||||
|  * I also noticed that glXMakeCurrent allows a window and context | ||||
|  * from different visuals to be attached (haven't tested recently). | ||||
|  * | ||||
|  * Joe Krahn  <jkrahn@nc.rr.com> | ||||
|  */ | ||||
|  | ||||
| #include <GL/glx.h> | ||||
| #include <GL/gl.h> | ||||
| #include <string.h> | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <unistd.h> | ||||
| #include <math.h> | ||||
| #define M_PI 3.14159 | ||||
| #define DEGTOR (M_PI/180.0) | ||||
|  | ||||
| static int AttributeList[] = { GLX_RGBA, GLX_DOUBLEBUFFER, None }; | ||||
|  | ||||
| int main(int argc, char **argv) | ||||
| { | ||||
|     Window win1, win2; | ||||
|     XVisualInfo *vi; | ||||
|     XSetWindowAttributes swa; | ||||
|     Display *dpy; | ||||
|     GLXContext ctx1, ctx2; | ||||
|     float angle; | ||||
|     int test; | ||||
|  | ||||
|     if (argc < 2) { | ||||
|        fprintf(stderr, "This program tests GLX context switching.\n"); | ||||
|        fprintf(stderr, "Usage: cxbug <n>\n"); | ||||
|        fprintf(stderr, "Where n is:\n"); | ||||
|        fprintf(stderr, "\t1) Use two contexts and swap only when the context is current (typical case).\n"); | ||||
|        fprintf(stderr, "\t2) Use two contexts and swap at the same time.\n"); | ||||
|        fprintf(stderr, "\t\t Used to crash Mesa & nVidia, and DRI artifacts. Seems OK now.\n"); | ||||
|        fprintf(stderr, "\t3) Use one context, but only swap when a context is current.\n"); | ||||
|        fprintf(stderr, "\t\t Serious artifacts for DRI at least with ATI.\n"); | ||||
|        fprintf(stderr, "\t4) Use one context, swap both windows at the same time, so the left\n"); | ||||
|        fprintf(stderr, "\t\t window has no context at swap time. Severe artifacts for DRI.\n"); | ||||
|        fprintf(stderr, "\t5) Use two contexts, copying one to the other when switching windows.\n"); | ||||
|        fprintf(stderr, "\t\t DRI gives an error, indirect rendering crashes server.\n"); | ||||
|  | ||||
| 	exit(1); | ||||
|     } | ||||
|     test = atoi(argv[1]); | ||||
|  | ||||
|     /* get a connection */ | ||||
|     dpy = XOpenDisplay(NULL); | ||||
|  | ||||
|     /* Get an appropriate visual */ | ||||
|     vi = glXChooseVisual(dpy, DefaultScreen(dpy), AttributeList); | ||||
|     if (vi == 0) { | ||||
| 	fprintf(stderr, "No matching visuals found.\n"); | ||||
| 	exit(-1); | ||||
|     } | ||||
|  | ||||
|     /* Create two GLX contexts, with list sharing */ | ||||
|     ctx1 = glXCreateContext(dpy, vi, 0, True); | ||||
|     ctx2 = glXCreateContext(dpy, vi, ctx1, True); | ||||
|  | ||||
|     /* create a colormap */ | ||||
|     swa.colormap = XCreateColormap(dpy, RootWindow(dpy, vi->screen), | ||||
|        vi->visual, AllocNone); | ||||
|     swa.border_pixel = 0; | ||||
|  | ||||
|     /* Create two windows */ | ||||
|     win1 = XCreateWindow(dpy, RootWindow(dpy, vi->screen), | ||||
|        10, 10, 200, 200, | ||||
|        0, vi->depth, InputOutput, vi->visual, | ||||
|        CWBorderPixel | CWColormap, &swa); | ||||
|     XStoreName(dpy, win1, "Test [L]"); | ||||
|     XMapWindow(dpy, win1); | ||||
|     XMoveWindow(dpy, win1, 10, 10); /* Initial requested x,y may not be honored */ | ||||
|    { | ||||
|       XSizeHints sizehints; | ||||
|       static const char *name = "window"; | ||||
|       sizehints.x = 10; | ||||
|       sizehints.y = 10; | ||||
|       sizehints.width  = 200; | ||||
|       sizehints.height = 200; | ||||
|       sizehints.flags = USSize | USPosition; | ||||
|       XSetNormalHints(dpy, win1, &sizehints); | ||||
|       XSetStandardProperties(dpy, win1, name, name, | ||||
|                               None, (char **)NULL, 0, &sizehints); | ||||
|    } | ||||
|  | ||||
|  | ||||
|     win2 = XCreateWindow(dpy, RootWindow(dpy, vi->screen), | ||||
|        250, 10, 200, 200, | ||||
|        0, vi->depth, InputOutput, vi->visual, | ||||
|        CWBorderPixel | CWColormap, &swa); | ||||
|     XStoreName(dpy, win1, "Test [R]"); | ||||
|     XMapWindow(dpy, win2); | ||||
|     XMoveWindow(dpy, win2, 260, 10); | ||||
|    { | ||||
|       XSizeHints sizehints; | ||||
|       static const char *name = "window"; | ||||
|       sizehints.x = 10; | ||||
|       sizehints.y = 10; | ||||
|       sizehints.width  = 200; | ||||
|       sizehints.height = 200; | ||||
|       sizehints.flags = USSize | USPosition; | ||||
|       XSetNormalHints(dpy, win2, &sizehints); | ||||
|       XSetStandardProperties(dpy, win2, name, name, | ||||
|                               None, (char **)NULL, 0, &sizehints); | ||||
|    } | ||||
|  | ||||
|  | ||||
|     /* Now draw some spinning things */ | ||||
|     for (angle = 0; angle < 360*4; angle += 10.0) { | ||||
| 	/* Connect the context to window 1 */ | ||||
| 	glXMakeCurrent(dpy, win1, ctx1); | ||||
|  | ||||
| 	/* Clear and draw in window 1 */ | ||||
| 	glDrawBuffer(GL_BACK); | ||||
| 	glClearColor(1, 1, 0, 1); | ||||
| 	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); | ||||
| 	glColor3f(1, 0, 0); | ||||
| 	glBegin(GL_TRIANGLES); | ||||
| 	glVertex2f(0, 0); | ||||
| 	glVertex2f(cos(angle * DEGTOR), sin(angle * DEGTOR)); | ||||
| 	glVertex2f(cos((angle + 20.0) * DEGTOR), | ||||
| 	   sin((angle + 20.0) * DEGTOR)); | ||||
| 	glEnd(); | ||||
|         glFlush(); | ||||
|  | ||||
| 	if (test == 1 || test == 3 || test == 5) | ||||
| 	    glXSwapBuffers(dpy, win1); | ||||
|  | ||||
| 	if (test == 5) | ||||
| 	    glXCopyContext(dpy, ctx1, ctx2, GL_ALL_ATTRIB_BITS); | ||||
| 	/* Connect the context to window 2 */ | ||||
| 	if (test == 3 || test == 4) { | ||||
| 	    glXMakeCurrent(dpy, win2, ctx1); | ||||
| 	} else { | ||||
| 	    glXMakeCurrent(dpy, win2, ctx2); | ||||
| 	} | ||||
|  | ||||
| 	/* Clear and draw in window 2 */ | ||||
| 	glDrawBuffer(GL_BACK); | ||||
| 	glClearColor(0, 0, 1, 1); | ||||
| 	glClear(GL_COLOR_BUFFER_BIT); | ||||
| 	glColor3f(1, 1, 0); | ||||
| 	glBegin(GL_TRIANGLES); | ||||
| 	glVertex2f(0, 0); | ||||
| 	glVertex2f(cos(angle * DEGTOR), sin(angle * DEGTOR)); | ||||
| 	glVertex2f(cos((angle + 20.0) * DEGTOR), | ||||
| 	   sin((angle + 20.0) * DEGTOR)); | ||||
| 	glEnd(); | ||||
|         glFlush(); | ||||
|  | ||||
| 	/* Swap buffers */ | ||||
| 	if (test == 2 || test == 4) | ||||
| 	    glXSwapBuffers(dpy, win1); | ||||
| 	glXSwapBuffers(dpy, win2); | ||||
|  | ||||
| 	/* wait a while */ | ||||
| 	glXWaitX(); | ||||
|         usleep(20000); | ||||
|     } | ||||
|  | ||||
|     return 0; | ||||
| } | ||||
| @@ -1,4 +1,4 @@ | ||||
| /* $Id: manytex.c,v 1.3 2000/11/09 16:53:26 brianp Exp $ */ | ||||
| /* $Id: manytex.c,v 1.4 2002/10/18 17:47:36 kschultz Exp $ */ | ||||
|  | ||||
| /* | ||||
|  * test handling of many texture maps | ||||
| @@ -28,7 +28,7 @@ static GLboolean MipMap = GL_FALSE; | ||||
| static GLboolean LinearFilter = GL_FALSE; | ||||
| static GLboolean RandomSize = GL_FALSE; | ||||
| static GLint Rows, Columns; | ||||
| static GLuint LowPriorityCount = 0; | ||||
| static GLint LowPriorityCount = 0; | ||||
|  | ||||
|  | ||||
| static void Idle( void ) | ||||
|   | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user