using UnityEngine;using System.Collections; public class DrawRectangle : MonoBehaviour { public Color rectColor = Color.green; private Material rectMat = null;//画线的材质 不设定系统会用当前材质画线 结果不可控 // Use this for initialization void Start () { rectMat = new Ma
最近在开发一个可视化工具的时候,遇到了一个代码错误,小小的记录一下 具体的报错信息:ArgumentException: Getting control 0's position in a group with only 0 controls when doing Repaint A 从Unity的报错信息上我们可以得知在OnGUI绘制的时候,它找不到可控的位置.经过查找和验证发现一个很有意思的事情:OnGUI函数每帧并不是仅仅只调用一次! 通常,当没有输入处于活动状态时,会使用EditorGU
using UnityEngine; using System.Collections; using System; public class LearnGrazio : MonoBehaviour { public Transform m_Transform; public float m_Radius = 1; // 圆环的半径 public float m_Theta = 0.1f; // 值越低圆环越平滑 public Color m_Color = Color.green; // 线框
屏幕适配是可以通过代码实现的,相信给你时间就一定能写出来. 我们公司貌似没有分辨率适配框架通常对应小屏幕的苹果4要额外设置下等等就完了! 屏幕适配框架实现思路: 通过代码获取当前的分辨率 –> 选择不同图片显示 –> 游戏场景对分辨的相应变化 屏幕简单适配的小脚本: using UnityEngine; using System.Collections; public class ScreenWide : MonoBehaviour { public Vector2 designReso
在敌人死亡后,会出现分数,如果敌人死亡的位置在屏幕内,那么使得获得的分数显示在屏幕内,超出屏幕范围的,显示在屏幕外 当然,这里例子是使得场景中的物体显示在屏幕内,当然也可以使用纯粹的UGUI物体的显示,但是换算方式上刚好相反. 有如下脚本,脚本挂在分数物体上 using System.Collections; using System.Collections.Generic; using UnityEngine; public class Test01 : MonoBehaviour { Tra
网格绘制主要用是对Mesh进行操作,通过对vertex和triangles进行操作生成对应的面片: 这里首先得用到一个类:Triangulator(根据vertex生成triangles数组) using UnityEngine; using System.Collections.Generic; public class Triangulator { private static List<Vector2> points; private static Vector3 cameraPosit