
OpenGL چیست ؟
ﻗﺒﻞ از ﺷﺮوع ﻫﺮﭼﯿﺰي ﻣﺎ اﺑﺘﺪا ﺑﺎﯾﺪ ﻣﺸﺨﺺ ﮐﻨﯿﻢ ﮐﻪ OpenGL در واﻗﻊ ﭼﯿﺴﺖ؟ OpenGL ﻋﻤﺪﺗﺎ ﯾﮏ API راﺑﻂ ﺑﺮﻧﺎﻣﻪ ﻧﻮﯾﺴﯽ ﺑﺮﻧﺎﻣﻪ اﺳﺖ ﮐﻪ ﺑﻪ ﻣﺎ ﻣﺠﻤﻮﻋﻪ اي از ﺗﻮاﺑﻊ زﯾﺎدي ﻣﯽ دﻫﺪ ﮐﻪ ﻣﺎ ﻣﯽ ﺗﻮاﻧﯿﻢ ﺑﺮاي دﺳﺘﮑﺎري ﮔﺮاﻓﯿﮏ ﻫﺎ و ﺗﺼﺎوﯾﺮ اﺳﺘﻔﺎده ﮐﻨﯿﻢ ﺑﺎ اﯾﻦ ﺣﺎل OpenGL ﺑﻪ ﺧﻮدي ﺧﻮد API ﻧﯿﺴﺖ، ﺑﻠﮑﻪ ﺻﺮﻓﺎ ﯾﮏ ﺧﺼﻮﺻﯿﺖ اﺳﺖ ﮐﻪ ﺗﻮﺳﻂ ﮔﺮوه ﮐﺮوﻧﻮس ﺗﻮﺳﻌﻪ داده ﺷﺪه و ﻧﮕﻬﺪاري ﻣﯽ ﺷﻮد.
ﻣﺸﺨﺼﺎت OpenGL دﻗﯿﻘﺎ ﻫﻤﺎن ﭼﯿﺰي اﺳﺖ ﮐﻪ ﻧﺘﯿﺠﻪ ﺧﺮوﺟﯽ ﻫﺮ ﺗﺎﺑﻊ ﺑﺎﯾﺪ ﻣﺸﺨﺺ ﺷﻮد و ﭼﮕﻮﻧﻪ ﺑﺎﯾﺪ آن را اﻧﺠﺎم داد ﭘﺲ از آن ﺗﻮﺳﻌﻬﺪﻫﻨﺪﮔﺎن اﯾﻦ ﻣﺸﺨﺼﺎت را اﺟﺮا ﻣﯽ ﮐﻨﻨﺪ ﺗﺎ راه ﺣﻠﯽ ﺑﺮاي اﯾﻦ ﮐﻪ ﭼﮕﻮﻧﻪ ﺑﺎﯾﺪ اﯾﻦ ﻋﻤﻠﮑﺮد ﮐﺎر ﮐﻨﺪ، اراﺋﻪ ﺷﻮد از آﻧﺠﺎﯾﯽ ﮐﻪ ﻣﺸﺨﺼﺎت OpenGL ﺑﻪ ﻣﺎ ﺟﺰﺋﯿﺎت ﭘﯿﺎده ﺳﺎزي را ﻧﻤﯽ دﻫﺪ، ﻧﺴﺨﻪ ﻫﺎي ﺗﻮﺳﻌﻪ ﯾﺎﻓﺘﻪ OpenGL ﻣﺠﺎز ﺑﻪ ﭘﯿﺎده ﺳﺎزي ﻫﺎي ﻣﺨﺘﻠﻒ ﻫﺴﺘﻨﺪ، ﺗﺎ زﻣﺎﻧﯽ ﮐﻪ ﻧﺘﺎﯾﺞ آﻧﻬﺎ ﻣﻄﺎﺑﻖ ﺑﺎ ﻣﺸﺨﺼﺎت (و ﺑﻪ ﻫﻤﯿﻦ ﺗﺮﺗﯿﺐ ﺑﺎ ﮐﺎرﺑﺮ ﻣﺸﺎﺑﻪ ﺑﺎﺷﺪ).
اﻓﺮادي ﮐﻪ در ﺣﺎل ﺗﻮﺳﻌﻪ ﮐﺘﺎﺑﺨﺎﻧﻪ ﻫﺎي OpenGL ﻫﺴﺘﻨﺪ ﻣﻌﻤﻮﻻ ﺳﺎزﻧﺪﮔﺎن ﮐﺎرت ﮔﺮاﻓﯿﮏ ﻫﺴﺘﻨﺪ ﻫﺮ ﮐﺎرت ﮔﺮاﻓﯿﮏ ﮐﻪ ﺧﺮﯾﺪاري ﻣﯽ ﮐﻨﯿﺪ از ﻧﺴﺨﻪ ﻫﺎي ﺧﺎﺻﯽ از OpenGL ﭘﺸﺘﯿﺒﺎﻧﯽ ﻣﯽ ﮐﻨﺪ ﮐﻪ ﻧﺴﺨﻪ ﻫﺎي OpenGL
ﻣﺨﺼﻮص آن ﮐﺎرت اﺳﺖ ﻫﻨﮕﺎم اﺳﺘﻔﺎده از ﺳﯿﺴﺘﻢ اﭘﻞ، ﮐﺘﺎﺑﺨﺎﻧﻪ OpenGL ﺗﻮﺳﻂ ﺧﻮد اﭘﻞ ﺣﻔﻆ ﻣﯽ ﺷﻮد و در ﻟﯿﻨﻮﮐﺲ ﺗﺮﮐﯿﺒﯽ از ﻧﺴﺨﻪ ﻫﺎي اراﺋﻪ دﻫﻨﺪﮔﺎن ﮔﺮاﻓﯿﮏ و ﺳﺎزﮔﺎري ﻫﺎي ﺳﺮﮔﺮﻣﯽ از اﯾﻦ ﮐﺘﺎﺑﺨﺎﻧﻪ ﻫﺎ وﺟﻮد دارد اﯾﻦ ﺑﺪان ﻣﻌﻨﯽ اﺳﺖ ﮐﻪ ﻫﺮﮔﺎه OpenGL رﻓﺘﺎر ﻋﺠﯿﺐ و ﻏﺮﯾﺒﯽ را ﻧﺸﺎن ﻣﯽ دﻫﺪ، اﯾﻦ اﺣﺘﻤﺎﻻ ﻧﺎﺷﯽ از ﺧﻄﺎ ﺳﺎزﻧﺪﮔﺎن ﮐﺎرت ﮔﺮاﻓﯿﮏ (ﯾﺎ ﻫﺮ ﮐﺴﯽ ﮐﻪ ﮐﺘﺎﺑﺨﺎﻧﻪ را ﺗﻮﺳﻌﻪ داده ﯾﺎ ﻧﮕﻬﺪاري ﻣﯽ ﮐﻨﺪ) اﺳﺖ.
از آﻧﺠﺎ ﮐﻪ ﺑﺴﯿﺎري از ﺑﺮﻧﺎﻣﻪ ﻧﻮﯾﺴﯽ ﻫﺎ ﺗﻮﺳﻂ ﺗﻮﻟﯿﺪ ﮐﻨﻨﺪﮔﺎن ﮐﺎرت ﮔﺮاﻓﯿﮏ ﺳﺎﺧﺘﻪ ﺷﺪه اﺳﺖ ﻫﺮ زﻣﺎن ﮐﻪ ﯾﮏ اﺟﺮاي اﺷﮑﺎل وﺟﻮد داﺷﺘﻪ ﺑﺎﺷﺪ، ﻣﻌﻤﻮﻻ ﺑﺎ ارﺗﻘﺎء دراﯾﻮر ﮐﺎرت ﮔﺮاﻓﯿﮏ ﺷﻤﺎ ﺣﻞ ﻣﯽ ﺷﻮد اﯾﻦ دراﯾﻮر ﻫﺎ ﺷﺎﻣﻞ ﺟﺪﯾﺪﺗﺮﯾﻦ ﻧﺴﺨﻪ ﻫﺎي OpenGL اﺳﺖ ﮐﻪ ﮐﺎرت ﺷﻤﺎ ﭘﺸﺘﯿﺒﺎﻧﯽ ﻣﯽ ﮐﻨﺪ اﯾﻦ ﯾﮑﯽ از دﻻﯾﻠﯽ اﺳﺖ ﮐﻪ ﻫﻤﯿﺸﻪ ﺗﻮﺻﯿﻪ ﻣﯽ ﺷﻮد ﮔﺎﻫﯽ اوﻗﺎت دراﯾﻮر ﻫﺎي ﮐﺎرت ﮔﺮاﻓﯿﮏ ﺧﻮد را ﺑﻪ روزرﺳﺎﻧﯽ ﮐﻨﯿﺪ.
ﮐﺮﻧﻮس (ﺳﺎزﻧﺪه open gl) ﺑﻪ ﻃﻮر ﻋﻤﻮﻣﯽ ﺗﻤﺎم اﺳﻨﺎد و ﻣﺸﺨﺼﺎت را ﺑﺮاي ﺗﻤﺎم ﻧﺴﺨﻪ ﻫﺎي OpenGL ﻣﯿﺰﺑﺎﻧﯽ ﻣﯽ ﮐﻨﺪ ﺧﻮاﻧﻨﺪه ﻋﻼﻗﻪ ﻣﻨﺪ ﻣﯽ ﺗﻮاﻧﺪ ﻣﺸﺨﺼﺎت OpenGL ﻧﺴﺨﻪ 3,3 را ﭘﯿﺪا ﮐﻨﺪ (در ﻧﺴﺨﻪ 2,8 ﻧﺮم اﻓﺰار ﺑﻠﻨﺪر ﻧﺴﺨﻪ opengl از 2,1 ﺑﻪ 3,3 ارﺗﻘﺎ ﭘﯿﺪا ﮐﺮده اﺳﺖ) در اﯾﻨﺠﺎ ﺧﻮب اﺳﺖ ﮐﻪ ﺑﺨﻮاﻫﯿﺪ ﺟﺰﺋﯿﺎت OpenGL را ﻓﺮا ﺑﮕﯿﺮﯾﺪ (ﺗﻮﺟﻪ داﺷﺘﻪ ﺑﺎﺷﯿﺪ ﮐﻪ ﺻﺮﻓﺎ ﭼﮕﻮﻧﮕﯽ ان و ﻣﻔﺎﻫﯿﻢ اﺷﺎره ﻣﯿﺸﻮد ﻧﻪ ﻧﺤﻮه ﭘﯿﺎده ﺳﺎزي) اﯾﻦ ﻣﺸﺨﺼﺎت ﻫﻤﭽﻨﯿﻦ ﻣﺮﺟﻊ ﻋﺎﻟﯽ ﺑﺮاي ﯾﺎﻓﺘﻦ ﮐﺎر دﻗﯿﻖ ﻋﻤﻠﮑﺮد آن اﺳﺖ.