Index

imagesA

AddDefaultInventory() function, 215, 284, 291

AddGunToSocket() function, 215

AddHealthBonus() function, 291, 295

AllBlocksDestroyed() function, 271

Angry Birds, 261

Angular constraints, 111112

Apple developer's license, 23

Artificial Intelligence path finding. See Path finding

AttackEnemyTimer() function, 300

imagesB

Ball and Socket constraint, 112

BotAttackCoverController states, 284

Bots

descripton, 137

UDK (see UDK bots)

Breakable angular constraints, 112

imagesC

Camera system, 5960

Class declarations, 41

Code execution flow control statements

For Statement, 40

If Statement, 39

Switch/Case Statement, 4041

While Statement, 39

Collisions models

Convex Mesh Primitive, 85

cube static mesh, 84

description, 83

K-DOP, 85

sphere collision mesh, 85

static mesh editor, 8385

Collisions objects

description, 86

KActor and KAsset

AddImpulse() function, 87

ApplyImpulse() function, 87

applying a force, 8788

BoneName, 88

custom, 8687

PrimitiveComponent class, 88

rigid body collisions, 86

RigidBodyCubeMesh, 86

SkeletalMeshComponent, 86, 87

StaticMeshComponent, 86

Combat game.See First-persons hooter game framework

Convex Mesh Primitive, 85

Cover nodes

AI point, 249250

bot controller, 244250

bot pawn, 243244

BotCoverController class, 242

CoverLink class, 239

CoverLinkEx cover node, 250252

Cover ProtectionAngle variable, 251

custom cover node system, 239

description, 238

FindClosestEmptyCoverNodeWithinRange loops, 245

FindEnemy Location() function, 246

game configuration, 252

game type creation, 240

IsCoverSlotAvailable() function, 245

IsCoverSlotValid()function, 245, 251

IsCurrentCoverValid() function, 246

level setting, 252255

player controller, 240243

PrepMoveToCover() function, 247

running the game, 255256

SpawnBot() function, 242

TakeCover state, 248249

UDK cover link, 238

UnclaimAllSlots function, 244

CreateNewGameBall()function, 268

imagesD

Directionvector

calculation, 260

construction, 259

description, 258

kickinganobject, 259

DrawHUD() function, 274

DrawHUDItem() function, 274

imagesE

Enemy bot's code

BotControllerAttack class, 217220

pawn, 215217

SpawnPad, 220221

weapon projectile, 220

EWFT_Custom weapon, 63

EWFT_InstantHit weapon, 63

EWFT_Projectile weapon, 63

ExecuteResetAfterSpawn() function, 305

ExecuteWhatToDoNext() function, 217

imagesF

FindSpawnPad() function, 288

First-person shooter game framework

AddDefaultInventory function, 284

bot controller creation

AI-related code, 305

attacking the player, 303

class variables and cover node functions, 297

default properties, 308

ExecuteWhatToDoNext, 306

GeneratePathTo, 300

Getting Health Pickup, 302

resetting the bot, 305

TakeCover State, 300

bot pawn creation, 295297

bot projectile creation, 309

bot spawn pad creation, 309

bot weapon creation, 308

BotAttackCoverControllerstates, 284

computer-controlled bot, 284

game type configuration, 313

game type creation, 285287

GetRandomSpawnPosition() funtion, 285

Health Bonus power-up class, 312313

HUD creation, 310312

level creation, 314316

PlaceWeapon function, 284

player controller class creation

FindSpawnPad() function, 288

player input, 289

Player Tick function, 290

ResetGame() function, 287

SpawnBot() function, 288

SpawnBotOnRandomPad() function, 288

spawning bots, 288

SwipeZoneCallbackfunction, 289

Weaponplacement, 290

player's pawn creation, 291292

player's projectile creation, 293295

player's weapon creation, 292293

running game, 316317

For Statement, 40

imagesG

Game balance, 205, 206

Game frameworks.See First-person

shooter game framework;

Physics game framework;

Third-person adventure game

framework

GamePlay

creating basic game framework

configuring game type, 221

enemy bot's code, 215221

HUD display, 221

level, 207208

player's code, 209215

running game, 223225

setting up spawn pad, 222

type, 208209

difficulty

enemies, 206

game play rules, 206

level design, 206

player, 206

power ups, 206

game balance, 206

GameTimer() function, 266

Gaming environment

description, 175

Kismet

description, 185

locked gates creation, 193199

moving platform creation, 185193

usage, 185

UDK HUD

basic HUD addition, 201204

