iBet uBet web content aggregator. Adding the entire web to your favor.
iBet uBet web content aggregator. Adding the entire web to your favor.



L2luZmluaXRvLz9hY3Rpb249ZWRpdCZ4PWh0dHAlM0ElMkYlMkZlcy53aWtpcGVkaWEub3JnJTJGdyUyRmluZGV4LnBocCUzRnRpdGxlJTNET3BlbkdM. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

1. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

2. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

3. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

4. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

5. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

6. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

7. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

8. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

9. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

10. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

11. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

12. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

13. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

14. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

15. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

16. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

17. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

18. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

19. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

20. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

21. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

22. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

23. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

24. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

25. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

26. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

27. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

28. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

29. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

30. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

31. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

32. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

33. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

34. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

35. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

36. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

37. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

38. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

39. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

40. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

41. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

42. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

43. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

44. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

45. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

46. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

47. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

48. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

49. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

50. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

51. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

52. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

53. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

54. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

55. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

56. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

57. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

58. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

59. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

60. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

61. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

62. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

63. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

64. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

65. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

66. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

67. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

68. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

69. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

70. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

71. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

72. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

73. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

74. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

75. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

76. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

77. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

78. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

79. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

80. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

81. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

82. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

83. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

84. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

85. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

86. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

87. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

88. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

89. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

90. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

91. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

92. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

93. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

94. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

95. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

96. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

97. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

98. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

99. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

100. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

101. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

102. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

103. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

104. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

105. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

106. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

107. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

108. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

109. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

110. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

111. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

112. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

113. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

114. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

115. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

116. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

117. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

118. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

119. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

120. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

121. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

122. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

123. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

124. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

125. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

126. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

127. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

128. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

129. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

130. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

131. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

132. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

133. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

134. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

135. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

136. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

137. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

138. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

139. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

140. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

141. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

142. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

143. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

144. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

145. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

146. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

147. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

148. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

149. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

150. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

151. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

152. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

153. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

154. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

155. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

156. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

157. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

158. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

159. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

160. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

161. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

162. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

163. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

164. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

165. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

166. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

167. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

168. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

169. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

170. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

171. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

172. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

173. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

174. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

175. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

176. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

177. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

178. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

179. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

180. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

181. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

182. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

183. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

184. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

185. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

186. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

187. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

188. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

189. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

190. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

191. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

192. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

193. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

194. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

195. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

196. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

197. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

198. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

199. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

200. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

201. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

202. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

203. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

204. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

205. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

206. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

207. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

208. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

209. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

210. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

211. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

212. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

213. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

214. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

215. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

216. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

217. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

218. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

219. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

220. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

221. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

222. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

223. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

224. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

225. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

226. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

227. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

228. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

229. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

230. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

231. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

232. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

233. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

234. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

235. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

236. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

237. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

238. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

239. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

240. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

241. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

242. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

243. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

244. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

245. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

246. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

247. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

248. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

249. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

250. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

251. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

252. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

253. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

254. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

255. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

256. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

257. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

258. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

259. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

260. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

261. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

262. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

263. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

264. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

265. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

266. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

267. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

268. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

269. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

270. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

271. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

272. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

273. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

274. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

275. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

276. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

277. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

278. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

279. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

280. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

281. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

282. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

283. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

284. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

285. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

286. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

287. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

288. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

289. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

290. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

291. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

292. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

293. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

294. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

295. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

296. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

297. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

298. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

299. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

300. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

301. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

302. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

303. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

304. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

305. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

306. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

307. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

308. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

309. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

310. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

311. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

312. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

313. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

314. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

315. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

316. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

317. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

318. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

319. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

320. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

321. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

322. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

323. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

324. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

325. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

326. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

327. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

328. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

329. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

330. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

331. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

332. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

333. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

334. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

335. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

336. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

337. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

338. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

339. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

340. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

341. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

342. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

343. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

344. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

345. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

346. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

347. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

348. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

349. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

350. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

351. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

352. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

353. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

354. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

355. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

356. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

357. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

358. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

359. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

360. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

361. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

362. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

363. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

364. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

365. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

366. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

367. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

368. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

369. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

370. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

371. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

372. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

373. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

374. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

375. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

376. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

377. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

378. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

379. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

380. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

381. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

382. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

383. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

384. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

385. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

386. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

387. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

388. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

389. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

390. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

391. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

392. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

393. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

394. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

395. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

396. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

397. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

398. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

399. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

400. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

401. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

402. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

403. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

404. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

405. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

406. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

407. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

408. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

409. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

410. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

411. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

412. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

413. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

414. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

415. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

416. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

417. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

418. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

419. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

420. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

421. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

422. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

423. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

424. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

425. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

426. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

427. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

428. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

429. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

430. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

431. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

432. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

433. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

434. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

435. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

436. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

437. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

438. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

439. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

440. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

441. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

442. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

443. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

444. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

445. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

446. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

447. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

448. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

449. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

450. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

451. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

452. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

453. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

454. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

455. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

456. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

457. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

458. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

459. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

460. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

461. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

462. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

463. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

464. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

465. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

466. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

467. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

468. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

469. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

470. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

471. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

472. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

473. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

474. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

475. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

476. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

477. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

478. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

479. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

480. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

481. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

482. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

483. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

484. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

485. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

486. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

487. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

488. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

489. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

490. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

491. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

492. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

493. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

494. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

495. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

496. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

497. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

498. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

499. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

500. /infinito/?action=edit&x=http%3A%2F%2Fes.wikipedia.org%2Fw%2Findex.php%3Ftitle%3DOpenGL

Link to original content: http://es.wikipedia.org/w/index.php?title=OpenGL
OpenGL - Wikipedia, la enciclopedia libre Ir al contenido

OpenGL

De Wikipedia, la enciclopedia libre
OpenGL ES 3
Información general
Tipo de programa API
Autor Silicon Graphics
Desarrollador Khronos Group
Lanzamiento inicial 01 de 1992
Licencia Diversas
Información técnica
Programado en C
Versiones
Última versión estable 4.6[1]( 31 de julio de 2017 (7 años, 3 meses y 16 días))
Lanzamientos
IRIS GL y PHIGS
OpenGL ES 3
Vulkan
Enlaces

