Arama butonu
Bu konudaki kullanıcılar: 1 misafir
3
Cevap
373
Tıklama
0
Öne Çıkarma
oyun yapmak istiyorum
D
9 yıl
Çavuş
Konu Sahibi

tamam vuramayın kolay değil biliyorum ama şu an benim öğrenemk istediğim şey phyton la programlama öğrenmek için nelere ihtiyaç olduğu bilgi kirliliği çok fazla aklımda bazı sorular var işini bilen büyüklerim cevaplarsa çok mutlu olurum

grafik olarak tasarım konusunda iyiyim ama konu bu değil ingilizce 3000 kelime biliyorum asıl sorularım şunlar

1-ingilizcemin ne düzeyde olması gerekiyor

2-matematik bilgisi ne için gerekli

3-phyton yeni başlayanlar için uygun mu

4- sözel zekaya sahip olmam dezavantaj mı

5-sürekli program yazma hayali kurmam son 8 senedir kafayı yediğimin göstergesi mi

6-bu oyunlar nasıl yazılıyor mesela sallamasyon bir dil yazıyorum mantık böyle mi


oyuna başla

oyun karakteri seçmek için tuş 1 bas

1 2 3 4
bir tuşa bas ve karakter seç

ileri geri aşağı yukarı zıpla

eğer görevi başarırsan eklenir 1000

tam olarak bunun gibi bir şey mi

şimdiden cevaplarınız için çok teşekür ederim

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



L
9 yıl
Yarbay

Oyun kodlamanın mantığı , şu olursa bunu gerçekleştir (if)'dir. 10 sene önce ufak tefek pyhon dili ile bikaç program yazmıştım. Python'da tam olarak nasıl olur bilmiyorum ama javada ben genelde if şartı kullanarak yapıyorum.

Mesela kodunu yazıyorsn kodun içinde 1'e basılırsa şu olsun diyip yeni sahne yükletiyorsun

Javada bunun kodu bu şekilde yazıyorum

quote:

Update()
{
if (Input.GetKeyDown("1")) ///tuşa bastıığında aşşağıdakiler olacak

Application.LoadLevel("KarakterSecimSahnesi");

}


Karakter seçmeide
quote:

Update()
{
if (Input.GetKeyDown("1")) ///tuşa bastıığında aşşağıdakiler olacak
karakter1resim.SetActive(true); // 1 e bastığında o karakter resimi açılacak
(PlayerPrefs.SetInt("Karakter1")); // ve o karakterin hafızada tutulup istenilen yerde getint ile çağırılabilecek

}

{
if (Input.GetKeyDown("2")) ///tuşa bastıığında aşşağıdakiler olacak
karakter2resim.SetActive(true); // 2 e bastığında o karakter resimi açılacak
(PlayerPrefs.SetInt("Karakter2")); // ve o karakterin hafızada tutulup istenilen yerde getint ile çağırılabilecek

}



vs
vs

Mantık bu şekilde, python da daha kolay olacağını tahmin ediyorum. Zaten mantığı çözdüğünde dilide biliyorsan roman gibi yazarsın.Ama bana sorarsan python oyun için doğru bir dil değil. C# yada JS öğrenmeni öneririm.





< Bu mesaj bu kişi tarafından değiştirildi Lyc -- 3 Ekim 2016; 16:00:56 >
Bu mesaja 1 cevap geldi.
K
9 yıl
Yarbay

1- Nereden baksan advanced.

"Will successfully encode files when passed as a dict or a list of tuples. Order is retained if data is a list of tuples but arbitrary if parameters are supplied as a dict. The tuples may be 2-tuples (filename, fileobj), 3-tuples (filename, fileobj, contentype) or 4-tuples (filename, fileobj, contentype, custom_headers)."

2- Fizik motoru, oyun motoru, genel programlama/algoritma mantigi vb.

a. Duvarda bir ayna asili. Sen de aynaya 32 derece aciyla bakiyorsun. Senle simetrik olarak karsi tarafta da isim yazili bir tabela var. Simdi trigonometri, klasik geometri falan kullanarak o tabeladaki harflerin ters donmus vs. hallerini hesaplatip goruntuye donusturup "ayna" nesnesi olarak yazdirabilmen gerekiyor.

b. Egimli bir duzlemde silindirik bir cisim duruyor. Cismin bir agirligi var ve caprazdan 20 derece aciyla F kadar kuvvet uyguluyorsun. Yercekimini de hesaba katarak cismin hareketini simule etmen gerekiyor.

c. Suya tas attin. Dalga dalga, kopuk kopuk hareket etmesi gerekiyor. Yapabilmen lazim.