description, 199

DrawHUD() function, 200

text display, 200201

textures display, 201

UDK Sound Cues

description, 175

Editor, 175180

using Kismet, 181182

using Unreal Editor, 180181

using Unreal Script, 181

weapon, 182185

GeneratePathTo() function, 217

GetRandomSpawnPosition() function, 285, 295

imagesH

Hard angular constraints, 111

Heads Up Display (HUD)

basic HUD addition, 201204

creation

custom function, 310

DrawHUD function, 310

PostBeginPlay function, 310

description, 199

DrawHUD() function, 200

DrawHUDItem() function, 204

text display, 200201

textures display, 201

Health Bonus power-up class

Tick() function, 312

Touch() function, 312

Health Pickup Available() function, 301

Hinge constraint, 112

imagesI, J

If Statement, 39

InitKickBallGame() function, 271

InputDelayTimer() function, 265

imagesK

KActor

creation

ApplyForceRigidBody() function, 95, 97

ApplyImpulse() function, 95

custom game type, 9394

custom player controller, 9499

IsA() function, 95

level, 8893

new game type configuration, 99

OnEngineHasLoaded() function, 94

PickActor() function, 95

PickDistance, 99

properties, 90

running game type, 99100

SetupZones() function, 98

sphere transformation widget, 91

SwipeZone() callback function, 96

Unreal Script Code, 9399

custom, 8687

description, 86

KAsset

creation

ApplyForceRigidBody function, 107

bounding box, 103

custom game type, 106

custom player controller, 107109

level creation, 103106

new game type, 109

new Physics Asset, 100103

properties, 105

running game type, 109110

Unreal Script Code, 106109

custom, 8687

description, 86

K-DOP, 85

Kismet

description, 29, 185

limitation, 29

locked gates creation

gate with trigger, 194

key frame, 195197

opening the gate, 198

sound effects creation, 199

trigger controlling Matinee sequence, 195

moving platform creation

Gate Mesh platform, 186

Initializing, 192

key frame, 189192

Kismet nodes, 187

Matinee node, 187

Red marker, 188189

working platform, 193

Unreal Kismet Editor, 31

Unreal Matinee, 3132

usage, 185

See also GamePlay

imagesL, M

Linear constraints, 111

LoadLevel() function, 269

imagesN

Navigation mesh

advantages, 141

bot creation

bot controller, 157160

description, 154

game type configuration, 160

level, 155156

parts, 156

running the game, 160161

description, 141

usage, 141

NeedHealthPickup() function, 301

imagesO

Operators,UnrealScript

artithmetic, 38

conditional, 3839

description, 38

imagesP, Q

Path finding

bot equipping, weapon and taking damage

pawn modification, 166168, 171172

player controller modification, 170171

player's weapon modification, 172

running the game, 173

weapon and projectile creation, 168170

bot movement

botmarker creation, 161

description, 161

player controller, 162165

running the game, 165

description, 140

navigation mesh

advantages, 141

bot creation, 154161

description, 141

usage, 141

path nodes

bot creation, 142154

description, 140

usage, 140141

Path nodes

bot creation

bot controller and pawn, 150153

collision cylinder, 151

description, 142

FindPath Toward() function, 152

game type, 144

game type configuration, 153154

level, 142144

MoveTo() function, 152

player controller and pawn, 145148

player weapon, 148150

projectile, 148150

running the game type, 154

weapon inventory manager, 148150

description, 140

usage, 140141

Pawn class

BackVector variable, 61

CalcCamera() function, 60, 62

CamDistanceHorizontal variable, 61

CamOffsetDistance variable, 61

Jazz1Pawn modification, 60

out_CamRot.pitch variable, 61

third-person view, 62

See also Player controller

Physics constraints

angular constraints, 111112

creation, Unreal Editor

ball and socket joint, 113

constraining objects, 113119

new objects insertion, 113

properties, 116

running game type, 120121

SwipeZoneCallback() function, 119

description, 110

dynamic, 112

linear constraints, 111

predefined constraints, 112

Physics game framework

angle of launching collision object, 262263

Angry Birds, 261

creating collision object, 262

sample game

game ball creation, 272273

game type configuration, 277

game type creation, 263264

HUD class creation, 274276

level creation, 277280

player controller class creation, 265272

RigidBodyCubeEx object creation, 276

running game, 280281

PickActor() function, 267

PlaceWeapon() function, 284

Player controller

3D skeletal mesh character

default first-person view, 55

JazzMesh, 58

player's default view, 59

