码迷,mamicode.com
首页 > 编程语言 > 详细

Unity 梯子生成算法

时间:2015-04-09 21:38:31      阅读:400      评论:0      收藏:0      [点我收藏+]

标签:

 Unity之生成梯子算法的实现。

1.通过预制物体动态生成角度可设置的梯子形状。

  1.1 主要涉及到的数学知识点,角度与弧度的转化。

    弧度=角度乘以π后再除以180

    角度=弧度除以π再乘以180

  1.2 三角函数

    技术分享   技术分享

  在这里只使用正切函数tan,简单的推理逻辑如下:

    技术分享

  2.1下面开始看代码了padelCreate.cs

 1 using UnityEngine;
 2 using System.Collections;
 3 
 4 
 5 public class padelCreate : MonoBehaviour 
 6 {
 7     public GameObject prb_padel;
 8     public float angel = 30;
 9     private Vector3 lastOnePosition;
10     // Use this for initialization
11     void Start () 
12     {
13         anyAngelPadel(angel);
14     }
15 
16     /// <summary>
17     /// 任意角度的楼梯实例
18     /// </summary>
19     /// <param name="angel"></param>
20     void anyAngelPadel(float angel)
21     {
22         float hudu = (angel / 180) * Mathf.PI;
23         //上楼梯
24         for (int i = 0; i < 7; i++)
25         {
26             GameObject tmpPadel = (GameObject)Instantiate(prb_padel);
27             float yy = i * Mathf.Tan(hudu);
28             tmpPadel.transform.position = new Vector3(-7 + i, -2 + yy, 0);
29             lastOnePosition = tmpPadel.transform.position;
30         }
31         //水平方向生成两个
32         for (int i = 0; i < 2; i++)
33         {
34             GameObject tmpPadel = (GameObject)Instantiate(prb_padel);
35             tmpPadel.transform.position = new Vector3(lastOnePosition.x+1,lastOnePosition.y, 0);
36             lastOnePosition = tmpPadel.transform.position;
37         }
38         //下楼梯
39         for (int i = 0; i < 7; i++)
40         {
41             GameObject tmpPadel = (GameObject)Instantiate(prb_padel);
42             float yy = i * Mathf.Tan(hudu);
43             tmpPadel.transform.position = new Vector3(lastOnePosition.x +i, lastOnePosition.y-yy, 0);
44             //lastOnePosition = tmpPadel.transform.position;
45         }
46 
47     }
48     
49 }

  在Unity的结构如下:

  技术分享

  准备工作完成了,在Unity中运行吧!

  技术分享

  绘制完成了。

Unity 梯子生成算法

标签:

原文地址:http://www.cnblogs.com/wuzhang/p/wuzhang20150409.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!