OpenGL (Open Graphics Library) es una especificación estándar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan gráficos 2D y 3D. La interfaz consiste en más de 250 funciones diferentes que pueden usarse para dibujar escenas tridimensionales complejas a partir de primitivas geométricas simples, tales como puntos, líneas y triángulos. Fue desarrollada originalmente por Silicon Graphics Inc. (SGI) en 1992[2]​ y se usa ampliamente en CAD, realidad virtual, representación científica, visualización de información y simulación de vuelo. También se usa en desarrollo de videojuegos, donde compite con Direct3D en plataformas Microsoft Windows.

Especificación

[editar]

Fundamentalmente OpenGL es una especificación, es decir, un documento que describe un conjunto de funciones y el comportamiento exacto que deben tener. Partiendo de ella, los fabricantes de hardware crean implementaciones, que son bibliotecas de funciones que se ajustan a los requisitos de la especificación, utilizando aceleración hardware cuando es posible. Dichas implementaciones deben superar unos tests de conformidad para que sus fabricantes puedan calificar su implementación como conforme a OpenGL y para poder usar el logotipo oficial de OpenGL.

Hay implementaciones eficientes de OpenGL para Mac OS, Microsoft Windows, GNU/Linux, varias plataformas Unix y PlayStation 4. Existen también varias implementaciones en software que permiten ejecutar aplicaciones que dependen de OpenGL sin soporte de aceleración hardware. Es destacable la biblioteca de software libre / código abierto Mesa 3D, una API de gráficos sin aceleración hardware y completamente compatible con OpenGL. Sin embargo, para evitar los costes de la licencia requerida para ser denominada formalmente como una implementación de OpenGL, afirma ser simplemente una API muy similar.

La especificación OpenGL era revisada por el OpenGL Architecture Review Board (ARB), fundado en 1992. El ARB estaba formado por un conjunto de empresas interesadas en la creación de una API consistente y ampliamente disponible. Microsoft, uno de los miembros fundadores, abandonó el proyecto en 2003.

El 21 de septiembre de 2006 se anunció que el control de OpenGL pasaría del ARB al Grupo Khronos.[3]​ Con ello se intentaba mejorar el marketing de OpenGL y eliminar las barreras entre el desarrollo de OpenGL y OpenGL ES.[4]​ ARB se convirtió dentro de Khronos en el OpenGL ARB Working Group.[5]​ El subgrupo de Khronos que gestiona la especificación de OpenGL se denomina OpenGL ARB Working Group.[6]​ Para una relación de los miembros que componen el OpenGL ARB Working Group, véase el apartado Miembros del Grupo Khronos. El gran número de empresas con variados intereses que han pasado tanto por el antiguo ARB como por el grupo actual han hecho de OpenGL una API de propósito general con un amplio rango de posibilidades.

Mark Segal y Kurt Akeley fueron los autores de la especificación original de OpenGL. Chris Frazier fue el editor de la versión 1.1. Jon Leech ha editado las versiones desde 1.2 hasta la presente 3.0.[7]

Las nuevas versiones de las especificaciones de OpenGL son lanzadas por el Khronos Group, cada una de las cuales extiende la API para soportar varias nuevas características. Los detalles de cada versión se deciden por consenso entre los miembros del Grupo, incluidos los fabricantes de tarjetas gráficas, diseñadores de sistemas operativos y empresas de tecnología en general como Mozilla y Google.[8]

Además de las características requeridas por la API principal, los proveedores de unidades de procesamiento gráfico (GPU) pueden proporcionar funcionalidad adicional en forma de extensiones. Las extensiones pueden introducir nuevas funciones y nuevos constantes, y pueden relajar o eliminar restricciones en las funciones existentes de OpenGL. Los proveedores pueden usar extensiones para exponer APIs personalizadas sin necesidad de soporte de otros proveedores o del Khronos Group en su conjunto, lo cual aumenta considerablemente la flexibilidad de OpenGL. Todas las extensiones se recopilan y se definen en el Registro de OpenGL.[9]

Diseño

[editar]

OpenGL tiene dos propósitos esenciales:

  • Ocultar la complejidad de la interfaz con las diferentes tarjetas gráficas, presentando al programador una API única y uniforme.
  • Ocultar las diferentes capacidades de las diversas plataformas hardware, requiriendo que todas las implementaciones soporten la funcionalidad completa de OpenGL (utilizando emulación software si fuese necesario).

El funcionamiento básico de OpenGL consiste en aceptar primitivas tales como puntos, líneas y polígonos, y convertirlas en píxeles. Este proceso es realizado por una pipeline gráfica conocida como Máquina de estados de OpenGL.[10]​ La mayor parte de los comandos de OpenGL bien emiten primitivas a la pipeline gráfica o bien configuran cómo la pipeline procesa dichas primitivas. Hasta la aparición de la versión 2.0 cada etapa de la pipeline ejecutaba una función prefijada, resultando poco configurable. A partir de la versión 2.0 algunas etapas son programables usando un lenguaje de programación llamado GLSL.

OpenGL es una API basada en procedimientos de bajo nivel que requiere que el programador dicte los pasos exactos necesarios para renderizar una escena. Esto contrasta con las API descriptivas, donde un programador sólo debe describir la escena y puede dejar que la biblioteca controle los detalles para representarla. El diseño de bajo nivel de OpenGL requiere que los programadores conozcan en profundidad la pipeline gráfica, a cambio de darles libertad para implementar algoritmos gráficos novedosos.

OpenGL ha influido en el desarrollo de las tarjetas gráficas, promocionando un nivel básico de funcionalidad que actualmente es común en el hardware comercial; algunas de esas contribuciones son:

  • Primitivas básicas de puntos, líneas y polígonos rasterizados.
Proceso en la pipeline de gráficos.

Una descripción somera del proceso en la pipeline gráfica podría ser:[11]

  1. Evaluación, si procede, de las funciones polinomiales que definen ciertas entradas, como las superficies NURBS, aproximando curvas y la geometría de la superficie.
  2. Operaciones por vértices, transformándolos, iluminándolos según su material y recortando partes no visibles de la escena para producir un volumen de visión.
  3. Rasterización, o conversión de la información previa en píxeles. Los polígonos son representados con el color adecuado mediante algoritmos de interpolación.
  4. Operaciones por fragmentos o segmentos, como actualizaciones según valores venideros o ya almacenados de profundidad y de combinaciones de colores, entre otros.
  5. Por último, los fragmentos son volcados en el Frame buffer.

