
unity
Ding_zhiyuan
精学精用
展开
-
Unity学习——UGUI开发之滑动条Slider
首先我们先观察Slider的各属性 Background为滑动条的背景图片 Fill为滑动条的前置图片,即滑轮划过之后显示的图片 Handle为滑轮的图片 如何设置与众不同的滑动条呢?很简单只需要改变上述三个图片就OK了, 该控件我只是将背景图片设置为黑灰色的图片,前置图片设置为绿色图片,滑轮设置为一个小球,在感觉上就比默认的Slider上档次多了。原创 2017-09-26 12:17:36 · 4402 阅读 · 2 评论 -
unity学习——事件机制(观察者模式)
在C#中的事件机制便是以委托作为基础的。下面我们来做一个小例子:场景中一个按妞,点击按妞,通过摄像机上的脚本来打印一句话。 1.定义委托类型,确定回调方法原型。 public delegate void buttonDelegate(); 2.定义事件成员。 public event buttonDelegate buttonEvent; 3.定义触发事件的方法。 priva原创 2017-09-20 20:31:57 · 1138 阅读 · 0 评论 -
unity学习——委托delegate的使用
初次接触c#的委托机制,感觉非常方便使用,下面是一个简单的委托使用的例子。目的:实现按下键盘上左右键能使三个cube物体同时移动1.首先创建一个unity场景(非常简单包括一个主相机,三个cube物体cube1,cube2,cube3) 2.建立两个C#脚本,一个名为SmartCube,另一个名为CubeManager SmartCube的代码如下:using System.Co原创 2017-09-12 16:18:57 · 808 阅读 · 0 评论 -
unity学习——委托(带参数方法的使用)
这是一个只具有打印功能的脚本using System.Collections;using System.Collections.Generic;using UnityEngine;public class DelegateScript : MonoBehaviour { //声明一个委托类型,它的实例引用一个方法 delegate void MyDelegate(int num);原创 2017-09-12 16:51:37 · 5379 阅读 · 0 评论 -
unity学习——初识unity3D中的协程
unity3D是单线程的,因此它同样实现了协程机制来实现一些类似于多线程的功能。一个很好的例子就是使一个游戏对象的透明度随着时间逐渐降低,直至完全无法看到,我们是无法通过直接调用一个方法来实现对折时间而逐渐减少一个对象的alpha值的。例如下面这段代码: void Fade() { for(float f = 1f; f >= 0; f -= 0.1f)原创 2017-09-13 15:52:21 · 460 阅读 · 0 评论 -
untiy学习——开启协程
继上一篇,我们要调用Fade方法,我们就要使用unity3D中的StartCoroutine方法。 下面我们就通过StartCoroutine方法来开启定义协程Fade,代码如下:using System.Collections;using System.Collections.Generic;using UnityEngine;using System;public class C原创 2017-09-13 18:51:44 · 970 阅读 · 0 评论 -
unity学习——协程的停止StopCoroutine
StopCoroutine方法和StartCoroutine方法类似,也有两个重载。 void StopCoroutine(string methodName) void StopCoroutine (IEnumerator routine) 该方法既可以将协程方法的方法名作为一个string型的参数传入,也可以将IEnumerator 类型的参数传入。 接下来介绍一下StopCorouti原创 2017-09-13 19:18:09 · 10251 阅读 · 0 评论 -
unity学习——使用协程实现延时效果
上一篇中我们提到了使用WaitForSeconds方法来实现延时效果。现在我们来介绍使用WaitForFixedUpdate方法实现。 WaitForFixedUpdate方法也必须配合yield语句使用。从它的类名上就可以知道它的功能,暂停协程知道下一次FixedUpdate时才会继续执行协程,因此它的构造函数也十分简单,它不需要额外的参数。using System.Collections;原创 2017-09-14 15:50:14 · 5911 阅读 · 0 评论 -
unity学习——单例模式
顾名思义单例模式表达的是只能创建一个实例。通常用在需要统一管理某项实物的时候用到。单例模式我们是通过将构造函数设为私有来实现。 using System.Collections;using System.Collections.Generic;using UnityEngine;public class SounderManager {//不能继承MonoBehaviour priva原创 2017-09-14 16:51:36 · 428 阅读 · 0 评论 -
unity学习——值类型和引用类型
在分析C#中的值类型和引用类型之前,先通过两个例子来使抽象的概念变得更加具体而生动。 假设你正在看一本书,而此时你的朋友也很想跟看你手上的那本书。为了能让你朋友看到,要么你将自己的书借给对方,要么在复制一份副本给他。无论怎么做,都是在对书本身进行操作,而复制后的两本书完全是独立的、没有关系的。那么这种行为,可以类比为C#中值类型行为。 换一种假设,假设你正在看电视,换台、调节音量等对原创 2017-09-19 17:29:02 · 3553 阅读 · 0 评论 -
Unity学习——UGUI制作技能的冷却效果
技能冷却的原理是控制Image中的填充效果为Filled时的FilledAmount属性值的依次减少,从而产生技能的冷却效果。 首先我们需要准备素材,技能的背景图(SkillBg),技能图(Image),冷却的技能图(FillImage只是把技能图的颜色设置为黑灰色) 然后将每个图罗列好(背景图是技能图和冷却图的父物体),背景图和技能图无须修改,只要将冷却图的Image Type修改为F原创 2017-09-26 17:07:07 · 3769 阅读 · 1 评论 -
Unity学习——Transform组件的使用(坐标系)、物体拾取投掷
物体的拾取投掷主要是对Transform中的几个方法的使用 1.TransformPoint()——变换位置从自身坐标到世界坐标 2.InverseTransformPoint()——变换位置从世界坐标到自身坐标 3.TransformDirection()——从自身坐标到世界坐标变换方向 4.InverseTransformDirection()——从世界坐标到自身坐标变换方向首先要搭建一原创 2017-10-10 16:09:14 · 2873 阅读 · 0 评论