真UNITY3D_一些脚本

其实我觉得逻辑很简单

本人智商不高,读书也没有很好(老师从来没教过什么),也没有杨过这种遇到大雕和吞蛇胆的经历

所以我确实也确实逻辑不怎么好,做的项目不成功的多是正常的

但我知道1+1=2,也只能选择站在巨人的肩膀上,并且不自傲,要时刻警醒自己

但非得有些人,觉得自己逻辑很好

有些人真的连1+1=2都不知道,还以为自己知道,还自以为自己的是最好的,马云觉得自己最好,乔布斯觉得自己最好,所以有些人也觉得他们自己

这个简称自以为是,所以你的项目做不好还是必然的

其实马云和乔布斯也是自以为是的,我也认为他两是最好的,但是就好像多米诺骨牌,又或者蝴蝶效应

你或者是一个大成功,但一个初始的决定,就注定是一个大笑话

就是:

“如果你不是蠢人,那么你就是蠢人了”

什么?没看懂?

那项目中期没有调整的能力,失败了也不能怪谁了,也不能怪一开始的方向错的,1开始的判断,就好像天气,项目不成功,怪一开始天气不好咯

你的想法是好的,可就是因为你的逻辑不怎么好,结果一层叠一层,还以为自己方向很正确,结果往一个错误的方向走了很远


所以就再看看好的项目的逻辑,并不时调整自己,这个才是更接近好项目的方法

(看下面的代码真的越看越心寒,我的逻辑唯一想不通的是好的项目有个大牛,还是好的项目花了3~4年时间,还是好的项目是开源众人智慧的集合,反正好的出品都在人家的好的项目,希望不要想错。。。。)

下面是 C# , Unity3d, 的一个第三方插件代码,可以说也仅仅是对Unity3d底层框架的一些封装而已,但是人家就是仅仅刚刚好代码就是用的很完美,其中要经过的讨论设计测试联调,以我逻辑还是想不出如何做到的,但就活生生的就在你眼前做到了。。。。。。

private Component FindComponentUnder(LeanFinger finger)
		{
			var component = default(Component);

			switch (SelectUsing)
			{
				case SelectType.Raycast3D:
				{
					// Get ray for finger
					var ray = finger.GetRay();

					// Stores the raycast hit info
					var hit = default(RaycastHit);

					// Was this finger pressed down on a collider?
					if (Physics.Raycast(ray, out hit, float.PositiveInfinity, LayerMask) == true)
					{
						component = hit.collider;
					}
				}
				break;

				case SelectType.Overlap2D:
				{
					// Find the position under the current finger
					var point = finger.GetWorldPosition(1.0f);

					// Find the collider at this position
					component = Physics2D.OverlapPoint(point, LayerMask);
				}
				break;
			}

			return component;
		}


猜你喜欢

转载自blog.csdn.net/avi9111/article/details/77940618