Unity3d之策略模式
2014-03-20 10:20
260 查看
接触了个叫unity3d东西,我表示很兴奋,于是开始捣鼓。但是从哪里开始呢?于是去网上找了个妹纸的模型,导入unity,如下:
这个妹纸离我比较远,近视眼表示看不清楚某沟,于是,代码出来了,如下:
不到一分钟,代码就出来了,真简单。
既然都让妹纸向我靠近了了,为什么不再让他旋转到某个特定的角度呢,说不定还能看到什么奇特的部位
,继续改代码,如下:
真特么简单啊。
现在,我又有了个邪恶的想法,比如:让妹纸向我靠近的同时,某个部位放大....。代码如下:
public class Player1 : MonoBehaviour {
GameObject currentGameObject;
void Start()
{
currentGameObject = this.gameObject;
}
void Update()
{
currentGameObject.transform.Translate(Vector3.forward * Time.deltaTime * 10);
currentGameObject.transform.localScale = currentGameObject.transform.localScale * 1.1f;
}
}
搞定。
但是这里有个问题,如果我下次换一个模型,换成抠脚大汉怎么办?之前的代码是物体旋转+向我靠近,这不行,抠脚大汉应该要离我远点,于是我继续改代码,新加一个类,如下:
这里就有一个问题:如果有不同的需求,就去不停的更改代码。而且代码直接耦合很深,这个时候,就轮到我们的策略模式出厂了。
这个妹纸离我比较远,近视眼表示看不清楚某沟,于是,代码出来了,如下:
public class Player1 : MonoBehaviour { GameObject currentGameObject; void Start() { currentGameObject = this.gameObject; } void Update() { currentGameObject.transform.Translate(Vector3.back * Time.deltaTime); } }
不到一分钟,代码就出来了,真简单。
既然都让妹纸向我靠近了了,为什么不再让他旋转到某个特定的角度呢,说不定还能看到什么奇特的部位
,继续改代码,如下:
public class Player1 : MonoBehaviour { GameObject currentGameObject; void Start() { currentGameObject = this.gameObject; } void Update() { currentGameObject.transform.Translate(Vector3.back * Time.deltaTime); currentGameObject.transform.Rotate(Vector3.back); } }
真特么简单啊。
现在,我又有了个邪恶的想法,比如:让妹纸向我靠近的同时,某个部位放大....。代码如下:
public class Player1 : MonoBehaviour {
GameObject currentGameObject;
void Start()
{
currentGameObject = this.gameObject;
}
void Update()
{
currentGameObject.transform.Translate(Vector3.forward * Time.deltaTime * 10);
currentGameObject.transform.localScale = currentGameObject.transform.localScale * 1.1f;
}
}
搞定。
但是这里有个问题,如果我下次换一个模型,换成抠脚大汉怎么办?之前的代码是物体旋转+向我靠近,这不行,抠脚大汉应该要离我远点,于是我继续改代码,新加一个类,如下:
public class Player2 : MonoBehaviour { GameObject currentGameObject; void Start() { currentGameObject = this.gameObject; } void Update() { currentGameObject.transform.Translate(Vector3.forward * Time.deltaTime * 10); } }
这里就有一个问题:如果有不同的需求,就去不停的更改代码。而且代码直接耦合很深,这个时候,就轮到我们的策略模式出厂了。
相关文章推荐
- 一、策略模式(Unity3d演示)
- Unity3D 设计模式---策略模式
- Unity3d策略模式
- Unity3d之策略模式
- 【Unity3D与23种设计模式】策略模式(Strategy)
- 一、策略模式(Unity3d演示)
- 策略模式
- [学习笔记]Head First 设计模式 - 策略模式(Strategy)
- 算法的封装与切换——策略模式(四)
- 策略模式
- 设计模式——策略模式
- JAVA 设计模式 策略模式
- 设计模式袖珍版 连续转载之 - Strategy(策略)
- java策略模式简单用例
- 设计模式--策略模式,装饰模式
- 策略模式
- ①设计模式之策略模式
- 编程语言设计模式之策略模式
- C语言和设计模式(策略模式) 15
- 5-策略模式