Програмирање на видео игри

Програмирање на видео игри

1.

Наслов на наставниот предмет

Програмирање на видео игри

Video Games Programming

2.

Код

F23L3W152

3.

Студиска програма

Примена на информациски технологии, Софтверско инженерство и информациски системи, Компјутерски науки, Компјутерско инженерство, Интернет, мрежи и безбедност, Информатичка едукација, Software engineering and information systems, Примена на информациски технологии, Софтверско инженерство и информациски системи, Компјутерски науки, Компјутерско инженерство, Интернет, мрежи и безбедност, Software engineering and information systems, Стручни студии за програмирање, Стручни студии за програмирање, Софтверско инженерство,

4.

Организатор на студиската програма (единица, односно институт, катедра, оддел)

Факултет за информатички науки и компјутерско инженерство

5.

Степен (прв, втор, трет циклус)

Прв циклус

6.

Академска година / семестар

4 / Зимски

7. Број на ЕКТС кредити

6.0

8.

Наставник

ворн. проф. д-р Катарина Тројачанец Динева проф. д-р Сузана Лошковска

9.

Предуслови за запишување на предметот

Алгоритми и податочни структури или Примена на алгоритми и податочни структури

10.

Цели на предметната програма (компетенции):


Целта на предметот е да ги запознае студентите со процесот на програмирање на видео игри. За таа цел студентите ќе бидат запознаени со основните компоненти на една видео игра и начинот на кој истите се програмираат. По завршување на курсот се очекува кандидатот да ги разбира концептите за програмирање на видео игри и да може да реализира програмски самостојно или во тим едноставна видео игра.

11.

Содржина на предметната програма:


Предавања: 1. Вовед. Дефиниција. Кратка историја. Класификации и видови игри. 2. Архитектура на игра. Иницијализација на игра. Обезбедување излез од играта. 3. Актери во играта. Начини на дефинирање на актери. Композиција од објекти за дефинирање карактеристики на актери. 4. Главен циклус на игра. Начини за контрола на текот на играта. Користење на нитки. 5. Кеширање на ресурси за играта. Видови податоци. Техники за ефикасно сметување на податоците и ефикасно читање на истите. 6. Влезни уреди. Видови. Контрола на влез. 7. Кориснички интерфејси за игри. Дефинирање на поглед. Програмирање на контроли и екрански елементи. Локализација. 8. Менаџирање на настани во игра. Додавање и контрола на звук во игра. 9. Основни принципи за графика во игра. Дефинирање на материјали. Координатни системи и трансформации. Репрезентација на графички објекти во игра. Светлински модел. 10. Графика во игра. Користење на текстури. Репрезентација и програмирање на 3Д сцени. 11. Физика во игри. Закони и вметнување на закони во однесување на елементите. Програмирање на колизии. 12. Вештачка интелигенција. Техники за опишување на однесување на виртуелни актери. Вежби: 1. Вовед во технологии и програмски јазици што овозможуваат програмирање на видео игри. 2. Понапредни карактеристики на технологиите и програмските јазици што овозможуваат програмирање на видео игри. 3. Имплементација на примери за дефинирање актери и нивните карактеристики. 4. Имплементација на основен облик на главниот циклус на играта. 5. Имплементација на покомплексен облик на главниот циклус на играта. Сместување и читање податоци. 6. Имплементација на примери што вклучуваат влез и контрола на влез во играта, 7. Имплементација на кориснички интерфејс за играта. Програмирање на контроли и екрански елементи. Локализација. 8. Имплементација на примери со менаџирање на настани во игра. Додавање и контрола на звук во игра. 9. Примери што вклучуваат графика во играта. Дефинирање на материјали. Координатни системи и трансформации. Репрезентација на графички објекти во игра. Светлински модел. 10. Примери што вклучуваат користење на текстури. Репрезентација и програмирање на 3Д сцени. 11. Примери што се донесуваат на физиката во игрите. Закони и вметнување на закони во однесување на елементите. Програмирање на колизии. 12. Примери што вклучуваат вештачка интелигенција. Техники за опишување на однесување на виртуелни актери.

12.

Методи на учење:


Предавања поддржани со презентации преку слајдови, интерактивни предавања, вежби (користење на опрема и софтверски пакети), тимска работа, пример случаи, поканети гости предавачи, самостојна изработка и одбрана на проектна задача и семинарска работа, учење во електронско опкружување (форуми, консултации).

13.

Вкупен расположив фонд на време

6.0 ЕКТС x 30 часа = 180 часа

14.

Распределба на расположивото време

30 + 45 + 15 + 15 + 75 = 180 часа

15.

Форми на наставните активности

15.1.

Предавања- теоретска настава

30 часови

15.2.

Вежби (лабораториски, аудиториски), семинари, тимска работа

45 часови

16.

Други форми на активности

16.1.

Проектни задачи

15 часови

16.2.

Самостојни задачи

15 часови

16.3.

Домашно учење

75 часови

17.

Начин на оценување

17.1.

Тестови

10 бодови

17.2.

Семинарска работа/ проект ( презентација: писмена и усна)

15 бодови

17.3.

Активности и учење

10 бодови

17.4.

Завршен испит

50 бодови

18.

Критериуми за оценување (бодови/ оценка)

до 50 бода

5 (пет) (F)

од 51 до 60 бода

6 (шест) (E)

од 61 до 70 бода

7 (седум) (D)

од 71 до 80 бода

8 (осум) (C)

од 81 до 90 бода

9 (девет) (B)

од 91 до 100 бода

10 (десет) (A)

19.

Услов за потпис и полагање на завршен испит

реализирани активности 15.1 и 15.2

20.

Јазик на кој се изведува наставата

македонски и англиски

21.

Метод на следење на квалитетот на наставата

механизам на интерна евалуација и анкети

22.

Литература

22.1.

Задолжителна литература

Ред.бр.

Автор

Наслов

Издавач

Година

3981

James R. Parker

Game Development Using Python (Second Edition)

Mercury Learning and Information

2021

3982

David Baron

Game Development Patterns with Unity 2021: Explore practical game development using software design patterns and best practices in Unity and C# (2nd Edition)

Packt Publishing

2021

3983

Casey Hardman

Game Programming with Unity and C#: A Complete Beginner’s Guide

Apress

2020

3984

Al Sweigart

Invent Your Own Computer Games with Python (4th Edition)

No Starch Press

2016

3985

Jason Gregory

Game Engine Architecture (Third Edition)

A K Peters/CRC Press

2018

3986

Mike McShaffry, David Graham

Game Coding Complete, Fourth Edition

Cengage Learning PTR

2013

3987

James R. Parker

Game Development Using Python (Second Edition)

Mercury Learning and Information

2021

3988

David Baron

Game Development Patterns with Unity 2021: Explore practical game development using software design patterns and best practices in Unity and C# (2nd Edition)

Packt Publishing

2021

3989

Casey Hardman

Game Programming with Unity and C#: A Complete Beginner’s Guide

Apress

2020

3990

Al Sweigart

Invent Your Own Computer Games with Python (4th Edition)

No Starch Press

2016

3991

Jason Gregory

Game Engine Architecture (Third Edition)

A K Peters/CRC Press

2018

3992

Mike McShaffry, David Graham

Game Coding Complete, Fourth Edition

Cengage Learning PTR

2013

22.2.

Дополнителна литература

Ред.бр.

Автор

Наслов

Издавач

Година