10/9/20151 unreal basics cis 488/588 bruce r. maxim um-dearborn

13
07/18/22 1 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

Upload: frederick-sutton

Post on 12-Jan-2016

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

04/21/23 1

Unreal Basics

CIS 488/588

Bruce R. Maxim

UM-Dearborn

Page 2: 10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

04/21/23 2

Resources

• Unreal Development Kit• The Buzz3D website

http://www.3dbuzz.com• UDK Game Development

http://www.delmarlearning.com/companions/index.asp?isbn=1435460189

• Unreal Developer Network website http://www.unrealengine.com/en/udk/

Page 3: 10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

04/21/23 3

UDK Engine

• UDK is an open source version of the open-ended Unreal3 system that can be used for many real-time projects

• Unreal is good for games, but has also been used for industrial visualization (e.g. interactive architectural flythrough)

Page 4: 10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

04/21/23 4

Unreal Components• Graphics Engine• Sound Engine• Physics Engine (Karma)• Input Manager• Network Infrastructure (client/server)• Kismet Visual Programing • UnrealScript Inteprerter

– UnrealScript is object oriented with a syntax similar to C++

Page 5: 10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

04/21/23 5

Unreal Component Interaction

Engine Core

Graphics Engine

Sound Engine

Physics Engine

UnrealScriptInterpreter

Page 6: 10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

04/21/23 6

Unreal Game LoopInitialization

Game Loop Start

Check for Input

Event Control

Update

Fire GunPlay Sound

Move Player…

Events

Page 7: 10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

04/21/23 7

Unreal Process - 1

• Game Initialization (starting UDK)– Core engine initializes all system components– Components begin to send info back to core for

synchronization– Game ready for user input

• Game Launch (starting a level)– Map is loaded with all its game assets and

properties– Each asset’s info sent to Unreal component

Page 8: 10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

04/21/23 8

Unreal Process - 2

• Gameplay (artistic use of items)– Each component sends events and tasks to the

message queue– Unreal game loop runs with highest priority

message tasks performed first

Page 9: 10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

04/21/23 9

Game Assets - 1

Stored in packages (libraries). Each

package type is stored in its own folder.

• Textures packages (.utx)– Textures used to color object surfaces

come from tools like Photoshop or Upaint, could come from digital photographs or scanner

Page 10: 10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

04/21/23 10

Game Assets - 2

• Sound packages– Unreal supports .wav files often created

using programs like SoundForge, used for sound effects

• Music Packages– Unreal supports .ogg files create by

programs like Cakewalk

Page 11: 10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

04/21/23 11

Game Assets - 3

• Static mesh (.upk)– Highly optimized polygonal models from an

external 3D package like Maya or 3ds max (you need the right plug-in to import them into Unreal), used for physical details, best to use multiple copies rather than different meshes (for performance)

Page 12: 10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

04/21/23 12

Game Assets - 4

• Animation package (.upk)– Store all animated assets (i.e. characters,

vehicles, weapons), each elements has two component (texture model and animations) to allow mixing and reuse, created using Maya

Page 13: 10/9/20151 Unreal Basics CIS 488/588 Bruce R. Maxim UM-Dearborn

04/21/23 13

Game Assets - 5

• Map (.upk)– Not a package, a map is a collection of

assets used to define a complete game level, created using UnrealEd

• UCC– Unreal execution environment is a

command-line program that allows low-level package editing and compilation of Unreal Script programs (.u)