Oyun Dersleri3:Oyun Yapmaya Nasıl Başlarım
Oyun Yapmaya Nasıl Başlarım
Oyun programlamaya başlarken en sıkıntı çekilen konulardan bir tanesi oyun programlamaya nasıl başlanacağıdır iste bu yazının amacı oyun progrmalamaya ile ilgilenenler için bir klavuz oluşturmaktır.
İlk adımlar
İlk öncelikle karar vermeniz gereken hangi programlama dilini seçeceğiniz.
eğer bir programlama dilini zaten biliyorsanız en isabeti konulardan biri o dili kullanarak başlmak olabilir.
Oyun programlama zaten başlı başına zor bir olay birde dil öğrenmekle başlarsanız kendininze sormanız gerken bazı sorular var.
Örneğin.
- dilli öğrenmek ne kadar kolay
- bu dil oyun programlama için hızlı bir dilmi
- Bu dill başka oyun geliştirme ortamlarıyla yada API larla beraber çalışabiliyormu.?
- Hangi platformlarda bu dil geçerli windows, maç veya linux
Aşağıda programla dilleri ile ilgili bilgileri bir araya topladim.
Seçerken dikkat etmeniz gereken konular.
1. Güc
2. Taşınabilirlik
3. Hiz
4. Kullanabilirlik
5. Nesne oriyantasyonu (object oriented)
1. Güç = Programlama dillinde güç o programlama dillinin hangi gelişmiş matematik operasyonlarını sağladığı pointerları destekliyip desteklemediği, hatalarla nasıl başa çıktığı vb konulardır.
2. Taşınabilirlik= ismindende anlaşılabileceği gibi programlama dilinin başka systemlerde çalışıp çalışamayacağı, örneğin windowsta yazdığınınz kodu linuz tada çalıştırabilirmişiniz vb.
3. Hiz= programlama dillinindeki kodu ne kadar hızlı bir sürede işlemci tarafından yürütüldüğu.
4. Kullanabilirlik= öğrenmesi ve okunması kolaymi,
5. object oriented (OOP) ile ilgili yazımı okuyun. Burada kısaca değinmesi zor.
Oyun Programlama dilleri
1'den 5'e kadar puanlandirilmistir 1=cok kotu. 5= cok iyi

