•     Advanced Game Programming LTD6052-LTB22M1 10.01.2022-13.03.2022  5 cr  (LTDNS19) +-
    Learning objectives
    Objective is to further increase your skills and understanding about game development within Unreal Engine 4. You will take command of developing reusable game components using C++. During this course you will implement game concept into a prototype, containing several maps. Game prototype is built weekly in smaller sections, and after the course you will perform play testing to equivalent prototypes, where you give and receive peer feedback.
    Contents
    Game design and construction:

    Game concept and tools
    Unreal Engine 4 game framework
    Level design
    Deepening game experience with game design
    Giving and obtaining meaningful feedback from play testing
    Play testing the builds
    Building, moving and animating the player character
    Restricting player character movement
    Building and linking animation sequences in Unreal Engine 4
    Building your game for several platforms

    Programming:

    Creating base classes from Actors using C++
    Deriving blueprints from your own C++ classes
    Utilizing trigger areas in C++
    Building event chains for game components using C++
    Using timers in C++
    Unreal Engine 4 Log system
    Unreal Engine 4 string types and type conversions
    Creating massive amount of actors dynamically in C++ and managing them
    Finding actors from scene using C++
    Using persistent game state between levels
    Saving and loading game state
    Object-oriented message passing mechanisms and design patterns

    Teaching methods and instruction

    You understand the meaning of the game concept document You understand how UE4 game engine between with C++ and Blueprints You are able create models that can be combined in multiple ways in Levels You are able create levels from static meshes You are able to add functionality into UE4 Actor using C++ You are able to create functions into C++ classes that can be called from Blueprints You are able to create Blueprint-overridable functions in C++ classes You are able to bind dynamically event handler functions to events in C++ You are able to create a Blueprint from C++ class You are able to extend C++ class functionality using Blueprints You are able to create member variables into C++ classes, that can be controlled from UE4 details panel You are able to add UE4 components into actor using C++ You are able to create actors dynamically using C++ You are able to destroy actors dynamically using C++ You are able to find actor component using C++ You are able to find specific type of Actors using C++ during gameplay You are able to store Actors safely into container classes using C++ during gameplay You are able to connect events to actors and actor componetns using C++ You are able to define your own value types in C++ to be used in Blueprints You are able to utilize Cinematics feature to create animation sequences You are able save and load game sessions using C++ You are able to create and modify different game modes for different levels You understand how game mode, game state, player controller and pawn types are interconnected You are able to design mechanics for a sneaking game You are able implement mechnics for a sneaking game You are able to design mechanics for a flying-avoiding game You are able to implement mechanics for a flying-avoiding game You understand the concepts related to deepending the game experience You are able to deepen the game experience by applying design You are able to create post mortem document from a game production You understand the meaning of play testing and what data should be obtained You are able to design play testing You have performed play testing for a game made by others You are able to utilize double dispatch mechanism in object-oriented programming You are able to apply visitor pattern in saving the game state

    Responsible person

    Anssi Gröhn

    Mode of delivery

    Distance learning

    Campus

    Wärtsilä Campus Karjalankatu 3

    Exam dates and re-exam possibilities

    Implementation has two retake opportunities, and you apply to them via Moodle workspace, if necessary.

    Teaching language

    Finnish

    Timing

    10.01.2022 - 13.03.2022

    Students workload

    Total work of 133h, of which online guidance 54h, and individual work 79h (materials, assignments, feedback)

    Enrollment

    01.10.2021 - 31.10.2021

    Groups
    • LTDNS19
    Alternative learning methods

    Skill test

    Assessment criteria

    Grade is defined from points received from learning assignments. See included grade limits in respect to course maximum points. <30% => 0 >=30% => 1 >=44% => 2 >=58% => 3 >=72%=> 4 >=86% => 5

    Teachers

    Anssi Gröhn, Seppo Nevalainen

    Seats

    20 - 60

    Degree Programmes

    Degree Programme in Business Information Technology

    Virtual proportion

    5 cr

    Evaluation scale

    H-5