Muchas tarjetas gráficas actuales proporcionan una funcionalidad superior a la básica aquí expuesta, pero las nuevas características generalmente son mejoras de esta pipeline básica más que cambios revolucionarios de ella.

Ejemplo

[editar]

Nota: Cuidado, este ejemplo es únicamente válido con OpenGL 2.1 y versiones anteriores. Hace uso intensivo de funciones actualmente anticuadas.

Primero, limpiamos el buffer de color para empezar en un canvas negro:

glClear( GL_COLOR_BUFFER_BIT );

Se establece la matriz modelview, que controla la posición de la cámara respecto a las primitivas que renderizamos. La retrasamos 3 unidades en el eje Z, dejándola apuntando hacia el origen:

glMatrixMode( GL_MODELVIEW ); /* Los comandos para matriz modificarán ''modelview'' */
glLoadIdentity(); /* Inicializar ''modelview'' */
glTranslatef( 0, 0, -3 ); /* Desplazar 3 unidades en el eje Z */

La matriz projection controla la perspectiva aplicada a las primitivas; se utiliza de forma similar a la anterior:

glMatrixMode( GL_PROJECTION ); /* Los comandos para matriz modificarán ''projection'' */
glLoadIdentity(); /* Inicializar ''projection'' */
glFrustum( -1, 1, -1, 1, 1, 1000 ); /* Aplicar una proyección en perspectiva */

Por último, se dibuja un polígono (un cuadrado verde orientado en el plano XY):

glBegin( GL_POLYGON ); /* Inicio de polígono */
glColor3f( 0, 1, 0 ); /* Establecer color actual a verde */
glVertex3f( -1, -1, 0 ); /* Establecer un vértice */
glVertex3f( -1, 1, 0 ); /* Establecer un vértice */
glVertex3f( 1, 1, 0 ); /* Establecer un vértice */
glVertex3f( 1, -1, 0 ); /* Establecer un vértice */
glEnd(); /* Fin de polígono */

Historia

[editar]

En los años 1980 el desarrollo de software que fuese compatible con un amplio rango de hardware gráfico era un verdadero reto para los desarrolladores. Había que tratar con interfaces muy diferentes y escribir drivers específicos para cada tipo de hardware, resultando muy costoso; por ello, se subcontrataban equipos de programadores para agilizar el desarrollo. Dado que cada equipo trabajaba por separado en sus interfaces, se producía mucho código redundante. Además, era un proceso caro, por lo que varios grupos innovadores aceptaron el reto de encontrar un método mejor.

Al principio de los años 1990 SGI era un grupo de referencia en gráficos 3D para estaciones de trabajo. Suya era la API IRIS GL,[12]​ considerada puntera en el campo y estándar de facto, llegando a eclipsar a PHIGS, basada en estándares abiertos. IRIS GL se consideraba más fácil de usar y, lo más importante, soportaba renderizado en modo inmediato. Además, PHIGS, aparte de su mayor dificultad, fue considerada inferior a IRIS GL respecto a funcionalidad y capacidad.

La competencia de SGI (Sun Microsystems, Hewlett-Packard e IBM, entre otros) fue capaz de introducir en el mercado hardware 3D compatible con el estándar PHIGS mediante extensiones. Esto fue reduciendo la cuota de mercado de SGI conforme iban entrando diferentes proveedores en el mercado. Por todo ello, en un intento de fortalecer su influencia en el mercado, SGI decidió convertir el estándar IRIS GL en un estándar abierto.

SGI observó que la API IRIS GL no podía ser abierta debido a conflictos de licencias y patentes; también contenía funciones no relevantes para los gráficos 3D como API para ventanas, teclado o ratón (en parte, porque fue desarrollada antes de la aparición del X Window System o de los sistemas NeWS de Sun). Además, mientras iba madurando el soporte del mercado para el nuevo estándar, se pretendía mantener los antiguos clientes mediante bibliotecas añadidas como Iris Inventor o Iris Performer.

El resultado de todo lo anterior fue el lanzamiento del estándar OpenGL.

Algunos de los logros que se consiguieron fueron:

  • Estandarizar el acceso al hardware.
  • Trasladar a los fabricantes la responsabilidad del desarrollo de las interfaces con el hardware.
  • Delegar las funciones para ventanas al sistema operativo.

Con la variedad de hardware gráfico existente, lograr que todos hablasen el mismo lenguaje obtuvo un efecto importante, ofreciendo a los desarrolladores de software una plataforma de alto nivel sobre la que trabajar.

En 1992,[13]​ SGI lideró la creación del OpenGL Architecture Review Board (OpenGL ARB), grupo de empresas que mantendría y extendería la especificación OpenGL en los años siguientes. OpenGL evolucionó desde IRIS GL, superando su problema de dependencia del hardware al ofrecer emulación software para aquellas características no soportadas por el hardware del que se dispusiese. Así, las aplicaciones podían utilizar gráficos avanzados en sistemas relativamente poco potentes.

En 1994 SGI barajó la posibilidad de lanzar un producto denominado OpenGL++, el cual incluía elementos como una API de scene-graph (basada presumiblemente en la tecnología de Performer). Dicha especificación fue divulgada entre unos pocos grupos interesados, pero nunca apareció finalmente como producto.[14]

En 1995 Microsoft lanzó Direct3D, que se convertiría en el principal competidor de OpenGL. El 17 de diciembre de 1997[15]​ Microsoft y SGI iniciaron el proyecto Fahrenheit, esfuerzo cooperativo con el objetivo de unificar las interfaces de OpenGL y Direct3D (y añadir también una API scene-graph). En 1998 se uniría al proyecto Hewlett-Packard.[16]​ Pese a tener un principio prometedor en estandarizar las API de gráficos 3D, debido a restricciones financieras en SGI y la falta general de apoyo por parte de la industria, fue finalmente abandonado en 1999.[17]

En la GDC de 2015, Khronos Group anunció la API sucesora de OpenGL, llamada Vulkan.[18][19][20]​ Inicialmente, fue presentada por Khronos como "la iniciativa OpenGL de próxima generación", pero luego el nombre fue descartado, quedando Vulkan como definitivo.[21]​ Vulkan está basado en Mantle, otra API de la empresa AMD, cuyo código fue cedido a Khronos con la intención de generar un estándar abierto similar a OpenGL, pero de bajo nivel.[18][22][23][24][25][26]

Versiones

[editar]

