bugün
- hikayeyi devam ettir54
- mezoterapi12
- sokakta kavga teknikleri16
- sözlük kızlarıyla tekne turuna çıkmak14
- nickten isim tahmini yapmak72
- kılıçdaroğlu'nun rozet töreni figüran iddiası37
- ekmeleddin ihsanoğluna oy vermiş olmak9
- yeni parti49
- pilot bir erkekle sevgili olmak12
- arkadaşlar bakar mısınız28
- geceleri uyutmayan dertler3
- sözlük yazarlarının saatleri10
- çekirge7
- kaos show4
- gününüz nasıl geçti bakalım9
- 31 yaş sendromu5
- sokakta dayak yiyen kadına yardım etmek3
- enteresan neden kavga yok6
- kavganın kazananı yoktur6
- tai lung26
- kızlar gocu'ya mı güvenirsiniz yoksa bana mı14
- üç harflilerden korkmak5
- abaddon2
- kürk giyen erkek6
- sözlükte polemiğe girmek istemeyen yazar7
- arkadaşlar iyi geceler4
- tekne turu11
- geceye bir şarkı bırak14
- uysaljakoben17
- ev işlerinde eşine yardım eden erkek9
- sözlük kızlarının bugünkü kombinleri9
- 32 yaş sendromu3
- köy evinde kahvaltı yapmak6
- bir yazarın zekasına hayran olmak8
- türklerin islama göre yaşamaması5
- sigara 1000 tl olsa bile içerim4
- katates'in yanlışlıkla ismini yazması8
- kimse kalmamış lan sözlükte4
- şampuan8
- pişi olsa da yesek3
- sedef adası4
- adalarda bisiklet sürmek4
- evreşe yollarını dar olmaması4
- flörtün ev adresinizi öğrenmesi3
- çıplak ayakla hamam böceğine basmak3
- aradığınız hiçbir şeyi bulamadığınız büyük şehir3
- sapık olduğu için çaylak olan insan9
- islam medeniyeti diye bir şey yoktur8
- büyük filmlerden büyük replikler2
- habire12 adamdır37
nehe.gamedev.net adresinden bir sürü tutorial bulabileceğiniz grafik programlama olayı. ayrıca derslerin sonunda değişik dillere* cevrilmiş kodları bulabilirsiniz.
format atılmış bir pc de medal of honor oynamaya çalışırken hata yapan şey. meğer ekran kartı driveri yüklenmeliymiş.
2.1 sürümü ile directx 10 u hallaç pamuğu gibi atan canavar ötesi api.
http://img76.imageshack.u.../opengl21directx10cx7.jpg
http://img76.imageshack.u.../opengl21directx10cx7.jpg
sik gibi bir şeydir.
yani diret3d için sik gibi, hani onu zorlayan anlamında yani.
yani diret3d için sik gibi, hani onu zorlayan anlamında yani.
azıcık desteklense directx'i piyasadan silecek olan grafik kütüphanesi.
Bakıyorum, opengl kullanan hiç bir firma yok neredeyse; ona rağmen opengl bu seviyede. bir iki firma opengl ile oyun çıkartsa neler neler olur düşünemiyorum bile.
Bakıyorum, opengl kullanan hiç bir firma yok neredeyse; ona rağmen opengl bu seviyede. bir iki firma opengl ile oyun çıkartsa neler neler olur düşünemiyorum bile.
directx'in aksine, sadece grafik kütüphanesidir.
bu yüzden directx ile kıyaslamak aslında çok doğru değildir. çünkü directx; ses ve girdi-çıktı işlemlerini de destekler.
ama grafik konusunda directx ile kapışır.
tek eksiği; piyasada destekçisinin pek bulunmayışıdır.
bu yüzden directx ile kıyaslamak aslında çok doğru değildir. çünkü directx; ses ve girdi-çıktı işlemlerini de destekler.
ama grafik konusunda directx ile kapışır.
tek eksiği; piyasada destekçisinin pek bulunmayışıdır.
thread desteği olmayan kütüphane.
yani kendi içinde multi-thread bir çalışma biçimi olabilir, ondan pek emin değilim. ama siz bir opengl handler'i oluşturduğunuzda buna diğer threadlerden erişemiyorsunuz, sadece oluşturduğunuz threadden erişebiliyorsunuz.
bunun sebebi de farklı threadlerin aynı anda ekran kartının aynı bölümüne erişmesinin, grafik işlemlerinin stabilitesini düşüreceğinin düşünülmesiymiş.
not: bu dediğim opengl 2.1 için. daha sonraki sürümlerde bu durumun değişip değişmediğine dair hiç bir fikrim yok.
yani kendi içinde multi-thread bir çalışma biçimi olabilir, ondan pek emin değilim. ama siz bir opengl handler'i oluşturduğunuzda buna diğer threadlerden erişemiyorsunuz, sadece oluşturduğunuz threadden erişebiliyorsunuz.
bunun sebebi de farklı threadlerin aynı anda ekran kartının aynı bölümüne erişmesinin, grafik işlemlerinin stabilitesini düşüreceğinin düşünülmesiymiş.
not: bu dediğim opengl 2.1 için. daha sonraki sürümlerde bu durumun değişip değişmediğine dair hiç bir fikrim yok.
osx, linux, bsd, play station, wii dahil olmak üzere non-microsoft sistemlerin hepsi opengl kullanır.
oyun programlama ile ilgilenenler için bol miktarda opengl hakkında pdf formatında kitap bulabileceğiniz site:
http://www.it-ebooks.org/tag/opengl
http://www.it-ebooks.org/tag/opengl
3dfx kartınız yoksa bir nimetini göremezdiniz...
OpenGL (Open Graphics Library), 2D ve 3D vektör grafikleri oluşturmak için çapraz dil, platformlar arası bir uygulama programlama arayüzüdür (API). API tipik olarak bir grafik işlem birimi (GPU) ile etkileşimde bulunmak için kullanılır ve donanım hızlandırılmış render elde eder.
Silikon Grafik, Inc. (SGI) 1991'de OpenGL'i geliştirmeye başladı ve 30 Haziran 1992'de piyasaya sürdü. Bilgisayar destekli tasarım (CAD), video oyunları, bilimsel görselleştirme, sanal gerçeklik ve uçuş simülasyonu dahil olmak üzere çeşitli uygulamalar için kullanılır. 2006 yılından bu yana OpenGL, kar amacı gütmeyen teknoloji konsorsiyumu Khronos Group tarafından yönetilmektedir.
Tasarım
Grafik boru hattı işleminin bir illüstrasyonu
görsel
OpenGL spesifikasyonu, 2D ve 3D grafik çizimi için soyut bir uygulama programlama arayüzünü (API) açıklar. API'nin tamamen bir CPU'da çalışan yazılımlarda uygulanması mümkün olsa da, GPU gibi donanım hızlandırma işleminin çoğunlukla veya tamamen kullanılmasıyla uygulanacak şekilde tasarlanmıştır.
API, bir dizi isimsiz tamsayı sabitinin yanı sıra istemci programı tarafından adlandırılabilecek bir dizi işlev olarak tanımlanır (örneğin, 3553 ondalık numaraya karşılık gelen sabit GL_TEXTURE_2D). işlev tanımları, C programlama diline yüzeysel olarak benzer olsa da dilden bağımsızdır. Bu nedenle, OpenGL'nin birçok dil bağlama özelliğine sahiptir; en dikkat çekici olanlardan bazıları, bir web tarayıcısından 3D render için JavaScript bağlayıcı WebGL (API, OpenGL ES 2.0'a dayanan API); C bağlayıcıları WGL, GLX ve CGL'yi bağlar; iOS tarafından sağlanan C bağlayıcısı; ve Android tarafından sağlanan Java ve C bağlayıcıları.
Dilden bağımsız olmanın yanı sıra, OpenGL de çapraz platformdur. Spesifikasyon, bir OpenGL bağlamını elde etme ve yönetme konusunda hiçbir şey söylemez ve bunu altta yatan pencere sisteminin bir ayrıntısı olarak bırakır. Aynı nedenle, OpenGL tamamen render ile ilgilidir ve giriş, ses veya pencere ile ilgili hiçbir API'si sağlamaz.
Gelişme
OpenGL artık aktif gelişimde değilken, 2001 ve 2014 yılları arasında OpenGL spesifikasyonu çoğunlukla yıllık olarak güncellendi. 2009'da iki sürüm (3.1 ve 3.2) ve 2010'da üç (3.3, 4.0 ve 4.1) gerçekleşti. En son OpenGL spesifikasyonu 4.6, üç yıllık bir aradan sonra 2017'de piyasaya sürüldü ve çekirdek profile on bir mevcut ARB ve EXT uzantılarının dahil edilmesiyle sınırlıydı.
OpenGL'in aktif gelişimi, 2016 yılında piyasaya sürülen Vulkan API lehine düşürüldü ve ilk geliştirme sırasında kod adı glNext olarak anıldı. 2017'de Khronos Group, OpenGL ES'nin yeni versiyonlarına sahip olmayacağını açıkladı ve o zamandan beri Vulkan ve diğer teknolojilerin geliştirilmesine odaklandı. Sonuç olarak, modern GPU'lar tarafından sunulan belirli yetenekler, örneğin ışın izleme, OpenGL standardı tarafından desteklenmez. Bununla birlikte, satıcıya özel OpenGL uzantıları aracılığıyla daha yeni özellikler için destek sağlanabilir.
OpenGL özelliklerinin yeni sürümleri, her biri API'yi çeşitli yeni özellikleri desteklemek için genişleten Khronos Group tarafından yayınlanmaktadır. Her sürümün ayrıntıları, grafik kartı üreticileri, işletim sistemi tasarımcıları ve Mozilla ve Google gibi genel teknoloji şirketleri de dahil olmak üzere grubun üyeleri arasında fikir birliği ile kararlaştırılır.
Çekirdek API'nin gerektirdiği özelliklere ek olarak, grafik işleme birimi (GPU) satıcıları uzantılar şeklinde ek işlevsellik sağlayabilir. Uzantılar yeni işlevler ve yeni sabitler sunabilir ve mevcut OpenGL işlevlerine yönelik kısıtlamaları gevşetebilir veya kaldırabilir. Satıcılar, diğer satıcılardan veya bir bütün olarak Khronos Group'tan destek almadan özel API'leri açığa çıkarmak için uzantıları kullanabilir ve bu da OpenGL'nin esnekliğini büyük ölçüde artırır. Tüm uzantılar OpenGL Kayıt Defteri'nde toplanır ve tanımlanır.
Her uzantı, onu geliştiren şirketin ismine dayanan kısa bir tanımlayıcı ile ilişkilidir. Örneğin, Nvidia'nın tanımlayıcısı, uzatma adının bir parçası olan NV'dir. GL_NV_half_float, sabit olan GL_HALF_FLOAT_NV ve fonksiyon glVertex2hNV(). Birden fazla satıcı aynı API'yi kullanarak aynı işlevselliği uygulamayı kabul ederse, tanımlayıcı EXT kullanılarak paylaşılan bir uzantı yayınlanabilir. Bu gibi durumlarda, Khronos Group'un Mimarlık inceleme Kurulu'nun uzantısına açık onaylarını vermesi de olabilir, bu durumda tanımlayıcı ARB kullanılır.
OpenGL'nin her yeni sürümü tarafından tanıtılan özellikler, tipik olarak yaygın olarak uygulanan birkaç uzantının, özellikle ARB veya EXT tipi uzantılarının birleşik özelliklerinden oluşur.
Silikon Grafik, Inc. (SGI) 1991'de OpenGL'i geliştirmeye başladı ve 30 Haziran 1992'de piyasaya sürdü. Bilgisayar destekli tasarım (CAD), video oyunları, bilimsel görselleştirme, sanal gerçeklik ve uçuş simülasyonu dahil olmak üzere çeşitli uygulamalar için kullanılır. 2006 yılından bu yana OpenGL, kar amacı gütmeyen teknoloji konsorsiyumu Khronos Group tarafından yönetilmektedir.
Tasarım
Grafik boru hattı işleminin bir illüstrasyonu
görsel
OpenGL spesifikasyonu, 2D ve 3D grafik çizimi için soyut bir uygulama programlama arayüzünü (API) açıklar. API'nin tamamen bir CPU'da çalışan yazılımlarda uygulanması mümkün olsa da, GPU gibi donanım hızlandırma işleminin çoğunlukla veya tamamen kullanılmasıyla uygulanacak şekilde tasarlanmıştır.
API, bir dizi isimsiz tamsayı sabitinin yanı sıra istemci programı tarafından adlandırılabilecek bir dizi işlev olarak tanımlanır (örneğin, 3553 ondalık numaraya karşılık gelen sabit GL_TEXTURE_2D). işlev tanımları, C programlama diline yüzeysel olarak benzer olsa da dilden bağımsızdır. Bu nedenle, OpenGL'nin birçok dil bağlama özelliğine sahiptir; en dikkat çekici olanlardan bazıları, bir web tarayıcısından 3D render için JavaScript bağlayıcı WebGL (API, OpenGL ES 2.0'a dayanan API); C bağlayıcıları WGL, GLX ve CGL'yi bağlar; iOS tarafından sağlanan C bağlayıcısı; ve Android tarafından sağlanan Java ve C bağlayıcıları.
Dilden bağımsız olmanın yanı sıra, OpenGL de çapraz platformdur. Spesifikasyon, bir OpenGL bağlamını elde etme ve yönetme konusunda hiçbir şey söylemez ve bunu altta yatan pencere sisteminin bir ayrıntısı olarak bırakır. Aynı nedenle, OpenGL tamamen render ile ilgilidir ve giriş, ses veya pencere ile ilgili hiçbir API'si sağlamaz.
Gelişme
OpenGL artık aktif gelişimde değilken, 2001 ve 2014 yılları arasında OpenGL spesifikasyonu çoğunlukla yıllık olarak güncellendi. 2009'da iki sürüm (3.1 ve 3.2) ve 2010'da üç (3.3, 4.0 ve 4.1) gerçekleşti. En son OpenGL spesifikasyonu 4.6, üç yıllık bir aradan sonra 2017'de piyasaya sürüldü ve çekirdek profile on bir mevcut ARB ve EXT uzantılarının dahil edilmesiyle sınırlıydı.
OpenGL'in aktif gelişimi, 2016 yılında piyasaya sürülen Vulkan API lehine düşürüldü ve ilk geliştirme sırasında kod adı glNext olarak anıldı. 2017'de Khronos Group, OpenGL ES'nin yeni versiyonlarına sahip olmayacağını açıkladı ve o zamandan beri Vulkan ve diğer teknolojilerin geliştirilmesine odaklandı. Sonuç olarak, modern GPU'lar tarafından sunulan belirli yetenekler, örneğin ışın izleme, OpenGL standardı tarafından desteklenmez. Bununla birlikte, satıcıya özel OpenGL uzantıları aracılığıyla daha yeni özellikler için destek sağlanabilir.
OpenGL özelliklerinin yeni sürümleri, her biri API'yi çeşitli yeni özellikleri desteklemek için genişleten Khronos Group tarafından yayınlanmaktadır. Her sürümün ayrıntıları, grafik kartı üreticileri, işletim sistemi tasarımcıları ve Mozilla ve Google gibi genel teknoloji şirketleri de dahil olmak üzere grubun üyeleri arasında fikir birliği ile kararlaştırılır.
Çekirdek API'nin gerektirdiği özelliklere ek olarak, grafik işleme birimi (GPU) satıcıları uzantılar şeklinde ek işlevsellik sağlayabilir. Uzantılar yeni işlevler ve yeni sabitler sunabilir ve mevcut OpenGL işlevlerine yönelik kısıtlamaları gevşetebilir veya kaldırabilir. Satıcılar, diğer satıcılardan veya bir bütün olarak Khronos Group'tan destek almadan özel API'leri açığa çıkarmak için uzantıları kullanabilir ve bu da OpenGL'nin esnekliğini büyük ölçüde artırır. Tüm uzantılar OpenGL Kayıt Defteri'nde toplanır ve tanımlanır.
Her uzantı, onu geliştiren şirketin ismine dayanan kısa bir tanımlayıcı ile ilişkilidir. Örneğin, Nvidia'nın tanımlayıcısı, uzatma adının bir parçası olan NV'dir. GL_NV_half_float, sabit olan GL_HALF_FLOAT_NV ve fonksiyon glVertex2hNV(). Birden fazla satıcı aynı API'yi kullanarak aynı işlevselliği uygulamayı kabul ederse, tanımlayıcı EXT kullanılarak paylaşılan bir uzantı yayınlanabilir. Bu gibi durumlarda, Khronos Group'un Mimarlık inceleme Kurulu'nun uzantısına açık onaylarını vermesi de olabilir, bu durumda tanımlayıcı ARB kullanılır.
OpenGL'nin her yeni sürümü tarafından tanıtılan özellikler, tipik olarak yaygın olarak uygulanan birkaç uzantının, özellikle ARB veya EXT tipi uzantılarının birleşik özelliklerinden oluşur.
(bkz: half life)
https://streamable.com/27nuyh
yanına c++ ve sfml yi de ekleyerek,
hareketsiz objelere,
çarpışma mekanikleri,
kinematik ve dinamik denklemlerinin can verdiği basit bir fizik motoru bile tasarlayabilirsiniz!
yanına c++ ve sfml yi de ekleyerek,
hareketsiz objelere,
çarpışma mekanikleri,
kinematik ve dinamik denklemlerinin can verdiği basit bir fizik motoru bile tasarlayabilirsiniz!
Gündemdeki Haberler
Güncel Önemli Başlıklar