Dersin Adı Dersin Seviyesi Dersin Kodu Dersin Tipi Dersin Dönemi Yerel Kredi AKTS Kredisi Ders Bilgileri
INTRODUCTION TO GAME PROGRAMMING Birinci Düzey YZ 306 6 5.00 5.00 Yazdır
   
Dersin Tanımı
Ön Koşul Dersleri
Eğitimin Dili İngilizce
Koordinatör DR. ÖĞR. ÜYESİ MURAT AKPULAT
Dersi Veren Öğretim Eleman(lar)ı
Yardımcı Öğretim Eleman(lar)ı
Dersin Veriliş Şekli
Dersin Amacı The primary objective of this course is to introduce students to the fundamental principles of game development using the Unity engine and C# programming. It aims to develop the engineering skills required to design interactive environments, implement real-time physics, and manage complex game logic. By the end of the course, students will be able to transform creative game concepts into functional software prototypes while adhering to object-oriented programming standards and efficient asset management practices.
Dersin Tanımı This course provides a comprehensive introduction to game development workflows, starting with the Unity IDE and C# scripting fundamentals. Key topics include the implementation of GameObjects, Transforms, and Components, as well as the integration of physics engines, collision detection, and user input. Students will explore advanced concepts such as UI design, audio integration, and prefab management. The course emphasizes practical application through the development of complete game projects, requiring students to solve complex logic problems and optimize performance within a real-time rendering environment.

Dersin İçeriği
1 Unity installation, IDE overview, and creating the first project.
2 Variables, data types, and fundamental operators in C#.
3 Conditionals (If/Else), loops, and writing modular methods.
4 Classes, objects, and encapsulation principles for games.
5 Inheritance, polymorphism, and interacting with Unity’s core API.
6 Managing the hierarchy, coordinate systems, and transformations.
7 Capturing user input and implementing smooth character movement.
8 Rigidbodies, colliders, and physical interaction constraints.
9 Reusable object templates and Canvas-based UI development.
10 Working with shaders, materials, and real-time lighting effects.
11 Implementing sound effects and state-machine-driven animations.
12 Raycasting, spawning logic, and basic AI behaviors.
13 Transitioning between levels and saving/loading game data.
14 Performance profiling, build settings, and project publishing.
15
16
17
18
19
20

Dersin Öğrenme Çıktıları
1 Identifies and explains the fundamental components of the Unity architecture (GameObjects, Transforms, Prefabs) and their structural roles within the development environment.
2 Applies engine-specific lifecycle functions (Awake, Start, Update, FixedUpdate) to manage and control real-time application logic and script execution order.
3 Utilizes core C# programming structures (variables, data types, operators, and control flow) to develop algorithmic solutions for logical problems.
4 Designs modular, scalable, and reusable software components by implementing Object-Oriented Programming (OOP) principles such as classes, objects, and inheritance.
5 Integrates essential engine subsystems including Physics, User Input, and Collision Detection to formulate solutions for interactive engineering challenges.
6 Conducts systematic debugging and performance analysis within the IDE to verify, test, and optimize the functional behavior of the software.
7 Demonstrates the ability to independently research and implement advanced API features or external libraries to enhance the complexity of the final project.
8
9
10

