Quick Intro to Unreal Lecture 7.

Slides:



Advertisements
Similar presentations
Yingcai Xiao Game Development Intro to Unreal Engine.
Advertisements

Derived from Kirill Muzykov’s Rocket Mouse Tutorial WakeUpAndCode.com.
GameCamp! and Game Davis Creating a 2D Platformer in Unity.
Guide to Oracle10G1 Introduction To Forms Builder Chapter 5.
Unity 3D game IDE 1.  Unity is a multi-platform, integrated IDE for scripting games, and working with 3D virtual worlds  Including:  Game engine ▪
© 2011 Delmar, Cengage Learning Chapter 8 Building Complex Animations.
SE 320 – Introduction to Game Development Lecture 11: Animations and GoKit Lecturer: Gazihan Alankuş Please look at the last slides for assignments (marked.
Modeling and Animation with 3DS MAX R 3.1 Graphics Lab. Korea Univ. Reference URL :
1 iSee Player Tutorial Using the Forest Biomass Accumulation Model as an Example ( Tutorial Developed by: (
BUILDING RICH MEDIA ELEMENTS. Design Decisions Based on Design Specification  Following the design specification will ensure that the application is.
Advanced Level Course. Site Extras Site Extras consist of four categories: Stationeries Site Trash Designs Components.
Programming with Alice Computing Institute for K-12 Teachers Summer 2011 Workshop.
EEC-693/793 Applied Computer Vision with Depth Cameras Lecture 13 Wenbing Zhao
Introduction to Maya. Maya’s Layout User Interface Elements In Maya, you can tear off menus to create separate floating boxes that you can place anywhere.
Intro to MFC. Open VS and create new project 1)Open MS Visual Studio 2008 Professional (It must be the Professional Edition, the Express Edition will.
Java Software Solutions Lewis and Loftus Chapter 10 1 Copyright 1997 by John Lewis and William Loftus. All rights reserved. Graphical User Interfaces --
Web Games Programming An Introduction to Unity 3D.
XP Tutorial 4 Special Animations. XP New Perspectives on Macromedia Flash MX Special Layers for Animation Animation Using a Motion Guide Layer.
Learning Unity. Getting Unity
SE 320 – Introduction to Game Development Lecture 3: Unity’s Interface and Concepts Lecturer: Gazihan Alankuş Please look at the last two slides for assignments.
Yingcai Xiao Game Development Intro to Unreal Engine.
LESSON #10: Digital Playtesting & Introduction to Character Animation with Mecanim DGMD E-70 Principles of Game Design.
Derived from Kirill Muzykov’s Rocket Mouse Tutorial WakeUpAndCode.com.
Introduction to Matlab Module #10 Page 1 Introduction to Matlab Module #10 – Creating Graphical User Interfaces Topics 1.Overview of GUI Development using.
UFCFSU-30-13D Technologies for the Web An Introduction to Unity 3D.
CIS 205—Web Design & Development Flash Chapter 3 Working with Symbols and Interactivity.
Expressive Intelligence Studio // Center for Games and Playable Media // Unity Pro John Murray Expressive.
INTRO TO UNITY Building your first 3D game. DISCLAIMER  “This website is not affiliated with, maintained, endorsed or sponsored by Unity Technologies.
Yingcai Xiao Game Development with Unity3D Inside/Outside Unity3D.
To play, start slide show and click on circle Lesson 3 Lesson 3 Lesson 3 Lesson 4 Lesson Lesson 4.
Building Games for the Humanities with Unity3D Rudy McDaniel University of Central Florida Orlando, FL USA.
Game Development with Unity3D
Getting Started with Dreamweaver
Welcome! Day1, Lesson 1.
EEC-693/793 Applied Computer Vision with Depth Cameras
Quick Intro to Unity Lecture 2.
Game Development with Unity3D Inside/Outside Unity3D
3GB3 Game Design Unity 3D Basics.
More (C#) Scripting Day 2, Lesson 1.
Introduction to Computer CC111
EEC-693/793 Applied Computer Vision with Depth Cameras
Chapter Topics 15.1 Graphical User Interfaces
Flash Interface, Commands and Functions
Introducing Blender.
Animation Features 4.14.
Creating Complex Animations
1. Introduction to Visual Basic
Presenting Prezi Michael Pelitera
Chap 7. Building Java Graphical User Interfaces
Introducing Blender.
EEC-693/793 Applied Computer Vision with Depth Cameras
Graphical User Interfaces -- Introduction
Introducing Blender.
Unreal Engine and C++ We’re finally at a point where we can start working in C++ with Unreal Engine To get everything set up for this properly, we’re going.
Child Actor Component Templates
Hands-on Introduction to Visual Basic .NET
Editable Attributes (1)
Game Development Intro to Unreal Engine
A Prime Example of HCI Application
DREAMWEAVER MX 2004 Chapter 7 Working with Layers
Getting Started with Dreamweaver
Week 6: Time and triggers!
Chapter 15: GUI Applications & Event-Driven Programming
EEC-693/793 Applied Computer Vision with Depth Cameras
Unity Game Development
Unity Game Development
Exercise : Animated Navigation Structure in Animate (= Flash)
Exercise : Animated Navigation Structure in Flash
Presentation transcript:

Quick Intro to Unreal Lecture 7

My (totally-biased) Thoughts Unity Very clean organization More programmer-friendly (than Unreal) A good model for (parts of) our engine. Strong mobile support Licensing Personal = free, slightly limited Subscription for others No royalties Unreal Very dis-organized Of course…I’m a n00b More powerful* Many FX turned on by default (FSAA, motion blur, etc.) Unity has many of these – just not on by default Probably more graphically advanced. A resource-hog: overheats my PC’s More for non-programmers Blueprints C++ scripting is totally for programmers Limited mobile support Licensing totally free until you make $3K/quarter using it, then unreal gets 5% of profits.

interface Start it up! There are a number of starting projects 1st person, 3rd person, puzzle, racing, etc. Let’s use 3rd person with starter content. World Outliner (like Unity’s Hierarchy): a Scene Graph Parent-child relationships Content Browser (bottom-left): collection of assets Details: (like Unity’s Inspector) View / create components (do this in blueprints) Edit component properties Scene (middle) Click the play button to enter “game mode”

View manipulation Virtually identical to Unity’s ‘F’: Frame selected object (or double-click name) Right-click + WASD + QE Scroll-wheel to zoom Click the view box in the upper-left of the 3d scene to change from: Perspective, Ortho-front, Ortho-side, etc.

Object manipulation [Add a 3d cube] W, E, R toggle translate, rotate, scale Or the buttons in the upper-right of the 3d scene Local / Global button (earth icon next to ^) Numeric values in the Details panel

blueprints Similar, but more pervasive than Prefabs in Unity Different Types To set up a template for a game object (and its components) – like a prefab To set up a game mode Default character The tick rate Default HUD A blueprint for the level (a carryover from UE3, sort-of deprecated)

Different base-types Used as a base when creating a new blueprint or C++ class Actor: close to Unity’s GameObject Very basic functionality Pawn: an actor that can be “possessed” and receive controller input Character: like a pawn, but adds a articulated mesh PlayerController: an input-drived controller for a pawn ActorComponent: a re-usable component that can be added to any actor. … (there are MANY others)

Scripting overview Two types Two examples Visual Scripting (Blueprint) Connect Nodes together Like a flowchart Cool “power” effect while running Good for n00b programmers and artists B*&#@%^-ized C++ It is C++, but it doesn’t look like it Tons of pre-processor hacks to connect to the editor Builds a dll that is loaded by the engine at run-time Much faster than Visual Scripting at run-time Most professionals seem to recommend this Uses Visual Studio 2015 Two examples Bouncing, rotating coin (Visual) Character controller (C++)

Visual Scripting example Import the coin fbx asset Make a new actor blueprint Add a static mesh component (the coin mesh asset) Add a box collider Add variables: rotate-speed (float) translateMin and Max (floats) translatePeriodMultipler (float) … (not really required – just an excuse) Add a update_transform function Takes dt (float) as input Write the spaghetti code Hook it up to the EventTick in the Event Graph

tags and layers Tags Unreal doesn’t have these You can certainly just make a variable for it, though.

Input System Axes and Actions (similar to Unity) Actions: True / False (‘a’ button on gamepad) Axes: slider (-1 to 1 usually) (w/s or left-analog stick) Edit => Project Settings => Input Configurable (remappable) Note the names e.g. “MoveForward” / “Vertical” axes e.g. “Jump” Intentionally not a gamepad / key id or name. [Discuss benefits for game designers]

C++ “scripting” Create a new public C++ class (based on Character) Look at the non-standard macros added to the class. Don’t mess with the “extra” stuff Xyz.Generated.h The macros in front of your class and methods We’ll need to mimic these when expanding the class. My example is from https://docs.unrealengine.com/latest/INT/Programming/Tutorials/PlayerInput/index.html

C++ “scripting”, cont. [Do it and build it]

Interacting with other G.OBJ’s Option1: Make a public GameObject variable plus: level-designer can set it negative: fixed before run-time Option2: Find it by name / tag GameObject.Find or method GameObject.FindGameObjectsByTag or FindGameObjectByTag Can modify what you search for at run-time.

Mecanim overview A rigged / animated model has n clips walk, run, idle, etc. Mecanim does the following: Blends between two animation clips Models a state-diagram You modify animation variables in code. The state diagram will transition to a new animation. Frees you from a lot of repetitive code. First step: Import a model with animation clips (optional) Under import settings, set the clip to loop

mecanim overview, cont. Step2: Open Animator (not Animation) window Step3: Drag clips onto stage Step4: Create transitions between clips Step5: Tweak transition criteria / variables Step6: Set variables in script. [There’s much more you can do with Mecanim] Modify how the two clips are blended over time. Mask off parts of the skeleton …

GUI Overview A 2d overlay (HUD’s, minimaps, etc.) Composed of: A canvas: Unity automatically creates one Buttons, Text-boxes, etc. The layout is pretty self-explanatory Unless you get into sprites…another topic! The 2D button (near the top) is very handy. These elements can (and often do) have scripts! NOTE: import UnityEngine.UI or you won’t see UI objects in script!