1. Displaying Data with Core UI Elements (已看)

2. Responding to User Events for Interactive UIs (已看)

3. Inventory UIs (已看)

4. Playing and Manipulating Sounds

5. Creating Textures, Maps, and Materials

6. Shader Graphs and Video Players

7. Using Cameras

8. Lights and Effects

9. 2D Animation

10. 3D Animation

11. Webserver Communication and Online Version-Control

12. Controlling and Choosing Positions

13. Navigation Meshes and Agents

14. Design Patterns

15. Editor Extensions and Immediate Mode GUI(IMGUI)

16. Working with External Resource Files and Devices

17. Working with Plain Text, XML, and JSON Text Files

18. Virtual Reality and Extra Features

19. Automated Testing

1. Displaying Data with Core UI Elements

  Introduction

Core GameObjects, components, and concepts relating to Unity UI development include:

  • Canvas
  • EventSystem
  • Visual UI controls
  • The Rect Transform component

  Displaying a "Hellow World" UI text message

https://docs.unity3d.com/Manual/StyledText.html

  Displaying a digital clock

  Displaying a digital countdown timer

https://docs.unity3d.com/ScriptReference/RequireComponent.html

  Create a message that fades away

  Displaying a perspective 3D Text Mesh

https://docs.unity3d.com/Manual/class-TextMesh.html

  Creating sophisticated text with TextMeshPro

http://digitalnativestudios.com/textmeshpro/docs/rich-text/

  Displaying an image

  Creating UIs with the Fungs open source dialog system

  Creating a Fungus character dialog with images

http://fungusgames.com/

https://github.com/snozbot/fungus

http://fungusdocs.snozbot.com/conversation_system.html

2. Responding to User Events for Interactive UIs

  Introduction

  Creating UI Buttons to move between scenes

  Animating button properties on mouse-over

https://www.raywenderlich.com/6569-introduction-to-unity-ui-part-2

  Organizing image panels and channing panel depths via buttons

  Displaying the value of an interactive UI Slider

  Displaying a countdown timer graphically with a UI Slider

  Setting custom mouse cursors for 2D and 3D GameObjects

  Setting custom mouse cursors for UI controls

  Interactive text entry with an Input Field

https://docs.unity3d.com/Manual/script-InputField.html

  Toggles and radio buttons via Toggle Groups

  Creating text and image icon UI Dropdown menus

https://docs.unity3d.com/Manual/script-Dropdown.html

  Displaying a radar to indicate the relative locations of objects

https://docs.unity3d.com/ScriptReference/Physics.Raycast.html

3. Inventory UIs

  Introduction

  Creating a simple 2D mini-game-SpaceGril

  Displaying single object pickups with carrying and not-carrying text

  Displaying single object pickups with carrying and not-carrying icons

  Displaying multiple pickups of the same object with multiple status icons

  Using panels to visually outline the inventory UI area and individual items

  Creating a C# inventory slot UI display scripted component

  Using UI Grid Layout Groups to automatically populate a panel

  Displaying multiple pickups of different objects as a list of text via a dynamic List<> of scripted PickUp objects

  Displaying multiple pickups of different objects as text totals via a dynamic Dictionary<> of PickUp objects and enum pickup types

https://learn.unity.com/tutorial/lists-and-dictionaries

4. Playing and Manipulating Sounds

  Introduction

  Playing different  one-off sound effects with a single AudioSource component

  Playing and controlling different sounds each with their own AudioSouce component

  Creating just-in-time AudioSource components at runtime through C# scripting

  Delaying before playing a sound

  Preventing an Audio Clip from restarting if it is already playing

  Waiting for the audio to finish playing before auto-destructing an object

  Creating a metronome through the precise scheduling of sounds with dspTime

  Matching the audio pitch to the animation speed

  Simulating acoustic environments with Reverb Zones

  Adding volume control with Audio Mixers

  Making a dynamic soundtrack with Snapshots

  Balancing in-game audio with Ducking

  Audio visualization from sample specdtral data

  Synchronizing simultaneous and sequential music to create a simple 140 bpm music-loop manager

5. Creating Textures, Maps, and Materials

  Introduction

  Creating a basic material with Standard Shader (Specular setup)

  Adapting a basic material from Specular setup to Metallic

  Applying Normal maps to a Material

  Adding Transparency and Emission maps to a material

  Highlighting materials at mouse-over

  Adding Detail maps to a material

  Fading the transparency of a material

6. Shader Graphs and Video Players

  Introduction

  Playing videos by manually adding a VideoPlayer component to a GameObject

  Using scripting to control video playback on scene textures

  Using scripting to play a sequence of videos back-to-back

  Creating and using a simple Shader Graph

  Creating a glow effect with Shader Graph

  Toggling a Shader Graph color glow effect through C# code

7. Using Cameras

  Introduction

  Creating the basic scene for this chapter

  Creating a picture-in-picture effect

  Swithcing between multiple cameras

  Making textures from screen content

  Zooming a telescopic camera

  Displaying a minimap

  Creating an in-game surveillance Camera

  Working with Unity's multi-purpose camera rig

  Using Cinemachine ClearShot to switch cameras to keep the player in shot

  Letting the player switch to a Cinemachine FreeLook camera