OpenGL 1.0

[editar]

Publicada en enero de 1992.
La primera especificación de OpenGL fue publicada por Mark Segal y Kurt Akeley.

OpenGL 1.1

[editar]

Publicada en enero de 1997.
OpenGL 1.1 se enfocó en el soporte de texturas y formatos de textura sobre hardware de GPU.
Tarjetas gráficas soportadas: todas

Extensión Id de extensión Funciones
Vertex Arrays EXT_vertex_array glVertexPointer, glColorPointer, glNormalPointer
Polygon Offsets (depth biasing) EXT_polygon_offset glPolygonOffset
RGBA logical blending EXT_blend_logic_op glBlendFunc
Texture Copy and Sub-copy EXT_subtexture, EXT_copy_texture glTexSubImage1D/2D/3D
Texture Formats EXT_texture RGB, LUMINANCE, ALPHA, INTENSITY (in glTexImage2D)
Texture Objects EXT_texture_object glGenTextures, glBindTextures

OpenGL 1.2

[editar]

Publicada el 16 de marzo de 1998.
OpenGL 1.2 se enfocó en el soporte de texturas de volumen, píxeles empaquetados, reescalado normal, muestreo de texturas clamped/edge y procesamiento de imágenes.
Tarjetas gráficas soportadas: Rage 128, Rage 128 GL, Rage XL/XC, Rage 128 Pro, Rage Fury MAXX, y todas las tarjetas posteriores.

Extensión Id de extensión Funciones
3D Volume Textures GL_EXT_texture3D glTexImage3DEXT
BGRA Texture Format GL_EXT_bgra BGR_EXT, BGRA_EXT (in glTexImage2D)
Packed Pixels GL_EXT_packed_pixels
Normal Rescaling GL_EXT_rescale_normal
Separate Specular Color GL_EXT_separate_specular_color
Texture Coord Edge Clamping SGIS_texture_edge_clamp
Texture LOD Control SGIS_texture_lod
Draw Range Elements EXT_draw_range_elements glDrawRangeElements
Image Processing Subset EXT_color_table, EXT_convolution, SGI_color_matrix, EXT_histogram, EXT_blend_color, EXT_blend_minmax

OpenGL 1.2.1

[editar]

Publicada el 14 de octubre de 1998
OpenGL 1.2.1 fue un lanzamiento menor publicado después de OpenGL 1.2 (16 de marzo de 1998) el cual añadió multi-textura, o unidades de textura, al canal de renderizado. Esto permitió texturas múltiples que son combinadas por píxel durante la rasterización.
Tarjetas gráficas soportadas: Radeon, Radeon Mobility, Radeon 7500 Mobility, Radeon 8500, Radeon 9000, Radeon 9200, Radeon 9600, Radeon 9800, GeForce 3, GeForce 4Ti, GeForce FX, y todas las tarjetas posteriores

Extensión Id de extensión Funciones
Multi-Texturing SGIS_multitexture glActiveTextureARB, glClientActiveTextureARB

OpenGL 1.3

[editar]

Publicada el 14 de agosto de 2001.
OpenGL 1.3 añadió soporte para textura cubemap, múltiples texturas, multi-muestreo y operaciones de combinación de unidades de textura (añadir, combinar, dot3, border clamp).
Tarjetas gráficas soportadas: Radeon 32/36, Radeon 64/7200, Radeon 7000, Radeo AIW, Radeon 7500, Radeon IGP 320M, Radeon IGP 345M, ES1000, Radeon 8500, Radeon 9000/Pro, Radeon 9100/9200/9250 (Pro & IGP), GeForce 3, GeForce 4Ti, GeForce FX, y todas las tarjetas posteriores.

Extensión Id de extensión Funciones
Compressed Textures GL_ARB_texture_compression
Cubemaps GL_EXT_texture_cube_map TEXTURE_CUBE_MAP_EXT
Multi-Sampling GL_ARB_multisample
Texture Add GL_ARB_texture_env_add
Texture Combine GL_ARB_texture_env_combine
Texture Dot3 GL_ARB_texture_env_dot3
Texture Border Clamping GL_ARB_texture_border_clamp
Matrix Transpose GL_ARB_transpose_matrix

OpenGL 1.4

[editar]

Publicada el 24 de julio de 2002.
OpenGL 1.4 añadió soporte de sombreado por hardware, coordenadas niebla, generación automática de mipmaps, y modos de textura adicionales.
Tarjetas gráficas soportadas: Quadro DCC, Quadro4 380 XGL, Quadro4 500XGL, 550XGL, Quadro4 700XGL, 750XGL, 900XGL, 980XGL, y todas las tarjetas posteriores.

Extensión Id de extensión Funciones
Automatic Mipmaps SGIS_generate_mipmap
Blend Squaring Functions GL_NV_blend_square
Depth Textures GL_ARB_depth_texture DEPTH_COMPONENT16/24/32_ARB
Hardware Shadowing Z-depth GL_ARB_shadow COMPARE_R_TO_TEXTURE
Fog Coordinates GL_EXT_fog_coord
Multiple Draw Arrays GL_EXT_multi_draw_arrays
Point Parameters GL_ARB_point_parameter
Secondary Color GL_EXT_secondary_color
Separate Blend Functions GL_EXT_blend_func_separate
Stencil Wrapping GL_EXT_stencil_wrap
Texture Crossbar Environment Mode GL_ARB_texture_env_crossbar
Texture LOD Bias GL_EXT_texture_lod_bias
Texture Mirrored Repeat GL_ARB_texture_mirrored_repeat
Window Raster Position GL_ARB_window_pos

OpenGL 1.5

[editar]

Publicada el 29 de julio de 2003.
OpenGL 1.5 añadió soporte para objetos de búfer de vértice (VBOs), consultas de oclusión, y amplió las funciones de sombreado.
Tarjetas gráficas soportadas: Radeon X800, Radeon 9600, Radeon 9700, Radeon 9800, GeForce FX, y todas las tarjetas posteriores.

Extensión Id de extensión Funciones Más Información
VBOs Vertex Buffer Objects GL_ARB_vertex_buffer_object glBindBufferARB, glBufferDataARB, glGenBuffersARB songho
Occlusion Queries GL_ARB_occlusion_query
Extended Shadow Functions GL_EXT_shadow_funcs

OpenGL 2.0

[editar]