skeletal mesh addition, 5859

Skeletal Mesh Component, 58

CalcCamera() function, 59

camera system, 5960

description, 53

PlayerController class, 53

PlayerMove() function, 54

PlayerTick() function, 54

ProcessMove() function, 54, 59

SimplePC class, 53

UpdateRotation() function, 54, 59

Player input controls

motion input, 22

touch input, 20

SetupZone function, 21

SwipeZoneCallback, 21

virtual joysticks, 18

location, 18

type, 19

UberGroup, 18

Player weapon's bullet, 294

Player's code

controller, 212214

pawn, 209212

weapon, 214

weapon projectile, 215

PlayerTick function, 290

PostBeginPlay() function, 266, 274

Predefined constraints, 112

PrepAttackingEnemy() function, 303

PrepGettingHealthPickup() function, 301

Prismatic constraint, 112

ProcessLookUpInput() function, 265

Provisioning, UDK game, 23

Pulley constraint, 112

imagesR

ResetAfterSpawn() function, 304

ResetGame() function, 269, 287

RigidBodyCollision() function, 272, 276

RigidBodyCube() function, 276

Role-playing game (RPG) framework. See Top-down shooter, RPG game framework

imagesS

SetupZones() function, 269

Skeletal mesh, 10

AnimSet Editor, 12

Setting Materials, 12

SK_Jazz, 12

Soft angular constraints, 111112

Sound Cues Editor

attenuation

A_Powerup_UDamage_SpawnCue, 176

distance algorithm, 177

properties, 176, 177

description, 175

looping

description, 177

properties, 178

Vehicle_Damage_FireLoop_Cue, 177

modulator node

A_Effort_EnigmaMean_Death_Cue, 179

description, 179

property, 180

random node

description, 178

properties, 179

S_BulletImpact_01_Cue, 178

SpawnBot() function, 288

SpawnBotOnRandomPad() function, 288

State diagram for enemy bot, 305, 306

SwipeZoneCallback() function, 269, 289

Switch/Case Statement, 4041

imagesT

TakeDamage() function, 215, 217, 291

Third-person adventure game framework

advantages, 319

bot ally controller

AI support code, 335

AttackingEnemy state, 334335

bot commands, 330331

ExecuteWhatToDoNext() function, 330, 335336

Following Target state, 331332

GeneratePathTo() function, 331

MovingToMarker state, 332333

SetCommand() function, 330

BotAllyController class, 321

BotControllerGuard class, 321

BotMarker creation, 336

computer-controlled bot, 320

DrawHUD() function, 343

DrawHUDItem() function, 343

enemy guard bot controller

AI support functions, 341

Attacking state, 339341

ExecuteWhatToDoNext() function, 341342

FindUnguardedGenerator() function, 338

GeneratePathTo() function, 337

GuardedStructure, 337

guarding related functions, 338339

Guarding state, 337

IsInPatrolRange() function, 338

mesh navigation, 337

threat, 337

enemy guard bot pawn creation, 342

features, 320

game type configuration, 346

game type creation, 321322

Generator class, 321

GuardPawn class, 321, 342

HUD class, 320

HUD creation, 342344

HUDInfo structure, 343

level creation, 347

Pawn class, 321

player controller

AllyBot and AllyPawn variables, 323

bBotCommandStateActive variable, 323, 327

bGameOver, 323

bot command related functions, 325

BotAllyController class, 326

CreateNewGuardBot() function, 322, 325

enemy guard bot creation, 326

ExecuteBotAttackCommand() function, 324

ExecuteBotMoveCommand() function, 324

FindObjectiveHealth() function, 322, 324

FindSpawnPad() function, 325

GuardBot and GuardPawn variables, 323

IsActorAllyBot() function, 327

IsActorGuardBot() function, 327

ObjectiveHealth, 323

PickActor() function, 324

PlayerTick() function, 322, 329

ProcessTouch() function, 323, 327, 328

SelectBotAllyGraphic() function, 325

SetBotMarkerGraphic() function, 324

SpawnAllyBot() function, 322, 326

SpawnGuardBot() function, 325

SwipeZoneCallback, 328

SwipeZoneCallback() function, 328

touch input process, 327328

PlayerControllerClass variable, 322

power generator creation, 345346

running the game, 348349

StaticMesh variable, 336

TakeDamage() class, 345

Tick() function, 336

3D math

CalcCamera function, 257

cover nodes

AI point, 249250

bot controller, 244250

bot pawn, 243244

BotCoverController class, 242

CoverLink class, 239

