İÇİNDEKİLER

İÇİNDEKİLER
VII
İÇİNDEKİLER
1 UNITY3D 1
Unity3D Nedir? 3
Unity3D ile Yapılan Oyunlardan Bazıları 5
Unity3D Resmi Web Sitesi, El Kitabı ve Dokümantasyon 5
Neden Unity3D Kullanmalıyım? 7
3D Model, Sound, Texture ve Font Kaynakları 8
3D Modelleme Programları 10
Blender 10
Diğer Programlar 11
Unity Asset Store ile Resmi Unity3D Mağazasını Keşfedin 12
JavaScrıpt, C# ve Boo Dilleri ile Kod Yapısı 15
JavaScript Kod Yapısı 16
C# Script Kod Yapısı 16
Boo Scrıpt Kod Yapısı 17
2 UNITY3D KURULUMU Unity3D Oyun Motoruna Android Kurulumu JDK Kurulumu Android SDK Kurulumu Ayarları Yönetme Platform Değiştirme Android SDK Tanıtma Android Emülatör Bağlantısı Unity Remote Android Uygulaması Unity Script Dosyası Oluşturma ve Hello World 19
28
29
32
37
38
38
40
43
45
3 GRAFİK ARAYÜZÜNÜ İNCELEME 49
Sekmeleri Tanıyalım 49
Scene View 50
Game View 51
Inspector 53
Hierarchy 54
Project Browser 55
Animation View 56
Console 59
Toolbar 61
VIII
UNITY3D
Asset Store MonoDevelop Kod Yazma Editörü 61
62
4 UNITY3D PROGRAMLAMA 67
JavaScript Programlama Dili ile Unity3D Kodlama 67
Awake Fonksiyonu 67
Start Fonksiyonu 68
Update Fonksiyonu 69
FixedUpdate Fonksiyonu 70
LateUpdate Fonksiyonu 70
Debug Sınıfı ile Log Oluşturma 71
DrawLine Fonksiyonu 71
Gizmos Seçeneği 73
Input Sınıfı 73
GetAxis Fonksiyonu 74
GetMouseButton Fonksiyonu 75
GetKey Fonksiyonu 76
GetKeyDown Fonksiyonu 76
Input Manager ile Kullanıcı Girdilerini Kontrol Etme 78
Veri Yapıları ve Değişken Tanımlama 80
Operatörler 82
İndeksleme Operatörü 82
New Operatörü 83
Aritmetik Operatörler 83
Aritmetik Atama Operatörleri 83
Mantıksal Operatörler 84
İlişkisel (Karşılaştırma) Operatörler 84
Üçlü Operatör Yapısı 84
Denetim İfadeleri ve Akış Kontrol 85
Unity Editör ile Çalışmak 86
GameObject Kavramına Giriş 86
GUI Sınıfı ve Arayüz Tasarımı 87
OnGUI Fonksiyonu 88
GUIText 90
GUI Texture 92
Rect 93
Transform Sınıfı ile Pozisyon, Rotasyon ve Ölçülendirme 94
Position 94
Rotation 95
İÇİNDEKİLER
Scale 96
Vektörler 97
Vector2 Vektörü 97
Vector3 Vektörü 97
Vector4 Vektörü 97
Kamera Kontrolü 97
İzdüşüm 98
Kamera Değişimi 100
Oyunu Durdurma (Pause) 103
Sahne ve Level Değişimi 104
Ses Efekt Kontrolü 106
Audio Source 108
Ekranı Yatay Olarak Ayarlama 111
Screen Sınıfı 111
Partikül Oluşturma Sistemi ve Kontrol 112
Ateş Yakma ve Söndürme 112
Aydınlatma Kontrolü 114
Gölge Efekti 117
Gökyüzünü Kontrol Etme 118
Oyunu Kaydetme ve Yeniden Yükleme 122
Cisim Yok Etme 126
Oyundan Çıkış 127
Parmak Hareketlerini Algılama 127
Touch Kavramı 127
Tek Seferlik Dokunma Algılama 128
Devamlı Dokunma Algılama 129
Dokunma Sayısı Algılama 130
OnMouseDown Fonksiyonu ile Dokunma Algılama 130
G sensörü entegrasyonu 131
Sürekli Devam Eden Animasyon 133
Fizik Motoru 134
Rigidbody 135
AddForce Fonksiyonu 135
AddTorque Fonksiyonu 136
isKinematic Değişkeni 136
Mass Değişkeni 137
Velocity Değişkeni 138
useGravity Değişkeni 138
Collider ile Çarpışma Algılama 140
IX
X
UNITY3D
OnTriggerEnter Mesajı 140
OnTriggerExit Mesajı 141
OnCollisionEnter Fonksiyonu 141
OnCollisionStay Fonksiyonu 146
OnCollisionExit Fonksiyonu 146
RayCasting 146
Karakter Kontrol 152
FPS (First-Person Shooter) 152
TPS (Third-Person Shooter) 154
Mobil Cihazlar İçin Hazır Sahneler 156
3 Boyutlu Nesne Fiziği 160
Box Collider 160
Capsule Collider 162
Sphere Collider 163
5 UYGULAMALI ÖRNEKLER Fizik Kurallarına Göre Sürekli Zıplayan Top Menü Tasarımı Karakter ile Cisimlere Ateş Etme Basit Bir Yapay Zeka ve Düşman Kodlama Kontrol Edilebilen Basit Bir Araba Örneği Unity3D ile PHP & MySQL Bağlantısı ve Veri Aktarımı Unity3D ile Facebook Entegrasyonu Mobil Uygulamalarınıza AdMob Reklam Ekleyerek Para Kazanın AdMob Nedir? AdMob Hesabı Oluşturma Android SDK İçin Google Play Service Kurulumu Unity3D Uygulamasına AdMob Reklamları Ekleme Test Cihazı Ekleme 165
165
167
170
177
179
190
193
200
201
201
205
207
212
6 ÖZET Lag Minimizasyonu Projenizi Diğer Platformlar İçin de Oluşturun PC, Mac ve Linux Unity Web Player Unity3D Yeni Sürümü Unity 4.5, 4.6 ve 5.0 Unity 4.5 Unity 4.6 Beta Unity 5.0 Google Play Üzerinde Uygulama Yayınlama 215
215
216
218
219
221
221
222
222
223