Bu verilen puanlar sizi bağlamaz, sizin yapmanız gereken bir programlama dillinden ne bekliyorsanız.
Hız mı güç mü vs ?
Benim kişisel tavsiyem Ç++ ama herhangi başka bir dilide seçebilirsiniz. Ç++ seçerseniz, sizi gerçekten bekleyen zor bir yol demektir.
Canavarı terbiye etmesini öğreneceksiniz.
Programlama dillerinin biraz inceleyin başka internet sayfalarına bakın forumlara katılın insanlar size hangi programlama dillini seçmenizi öneriyor, bir bakın
Danışın sorun öğrenin öyle seçiminizi yapın. Kolay gelsin.
C++ seçenlerle yolumuz devam edecek
2.bolum
Proramlama Dilli olarak C/C++ seçenler için
Size yardımcı olması için bazı programlama geliştirme oratamlarını özetledim. Şimdi yapacağınız Bu programlama dillerinden birini seçip
Onunla ilgili araştırma yapın.Sorularınız olursa nereye sorcağınızı biliyorsunuz
Ucretsiz IDE ( Integrated Development Environments)
Cross Platforms (windows/Linux)
Code::Blocks
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Eclipse
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
GCC
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Qt Designer
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Vim
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Windows
Cygwin
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Dev-C++
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
LCC-Win32
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
MinGW Studio
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
MSYS
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
OpenWatcom
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Visual-MinGW
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Visual C++ e.e
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Linux
Anjuta
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Emacs
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Kdevelop
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Ucretli IDE'ler
Borland C++ Builder
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Visual C++
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Bunlardan birini sektikten sonra şimdi birde Kütüphaneler/API lara bakalım
3.bolum
Kutuphaneler ve API lerden kastettigim ne?
API = application program interface
1 AI (yapay zeka)
2 Audio
3 Compression
4 GUI
5 Cok amacli
6 Graphics
7 Image
8 Miscellaneous
9 Networking
10 Pathfinding
11 Physics
12 Text Rendering
Bu genelde oyunlarda kullanılan API lar. Bunları örneklerle ve nereden bullabileceğiniz konusunda bir küçük özet daha yapayım.(hepsini burada sıralamam imkansız o yüzden genel bilinenleri yazmaya çalıştım)
1.AI(yapay zeka)
AI.implant
AI Loom DirectAI GAlib
Louder Than A Bomb
LPA
Memetic AI
OpenAI
OpenSkyNet
Renderware AI
SPADES
2.Audio
Audiere
Dumb
FMod
BASS
OpenAL
SDL
SDL_mixer
3.Compression
bzip2
unrarlib
zlib
4.GUI
Crazy Eddie's GUI System
Guichan GUI
wxWidgets Crossplatform GUI libary
5.General Multipurpose
Allegro
DirectX
SDL (C/C++)
6.Graphics
OpenGL
DirectX
SDL
Allegro
7.Image
corona
CxImage
DevIL
FreeImage
J2K-Codec
ImageMagick
libjpeg
SDL_Image
libpng
paintlib
9.Networking
HawkNL
Quazal
OpenTNL
SDL_net
Zoidcom
RakNet
DemonWare
eNet
10.Pathfinding
Name Language Platform Description
MicroPather
PATHEngine
11.Physics
Havok
ODE
Newton Game Dynamics
Tokamak
Novodex
True Axis
OPAL
12.Text Rendering
FTGL
GLF
glFont
GLFT_Font
GLTT
SDL_TTF
Glyph Keeper
OGLFT
Bunlar hakkında google'dan bilgi edinin. Başlangıçta bunları fazla incelemenize gerek yok. ilerde zaten buraya ister istemez döneceksininz.
Sadece aklınızda bulunsun diye. Bir oyunnun yapımında neler kulanılıyor diye.
Bunda sonraki bölüm Grafik ve ses konusunda hangi araçları kullanabileceğiz konusuna açıklık getiriyor.
4.bolum
Simdi oyununuz için gerekli araçlari siralamaya devam edelim.
Su ana kadar programlama dillinden , API ve kütüphanelerden bahsettik.
Sira oyun için gerekli olan grafik ses vb. Parçalari olusturmak için gereken araçlar nelerdir?
Su basliklar altinda toplayabiliriz.
• 1 Grafikler
1.1 Raster-based drawing
1.2 Vector-based drawing
1.3 3D Modelling
1.4 Ozellesmis grafik araclari
• 2 Audio
2.1 Ses efektleri
2.2 Musik
• Grafikler
Raster-Based Grafikler.
Pixel tabanli çizim programlari
Adobe Photoshop ,Alias Sketchbook Pro,Corel Painter IX, Genetica,
The GIMP (ucretsiz), KolourPaint (ucretsiz), Pixia (ucretsiz)
Paint Shop Pro, PhotoSEAM, Tile Studio, Skencil (ucretsiz)
Vector-based drawing
Sekiller ve onlarin özelliklerini kullanan çizim programlari..
Corel Draw, Acrylic, Inkscape, Skencil, Sodipod, Xara Xtreme
3D Modelling
3D Studio MAX, AC3D, Anim8or(ucretsiz), Blender, Cheetah3D, Cinema 4D,
ClayWorks, DeleD(3d level dizayn), Freeworld3D, Maya, OpenFX (ucretsiz)
SketchUp, Wings 3D
Birde özellesmis programlar var örnegin bitmaplari vector grafiklere çevirmek için AutoTrace
• Audio
Ses Efektleri
Ardour, Audacity(ucretsiz), ReZound, Sweep
Musikler icin.
Acid Music, Beast , Buzz Tracker, Garritan Personal Orchestra, KMidiTracker
MusE, Psycle(ucretsiz), Rosegarden, Skale Tracker(ucretsiz)
Oyun yapmak icin gerekli araclari hemen hemen hepsini bahsettim, Sira geldi oyun fikrinizi nasil hayata gecirirsiniz. ?
5.bolum
Oyun Yapmaya Nasıl Başlarım 5Oyunlarınız için nasıl ücretsiz grafikler, modeller ve musik bulabilirsiniz.
ilk önce fontlarla başlayalım
Fonts
dafont.com -
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
AEnigma Fonts -
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Bitstream Vera Fonts
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
The UCS Free
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Blambot Comic Fonts and Lettering -
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
DesignGraphics.org -
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Icons
Icon Archive
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
vbAccelerator
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
3D
3DLinks -
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
3DTotal - .
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Gina's Galaxy -http://www.camelliasoftware.com/gina
PlantIt 3D -
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
TurboSquid
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Arka planlar icin
Gaming World -
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Textures
Absolute Cross -
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
AutoFX Royalty free textures
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
David Gurrea's Handdrawn Textures
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Ender Design -
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Image After - .
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Lemog
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
Mayang's Free Texture Library -http://www.mayang.com/textures/
Music ve sesler icin
ucrestsiz ses efektleri
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
muzik icin
Bu mesaj içinde bulunan Linkleri görmek için üye olmalısınız.(Register to see the Links)Lütfen Önce KAYIT (Register) olun.
6.bolum
Sanırım Başlangıç için bütün gerekenleri sıralamış olduk, Atladığım bazı noktlar olabilir, lütfen kuşuruma bakmayın.
Birkaç küçük tavsiye ile yazımı bitirmek istiyorum.
1. Denemekten asla vazgeçmeyin.
2. Oyun oynamayı asla ihmal etmeyin.
3. Bir şeyin birden farkı şekilde yapılabileceğini asla unutmayın, yeni düşüncelere açık olun.
4. Bir gün iyi bir oyun programcısı olduğunuzda bugünlerinizi hiç unutmayın
5. Bir ise başlamak o işin yarışı.
Beğendiyseniz +Rep