P

Teğmen
12 Eylül 2016
Tarihinde Katıldı
Takip Ettikleri
1 üye
Görüntülenme
Toplam: 52 (Bu ay: 1)
Gönderileri

Merhabalar, suan bir oyun gelistirmekteyim. Bana motivasyon olmasi ve is birligi icin ayri bir eve cikmak istiyorum. Aslinda ayri bir eve cikma nedenim ailemin cok fazla motivasyon bozucu, dikkat dağıtıci bir aile olmasì. Suan bir iste calisiyorum ve isten ayri bir gelir kaynağım daha var ve bos zamanlarimda oyunumu kodluyorum, yani yazilimcilik yapiyorum. Aradigim ev arkadasinin bana uyum saglayam birisi olmasi ve benim eksigimi doldurmasi gerekiyor bu yuzden ev arkadasimin 2D Grafik tasarimci olmasini istiyorum.


Ev arkadasimdan beklentilerim: Motive edici, benimle birlikte amaclarimiza ulasmak icin para biriktirmeye hazir ve 2D grafik tasarimci olmasi.

Kendi oyunumu yaparken kafam bu konuya takildi. Birkac teori urettim fakat yine isin icinden cikamadim. Mesela metin2 oyunundan bahsedelim, ben metin2 oyununa girip sunucuya baglandigimda (oyuna girdigimde) birsuru diger oyuncularin karakterlerini ve o karakterlerin yaptigi hareketleri es zamanli olarak gorebiliyorum. Peki benim oyunum (Client) nasil tum karakterlerin ve server da olan herseyin bilgisini bilgisayara yukledi ? Diyelimki yuklesin bir sekilde tamam ona lafim yok ama yine bir sorun var... Yukleme sirasinda da bir cok sey degisiyor serverda, yani kisacasi yukledigi bilgiler guncel degil eski bilgiler olacak, bi nevi oyunun gecmisini yuklemis olacak. Oyun (Client) nasil guncel bilgiyi bilgisayara yukluyor ve bilgiyi surekli guncelliyor yani senkronizasyonu nasil sagliyor ?

Bunu sadece metin2 degil League of Legends da yapiyor. Mesele oyun sirasinda baglantim koptugunda ve oyuna birkac dakika sonra girdigimde oyunun simdiki zamandaki halini gorebiliyorum.


Teorilerim:
1 - Server'a baglandigin zaman client server'i serialize (Object serialization mesela Java da var) ediyor. Yani serverdaki tum nesneleri serialize edip pc ye yukluyor ve serverden aldigi verilere gore oyunu guncelliyor. Bu teorinin kotu yani su: Serialize sirasinda serverin durdurulmasi lazim yoksa serverdaki objeler surekli degistigi icin senkronizasyon bozulabilir. Her kullanici server'a baglandiginda server durursa buda oyunun surekli durup calismasi anlamina geliyorki bu da oyunu oynanamaz yapiyor.

2 - Server oyunun basladigi andan itibaren tum inputlari kaydediyor ve client server'a baglandigi zaman oyunun baslangic halini yukluyor ve serverdaki tum inputlari alip oyuna girdi olarak veriyor, tabi bu islemi zamani hizlandirarak yapiyor ve oyunda suanki haline geliyor, yani senkronizasyonu bu sekilde saglamis oluyor. Bu teorinin kotu yani ise oyunun baslangic zamaninin cok eski olmasi yani baslangic zamani suanki zamanin 30 yada 40 dakika oncesi degilse mesela 1, 2 veya 3 yil oncesi ise bu sure icerisinde client devasa bir input verisini oyuna yuklemesi ve birde bunlari isleme sokmasi gerekyor.

Goruldugu 2 teoriminde kotu yani var. Yani hicbirisi benim icin tatmin edici degil. Peki gercekte olan ney bu durumda ?
Merhabalar oyunum icin sunucumdaki database'e baglanip veri cekmek ve sorgulamak istiyorum. Sizce hangi database'i kullanmaliyim ? Birsuru database var. Ve sunu farkettimki cogusunun benim isime yaramayan birsuru ozelligi var. Amacim sade, kullanimi kolay , basit ve sunucu destekli bir database bulmak. Ama arastirmalarim sonucu bir turlu bulamadim. Bulduklarimin hepsi bana karmasik geldi. Sizce hangi database'i kullanmaliyim ?