Publicada el 7 de septiembre de 2004.
OpenGL 2.0 añadió soporte para un lenguaje ensamblador basado en GPU verdadero, llamado ARB (diseñado por el Architecture Review Board), que se convertiría en el estándar para vertex y fragment shaders. Las tarjetas publicadas con OpenGL 2.0 fueron las primeras en ofrecer shaders programables por el usuario.
Tarjetas soportadas: Radeon 9650, Radeon 9500, Radeon 9500/9550/9600/9700/9800 (Pro, SE, XT), Radeon X1050, Radeon Xpress 200 / 1100, Radeon X300, Radeon X550, Radeon X600/Pro, Radeon X700, Radeon X800 (VE, SE, GT, Pro), Radeon X850, Radeon Xpress 1250, Radeon X1200, Radeon X1250, Radeon 2100, Radeon X1300, X1550, X1600, X1650, X1800, X1900, X1950 (Pro, XT, GT), GeForce 6800, Quadro 600, Quadro FX 500, Quadro FX 700, Quadro FX 1000, FX 2000, FX 3000, Quadro FX 1400, Quadro FX 1500, Quadro FX 3450, Quadro FX 3500, Quadro FX 4500X2, Quadro FX4500 SDI, y todas las tarjetas posteriores.

OpenGL 2.0 fue concebido por 3Dlabs para abordar las preocupaciones de que OpenGL estaba estancado y carecía de una dirección fuerte. 3Dlabs propuso una serie de importantes adiciones a la norma. La mayoría de estas fueron, en ese momento, rechazadas por el ARB o de otra manera nunca llegaron a realizarse en la forma que 3Dlabs propuso. Sin embargo, su propuesta de un lenguaje de sombreado de estilo C se completó con el tiempo, resultando en la formulación actual del GLSL (OpenGL Shading Language, también slang).Al igual que los lenguajes de sombreado estilo-ensamblador que trataba de sustituir, permite al programador sustituir los fixed-function vertex y el fragment pipe con shaders, aunque esta vez escritos en un lenguaje tipo C de alto nivel.

El diseño de GLSL se destacó por hacer relativamente pocas concesiones a las limitaciones del hardware entonces disponible, lo que recordaba a la tradición anterior de OpenGL estableciendo un objetivo ambicioso, con visión de futuro para los aceleradores 3D en lugar de simplemente seguir el estado de hardware disponible actualmente. La última especificación OpenGL 2.0[27]​ incluye soporte para GLSL.

Extensión ID de extensión Funciones
Shader Objects GL_ARB_shader_objects
Vertex Programs GL_ARB_vertex_program glBindProgramARB, glGenProgramsARB
Vertex Shaders (VS) GL_ARB_vertex_shader
Fragment Shaders (FS) GL_ARB_fragment_shader
Multiple Render Targets GL_ARB_draw_buffers glDrawBuffers
Rectangular Texture GL_ARB_texture_rectangle GL_TEXTURE_RECTANGLE_ARB
Point Sprites GL_ARB_point_sprite
Separate Blend Equation GL_EXT_blend_equation_separate
Separate Stencil GL_EXT_stencil_two_side

OpenGL 2.1

[editar]

El 2 de agosto de 2006 se publicó OpenGL 2.1. Siendo completamente compatible con las versiones anteriores,[28]​ aporta además nuevas características como:

  • Revisión 1.20 del OpenGL Shading Language (GLSL).
  • Comandos que soportan la especificación de matrices no cuadradas.
  • Objetos Pixel buffer para acelerar el tráfico de imágenes en los buffers en comandos como glTexImage2D y glReadPixels.
Esta funcionalidad corresponde a la extensión ARB_pixel_buffer_object.
Esta funcionalidad corresponde a la extensión GL_EXT_texture_sRGB.

OpenGL 3.0

[editar]

La versión OpenGL 3.0[29]​ fue publicada el 11 de agosto de 2008.

Tarjetas compatibles: GeForce 8 Series ATI HD Radeon 2000 Series. (Es decir, sólo el hardware compatible con Direct3D 10.0 es capaz de ejecutar OpenGL 3.0.)

Es compatible hacia atrás con todas las versiones anteriores de OpenGL, aunque introduce un nuevo mecanismo para despreciar (deprecate en inglés) funcionalidad obsoleta y así poder simplificar la API en versiones futuras.

Las principales novedades son:

  • OpenGL Shading Language versión 1.30 (GLSL)
  • Vertex Array Objects.
  • Framebuffer Objects más flexibles.
  • Texturas y render buffers en coma flotante de 32-bits.
  • Soporte para formato en coma flotante de 16-bits para vértices y píxeles.
  • Capacidad de almacenar vértices en un buffer tras haber sido transformados.
  • Texture arrays
  • Z-buffer en coma flotante de 32-bits.

OpenGL 3.1

[editar]

La versión 3.1 (Longs Peak Reloaded) fue publicada el 24 de marzo de 2009, y presenta una serie de características para hacer la API más conveniente de utilizar, además de las características orientadas al rendimiento:

  • Lenguaje de Sombreado OpenGL revisión 1.40 (GLSL)
  • Texture Buffer Objects - un tipo de nueva textura que contiene una matriz unidimensional de texels
  • Uniform Buffer Objects para compartir o actualizar datos de forma rápida
  • Texturas normalizadas firmadas (rango ± 1,0)
  • Un mínimo de 16 unidades de textura accesibles por el Vertex Shader
  • Reinicio de primitiva
  • Instancias - dibujo de objetos en múltiples ocasiones a través de la reutilización de los vertex data
  • CopyBuffer API para copia rápida de datos, utilizada en conjunto con OpenCL

Con la liberación de la especificación OpenGL 3.1, también fue publicada una extensión de compatibilidad que permite a los desarrolladores acceder a la funcionalidad de OpenGL 1.X/2.X eliminada en OpenGL 3.1. En particular, se mantiene funcionalidad legacy para una amplia línea de soporte.

Funcionalidad heredada eliminada incluye:

  • Todas las opciones de función fija
  • Modo directo
  • Color index mode, por ejemplo, formatos de pixel con paletas de colores

OpenGL 3.2

[editar]

