70
Unity VR Mentoring 2019 Diane Hanke, Toni Wirth, Sönke Schmidt & Thushan Satkunanathan Freie Universität Berlin 24. Mai 2019

Unity VR - Mentoring 2019 - mi.fu-berlin.de · 1. Blockkurs Boa, alles voll 3D hier! Der Weg zum ersten eigenen VR-Spiel! É Einführung und Motivation É Unity installieren É Unity-Engine

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

  • Unity VRMentoring 2019

    Diane Hanke, Toni Wirth, Sönke Schmidt & Thushan SatkunanathanFreie Universität Berlin

    24. Mai 2019

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 2

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 3

  • Programm

    1. Blockkurs

    Boa, alles voll 3D hier!Der Weg zum ersten eigenen VR-Spiel!É Einführung und MotivationÉ Unity installierenÉ Unity-EngineÉ Asset-StoreÉ Das Game

    ,

    FU Berlin, Unity VR, 24. Mai 2019 4

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 5

  • Was ist eigentlich Unity VR?

    Unity: Multiplattform-Engine für 3D und 2D

    Virtual Reality beschreibt eine Technologie, bei der die Welt vollständigvirtuell ist und mit der auf eine realistische Art und Weise interagiertwerden kann.

    ,

    FU Berlin, Unity VR, 24. Mai 2019 6

  • Einführung und Motivation

    Was ist mit Unity VR möglich?https://unity3d.com/de/unity/features/multiplatform/vr-arhttps://unity.com/de/madewith/coco-vrhttps://unity.com/de/madewith/rick-and-morty-virtual-rick-ality

    ,

    FU Berlin, Unity VR, 24. Mai 2019 7

    https://unity3d.com/de/unity/features/multiplatform/vr-arhttps://unity.com/de/madewith/coco-vrhttps://unity.com/de/madewith/rick-and-morty-virtual-rick-ality

  • Was brauche ich für Unity VR?

    É Virtual-Reality-Brille + Hardware zur VerwendungÉ Computer/Laptop mit Unity-InstallationÉ Eine coole Spielidee!

    ,

    FU Berlin, Unity VR, 24. Mai 2019 8

  • Was wir mit euch vorhaben

    ,

    FU Berlin, Unity VR, 24. Mai 2019 9

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 10

  • Unity installieren

    É online über: https://unity3d.com

    Hinweis: Wir arbeiten mit der Version 2019.1.2f1 und empfehlen euch,ebenfalls mit dieser Version zu arbeiten, wenn ihr das Projekt nachbaut. Soschließen wir mögliche Fehlerquellen durch Versionsunterschiede aus.

    ,

    FU Berlin, Unity VR, 24. Mai 2019 11

    https://unity3d.com

  • Unity einrichten

    1. SchrittÉ Website öffnenÉ Unity-ID anlegen

    ,

    FU Berlin, Unity VR, 24. Mai 2019 12

  • Unity einrichten

    2. SchrittÉ Personal

    downloaden

    ,

    FU Berlin, Unity VR, 24. Mai 2019 13

  • Unity einrichten

    3. SchrittÉ Download

    Installer anklicken

    ,

    FU Berlin, Unity VR, 24. Mai 2019 14

  • Unity einrichten

    4. SchrittÉ folgende

    Komponentenbrauchen wir

    ,

    FU Berlin, Unity VR, 24. Mai 2019 15

  • Java Development Kit

    JDK wird benötigt, um Java-Anwendungen zu entwickeln. Android basiert zueinem großen Teil auf Java.

    É Gehe auf https://www.oracle.com/technetwork/java/javase/downloads/jdk12-downloads-5295953.html

    É Gehe zum Kasten Java SE Development Kit 12 . . .É Klicke auf Accept License AgreementÉ Lade die für dein System passende Version herunter

    ,

    FU Berlin, Unity VR, 24. Mai 2019 16

    https://www.oracle.com/technetwork/java/javase/downloads/jdk12-downloads-5295953.htmlhttps://www.oracle.com/technetwork/java/javase/downloads/jdk12-downloads-5295953.html

  • Android Software Development Kit

    Wir benötigen das Android SDK mit den Platform Tools und dem GoogleUSB Treiber, um Anwendungen für Android zu entwickeln.

    É Gehe auf https://developer.android.com/studio/index.htmlÉ Klicke auf Download Android StudioÉ Starte den Android Studio-InstallerÉ Starte Android StudioÉ Wähle als Installationstyp Standard ausÉ Beende die Einrichtung durch Klicken auf Finish

    Hinweis: Merke dir den Installationspfad von dem Android SDK, falls duihn änderst!

    ,

    FU Berlin, Unity VR, 24. Mai 2019 17

    https://developer.android.com/studio/index.html

  • Android SDK

    SDK ManagerÉ Klicke auf

    ConfigureÉ Klicke auf SDK

    Manager

    ,

    FU Berlin, Unity VR, 24. Mai 2019 18

  • Android SDK

    ,

    FU Berlin, Unity VR, 24. Mai 2019 19

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 20

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 21

  • Login

    É Wir starten Unity

    É Registrierung:

    É E-Mail:[email protected]

    É Passwort: Fugast123

    ,

    FU Berlin, Unity VR, 24. Mai 2019 22

    mailto:[email protected]

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 23

  • Aufbau der Engine

    ,

    FU Berlin, Unity VR, 24. Mai 2019 24

  • Aufbau der Engine

    1. Project-View: Projektansicht, in der alle Dateien angezeigt werden2. Hierarchy: Anzeige der GameObjects der aktuellen Szene; per Drag

    and Drop editierbar

    3. Scene-View: Vorschau der aktuellen SzeneGame-View: Vorschau des „echten“ fertigen SpielsAsset Store: integrierter Store zum Download von Assets (Modelle,Sounds, Plug-ins, . . . )

    4. Toolbar: Werkzeug-Bereich5. Inspector: dynamischer Bereich, hauptsächlich zum Modifizieren der

    GameObjects über diverse Einstellungsfenster und das Hinzufügen vonKomponenten

    Hinweis: Das Layout der Fenster ist frei wählbar. Einfach per Drag andDrop die Fenster nach Belieben verschieben und über den Reiter Windowweitere Fenster anzeigen lassen.

    ,

    FU Berlin, Unity VR, 24. Mai 2019 25

  • Dimension in Unity

    Dreidimensionaler Vektor, mit (x,y,z), für Richtungen, Skalierungen undRotationen.

    Hinweis: Unity arbeitet mit Unity-Einheiten, wobei eine Unity-Einheit imWelt-Koordinatensystem einem Meter entspricht.

    ,

    FU Berlin, Unity VR, 24. Mai 2019 26

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 27

  • Asset Store

    https://assetstore.unity.com/

    ,

    FU Berlin, Unity VR, 24. Mai 2019 28

    https://assetstore.unity.com/

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 29

  • Projekt anlegen

    Projekt erstellen

    É Klicke auf New

    É Titel des Projekts

    É Speicherort wählen (in Z:\)

    É 3D Projekt erstellen

    ,

    FU Berlin, Unity VR, 24. Mai 2019 30

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 31

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 32

  • Spielfeld erstellen

    GameObject > 3D Object > Plane

    É setze im Inspector folgende WerteÉ Position: 0, 0, 0É Scale: 1, 1, 1

    ,

    FU Berlin, Unity VR, 24. Mai 2019 33

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 34

  • Camera

    É Default Main Camera löschenÉ Main Camera Prefab reinziehenÉ Inspector Background-Einstellungen:

    É Clear Flags > Skybox

    ,

    FU Berlin, Unity VR, 24. Mai 2019 35

  • Player

    É GameObject > Create EmptyÉ umbenennen zu PlayerÉ Prefab Main Camera zum Child

    von Player machen

    ,

    FU Berlin, Unity VR, 24. Mai 2019 36

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 37

  • Player

    Player konfigurieren

    É setze im Inspector folgendeWerteÉ Position: 0, 1.6, 0

    É Add Component > CapsuleCollider

    É Add Component > RigidbodyÉ Haken raus bei Use Gravity

    ,

    FU Berlin, Unity VR, 24. Mai 2019 38

  • Player Health

    1 using System.Collections;2 using System.Collections.Generic;3 using UnityEngine;4 //um eine neue szene zu laden5 using UnityEngine.SceneManagement;

    7 public class PlayerHealth : MonoBehaviour8 {9 public float Health;

    11 // Start is called before the first frame update12 void Start()13 {14 Health = 100f;15 }

    17 // Update is called once per frame18 void Update()19 {20 if(Health == 0)21 {22 //Load-Scene: Einfügen von Code für Lose-Bildschirm23 }24 }

    ,

    FU Berlin, Unity VR, 24. Mai 2019 39

  • Player Health

    1 void OnTriggerEnter(Collider collision)2 {3 if (true)4 {5 Health −= 10f;6 }7 }8 }

    ,

    FU Berlin, Unity VR, 24. Mai 2019 40

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 41

  • GvrEditorEmulator

    Virtuelle Steuerung der Google Daydream mit Tastatur und Maus,auch ohne Brille und Controller physisch zu nutzen.

    É GoogleVR > Prefabs > GvrEditorEmulatorÉ in die Hierarchy ziehen

    ,

    FU Berlin, Unity VR, 24. Mai 2019 42

  • GvrEventSystem

    Dient als Bridge zwischen dem EventSystem von Daydream indas Unity EventSystem. Einfach gesagt: übersetzt die Events vonder Daydream in Events in Unity.

    É GoogleVR > Prefabs > EventSystem > gvrEventSystemÉ in die Hierarchy ziehen

    ,

    FU Berlin, Unity VR, 24. Mai 2019 43

  • GvrInstantPreviewMain

    Überträgt die Game-View in die Daydream-View.

    É GoogleVR > Prefabs > InstantPreview > GvrInstantPreviewMainÉ Prefab in die Hierarchy ziehen

    ,

    FU Berlin, Unity VR, 24. Mai 2019 44

  • VR Objects

    Hierarchy mit VR Objekten

    ,

    FU Berlin, Unity VR, 24. Mai 2019 45

  • Spiel testen

    Play Button über der Game View drücken.

    É Bewegung des Headsets: Alt + MausbewegungÉ Neigung simulieren: Strg + Mausbewegung

    ,

    FU Berlin, Unity VR, 24. Mai 2019 46

  • Controller

    Einbinden des Controllers

    É GoogleVr > prefab > Controller >GvrControllerMain

    É Prefab in die Hierarchy ziehen

    É Asset > PrefabControllerPoint0É Prefab in den Player in Hierarchy

    ziehen (zum Child von Playermachen)

    Hinweis: Ihr müsst unser Prefab benutzen!

    ,

    FU Berlin, Unity VR, 24. Mai 2019 47

  • Spiel testen

    Play Button über der Game View drücken.

    É Controller bewegen: Shift + Maus

    ,

    FU Berlin, Unity VR, 24. Mai 2019 48

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 49

  • Gegner Objekt

    GameObject > 3D Object > Quad

    É erstellt„Rahmen“fürunser Bild

    É Bild hineinziehenÉ Add Component >

    EventTriggerÉ Haken unter Mesh

    Collider bei:Convex und isTrigger

    ,

    FU Berlin, Unity VR, 24. Mai 2019 50

  • Gegner EventListener

    1 using UnityEngine;2 using System.Collections;3 using System.Collections.Generic;4 using UnityEngine.EventSystems;

    6 public class EventListener : MonoBehaviour7 {8 //Leben9 int hp;

    10 Health script;11 GameObject go;

    13 void Start()14 {15 //holen das Canvas in dem das Script gespeichert ist16 go = GameObject.FindWithTag("GameController");17 //Script holen (Auch wenn das Health Script noch nicht angelegt ist,

    kommt aber gleich)18 script = GameObject.Find("Canvas").GetComponent();19 hp = 100;20 }

    ,

    FU Berlin, Unity VR, 24. Mai 2019 51

  • Gegner EventListener

    1 public void onEnter()2 {3 //25hp pro Treffer abziehen4 hp −= 25;

    6 if (hp

  • Gegner Inspector

    É Add Component >Rigidbody

    É Inspector siehtnun so aus:

    ,

    FU Berlin, Unity VR, 24. Mai 2019 53

  • Gegner konfigurieren

    É benenne in derHistory Quad zubullet um

    ,

    FU Berlin, Unity VR, 24. Mai 2019 54

  • Gegner Sound

    Das folgende kommtmit zu bullet rein:É ziehe Audio-Datei

    in Project-ViewÉ Add Component >

    Audio SourceÉ ziehe Audio-Datei

    in AudioClipÉ Haken bei: Play

    On Awake undLoop

    Hinweis: Wenn ihr Sprachnachrichten verwendet, müsst ihr sie eventuellvorher konvertieren!

    ,

    FU Berlin, Unity VR, 24. Mai 2019 55

  • Gegner Movement

    1 using System.Collections;2 using System.Collections.Generic;3 using UnityEngine;

    5 public class bulletMovement : MonoBehaviour6 {7 public float speed;8 public GameObject player;

    10 // Update is called once per frame11 void Update()12 {13 Vector3 localPosition = player.transform.position − transform.position;14 localPosition = localPosition.normalized;15 transform.Translate(localPosition.x ∗16 Time.deltaTime ∗ speed, localPosition.y ∗17 Time.deltaTime ∗ speed, localPosition.z ∗ Time.deltaTime ∗ speed);18 }19 }

    ,

    FU Berlin, Unity VR, 24. Mai 2019 56

  • Bullet EventTrigger

    É EventTrigger > Add NewEvent Type > PointerClick

    É auf + Zeichen klickenÉ EventListener > OnEnter

    É spricht Funktion beiKlick an

    É Prefab bullet in denKasten ziehen

    ,

    FU Berlin, Unity VR, 24. Mai 2019 57

  • Gegner Prefab

    É erzeuge Prefab von bullet, indemdu es aus der Hierarchy einfachin die Project-View ziehst

    ,

    FU Berlin, Unity VR, 24. Mai 2019 58

  • Spawnfelder

    SpawnfelderÉ GameObject > Create EmptyÉ Create Empty in Hierarchy umbenennen zu „Spawn1“

    ,

    FU Berlin, Unity VR, 24. Mai 2019 59

  • Spawnfelder

    Rechtsklick auf Spawn1 > Copy > 3x in Hierarchy einfügen

    É umbenennen zu Spawn2, Spawn3, Spawn4É Position anpassen:

    É Spawn1: 0, 1.5, 6É Spawn2: 6, 1.5, 0É Spawn3: -6, 1.5, 0É Spawn4: 0, 1.5, -6

    ,

    FU Berlin, Unity VR, 24. Mai 2019 60

  • Gegner spawnen

    Gegner Objekten ein Script hinzufügen

    É Inspector vonSpawn1 wählen

    É Add Component >New script

    É Name:Enemyspawn

    É wähle Edit Scriptdurch Klick aufdas Zahnrad

    ,

    FU Berlin, Unity VR, 24. Mai 2019 61

  • Gegner spawnen

    1 using System.Collections;2 using System.Collections.Generic;3 using UnityEngine;

    5 public class Enemyspawn : MonoBehaviour6 {7 //Vorlage für den Gegner8 public GameObject enemy_pref;9 float maxTime = 35;

    10 float minTime = 30;

    12 //aktuelle Zeit13 private float time;14 //Zeitpunkt des Spawns15 private float spawnTime;

    17 void Start()18 {19 SetRandomTime();20 time = minTime;21 }

    ,

    FU Berlin, Unity VR, 24. Mai 2019 62

  • Gegner spawnen

    1 // Update is called once per frame2 void FixedUpdate()3 {4 //zählt die Zeit hoch5 time += Time.deltaTime;

    7 //checkt die Zeit8 if(time >= spawnTime)9 {

    10 SpawnEnemy();11 SetRandomTime();12 }13 }

    15 //spawnt Objekt und setzt die Zeit zurück16 void SpawnEnemy()17 {18 time = minTime;19 GameObject enemy = GameObject.Instantiate(enemy_pref, transform.position,

    Quaternion.identity);20 }

    ,

    FU Berlin, Unity VR, 24. Mai 2019 63

  • Gegner spawnen

    1 void SetRandomTime()2 {3 spawnTime = Random.Range(minTime, maxTime);4 }5 }

    ,

    FU Berlin, Unity VR, 24. Mai 2019 64

  • Gegner spawnen

    Public Variablen nutzen

    É Speichern im Editor und zu Unity wechselnÉ bullet-Prefab aus Project-View in das Feld „Enemy_pref“ziehen

    ,

    FU Berlin, Unity VR, 24. Mai 2019 65

  • Inhalt

    ProgrammEinführung und MotivationInstallation der ToolsUnity Engine

    LoginAufbau der Engine

    Asset Store

    Projekt anlegenCyberslash

    SpielfeldCameraPlayerSteuerungGegnerHighscore

    ,

    FU Berlin, Unity VR, 24. Mai 2019 66

  • Highscore UI

    É GameObject > UI >Canvas

    É GameObject > UI > TextÉ Text als Child des Canvas

    anlegenÉ Canvas den Tag

    GameController gebenÉ Add Component > New

    Script > Name: Health

    ,

    FU Berlin, Unity VR, 24. Mai 2019 67

  • Highscore Script

    1 using System.Collections;2 using System.Collections.Generic;3 using UnityEngine;4 using UnityEngine.UI;

    6 public class Health:MonoBehaviour {

    8 public int score;9 Text text;

    11 void Start ()12 {13 //holen den Children-Text des Canvas14 text = GetComponentInChildren();15 //initalisieren den Score mit 016 score = 0;17 setScore(score);18 }

    20 //mit dieser Funktion sprechen wir den Score an21 public void setScore(int score)22 {23 text.text = "Score: " + score;24 }25 }

    ,

    FU Berlin, Unity VR, 24. Mai 2019 68

  • Game Over

    Herzlichen Glückwunsch!

    Ihr habt euer erstes eigenes Spiel gebaut!

    ,

    FU Berlin, Unity VR, 24. Mai 2019 69

  • ReferenzenBildquellen:É https://www.google.com/search?q=unity+vr+buch&safe=off&rlz=

    1C1ASRM_enDE822DE822&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiB95Xa_tHhAhXEsKQKHbnTCP8Q_AUIDygC&biw=1745&bih=861#imgrc=HqS5ZjHus78kkM:

    É https://upload.wikimedia.org/wikipedia/commons/8/8a/Official_unity_logo.png

    É https://www.offgamers.com/blog/wp-content/uploads/2015/11/hearthstone-logo-310x310.jpg

    É https://upload.wikimedia.org/wikipedia/en/1/1b/Umbrella_Corps_cover_art.jpg

    É http://cfile22.uf.tistory.com/image/2502EA4E58A723D1314642É https://i0.wp.com/timemanagementninja.com/wp-content/uploads/

    2014/02/Pause-Button-Key.jpg?resize=600%2C361&ssl=1É https://seeklogo.com/images/V/

    visual-studio-2015-logo-31D5DD049E-seeklogo.com.jpgÉ https://upload.wikimedia.org/wikipedia/commons/thumb/8/8d/

    Monodevelop_Logo.svg/1024px-Monodevelop_Logo.svg.png,

    FU Berlin, Unity VR, 24. Mai 2019 70

    https://www.google.com/search?q=unity+vr+buch&safe=off&rlz=1C1ASRM_enDE822DE822&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiB95Xa_tHhAhXEsKQKHbnTCP8Q_AUIDygC&biw=1745&bih=861##imgrc=HqS5ZjHus78kkM:https://www.google.com/search?q=unity+vr+buch&safe=off&rlz=1C1ASRM_enDE822DE822&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiB95Xa_tHhAhXEsKQKHbnTCP8Q_AUIDygC&biw=1745&bih=861##imgrc=HqS5ZjHus78kkM:https://www.google.com/search?q=unity+vr+buch&safe=off&rlz=1C1ASRM_enDE822DE822&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiB95Xa_tHhAhXEsKQKHbnTCP8Q_AUIDygC&biw=1745&bih=861##imgrc=HqS5ZjHus78kkM:https://www.google.com/search?q=unity+vr+buch&safe=off&rlz=1C1ASRM_enDE822DE822&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiB95Xa_tHhAhXEsKQKHbnTCP8Q_AUIDygC&biw=1745&bih=861##imgrc=HqS5ZjHus78kkM:https://upload.wikimedia.org/wikipedia/commons/8/8a/Official_unity_logo.pnghttps://upload.wikimedia.org/wikipedia/commons/8/8a/Official_unity_logo.pnghttps://www.offgamers.com/blog/wp-content/uploads/2015/11/hearthstone-logo-310x310.jpghttps://www.offgamers.com/blog/wp-content/uploads/2015/11/hearthstone-logo-310x310.jpghttps://upload.wikimedia.org/wikipedia/en/1/1b/Umbrella_Corps_cover_art.jpghttps://upload.wikimedia.org/wikipedia/en/1/1b/Umbrella_Corps_cover_art.jpghttp://cfile22.uf.tistory.com/image/2502EA4E58A723D1314642https://i0.wp.com/timemanagementninja.com/wp-content/uploads/2014/02/Pause-Button-Key.jpg?resize=600%2C361&ssl=1https://i0.wp.com/timemanagementninja.com/wp-content/uploads/2014/02/Pause-Button-Key.jpg?resize=600%2C361&ssl=1https://seeklogo.com/images/V/visual-studio-2015-logo-31D5DD049E-seeklogo.com.jpghttps://seeklogo.com/images/V/visual-studio-2015-logo-31D5DD049E-seeklogo.com.jpghttps://upload.wikimedia.org/wikipedia/commons/thumb/8/8d/Monodevelop_Logo.svg/1024px-Monodevelop_Logo.svg.pnghttps://upload.wikimedia.org/wikipedia/commons/thumb/8/8d/Monodevelop_Logo.svg/1024px-Monodevelop_Logo.svg.png

    ProgrammEinführung und MotivationInstallation der ToolsUnity EngineLoginAufbau der Engine

    Asset StoreProjekt anlegenCyberslashSpielfeldCameraPlayerSteuerungGegnerHighscore