Database'de aradigim ozellikler:Dosya saklayabileceksiniz, Data/Time destekleyecek. SQLite database'inin Server destekli hali.
Merhabalar. Normalde 4 element (Ates, Su, Toprak, Hava) var. Ama dogu kulturunde 6 tane (Ates, Su, Toprak, Hava, Tahta, Yildirim) var. Ve ben bu elementlerin ingilizce nasil yazildigini bilmiyorum. aslinda sadece tahmin ediyorum ama tahminim dogrumu bilmiyorum. Tahminim: Ates=Fire, Su=Water, Toprak=Soil, Hava=Air, Tahta=Wood, Yildirim=Lightning.
Sizce tahminlerim dogrumu?. Dogrusunu soylermisiniz?

Not: Lutfen bilmiyorsaniz birsey yazmayin. Sadece yuzde yuz eminseniz cevap verin. yalnis bilgi cok kotu sonuclara sebep olabilir benim icin.
Cahilligimden dolayi boyle bir baslik acmis olabilirim ama anlatmak istedigim sey ayni kalacak. Neyse konuya gecelim. Google'in Fllutter adinda bir projesi var ve diyorki single code base'den Android, IOS, Linux, Windows ve MacOS icin uygulamalar gelistirme secenegi sunuyor. Bunu duyunca soyle dusundum: "Neden Flutter varken android programlama ogreneyim ?" "Sonucta yalnis bilmiyorsam yaptigim application sadece android platformunda calisacak. onun yerine Flutter ogrenirim tum platformlar icin uygulama gelistiririm."

Futter bence coklu platformlar icin iyi bir sey fakat coklu platfromlari desteklemesinin illaki bir bedeli olacaktir. Bedeli su :yaptigin uygulamalar cok fonksiyonlu/ozellikli olamaz. Cunku uygulama nekadar genellestirilirse okadar daha sig bir uygulama olur.
Merhabalar.

Java programlama dilinin %80'ini bilen biri olarak ne yapicagima tam karar veremedim. Suan LibGDX kutuphanesi ile bir oyun gelistirmeye calisiyorum. Fakat gittigim bu yol dogru bir yolmu bilmiyorum. Benim icin baska hangi yollar var? Bu yollar nelerdir? Nasil bir yolu takip etmem gerekiyor?

Kendim hakkinda ek bilgiler:
- Universiteye gitmiyorum, Lise mezunuyum.
- Java'dan baska Python programlama dilini biliyorum.
Merhabalar. Oracle'in web sitesinden JDK 8'i indireyim dedim ama ne yazikki indiremedim cunki oracle benden bir kullanici hesabi ile giris yapmami istedi. hesap olusturmak istedim fakat cok fazla detay girmem gerekiyordu ve bende hesabi olusturmaktan vazgectim.Ve dolayisiyla bir hesabim olmadigi icin o hesapla giris yapip JDK 8'i indiremedim. Bu yuzden de OpenJDK kullanmaya karar verdim, sizce bir sorun olurmu ? tam olarak ne gibi bir farkliliklar var ?
Merhabalar. Bir oyun gelistiriyorum ve soyle bir sorunum var. Oyunumda bircok obje cemberlerden olusuyor yani bu objeler disaridan bakildigin da cember gibi gozukmese bile ozunde birer cember. ve ben bu cemberlerin birbirine carpmadan hareket etmesini birbirinin yanindan gecmesini istiyorum fakat boyle bir sistemi birturlu tasarlayamadim. yani bu cemberler birbirlerini taniyacak birbirlerinin uzerinden gecmeyecek, mesela bir cember bir hedefe gidiyorsa ve onunde bir cember varsa onundeki cemberin yanindan gecerek hedefe varacak. Boyle bir sistemi nasil tasarlayabilirim ? Faydali olacagini dusunuyorsaniz bana kodlarini incelemem icin open source bir oyunun linkini verebilirsiniz.

Eger sadece cemberler olmasaydi baska geometrik nesnelerde olsaydi bunu yapmak bayagi zor olurdu. Fakat sadece cemberler olsa bile yine benim icin yapmak zor.

Sizce boyle birsey icin nesnelerim cember deilde cokgenlerden mi olusmali ? Cemberleri secme sebeplerimden birisi su: birbirlerine olan uzkligi gayet kolay bir sekilde hesaplayabiliyorsunuz ?
Temel Bilgiler ve İstatistikler
Aktiflik: Şu anda DH'de değil
Son Giriş: 7 gün önce
Son Mesaj Zamanı: geçen ay
Mesaj Sayısı: 187
Gerçek Toplam Mesaj Sayısı: 208
İkinci El Bölümü Mesajları: 0
Konularının görüntülenme sayısı: 4.235 (Bu ay: 526)
Toplam aldığı artı oy sayısı: 15 (Bu hafta: 0)
En çok mesaj yazdığı forum bölümü: Web Tasarım - Programlama
Mesajları
İkinci El Referansları
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.