Forum: Diğer Konular RSS
Oyun Kütüphaneleri
Kadir Can #1
Üye Haz 2010 tarihinden beri · 413 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: Oyun Kütüphaneleri
Merhaba Arkadaşlar;
D derslerinden arta kalan vakitlerimde grafik kütüphanelerini araştırmaya başladım.Bir grafik kütüphanesini öğrenmek istiyorum.Artık sadece D ve grafik kütüphanesi üzerine yoğunlaşacağım.Dolayısıyla bir grafik kütüphanesi öğrenmek istiyorum.Bu konuda tavsiyelerinize ihtiyacım var.SDL,OpenGL,Allegro gibi kütüphaneler arasında kaldım.İliştiricier konusunda sorun olacağını zannetmiyorum.SDL iliştiricilerini Erdem hazırlıyor.OpenGL ilintileri de Allegro ilintileri var.Ama kararsız kaldım.Sizce hangisini öğrenmeliyim?Bu konuyu şöyle düşünmenizi isterim.Daha önce hiç grafik kütüphanesi kullnmamış biri nasıl başlamalı?

Erdem;
SDL açıkçası çok cazip geliyor fakat senin hazırladığın dersler dışında Türkçe bir ders görmedim.Açıkçası çırağın olmak isterim :D
erdem (Moderatör) #2
Üye Tem 2009 tarihinden beri · 981 mesaj · Konum: Eskişehir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Yok canım beraber öğreniyoruz :) Turna'da da beraber kodlamıştık hatırlarsan.

Sen Ali bey'in Erdem'den öğrendiğim oyun programlama mantığı demesine bakma mütevazilik yapıyor. Yoksa Ali bey SDL'in sadece dökümantasyonunu okusa 2D oyun motoru yazar :) Ben senelerdir hala sayesinde yeni şeyler öğreniyorum  ;-)

Bence de grafik programlama çok zevklidir. Bir de D derslerinde öğrendiğimiz konuları gerçek dünyadaki problemleri çözmek için kullanıyoruz ki bence bu çok faydalı. Bence bir dili öğrenmenin en kolay yolu direkt kod yazmak  :-D

Bu bahsettiklerin dışında SFML oyun kütüphanesi var. Ama D ilintileri biraz eski galiba.

https://github.com/LaurentGomila/SFML

Ben bu grafik kütüphanelerinin hepsini incelemiştim. Sonunda SDL'de karar kıldım. Aslında OpenGL biraz daha profesyonel işi ama onda da texture (örneğin 2D grafikler, kaplama) yükleme biraz daha zor olduğu için SDL'i tercih ettim. Allegro'yu çok önceden kullanmış o zamanki durumu pek parlak değildi şimdi nasıl bilmiyorum.

Sanırım çarpışma algılaması, animasyon gibi bölümleri yapabilirsem SFML'ye benzer bir kütüphane olacak.

Bunlar dışında Gamemaker

http://www.yoyogames.com/make

Scirra gibi

http://www.scirra.com

oyun geliştirme ortamları var. Bunlarda programlama bilmeden oyun yapabiliyorsun. Bazı kişiler bunları önemsiz gibi görseler de oyunların çalışma mantığını anlamak açısından bence önemli.

Bunun dışında çok harika kitaplar var. Ama bunların hepsi ingilizce. Yukarda bahsettiğim oyun kütüphanelerini anlatan Türkçe kaynak var mı ben de bilmiyorum.

Dersler bu hafta biraz gecikti. Ama bana bir yeğen daha geldi :) O yüzden..

İlerde pişti projesi için görsel arabirim yapabilirsek niyetim Sonic benzeri bir oyun yazmak. Becerebilirsem tabi.

Bir kere oynadım ama çok zevkli bir oyun  :-D  Bu adreste Sonic'te kullanılan fizik sisteminini nasıl çalıştığını anlatmışlar:

http://info.sonicretro.org/Sonic_Physics_Guide

Bu arada bu adresten SEGA oyunlarını kayıt olup ücretsiz 10 gün oynayabiliyorsun.

http://www.playsega.co.uk
Bu mesaj erdem tarafından değiştirildi; zaman: 2011-06-13, 11:01.
Değişiklik nedeni: SEGA oyunları bağlantısını ekledim.
Kadir Can #3
Üye Haz 2010 tarihinden beri · 413 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
@Erdem;
lazyfoo internet sitesindeki İngilizce kaynaklar çok güzel.Dili de ağır değil.Senin derslerin haricinde oradan takip edeceğim.Site bu:http://lazyfoo.net/SDL_tutorials/index.php

Belki pişti arayüzüne yetişemem ama kabul edersen Sonic projesinde beraber çalışabiliriz.