La versión 3.2 fue publicada el 3 de agosto de 2009. Incluye las siguientes características:

  • OpenGL Shading Language versión 1.50 (GLSL)
  • Soporte de Geometría Shader
  • BGRA vértice componente de pedidos
  • Fragmento Shader coordinar el control de convención
  • Perfecta mapa cubo filtrado
  • Fragmento de profundidad de sujeción
  • Multisampled texturas y textura de las muestras para lugares específicos de la muestra
  • Objetos de sincronización y cerca

OpenGL 3.3

[editar]

Publicada el 11 de marzo de 2010

OpenGL 3.3, simultáneamente lanzado con OpenGL 4.0 y complementada por un conjunto de nuevas extensiones ARB, porta tanta funcionalidad como es posible desde la especificación OpenGL 4.0 para su uso en la generación anterior de hardware GPU. Incluye GLSL 3.30.

OpenGL 4.0

[editar]

Publicada el 11 de marzo de 2010
Tarjetas compatibles: Radeon HD serie 5000, nVidia GTX serie 400;

Características:[30]

  • OpenGL Shading Language versión 4.00 (GLSL)
  • Dos fases de sombreado que permiten a la GPU descargar el teselado geométrico de la CPU.
  • Per-shaders fragmento de la muestra y de sombreado programable posiciones fragmento de entrada para mayor calidad de representación y anti-aliasing de flexibilidad.
  • Subrutinas Shader para una flexibilidad de programación aumentada significativamente.
  • Separación del estado de textura y de los datos de textura mediante la adición de un nuevo tipo de objeto llamado sampler objetos.
  • Dibujo de los datos generados por el API de OpenGL o API externos, tales como OpenCL, sin intervención de la CPU.
  • Operaciones de 64-bit de coma flotante de doble precisión de sombreado y entradas / salidas para prestar mayor precisión y calidad.
  • Mejoras de rendimiento, tales como shaders de geometría en instancias, instancias matrices y una consulta de nuevo temporizador.

OpenGL 4.1

[editar]

Anunciado el 26 de julio de 2010[31]
Tarjetas soportadas: Nvidia GeForce 400 series, Nvidia GeForce 500 series, ATI Radeon HD 5000 series, AMD Radeon HD 6000 Series

Esta nueva versión añade estas características adicionales a la especificación, muchas de las cuales ayudan a ponerla en consonancia con las de Direct3D 11:

  • Lenguaje de sombreado OpenGL (GLSL) 4.1
  • Compatibilidad completa con OpenGL para sistemas integrados (OpenGL ES) 2.0
  • Reducción de tiempos de recompilación
  • La capacidad de vincular los programas de forma individual a las cinco etapas programables (Vertex, Control de mosaico, Evaluación del Teselado, la Geometría, y Fragmento)
  • Mejoras a la coma flotante general de 64 bits compatible con agregado en OpenGL 4.0

OpenGL 4.2

[editar]

Publicado el 8 de agosto de 2011[32]
Tarjetas soportadas: Nvidia GeForce 400 series, Nvidia GeForce 500 series, ATI Radeon HD 5000 series, AMD Radeon HD 6000 Series, ATI Radeon HD 7000 series

  • Soporte para shaders con contadores atómicos y load/store/atomic read-modify-write operations en un único nivel de una textura.
  • Capacidad de capturar geometría de la GPU en mosaico y dibujar varias instancias de una "transform feedback " para que los objetos complejos sean fácilmente replicados o cambiados de posición.
  • OpenGL puede modificar ahora un subconjunto arbitrario de una textura comprimida sin necesidad de volver a descargar toda la textura a la GPU llevando esto a un mayor rendimiento.
  • Soporte para empaquetar varios valores de 8 bits y 16 bits en un único valor de 32 bits, llevando a un procesamiento más eficiente del shader y presión reducida en la memoria y el ancho de banda.

OpenGL 4.3

[editar]

Publicado el 6 de agosto de 2012[33]​ Tarjetas Soportadas: Nvidia GeForce 400 series, Nvidia GeForce 500 series, Nvidia GeForce 600 series, ATI Radeon HD 8000 series

  • Incluye la versión más actualizada de GLSL en su versión 4.30 (OpenGL Shading Language).
  • Cálculo de shaders que aprovechan el paralelismo de la GPU para todo lo relacionado con geometría o gráficos.
  • Almacenamiento en búfer de objetos Shader.
  • Consultas de parámetros de texturas para hallar los límites que las plataformas pueden tener para procesar las mismas.
  • Alta calidad de comprensión en texturas ETC2/EAC como característica estándar.
  • Compatibilidad total con las API de OpenGL ES 3.0.
  • Capacidades de depuración que permiten recibir mensajes de depuración mientras se desarrolla la aplicación.
  • Vistas de texturas para análisis de las mismas en diferentes formas sin replicación de datos.
  • Incrementa la seguridad de la memoria.
  • Una extensión multi-aplicación que añade robustez al sistema, e impide que las aplicaciones que provoquen un fallo y tengan que resetearse afecten a otras que estén en ejecución.

OpenGL 4.4

[editar]

Publicado el 22 de julio de 2013[34]

  • Control de colocación de tampones
  • Consultas asincrónicas eficientes
  • Diseño de variables de sombreado
  • Encuadernación eficiente de múltiples objetos
  • Portabilidad optimizada de aplicaciones Direct3D
  • Extensión de textura sin encuadernación
  • Extensión de textura escasa

OpenGL 4.5

[editar]

Publicado el 11 de agosto de 2014[35][36]

Tarjetas Soportadas: Nvidia GeForce 400 series y nuevas, también Tegra K1 y Tegra X1.[37][38]

  • Direct State Access (DSA)- Acceso de estado directo[39]
  • Flush Control - Mejorado el sistema de multiproceso.
  • Robustness - Mejoras en el WebGL.
  • OpenGL ES 3.1 API y compatibilidad de shaders.

OpenGL 4.6

[editar]

Publicado el 17 de julio del 2017[40][41]

  • Procesamiento de geometría del lado de la GPU más eficiente
  • Ejecución de sombreado más eficiente (AZDO)
  • Más información a través de estadísticas, consulta de desbordamiento y contadores
  • Mayor rendimiento sin contextos de manejo de errores
  • Sujeción de la función de desplazamiento de polígono, resuelve un problema de representación de sombras
  • Sombreadores SPIR-V
  • Filtrado anisotrópico mejorado

Soporte de hardware: AMD Radeon HD 7000 Series y posteriores (sombreadores FP64 implementados por emulación en algunas GPU TeraScale), Intel Haswell y posteriores, Nvidia GeForce 400 series y posteriores[42]

