Unity3D自己常用代码

摘要:
在多处理器下,多线程同时运行,协同程序,在某时刻之有一个在运行。若你有个负责的任务,它非常费帧率,就考虑使用协同或InvokeReapting.若是简单任务,就嫑在协同或InvokeReapting使用,这不会提高效率的。协同当脚本未激活或对象为激活时不可用。

常需要,常查找!

自己记录下!

1.

    var ray = Camera.main.ScreenPointToRay(Input.mousePosition);
        //GameObject.CreatePrimitive(PrimitiveType.Cube).transform.position = ray.GetPoint(10.0f);
        transform.LookAt(ray.GetPoint(10.0f));

2.

提高效率

GetComponent(), FindObjectByType() and Instantiate()
尽量少使用。

3. InvokeReapting 的内部实现

实现过程
{
   找到函数方法名称,存储
等待调用时间,WaitForSeconds(time)
循环知道用户取消
{
Invoke 存储的函数方法
等待时间
}
删除记录保存的方法
}

4.

Coroutine和InvokeReapting

协同程序,不是多线程。但是他有自己的堆栈,局部变量,指令指针,与其他协同程序共享全局变量等信息。在多处理器下,多线程同时运行,协同程序,在某时刻之有一个在运行。

若你有个负责的任务,它非常费帧率,就考虑使用协同或InvokeReapting.

若是简单任务,就嫑在协同或InvokeReapting使用,这不会提高效率的。

但是也不用太死板。尽管可能降低效率,代码会更简单和实用。

协同是处理时间序列的一种很好的方法。

它不是线程也不是异步。

协同当脚本未激活或对象为激活时不可用。

协同返回时间的WaitForSeconds依赖于Time.timeScale.

InvokeReapting
 
/*
void InvokeRepeating(string methodName, float time, float repeatRate)
{
   - Find the method called "methodName" in the calling assembly and store it.
   - Wait "time" seconds by yielding on WaitForSeconds(time)
   Loop until the user cancels this action
   {
      - Invoke the stored method
      - Wait "repeatTime" seconds by yielding on WaitForSeconds(repeatRate)
   }
   - Remove the method info record from storage.
}
*/

使用InvokeInvokeReapting,这样很难调试。

免责声明:文章转载自《Unity3D自己常用代码》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇v-model绑定checkbox的功能webpack 构建多页面应用初探下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

基于vue的颜色选择器vue-color-picker

项目中有用到颜色选择器的童鞋们可以看过来了关于color-picker的jquery的插件是有蛮多,不过vue组件没有吧,反正我没有找到,虽然element-ui里面有这个,但是你愿意为了一个小功能去引入这么大的依赖库吗?...

Java读取图片和EXIF信息

后台需要读取客户端上传的图像//上传图像的宽度intoriginalheight=originalImg。获取高度();无论是在Windows中直接查看上述代码还是图像,都会获得宽度大于高度的信息。使用上述代码,可以直接读取宽度和高度。该值不考虑图像翻转方向,而是读取图像的EXIF信息。...

Spring通过MimeMessageHelper发送邮件,中文附件名出现乱码解决办法

1.设置系统值system。setProperty(“mail.mime.split-longparameters”,“false”);2.在这里,定义创建对象时的编码格式(utf-8):MimeMessageHelper=newMimeMessageHelper(mes,true,“utf-8”);3.其次,添加附件时,附件名称为helper。需要定义代码...

java环境安装Firefox驱动/IE驱动

如果selenium版本是3.x的,需要使用驱动包解决办法:往项目中添加火狐驱动包,并加载驱动的配置。...

js 预览 excel,js-xlsx的使用

js-xlsx简介SheetJS生成的js-xls x是一个非常方便的工具库,只能使用纯js读取和导出excel。它功能强大,支持多种格式,支持xls、xlsx和ods等十几种格式。本文以xlsx格式为例。官方github:https://github.com/SheetJS/js-xlsx支持演示在线演示地址:http://demo.haoji.me/20...

db2数据导出导入del与ixf格式

ixf格式保存的是结构和数据,是一个二进制文件,ixf文件不可视。...