![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
unity技术
文章平均质量分 53
hacker9403
这个作者很懒,什么都没留下…
展开
-
rts中的寻路系统一些小结
rts中的寻路系统一般需要满足有以下几个条件:1. 效率高,因为rts普遍地图大,单位多,所以处理效率很重要2. 易编辑,以便于level design3. 效果真实,如能找出最优(或者是看上去合理)4. 可以应对动态的游戏世界,例如起建筑所以rts中寻路算法基本为A Star和Dijkstra。首先是A Star有利用到启发式函数和另一个算法D原创 2017-10-09 21:54:43 · 1172 阅读 · 0 评论 -
SQLite在unity下使用的工具类
/// /// SQLite数据库简单操作的分装(Sqlite3)/// 注意:SQLite 是不区分大小写/// public class DbAccess{ //SQLite链接库 private SqliteConnection dbConnection; private SqliteCommand dbCommand; //数据库读取 private Sqli原创 2017-11-14 20:00:38 · 632 阅读 · 0 评论 -
设计模式读书笔记与总结
在最初时,假设变化不会发生,当发生变化时,通过创建抽象来隔离以后发生的同类变化。既:对程序的改动是通过增加新代码进行的,而不是改变现有代码方法过长的时候,可能是一个坏方法“Long Method”优先使用组合,而不是继承。因为父子的依赖关系会限制灵活性并最终限制复用性基于敏捷开发的原则,不要为代码添加基于猜测的,实际不需要的功能。如果不知道一个系统是否需要一个功原创 2017-11-03 20:04:10 · 525 阅读 · 0 评论 -
unity脚本中的协程Coroutine
定义:具有多个返回(yield)点,可以在特定时机分部执行的函数原理:Unity每帧处理GameObject中的协同函数,直到函数执行完毕。当一个协同函数启动时,本质创建迭代器对象,调用MoveNext方法,执行到yield暂时退出;待满足条件后再次调用MoveNext方法,执行后续代码,直至遇到下一个yield为止;如此循环到整个函数结束。语法:通过MonoBehav原创 2017-10-17 13:57:57 · 451 阅读 · 0 评论 -
unity中关于射线发射函数的一些解释
从屏幕位置发射一条射线(用于从屏幕选中物体) Ray rain=Camera.main.screenPointToRay(Input.mousePosition);但是有时候也会使用ViewPointToRay()这个函数,unit官方文档只是提到了这两个函数分别是从屏幕发射和从视窗发射。这两个函数区别到底在哪里呢,如图屏幕为红框范围白框为视原创 2017-10-16 14:08:59 · 1461 阅读 · 0 评论 -
unity中关于transform的小结
Local Space --> World Spacetransform.forward 在世界坐标系中表示物体正前方。 transform.right 在世界坐标系中表示物体正右方。 transform.up 在世界坐标系中表示物体正上方。 transform.TransformPoint 转换点,受变换组件位置、旋转和缩放影响。 transform.Tr原创 2017-10-24 19:17:27 · 3533 阅读 · 0 评论 -
EasyTouch5常用API简介
ETInpt类(摇杆输入类):虚拟摇杆的静态函数:SetControlVisible : 凭借虚拟摇杆的名字,找到的虚拟摇杆是否设置为可见GetControlVisible : 凭借虚拟摇杆的名字,找到的虚拟摇杆如果被设置为可见,则返回trueSetControlActivated : 凭借虚拟摇杆的名字,找到的虚拟摇杆是否设置为激活状态GetControlActiva原创 2017-11-01 15:56:27 · 1181 阅读 · 0 评论 -
unity中动画与触发事件的分解
unity中,模型的行为通常是与动画同时发生的,但是在处理过程中,我们又需要把播放动画与行为触发分开实现,来达到代码的简介与功能的划分,这时候就要用到事件与委托。在这里我们用一个AnimationEventBehaviour工具类将其实现。类的思想是创建一个事件,之后由策划人员来绑定播放动画到什么时间触发事件。而程序端(用player脚本模拟)只需要控制动画的播放时机以及进行事件触发行为的绑定原创 2017-10-12 19:28:48 · 5433 阅读 · 0 评论 -
对象池简单理解
unity中一些需要频繁创建和销毁的对象,在销毁时会频繁的调用gc,非常占用cpu时,造成性能瓶颈。这时候就需要对象池技术。使用对象池在销毁时并不调用gc,而是仅仅将需要销毁的obj失活,当再次创建同类对象时,在对象池中查找可以使用的对象进行调用。仅仅在需要的时候调用gc进行一次销毁。这样做大大减少了cpu的压力,但是增大了内存的消耗,通常情况这种牺牲是值得的。对象池的数据情况:原创 2017-10-12 19:13:28 · 411 阅读 · 0 评论 -
关于unity中线程使用的小结
unity中允许开启多线程,但是由于unity引擎生命周期的关系,unity不允许辅助线程中运行unityAPI。但是可以运行unity中的基本结构(int,Vector3,Quaternion等),并且Unity定义的基本类型的函数可以在分线程运行。于是我们可以定义一个委托,在主线程中一直查询委托的情况,而辅助线程将需要进行的逻辑加载到委托中。主线程法线委托非空的时候,执行委托并且将委托原创 2017-10-27 15:37:18 · 8002 阅读 · 0 评论 -
unity中反射的使用
反射定义动态获取类型信息,动态创建对象,动态访问成员的过程。作用在编译时无法了解类型,在运行时获取类型信息,创建对象,访问成员。流程1.得到数据类型2.动态创建对象3查看类型信息(了解本身信息,成员信息)常用类1.取得数据类型Type 方式一:Type.GetType(“类型全名”);适合于类型的名称已知方式二:obj原创 2017-10-19 10:53:26 · 9776 阅读 · 0 评论 -
unity3d中美术对接与验收相关注意事项(3dmax)
显示单位和系统单位需要相差100倍(通常是米和厘米) 导出格式:autodesk(.fbx .dae) 可以选择选中物体导出 要注意需要把3dmax的坐标转成和unity坐标一样(3dmax为右手坐标系,unity为左手坐标系) 缩放和物体大小不一样,unity需要一倍缩放物体步骤:转polyxform //轴复位转poly旋转坐标轴(x轴+90原创 2017-10-10 09:44:23 · 1247 阅读 · 0 评论 -
粒子特效简单总结
1.初始化模块:此模块是效果组件固有的模块。Duration:粒子发射器,发射粒子的时间。单位为S(秒)。Looping:是否开启。如果开启了循环,Duration值只要大于最小值0.10即可。Prewarm:是否开启预热。只有在开启的循环的时候,预热才有效果,粒子量相似发射了一个粒子周期。Start Delay:预热延迟。游戏开始多长时间后,预热开启。单位为S。S原创 2017-11-06 16:34:41 · 3920 阅读 · 0 评论