Documentación

[editar]

La popularidad de OpenGL se debe en parte a su detallada documentación oficial. El OpenGL ARB ha publicado una serie de manuales actualizados conforme la API iba evolucionando. Son fácilmente reconocibles (y conocidos) por el color de sus tapas:

Libro de referencia y tutorial. Considerado libro de cabecera para programadores de OpenGL.
En esencia, una copia de la páginas del man de OpenGL.
Incluye un póster desplegable con el diagrama de la estructura de una implementación ideal de OpenGL.
  • El Libro Verde - The Green Book: Programming OpenGL for the X Window System. ISBN 0-201-48359-9
Libro sobre la interfaz X11 y GLUT.
  • El Libro Alpha (de tapa blanca) - The Alpha Book: OpenGL Programming for Windows 95 and Windows NT. ISBN 0-201-40709-4
Libro sobre la interfaz de OpenGL en plataformas de Microsoft Windows.

Para OpenGL 2.0 y posteriores:

Libro de referencia y tutorial para GLSL.

Extensiones

[editar]

El estándar OpenGL permite a los fabricantes añadir nuevas funcionalidades adicionales mediante extensiones conforme aparecen nuevas tecnologías. Dichas extensiones pueden introducir nuevas funciones y constantes, y suavizar o incluso eliminar restricciones en funciones ya existentes. Cada fabricante dispone de una abreviatura que le identifica en el nombre de sus nuevas funciones o constantes. Por ejemplo, la abreviatura de NVIDIA (NV) aparece en la definición de su función glCombinerParameterfvNV() y su constante GL_NORMAL_MAP_NV.

Es posible que varios fabricantes se pongan de acuerdo en implementar la misma funcionalidad extendida. En ese caso, se usa la abreviatura EXT. Incluso puede ocurrir que el ARB adopte la extensión, convirtiéndose así en estándar y utilizando la abreviatura ARB en sus nombres. La primera extensión ARB fue GL_ARB_multitexture, presentada en la versión 1.2.1. Siguiendo el camino marcado por la extensión, el multitexturing no es ya una extensión opcional, sino que entró a formar parte del núcleo de OpenGL desde la versión 1.3.

Antes de usar una extensión, los programas deben comprobar su disponibilidad y, después, acceder a las nuevas funcionalidades ofrecidas. Este proceso es dependiente de la plataforma, pero bibliotecas como GLEW y GLEE lo simplifican.

Las especificaciones para la mayor parte de las extensiones pueden encontrarse en el registro oficial de extensiones.[43]

Vulkan

[editar]

Vulkan, anteriormente denominada "Iniciativa OpenGL de próxima generación" (glNext)[44][45]​, es un esfuerzo de rediseño básico para unificar OpenGL y OpenGL ES en una API común que no será compatible con las versiones anteriores de OpenGL.

La versión inicial de Vulkan API se lanzó el 16 de febrero de 2016.

Bibliotecas de utilidades

[editar]

Se han programado varias bibliotecas externas que añaden características no disponibles en el propio OpenGL. Algunas de ellas son:

  • GLU: Ofrece funciones de dibujo de alto nivel basadas en primitivas de OpenGL. Las funciones de GLU se reconocen fácilmente pues todas empiezan con el prefijo glu.
  • GLUT: API multiplataforma que facilita una rudimentaria funcionalidad para el manejo de ventanas e interacción por medio de teclado y ratón.
  • GLUI: Interfaz de usuario basada en GLUT; proporciona elementos de control tales como botones, cajas de selección y spinners. Es independiente del sistema operativo, sustentándose en GLUT para manejar los elementos dependientes del sistema.

Referencias para lenguajes de programación (bindings)

[editar]

Para enfatizar las características multilenguaje y multiplataforma de OpenGL, se han desarrollado varios bindings en muchos lenguajes. Algunos de los lenguajes para los que están disponibles dichos bindings son:

Miembros del Grupo Khronos

[editar]

En 2008, algunos de los miembros del Grupo Khronos son:

Para una lista completa y actualizada de los miembros del proyecto, véanse las listas de miembros,[62]​ contribuyentes[63]​ y académicos[64]​ del Grupo Khronos.[65]

Véase también

[editar]

Bibliotecas adicionales para OpenGL

[editar]
  • GLU - Funciones adicionales (NURBS, esferas, discos, etc)
  • GLUT - API para facilitar desarrollo con OpenGL y gestionar ventanas y eventos
  • GLUI - Biblioteca de interfaz basada en GLUT
  • GLX - Interfaz de OpenGL con el sistema X Window System

Otras interfaces de gráficos

[editar]

Aplicaciones OpenGL

[editar]

Referencias