SFML'ye ilginç demiş birçok site.Onu da bir araştıracağım.Değişik olması hoşuma gider.

Yorumun için teşekkürler.
Bu mesaj Kadir Can tarafından değiştirildi; zaman: 2011-06-13, 12:47.
erdem (Moderatör) #4
Üye Tem 2009 tarihinden beri · 981 mesaj · Konum: Eskişehir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Evet güzel bir site.

Burada da 2D oyun programlama ile ilgili işime yarayabileceğini düşündüğüm bazı bağlantılar var.

Tabi neden olmasın. Piştiyi bitirebilirsek  ;-)

Benim açımdan işler biraz yavaş yürüyor. Vakit biraz az.

Bir de örneğin çarpışma algılaması için SDL ile temel bazı şekiller çizdirmeyi düşündüm. Örneğin çizgi, daire vs.. gibi. Bunun için Bresenham'ın çizgi çizme algoritmasını kullanıyorum. Aslında çalışma prensibini anlamadan direkt kullanabilirim. Ama bu nasıl çalışıyormuş diye detaylarını merak edince haliyle işler biraz yavaş yürüyor  :-D

SFML'nin ben sadece örneklerini derlemiştim. Ayrıntılı olarak tüm özelliklerini bilmiyorum. Hatta ilk planda SDL yerine kulanayım diye düşündüm ama yazım şekli biraz C++ stili gibi geldi. (isim uzayları vs..) Ben de github''daki sayfasını takip ediyorum.
Kadir Can #5
Üye Haz 2010 tarihinden beri · 413 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
SFML'nin internet sitesinden birkaç koda baktım.Sanırım kişisel zevk dedikleri bu olsa gerek, SDL kodlarını hemen benimsemiştim. SFML kodları bana itici geldi.Ama geleceği olan bir kütüphane diyorlar.

İşlerin yavaş yürümesi seni sıkmıyorsa bence hiç önemli değil.Sonuçta hepimiz burada bir hobimizi gerçekleştiriyoruz.Yani tamamen programcının inisiyatifinde olan bir şey zaman.

Açıkçası Pişti'ye de yardım etmek isterim.Ama köstek olmak istemem açıkçası. :D
erdem (Moderatör) #6
Üye Tem 2009 tarihinden beri · 981 mesaj · Konum: Eskişehir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Evet çok doğru! :) Ve hobiler zevklidir değil mi..

Seni projeye ekledim bile :)
Kadir Can #7
Üye Haz 2010 tarihinden beri · 413 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Teşekkür ederim. :)
Dersleri takip ediyorum.Biraz ilerleyince kod yazmaya başlarım.
Kadir Can #8
Üye Haz 2010 tarihinden beri · 413 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj #6
erdem;
SDL_WM_SetCaptions();
fonksiyonunu ilintiledin mi?
Ben kullanmaya çalıştığımda bilinmiyor dedi.sdl.d'nin kodlarına baktım.İlintilenmemiş galiba.Şu ilintileme olayını bana da anlatır mısın?Ben de yardım etmek isitiyorum.


DEĞİŞTİRME:
İlintileme mantığını anladım.extern(DİL) işlevAdı(parametreler) şeklinde yapıyoruz.SDL_WM_SetCaption işlevini ilintiledim ve çalıştırdım.Şimdi kodu git'e gönderiyorum.
Bu mesaj 2 defa değişti; son değiştiren: Kadir Can; zaman: 2011-06-15, 00:07.
erdem (Moderatör) #9
Üye Tem 2009 tarihinden beri · 981 mesaj · Konum: Eskişehir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Teşekkürler :)

Sanırım binding karşılığı olarak Türkçe ilinti yazma olarak kullanıyoruz.

Şu iki mesajda Ali bey ayrıntılı olarak anlatmıştı:

http://ddili.org/forum/thread/537

http://ddili.org/forum/thread/539

Ben C bilmiyorum maalesef. Hatta ilk yazdığımda çalışıp çalışmayacağından bile emin değildim  :-D
Kadir Can #10
Üye Haz 2010 tarihinden beri · 413 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Önemli değil.
Mesajlarım düzenleyip iliştirici yerine ilintileri düzelteceğim.Dalgınım biraz.Kusuruma bakmayın .:D

Temel olarak ilintileme olayını anladım.Artık deneme yanılma yöntemiyle geliştireceğim.

Ben C ile yaklaşık bir sene, yani buraya üye olmadan önce ilgilendim.Yine de kodu yazmadan önce, bir deneme projesinde denemekte fayda var.

Emin olmamak bence daha iyi, çünkü bir şeyi deneysel olarak yaparsam, daha iyi hatırlıyorum.O heyecan beynimde yer ediyor. :D
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-11-22, 06:53:55 (UTC -08:00)