CoverLinkEx cover node, 250252

CoverProtectionAngle variable, 251

custom cover node system, 239

description, 238

FindClosestEmptyCoverNodeWithinRange loops, 245

FindEnemyLocation() function, 246

game configuration, 252

game type creation, 240

IsCoverSlotAvailable() function, 245

IsCoverSlotValid() function, 245, 251

IsCurrentCoverValid() function, 246

level setting, 252255

player controller, 240243

PrepMoveToCover() function, 247

running game, 255256

SpawnBot() function, 242

TakeCover state, 248249

UDK cover link, 238

UnclaimAllSlots function, 244

description, 227

direction vector

calculation, 260

construction, 259

description, 258

kicking an object, 259

scalars, 227

third-person camera positioning, 257258

vectors

2D plane, 228

3D Unreal world coordinate system, 229

addition, 231232

cross product, 237238

description, 227

dot product, 236237

magnitude, 229230

normalized, 231

properties, 228

right triangle, 235

rotator to vector conversion, 230231

scalar multiplication, 232233

SetRotation() function, 230

unit circle, 234

Tick() function, 312

Top-down shooter,RPG game framework

Ally bot pawn, 361

CalcCamera() function, 352, 359

character information class, 362

characteristics, 353

description, 351, 371

DrawAllyHUD() function, 365

DrawPlayerHUD() function, 365

enemy bot pawn, 361362

features, 352

game type configuration, 367

game type creation, 354

GetBaseAimRotation() function, 359

guard pawn, 361362

HUD creation, 365367

level creation, 368369

LoadMarker class, 353, 364

player controller

CharacterFile variable, 356

functions, 355

HUDPawn variable, 356

LoadCharacterInfo() function, 355, 356

loading and saving, 355356

LoadSquadInfo() function, 355, 356

PlayerMove() function, 355, 356

PlayerWalking state, 356357

PostBeginPlay() function, 356

SaveCharacterInfo() function, 355, 356

SaveSquadInfo() function, 355, 356

SetHUDPawn function, 358359

SpawnGuardBot() function, 357358

SwipeZoneCallback() function, 358

player pawn, 359360

running the game, 369371

SaveMarker class, 353, 363

SaveSquadInfo() function, 353

Scale3D variable, 363

TakeDamage() function, 361, 362

Touch() function, 272, 312, 363

imagesU

Unreal Development Kit (UDK)

Apple developer's license, 23

Asset Search, 6

blockwall, 8

configuring custom game types, 2728

Content Browser, 5

installation, 12

Actor classes tab, 34

checkbox, 4

content browser and UDK Assets, 5

generic browser, 2

Material Assets, 910

Mesh Assets, 1013

Particle System Assets, 1314

Sound Cue Assets, 1416

system, 6

texture assets, 8

UDK Assets, 68

iOS platform

input controls (see Player input controls)

saving data, 16

textures an iOS device, 17

iOS requirements, 22

Materials Editor, 9

provisioning, 23

running UDK game on iOS device, 2327

setting textures, 9, 10

Sound Cue Editor, 14, 16

Startup Screen, 2

Static Mesh Editor, 10, 11

Texture Properties, 8

Unreal Cascade, 14

website, 1

Unreal Development Kit (UDK) bots

AddDefaultInventory() function, 166

AddGunToSocket() function, 166

AIController class, 138

classes, 138

controller class, 139

CylinderComponent class, 151

description, 137

ExecuteBotMoveCommand() function, 162

JazzPawnDamage, 145

JazzWeaponDamage, 148

key functions

ExecuteWhatToDoNext() function, 139

LatentWhatToDoNext() function, 138

WhatToDoNext() function, 139

path finding

bot creation, 142161

bot equipping, weapon and taking damage, 166173

bot movement, 161166

description, 140

navigation mesh, 141142

path nodes, 140141

PickActor() function, 162

Possess() function, 139

PossessedBy() function, 139

possession, 139140

Spawn() function, 140

SwipeZoneCallback() function, 171

TakeDamage() function, 166

UDKBot class, 138

UnPossess() function, 140

Unreal Development Kit (UDK) collisions

bBlockActors variable, 123

bCollideActors variable, 123

BlockActors variable, 122

BlockRigidBody variable, 122

bNotifyRigidBodyCollision variable, 122

bWakeOnLevelStart variable, 122

CollideActors variable, 122

exploding wall of blocks

kicking objects, 135

MinimumForceToExplode variable, 132

OutOfViewLocation variable, 132

particle system, 133