[editar]
  1. «Copia archivada». Archivado desde el original el 1 de julio de 2017. Consultado el 19 de abril de 2015. 
  2. «SGI - OpenGL Overview». 
  3. «Boletín de prensa de Khronos anunciando la fusión con ARB». Archivado desde el original el 3 de mayo de 2008. 
  4. «Análisis de la fusión de Khronos y ARB». Archivado desde el original el 20 de mayo de 2008. Consultado el 14 de enero de 2007. 
  5. «OpenGL Architecture Review Board Working Group». Archivado desde el original el 24 de noviembre de 2011. Consultado el 14 de enero de 2007. 
  6. «OpenGL Architecture Review Board Working Group». Archivado desde el original el 24 de noviembre de 2011. Consultado el 14 de enero de 2007. 
  7. «Especificación de OpenGL, versión 3.0». 
  8. «Khronos Membership Overview and FAQ». 
  9. «Khronos Registry». 
  10. «Copia archivada». Archivado desde el original el 16 de mayo de 2008. Consultado el 14 de enero de 2007. 
  11. «Especificación del Sistema Gráfico OpenGL Versión 2.1». 
  12. «Iris GL, propiedad de SGI». Archivado desde el original el 29 de septiembre de 2007. Consultado el 16 de febrero de 2007. 
  13. «Creación del OpenGL ARB». 
  14. «Fin de OpenGL++». Archivado desde el original el 16 de mayo de 2008. Consultado el 16 de febrero de 2007. 
  15. «Anuncio público de Fahrenheit». Archivado desde el original el 27 de septiembre de 2007. 
  16. «Miembros del Proyecto Fahrenheit. 1998.». Archivado desde el original el 15 de enero de 2008. Consultado el 15 de enero de 2007. 
  17. «Fin del Proyecto Fahrenheit». 
  18. a b «More on Vulkan and SPIR - V: The future of high-performance graphics». Khronos Group. p. 10. Consultado el 27 de junio de 2015. «Thanks AMD!» 
  19. «Vulkan : Graphics and compute Belong Together» (PDF). Khronos.org. March 2015. Consultado el 5 de marzo de 2015. 
  20. «Vulkan - Graphics and compute belong together». Khronos.org. Consultado el 5 de marzo de 2015. 
  21. Batchelor, James. «glNext revealed as Vulkan graphics API». develop-online.net. 
  22. Mah Ung, Gordon. «Mantle is a Vulkan: AMD's dead graphics API rises from the ashes in OpenGL's successor». PCWorld. 
  23. «AMD Gaming: One of Mantle's Futures: Vulkan | AMD Blogs». Community.amd.com. Archivado desde el original el 6 de marzo de 2015. Consultado el 5 de marzo de 2015. 
  24. Hruska, Joel. «Not dead yet: AMD’s Mantle powers new Vulkan API, VR efforts». ExtremeTech. Consultado el 5 de marzo de 2015. 
  25. «AMD's Mantle Lives On In Vulkan - Lays The Foundation For The Next OpenGL». Wccftech.com. 20 de junio de 2014. Consultado el 5 de marzo de 2015. 
  26. Kirsch, Nathan. «Is AMD Mantle Dead As We Have Known It? Vulcan API Uses Mantle Technology for OpenGL». Legit Reviews. Consultado el 5 de marzo de 2015. 
  27. «Copia archivada». Archivado desde el original el 2 de abril de 2007. Consultado el 28 de marzo de 2010. 
  28. «Características de OpenGL 2.1». Archivado desde el original el 22 de mayo de 2008. Consultado el 16 de enero de 2007. 
  29. http://www.opengl.org/registry/doc/glspec30.20080811.pdf
  30. Khronos webmaster (11 de marzo de 2010). «Khronos Unleashes Cutting-Edge, Cross-Platform Graphics Acceleration with OpenGL 4.0». Khronos Press Releases. Archivado desde el original el 25 de agosto de 2011. Consultado el 11 de marzo de 2010. 
  31. «OpenGL 4.1 Specification Released». 
  32. «Khronos Enriches Cross-Platform 3D Graphics with Release of OpenGL 4.2 Specification». 
  33. «Khronos Releases OpenGL 4.3 Specification with Major Enhancements». 
  34. «Khronos Releases OpenGL 4.4 Specification». 
  35. «Khronos Group Announces Key Advances in OpenGL Ecosystem - Khronos Group Press Release». Consultado el 17 de abril de 2015. 
  36. Khronos Group. «OpenGL® Registry». Consultado el 17 de abril de 2015. 
  37. «SG4121: OpenGL Update for NVIDIA GPUs». Ustream. Archivado desde el original el 17 de mayo de 2015. Consultado el 17 de abril de 2015. 
  38. Mark Kilgard. «OpenGL 4.5 Update for NVIDIA GPUs». Consultado el 17 de abril de 2015. 
  39. «OpenGL 4.5 released—with one of Direct3D’s best features». Ars Technica. Consultado el 17 de abril de 2015. 
  40. «Khronos OpenGL® Registry - The Khronos Group Inc». registry.khronos.org. Consultado el 16 de diciembre de 2022. 
  41. «Khronos Releases OpenGL 4.6 with SPIR-V Support». The Khronos Group (en inglés). 31 de julio de 2017. Consultado el 16 de diciembre de 2022. 
  42. «NVIDIA Releases 381.26.11 Linux Driver With OpenGL 4.6 Support». www.phoronix.com (en inglés). Consultado el 16 de diciembre de 2022. 
  43. «Registry (redirect)». Archivado desde el original el 15 de enero de 2007. Consultado el 2009. 
  44. Reporter, Games. «Meet Vulkan, the powerful, platform-agnostic gaming tech taking aim at DirectX 12». PCWorld (en inglés). Consultado el 16 de diciembre de 2022. 
  45. Staff, Ars (3 de marzo de 2015). «Khronos unveils Vulkan: OpenGL built for modern systems». Ars Technica (en inglés estadounidense). Consultado el 16 de diciembre de 2022. 
  46. «Index of /~bond/OPENGL/ADA». Archivado desde el original el 13 de octubre de 2004. Consultado el 2009. 
  47. «News | The Tao Framework». Archivado desde el original el 7 de junio de 2008. Consultado el 2009. 
  48. «bindings - dsource.org». Consultado el 2009. 
  49. «derelict - dsource.org». Consultado el 2009. 
  50. «Nikita is no more! Elena is here! :)». Archivado desde el original el 19 de abril de 2012. Consultado el 2009. 
  51. «f90gl: Fortran interface for OpenGL and GLUT». Consultado el 2009. 
  52. «Documentación de Gambas - gb.opengl». Archivado desde el original el 12 de marzo de 2012. Consultado el 2009. 
  53. «Lazarus- OpenGL Tutorial». Archivado desde el original el 11 de octubre de 2017. Consultado el 2011. 
  54. «jogl:». Archivado desde el original el 21 de agosto de 2009. Consultado el 2009. 
  55. «lwjgl.org - Home of the Lightweight Java Game Library». Consultado el 2009. 
  56. a b c «Programming Language Bindings». Consultado el 2009. 
  57. «Welcome to OpenGL for MCL». Archivado desde el original el 26 de enero de 2008. Consultado el 2009. 
  58. «pike.ida.liu.se: Modules». Archivado desde el original el 2 de octubre de 2012. Consultado el 2009. 
  59. «PyOpenGL - The Python OpenGL Binding». Consultado el 2009. 
  60. «Contenido del Paquete Académico». Archivado desde el original el 4 de marzo de 2016. Consultado el 2009. 
  61. https://web.archive.org/web/20071012184537/http://haskell.org/HOpenGL/index.html
  62. «Khronos Promoting Members». Consultado el 2009. 
  63. «Khronos Contributing Members». Consultado el 2009. 
  64. «Khronos Academic Members». Consultado el 2009. 
  65. «The Khronos Group: Open Standards, Royalty Free, Dynamic Media Technologies». Consultado el 2009. 

Enlaces externos

[editar]