8. Lights and Effects

  Introduction

  Directional Light with cookie Texture to simulate a cloudy day

  Creating and applying a cookie texture to as spotlight

  Adding a custom Reflection map to a scene

  Creating a laser aim with a projector

  Enhancing the laser aim with a Line Renderer

  Setting up an environment with Procedural Skybox and Directional Light

  Reflecdting surrounding objects with Reflection Probes

  Using Material Emission to bake light from a glowing lamp onto scene objects

  Lighting a simple scene with Lightmaps and Light Probes

9. 2D Animation

  Introduction

  Flipping a sprite horizontally - the DIY approachj

  Flipping a sprite horizontally - using Animator State Chart and Transitions

  Animating body parts for character movement events

  Creating a three-frame animation clip to make a platform continually animate

  Making a platform start falling once stepped on using a Trigger to move animation from one state to another

  Creating animation clips from sprite sheet sequences

  Creating a platform game with Tiles and Tilemaps

  Creating a game with the 2D Gamekit

10. 3D Animation

  Introduction

  Configuring a character's Avatar and idle animation

  Moving your character with root motion and Blend Trees

  Mixing animations with Layers and Masks

  Organizing States into Sub-state Machiners

  Transforming the Character Controller vias scripts

  Adding rigid props to animated characters

  Using Animation Events to throw an object

  Applying Ragdoll physics to a character

  Rotating the character's torso to aim a weapon

  Creating geometry with Probuilder

  Creating a game with the 3D Gamekit

  Importing third-party 3D models and animations from Mixamo

11. Webserver Communication and Online Version-Control

  Introduction

  Setting up a leaderboard using PHP and a database

  Unity game communication with web-server leaderboard

  Creating and cloning a GitHub respository

  Adding a Unity project to a local Git respository, and pushing files up to GitHub

  Unity project version-control using GitHub for Unity

  Preventing your game from running on unknown servers

12. Controlling and Choosing Positions

  Introduction

  Player control of a 2D GameObject (and limiting the movement  within a rectangle)

  Player control of a 3D GameObject (and limiting the movement within a rectangle)

  Choosing destinations - finding a random spwan point

  Choosing destinations - finding the nearest spawn point

  Choosing destinations - respawning to the most recently passed checkpoint

  Moving objects by clicking on them

  Firing projectiles in the direction of movement

13. Navigation Meshes and Agents

  Introduction

  NPC to travel to destination while avoiding obstacles

  NPC to seek or flee from a moving object

  Point-add-click move to object

  Point-and-click move to die

  Point-and-click Raycast with use-defined higher-cost Navigation Areas

  NPC NavMeshAgent to follow waypoints in a sequence

  Controlling object group movement through flocking

  Creating a movable NavMesh Obstacle

14. Design Patterns

  Introduction

  State-driven behavior DIY states

  State-driven behavior using the State Design Pattern

  State-driven behavior with Unity Scriptable Objects

  Publisher-Subscriber pattern C# delegates and events

  Model-View-Controller (MVC) pattern

15. Editor Extensions and Immediate Mode GUI(IMGUI)

  Introduction

  Menu items to log messages and clear the console

  Displaying a panel with text data

  An interactive panel with persistent storage

  Creating GameObjects parenting, and registering Undo actions

  Working with selected objects and deactivating menu items

  Menu item to create 100 randomly positioned prefab clones

  A progress bar to display proportion completed of Editor extension processing

  An editor extension to allow pickup type (and parameters) to be changed at design time via a custom Inspector UI

  An editor extension to have an object-creator GameObject, with buttons to instantiate different pickups at cross-hair object location in scene

  Extensible class-based code architecture to manage complex IMGUIS

16. Working with External Resource Files and Devices

  Introduction

  Loading external resource files - using Unity Default Resources

  Loading external resource files by manually storing files in the Unity Resources or StreamingAssets folders

  Saving Project files into Unity Asset Bundles

  Loading resources from Unity Asset Bundles

17. Working with Plain Text, XML, and JSON Text Files

  Introduction

  Loading external text files using the TextAsset public variable

  Loading external text files using C# file streams

  Saving external text files with C# file streams

  Loading and parsing external XML

  Creating XML text data manually using XMLWritter

  Saving and loading XML text data automatically through serialization

  Creating JSON strings from individual objects and list of objects

  Creating individual objects and Lists of objects from JSON strings

18. Virtual Reality and Extra Features

  Introduction

  Saving screenshots from the game

  Saving and loading player data - using static properties

  Saving and loading player data - using PlayerPrefs

  Loading game data from a text file map

  UI Slider to change game quality settings

  Pausing the game

  Implementing show motion

  Using Gizmo to show the currently selected object in a scene panel

  Editor snap-to grid drawn by Gizmo

  Create a VR project

  Adding 360-degree videos to a VR project

  Working with VR content inside a VR environment - the XR Editor

