![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
unity笔记
strivero
我就是我
展开
-
unity 计算两点的距离
float distance = (transform.position, targetPos.position).magnitude原创 2016-05-14 11:57:42 · 19858 阅读 · 2 评论 -
unity调用eclipse导出的jar插件
1.首先要明白unity与java之间的通信 unity调用java// 直接调用java的静态方法, 我比较喜欢这种,简单明了AndroidJavaClass klass = new AndroidJavaClass("com.unity.player.UnityInvokeAndroid");// 这是包名加你要调的类名klass.CallStatic ("java方法名", "参原创 2016-11-15 11:37:13 · 4602 阅读 · 2 评论 -
unity项目接入 SDK 模版
项目开发完了都要接入各种 sdk ,unity调用java? java调用unity? 每次需求改了就要重现将项目导出成eclipse项目重新接一遍sdk? 这太麻烦了,费时,对自己编程之路又没有什么帮助。 so, 我今天与大家分享一个 sdk工具,所有要接的sdk只需在eclipse上接入一次导入unity后,除了sdk更新,完全不需要接入第二次。如果不懂的unity和java的通信可以我原创 2016-12-03 19:37:58 · 2374 阅读 · 1 评论 -
使用 PropertyAttribute和PropertyDrawer
项目地址: http://pan.baidu.com/s/1nv6mjB7 密码:grmi原创 2016-12-07 17:45:45 · 551 阅读 · 0 评论 -
unity 控制旋转的方法
将角度转换成四元数,然后修改transform的rotation。 Quaternion q = Quaternion.AngleAxis(angle, axis); // 1.角度 2.旋转的轴 transform.rotation = Quaternion.slerp(transform.rotation, q, Time.deltaTime * speed);最简单的旋转 tra原创 2016-07-12 14:08:11 · 5718 阅读 · 0 评论 -
代码GC测试
for(int i = 0;i < 10000;i++){ enActorEnum enu = (enActorEnum)1; }枚举类型转换 GC 0 Time 0.1public delegate void VoidDelegateString (string str);------------------------------ 分割线 【委托】 ---------------原创 2017-03-01 10:28:56 · 1180 阅读 · 0 评论 -
计算当前场景顶点数和面数
/// /// 得到场景中所有的GameObject /// void GetAllObjects() { verts = 0; tris = 0; GameObject[] allGameObject = FindObjectsOfType(); for (int i = 0; i < all原创 2017-03-01 16:34:46 · 3596 阅读 · 0 评论 -
继承EditorWindow实现画布
先介绍下主要的几个文件: CanvasBaseData -> 最基本的数据文件,是个Scriptable资源。每个画布都要有一个自己的数据。 CanvasEditor -> 最基本的画布绘制代码,继承 EditorWindow。 NodeStyles -> 一些常用的 GUIStyle zNode -> 画布中的基本节点,继承 zBaseNode zNodeTransitionLine -原创 2017-05-14 22:26:35 · 790 阅读 · 0 评论 -
实现六边形网格
打开1场景,运行就可以看到效果。 所有的六边行都都是通过顶点数绘制到Mesh上的。只用了一个网格,一个材质。点击地图上的某个六边形时,将这个六边形的颜色设置为红色,之后再重写根据所有六边行的顶点数和颜色绘制Mesh网格。代码比较简单,三个文件 SixangleDatas :提供六边形行列的数据 Sixangle :传入六边形坐标,外半径,状态。 vertices 存储六边形的顶点数,colo原创 2017-05-16 23:09:46 · 6657 阅读 · 0 评论 -
unity 安卓平台上设置头像
需求是这样的,安卓用户在设置头像时,可以从相册选择或者是拍张图片,然后通过圆形或者是矩形裁剪后,将裁减后的图片当作头像。思路是这样的,1.在unity上通过jni调用java代码。2.然后通过Intent去打开安卓手机的摄像机或是相册,选择一张图片后,接着进行圆形或是矩形裁剪。3.然后将裁剪后的图片保存到指定的一个路径下,接着调用Unity的方法,并将图片路径传过去。4.这时在unity上就原创 2016-11-20 16:43:43 · 2237 阅读 · 1 评论 -
unity Vector3
MoveTowards(currentPos, targetPos, time); 在指定时间移动到目标点SmoothDamp(currentPos, targetPos, smoothSpeed, time); 在指定时间移动到目标点 (带平滑效果)Lerp(currentPos, targetPos, time); 每帧移动多少,返回移动后的坐标 Distance(currentPos,原创 2016-07-15 16:17:41 · 584 阅读 · 0 评论 -
unity 计算两点角度
Vector3 targetDir = targetPos.position - transform.position; // 目标坐标与当前坐标差的向量Vector3.Angle(transform.forward,targetDir) // 返回当前坐标与目标坐标的角度原创 2016-05-14 12:03:56 · 25479 阅读 · 1 评论 -
unity 刚体的旋转
// 注视着某个点旋转,返回旋转后的四元数Quaternion rotate = Quaternion.LookRotation(Data.TargetPos.position - transform.position); // 刚体朝着这个四元数,随着时间与平滑度旋转rb.rotation = Quaternion.Slerp(transform.rotation, rotate, Time原创 2016-05-15 16:42:50 · 3318 阅读 · 0 评论 -
unity 刚体
使用kinematic 能够使添加了刚体的物体更自然的移动,但是该物体就不能再触发OnTrigger这一类的方法了。勾选碰撞器的Is Trigger后,物体将不会触发OnCollision这一类的方法,只能触发OnTrigger一类的方法。且物体将会失去物理效果(能直接穿过墙)即勾了kinematic , 又勾了 IsTrigger,不能触发OnCollision一类的方法,只能触发OnTrigge原创 2016-05-16 09:58:18 · 716 阅读 · 0 评论 -
unity 控制移动的方法
一。 transform.Translate(new Vector3(1, 1, 1) * moveSpeed * Time.deltaTime); // Translate方法移动不会考虑刚体等碰撞(会直接穿过物体)二。 // 使用刚体移动物体(移动会受到物理引擎的影响) rb.MovePosition(rb.transform.position + new Vector3原创 2016-05-07 11:05:25 · 4523 阅读 · 0 评论 -
unity 定义回调函数
public delegate void Action(); // 返回值为空, 参数为空的回调函数public delegate void Action<T>(T arg); // 返回值为空, 参数为一个任意类型的回调函数public delegate void Action<T1,T2>(T1 arg1,T2 arg2); // 返回值为空, 参数为两个任意类型的回调函数public dele原创 2016-05-22 16:08:24 · 3083 阅读 · 0 评论 -
unity 2d 与3d坐标互相转换
// 根据3d的主角坐标,获得主角血条的坐标 (通过视窗坐标转换) Vector3 pos = cam.WorldToViewportPoint(Boy.position); // 将主角的3d坐标转换成对象屏幕的视窗坐标 UI.transform.position = UIcam.ViewportToWorldPoint(pos); // 根据视窗坐标获得UI血条在3d的位置// 根据3d的主角原创 2016-07-01 14:15:43 · 10432 阅读 · 0 评论 -
unity 扩展编辑器 文件操作时常用的类与方法
Selection 获取到当前鼠标点中的物体 (详细API看unity圣典)AssetDatabase 资源数据库 (对资源进行读写和各种操作的接口) (1) AssetDatabase.Refresh(); // 重新导入有更新的资源 (2) AssetDatabase.GetAssetPath(gameObject); // 返回该对象在工程资源位置的路径 (3) Ass原创 2016-07-25 10:24:46 · 1773 阅读 · 0 评论 -
unity 接入移动MM (3.1.10)
搞了四天,终于把移动mm接上了~ 心里又爽快了一把。趁现在赶紧写篇文章记录下流程。网上关于unity接入移动mm的文章很多,接入方式大致有两种: 一、新建一个Android项目,在项目中接入移动mm的SDK,能正常运行后,用eclipse将项目导出成jar包,以插件的方式导入unity中,在unity中调用Android对应的代码,然后用unity导出安卓包。 你可能觉得导出安卓包就成功了,原创 2016-07-07 11:08:18 · 1597 阅读 · 1 评论 -
socket通信实例
闲来无事,研究了下socket~ 文章最后会给出实例链接,如果不想看介绍的可以直接下下来运行。 本人小白一枚,如有错误请看者不奢赐教。客户端为unity,服务端为vs,都是用c#语言编写。先说下我对socket的理解,建立连接、通信、释放连接。此为socket通信的三次握手。对于socket通信,c#底层已经为我们封装好了,我们可以选择使用UDP还是TCP,这里我使用的是TCP连接。先介绍下原创 2017-09-07 15:07:10 · 526 阅读 · 0 评论