3- Yeni baslayanlar icin uygun evet. Oyun kodlamak icin uygun degil ama.

4- Ayni zamanda sayisal zekaya da sahipsen neden dezavantaj olsun?

5- Bilemeyecegim.

6- Hayir mantik hic oyle degil. Oyuna basla, oyunu oyna, oyunu bitir kisimlari her oyunda oluyor. Orada anlasabiliriz.

Oyunlar genelde OOP cinsi nesnelere dayanan bicimde kodlaniyor. Acmak gerekirse, oyunlarda her sey birer nesne oluyor ve oyun motoru bu nesnelerin birbirleri arasindaki iliskilerini duzenliyor. Oyun motoru ayni anda grafik motoru, fizik motoru ve kontroller vb. gibi baska uniteler ile de baglantili. Hepsi birbirleriyle etkilesiyorlar.

Yani oyle her seyi bastan sona "Oyle yap, oyleyse boyle yap" seklinde kodlamiyoruz. Kucuk parcalara bolup oyle kodluyoruz. Sonra da o parcalari birbirleriyle etkilestiriyoruz. Oyun ilk acildiginda Menu nesnesi calismaya baslar. Menu nesnesi iste kucuk butonlari falan yaratir eder. Play dersen Oyun nesnesi calismaya baslar; karakter, harita, dusman, kontrol_konteyneri, grafik_motoru falan nesnelerini yaratir. Sonra kendi icinde belli bir kosul gerceklesene kadar calismayi surduren (eg. oyun bitene kadar, kazanana kadar) bir dongu yaratir. Bu sirada da sen tuslara basarak nesnelerin pozisyonlarini, degerlerini ve fonksiyonlarini aktif hale getirirsin. Interaktif bir sekilde bunu devam ettirdiginde "oyun" dedigin sey olusur.

Bu arada belirtmeden de gecmek istemem; oyun programlama muhtemelen yazilim sektorundeki en kalifiye islerden bir tanesi. Oyun gelistiriciler tabiri caizse bu camianin rockstar'lari sayiliyorlar.

"Oyun gelistirmek" isi de cok genis bir alan oldugundan ne tur bir sey istedigini iyi bilmek gerek:

1- Hobi amacli kucuk oyunlar gelistirmek: yilan oyunu (en basiti)
2- Adobe Flash, Silverlight, Unity bir ortamda gelistirme yapmak: kraloyun.com ya da slender gibi (orta)
3- Javascript, HTML ve CSS yardimiyla web oyunlari gelistirmek: agar.io (zor)
4- Java/C++ ile Mobil oyun gelistirmek (zor+1)
5- C++ ile Singleplayer oynanan buyuk oyunlar gelistirmek: Call of Duty vb. (fena zor)
6- C++ ile MMO denen ayni anda birden cok oyuncu tarafindan oynanan oyunlari gelistirmek: World of Warcraft, Dota2 vb. (en zor)



M
9 yıl
Yarbay

Öncelikle oyun x bir dilden çok bir "oyun motoru" ile yazılırsa daha pratik olur. Amerikayı yeniden keşfetmenin alemi yok.
1- ingilizce seviyem nasıl olmalı? En az ingilizce yazılmış teknik makaleleri okuyacak kadar ve Soru sorabilecek kadar. En az.
2- Matematik ile alakası yok. "Biraz doğru bilinen yanlışlar köşesinden o". Oyun yapacaksın diye illa piksel piksel senin cizdirmene gerek yok. Oyun motorları hallediyor onu.
3- Python yeni başlayanlar için son derece uygun bir dil. top 10 daki üniversitelerden 8 tanesi python öğretiyor.
4- "Sözel zeka" Nedir bilmiyorum konunun öyle şeylerle alakası yok.
5- Sürekli program yazma hayalini 8 yılda gerçekleştiremedi isen sadece hayal kuruyor ve tembellik ediyorsun demektir. Eskisi gibi değil evet ingilizce gerekli diyoruz ama bir dr gitsen milyon tane kitap var. biri olmadı öbürü öbürü olmadı diğeri keisn öğretir emeklemeyi.
http://www.learnpython.org/ bu tarz interaktif öğrenme yerleri mevcut. run butonuna basman ile ilk python kodun çalışmıs olur.

6- ?!?!? Anlamadım kafandakini.
Sen iyisi mi git bir kitap al oku. Dile takılma. Misal günümüzde unity baya popüler bir engine. c# kullanıyor falan ama dil önemli değil. Önemli olan ne yapmak istediğini yapabilmen.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.