19. Automated Testing

  Introduction

  Generating a default test script class

  A simple unit test

  Paramererizing tests with a data provider method

  Unit testing a simple health script class

  Creating and executing a unit test in Play mode

  PlayMode testing a door animation

  PlayMode and Unit Testing a player health bar with events, logging, and exceptions

Unity 2018 Cookbook (Matt Smith 著)的更多相关文章

  1. Unity 2018.2.8 旧版本安装包和破解软件

    声明:本文所提供的所有软件均来自于互联网,仅供个人研究和学习使用,请勿用于商业用途,下载后请于24小时内删除,请支持正版! 最近Unity官网下载的旧版本,都无法正常破解.此链接有之前下载的离线安装包 ...

  2. Getting.Started.with.Unity.2018.3rd.Edition

    Getting Started with Unity 2018 - Third Edition: A Beginner's Guide to 2D and 3D game development wi ...

  3. Hands-On Unity 2018 x 移动游戏开发教程

    Hands-On Unity 2018 x Game Development for Mobile 使用Unity 2018.2创建具有出色游戏功能的精彩游戏   想学习在Unity制作游戏,但不知道 ...

  4. Unity 2018中的图形渲染

    https://mp.weixin.qq.com/s?__biz=MzU5MjQ1NTEwOA==&mid=2247490249&idx=1&sn=d86083e33d9884 ...

  5. Unity 2018 Artificial Intelligence Cookbook Second Edition (Jorge Palacios 著)

    https://github.com/PacktPublishing/Unity-2018-Artificial-Intelligence-Cookbook-Second-Edition 1 Beha ...

  6. Unity 2018 By Example 2nd Edition

    Unity is the most exciting and popular engine used for developing games. With its 2018 release, Unit ...

  7. Unity 2018 Game Development in 24 Hours Sams Teach Yourself 3rd Edition

    最新的Unity2018自学教材,如果新入坑Unity,直接从2018开始看吧! 点击下载提取码:tngj

  8. 将 Unity5.3 的老项目升级到 Unity 2018.3 遇到的些许问题。

    删除 ParticleEmmiter 等废弃的接口: 删除 WindowsSecurityContext System.Security.Principal.WindowsIdentity 在 .Ne ...

  9. Unity 2018 version class.jar path

    { C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes }

随机推荐

  1. 现象:SpringApplication.run后面的语句未执行

    下面的两种情况下,红色的log.info中的内容一直没有执行,和预期不符. 看来,需要在@PostConstruct修饰的函数.CommandLineRunner的run方法中调用 另外的线程 来执行 ...

  2. WPF 使用EventTrigger时设置SouceName技巧

    使用情节触发器时,如果有触发源/触发源控件时可以将情节触发器放置最顶级的面板控件的触发器中. 通过blend这个神器真的是可以学到不少东西. 代码: //情节动画放置于顶级控制面板 <Widno ...

  3. 愉快地使用Groovy Shell

    这是一篇有关Groovy Shell的帖子,以及它如何在日常工作中为您提供帮助(只要您是软件开发人员).无论您使用哪种编程语言或技术,都可以从Groovy Shell中受益.唯一真正的要求是您能够编写 ...

  4. Disruptor系列(三)— 组件原理

    前言 前两篇文章都是从github wiki中翻译而来,旨在能够快速了解和上手使用Disruptor.但是为了能够掌握该技术的核心思想,停留在使用层面还远远不够,需要了解其设计思想,实现原理,故这篇从 ...

  5. 点云3D 目标检测

    点云 点云是雷达采集到的信息. 关于点云基本介绍参考https://zhuanlan.zhihu.com/p/22581673 ros中的点云消息结构:http://docs.ros.org/jade ...

  6. 创建WPF项目

    参考: https://www.cnblogs.com/yhcao/p/6237611.html https://mahapps.com/guides/reporting-issues.html ht ...

  7. python基础(16):内置函数(二)

    1. lamda匿名函数 为了解决⼀些简单的需求⽽设计的⼀句话函数 # 计算n的n次⽅ def func(n): return n**n print(func(10)) f = lambda n: n ...

  8. 转:用 Python 一键分析你的上网行为, 看是在认真工作还是摸鱼

    简介 想看看你最近一年都在干嘛?看看你平时上网是在摸鱼还是认真工作?想写年度汇报总结,但是苦于没有数据?现在,它来了. 这是一个能让你了解自己的浏览历史的Chrome浏览历史记录分析程序,当然了,他仅 ...

  9. PlayJava Day001

    今日所学: /* 2019.08.19开始学习,此为补档. */ 三目(元)运算符 格式:(表达式)? 表达式为true返回值A : 表达式为false返回值B 例: String s=2>3 ...

  10. CSS3 盒模型---css初始化会用到:box-sizing: border-box 盒子大小为 width 就是说 padding 和 border 是包含到width里面的

    CSS3中可以通过box-sizing 来指定盒模型,即可指定为content-box.border-box,这样我们计算盒子大小的方式就发生了改变. 可以分成两种情况: 1.box-sizing: ...