Introduction

This page is dedicated to lectures UDK Game Development held at Faculty of Mathematics and Physics, Charles University in Prague in winter semester 2011/2012.

Basic info about how to start developing in UDK can be found here: UDK Development Tutorial.

You can contact me with any questions at michal [dot] bida [at] gmail [dot] com. Subject: UDK Game Development.

Lecture 2 (25.11.2011)

Basic characters and animations, UnrealScript basics. Download udn models source data that we will import into UDK.

Code sample 1:

	HUDType=class'UDKMod.MyHUD'
	PlayerControllerClass=class'UDKMod.MyPlayerController'
	ConsolePlayerControllerClass=class'UTGame.UTConsolePlayerController'
	DefaultPawnClass=class'UTPawn'
	PlayerReplicationInfoClass=class'UTGame.UTPlayerReplicationInfo'
	GameReplicationInfoClass=class'UTGame.UTGameReplicationInfo'
	DeathMessageClass=class'UTDeathMessage'
	PopulationManagerClass=class'UTPopulationManager'
	BotClass=class'UTBot'

Code sample 2:

   //Setup default NPC mesh
   Begin Object Class=SkeletalMeshComponent Name=NPCMesh0
	  SkeletalMesh=SkeletalMesh'RocketBoxMalesExtended.SkelMesh.casual04_m_highpoly'
	  AnimSets(0)=AnimSet'RocketBoxMaleAnims.RocketBoxMaleAnims'
	  AnimSets(1)=AnimSet'PogamutCharactersAnims.PogamutMaleForRocketBox'
	  LightEnvironment=MyLightEnvironment 
      AnimtreeTemplate=AnimTree'RocketBoxMalesExtended.AT_RocketBox_Scripted'
   End Object
   NPCMesh=NPCMesh0
   Mesh=NPCMesh0
   Components.Add(NPCMesh0)

Code sample 3:

	Begin Object Class=StaticMeshComponent Name=PathMarkerComponent
		bUsePrecomputedShadows=false
		bAcceptsStaticDecals=false
		StaticMesh=StaticMesh'UN_SimpleMeshes.TexPropCube_Dup'
		WireframeColor=(R=255,G=0,B=0,A=0) 
		bDisableAllRigidBody=true
		CastShadow=false
		bCastDynamicShadow=false
		bSelfShadowOnly=true
		bAcceptsLights=true
		bAcceptsDynamicLights=true
		bAcceptsDynamicDominantLightShadows=true
	End Object
	StaticMeshComponent=PathMarkerComponent
	Components.Remove(StaticMeshComponent0)
	Components.Add(PathMarkerComponent)

	Begin Object Class=CylinderComponent NAME=CollisionCylinder
		CollisionRadius=+00030.000000
		CollisionHeight=+00020.000000
		CollideActors=true
	End Object
	CollisionComponent=CollisionCylinder
	Components.Add(CollisionCylinder)
	
	DrawScale=0.03
	bStatic=false
	bCollideActors=true	

Lecture 1 (11.11.2011)

UDK introduction and some basic examples. Slides from the lecture.

Homework

Install UDK on your laptop according the UDK Development Tutorial. Then compile and run example 2 (either install Visual Studio with nFringe or compile it manually).

Example 1

Several examples of simple map levels featuring some Kismet mechanics. To install it, download it and unzip it in UDK/UDKGame/Content directory. Features:

  • Several different map levels
  • Simple triggers
  • Complex triggers

Example 2

A simple working mod that features several simple game mechanics. To install it, download it and unzip it in UDK/Development/Src directory. Features:

  • Creating custom game
  • Setting custom HUD
  • Implementing dynamic reactions in the environment
  • Reacting to key inputs
  • Drawing information on HUD

Note: You need to recompile UDK for this to work (with proper settings - so the UDK knows it should compile this mod as well)! See UDK Development Tutorial. Afterwards, run the game by typing: “udk DM-Deck?game=UDKMod.MyGame” from UDK/Binaries/Win32 directory . ALT + H displays HUD help. ALT + C creates “PacMan” cubes.

Acknowledgment

Creation of this course was partially supported by the project Integration of IT Tools into Education of Humanities, which is financed by the European Social Fund, the state budget of the Czech Republic, and by the budget of Municipal House Prague.

Inovace kurzu v letech 2011/2 a 2012/3 byly podpořeny projektem CZ.2.17/3.1.00/33274 financovaným Evropským sociálním fondem a rozpočtem hlavního města Prahy.

Evropský sociální fond
Praha & EU: Investujeme do vaší budoucnosti

lectures/udk_game_development_2011-12_winter_semester.txt · Last modified: 2013/11/18 15:23 by jakub.gemrot