RigidBodyCollision() function, 133

SpawnEmitter() function, 132

meshes

Convex Mesh Primitive, 85

cube static mesh, 84

description, 83

K-DOP, 85

sphere collision mesh, 85

static mesh editor, 8385

objects

custom game type, 123124

custom player controller, 124127

description, 86

game type setup, 128

KActor and KAsset, 8688

level setting, 129131

RigidBodyCollision() function, 123

RigidBodyCube class, 127128

running game type, 131132

Unreal Script, 123128

physics constraints

angular constraints, 111112

creation, Unreal Editor, 113120

description, 110

dynamic, 112

linear constraints, 111

predefined constraints, 112

Physics variable, 122

RBChannel variable, 122

RigidBodyCollision() function, 121

RigidBodyCubeMesh, 122

Unreal Physics system, 83

Unreal Development Kit (UDK) SoundCues

description, 175

Editor

attenuation, 176177

description, 175

looping, 177178

modulator node, 179180

random node, 178179

PlaySound() function, 181

using Kismet, 181182

using Unreal Editor, 180181

using UnrealScript, 181

weapon

creation, 183

description, 182

projectile, 184185

Unreal Development Kit (UDK) weapons

Activate() function, 66

active state, 66

BeginFire() function, 66

BeginState() function, 66

bullets creation, 7071

ChangedWeapon() function, 66

custom inventory manager creation

AddDefaultInventory() function, 73

AddGunToSocket() function, 73

GetBaseAimRotation() function, 73

Jazz1Pawn class, 7173

WeaponsIM1 class, 71

description, 63

EndState() function, 66

EWFT_Custom, 63

EWFT_InstantHit, 63

EWFT_Projectile, 63

Explode() function, 71

FireAmmunition() function, 64, 67

firing, 6768

first-person view

new game type, 80

pawn creation, 77

PlaceWeapon() function, 78

player controller creation, 7879

PlayerTick() function, 78

projectile creation, 77

running game type, 8182

weapon creation, 76

inactive state, 66

Init() function, 71

inventory manager, 63

MaxSpeed variable, 71

pawn

final custom weapon, 70

FiringStatesArray, 69

mesh variable, 69

weapon creation, 6870

WeaponFireTypes array, 69

player controller

flames, 75

SwipeZoneCallback() function, 74

weapon demonstration, 75

Scale3D variable, 71

selection, 66

SendToFiringState() function, 67

SetPendingFire() function, 67

StartFire() function, 67

states, 6466

SwipezoneCallback() function, 67

Template variable, 71

types, 6364

WeaponEquipping state, 66

WeaponFiring state, 66

WeaponPuttingDown state, 66

UnrealScript programming language

automatic garbage collection, 33

BeginState functions, 42

Broadcast() function, 43

class declarations, 41

code execution flow control statements

For Statement, 40

If Statement, 39

Switch/Case Statement, 4041

While Statement, 39

comments, 34

creating and compiling

actual compiling 1, 44

compile scripts, 45

notepad, 43

Unreal Frontend, 4344

debug messages, 43

description, 29

EndState functions, 42

finite state machine(FSM), 42

functions, 41

key features, 3334

Kismet

description, 29

limitation, 29

Unreal Kismet Editor, 31

Unreal Matinee, 3132

Latent functions, 33

None references, 33

object with touch selection

game type configuration, 4950

game type creation, 4647

level creation, 4546

OnEngineHasLoaded() function, 46

PickActor() function, 47

player controller creation, 4749

PreventDeath() function, 46

running the game type, 5051

SetGameType() function, 47

SetupZones() function, 49

SwipeZoneCallback() function, 48

objects execute script independently, 33

operators

artithmetic, 38

conditional, 3839

description, 38

single inheritance, 33

state function, 4243

variables

description, 34

scope modifiers, 35

types, 3538

UpdateRotation() function, 265

imagesV

Variables, UnrealScript

description, 34

scope modifiers, 35

types

bool, 35

class reference, 3738

dynamic arrays, 36

enum, 35

float, 35

int, 35

object reference, 37

static arrays, 36

string, 35

struct, 36

Vectors

2D plane, 228

3D Unreal world coordinate system, 229

addition, 231232

cross product, 237238

description, 227

dot product, 236237

magnitude, 229230

normalized, 231

properties, 228

right triangle, 235

rotator to vector conversion, 230231

scalar multiplication, 232233

SetRotation() function, 230

unit circle, 234

imagesW, X, Y, Z

While Statement, 39

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.142.35.54