*Dersin Program Yeterliliklerine Katkı Seviyesi
1 Mesleki uygulamalarda ve örgütlerde etkin olarak yer alan, sürekli öğrenimle kendisini geliştiren, güçlü iletişim kurabilen, takım çalışması yapabilen, çok disiplinli ortamlarda görev alabilen teknik eleman yetiştirebilmek.
2 Havacılık standartları ile ilgili yeterli bilgi birikimine sahip olmak.
3 Alanındaki bakım uygulamaları için gerekli olan teknik araçları seçip ve kullanabilmek.
4 Edindiği bilgi ve becerileri eleştirel bir yaklaşımla değerlendirebilmek, öğrenme gereksinimlerini belirleyebilmek ve öğrenmesini yönlendirebilmek.
5 Uygulamada karşılaşılan ve öngörülemeyen karmaşık sorunları çözmek için sorumluluk alabilmek.
6 Uluslararası seviyede alanındaki bilgileri izleyebilmek ve meslektaşları ile iletişim kurabilmek.
7 Alanının gerektirdiği düzeyde bilgisayar yazılımı ile birlikte bilişim ve iletişim teknolojilerini kullanabilmek.
8 Bilgiye erişebilmek ve bu amaçla kaynak araştırması yapabilmek, veri tabanları, bakım el kitapları ve diğer bilgi kaynaklarını kullanabilmek.
9 Alanı ile ilgili verilerin toplanması, yorumlanması, duyurulması ve uygulanması aşamalarında toplumsal, bilimsel ve etik değerlere sahip olmak.
10 Alanı ile ilgili şema, teknik resim vb. dökümanları anlayıp, yorumlayabilmek.
11 Mesleki ve etik sorumluluk bilincine sahip olmak.
12 İngilizce ve Türkçeyi sözlü ve yazılı olarak etkin şekilde kullanmak.
13 Sorumluluğu altında çalışanların mesleki gelişimine yönelik etkinlikleri planlayabilmek ve yönetebilmek.
14 Alanındaki kavram, düşünce ve matematiksel ifadeleri anlayabilmek, kullanabilmek, bilimsel yöntemlerle inceleyebilmek, verileri yorumlayabilmek ve değerlendirebilmek, sorunları tanımlayabilmek, analiz edebilmek, kanıtlara, araştırmalara ve farklı kaynak ve ölçümlerden elde edilen sonuçlara dayalı çözüm önerileri geliştirip, uygun düzeltici eylemde bulunabilmek.
15 Alanıyla ilgili konularda düşüncelerini ve sorunlara ilişkin çözüm önerilerini nitel ve nicel verilerle destekleyerek yazılı ve sözlü olarak uzman olan ve olmayan kişilerle paylaşabilmek.
16 Toplumsal sorumluluk bilinci ile yaşadığı sosyal çevre için proje ve etkinlikler düzenleyebilme ve bunları uygulayabilmek.
17 Sosyal hakların evrenselliği, sosyal adalet, kalite kültürü ve kültürel değerlerin korunması ile çevre koruma, iş sağlığı ve güvenliği konularında yeterli bilince sahip olmak.
18 Proje yönetimi, işyeri uygulamaları, çalışanların sağlığı, çevre ve iş güvenliği konularında bilinç; mühendislik uygulamalarının hukuksal sonuçları hakkında farkındalığa sahip olmak.
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Yıldızların sayısı 1’den (en az) 5’e (en fazla) kadar katkı seviyesini ifade eder

Planlanan Öğretim Faaliyetleri, Öğretme Metodları ve AKTS İş Yükü
  Sayısı Süresi (saat) Sayı*Süre (saat)
Yüz yüze eğitim 0 0 0
Sınıf dışı ders çalışma süresi (ön çalışma, pekiştirme) 0 0 0
Ödevler 0 0 0
Sunum / Seminer hazırlama 0 0 0
Kısa sınavlar 0 0 0
Ara sınavlara hazırlık 0 0 0
Ara sınavlar 0 0 0
Proje (Yarıyıl ödevi) 0 0 0
Laboratuvar 0 0 0
Arazi çalışması 0 0 0
Yarıyıl sonu sınavına hazırlık 0 0 0
Yarıyıl sonu sınavı 0 0 0
Araştırma 0 0 0
Toplam iş yükü     0
AKTS     0.00

Değerlendirme yöntemleri ve kriterler
Yarıyıl içi değerlendirme Sayısı Katkı Yüzdesi
Ara sınav 0 0
Kısa sınav 0 0
Ödev 0 0
Yarıyıl içi toplam   0
Yarıyıl içi değerlendirmelerin başarıya katkı oranı   0
Yarıyıl sonu sınavının başarıya katkı oranı   0
Genel toplam   0

Önerilen Veya Zorunlu Okuma Materyalleri
Ders kitabı
Yardımcı Kaynaklar

Ders İle İlgili Dosyalar