博客插入新格式

来源:互联网 发布:微三云 源码 编辑:程序博客网 时间:2024/05/29 07:41




测试



你好啊




你好啊




斯德哥尔摩公共图书馆,又名阿斯普伦图书馆,位于瑞典斯德哥尔摩,是瑞典最著名的图书馆之一。建于1928年,由古纳·阿斯普伦



关于脚本的编译顺序,可以看Unity官网。








Unity支持的语言之一Javascript,和Jave没有什么关系,它只在一些high level上有些许类似。当初Javascript出现时,实际是被称为LiveScript。而那时Java已经非常流行了,于是它就被重命名来使得听起来好像有某种联系。

如果你之前是一个Java程序员,那么你会觉得C#比Unity的Javascript更接近Java。网上有很多从Java转换到C#的教程,这对于Unity中的C#也适用。
Unity中的Javascript不是网页中经常见的Javascript。我们更愿意叫它Unity Script来区分它们。Unity中的Javascript是一种.NET语言,跟Javascript相比,它和Action Script关系更密切。它的确有一些Javascript的特性,但很多都没有保留。例如,它使用经典的继承而非原型继承。你不可以在编译后给对象添加函数,等等等等。
任何情况下,如果你学习真正的Javascript书籍或者教程,然后再应用到Unity中,最后,你只会变得更加困惑。



受timeScale影响的游戏时间。
Coroutines将会执行在调用StartCoroutine的对象上。因此,如果你想在另一个的对象上开始一个coroutine,那么你就在该对象上使用StartCoroutine,而不是你当前正在处理的对象。例如,otherScript.StartCoroutine(otherScript.SomeFunction());



如果你之前是一个Java程序员,那么你会觉得C#比Unity的Javascript更接近Java。网上有很多从Java转换到C#的教程,这对于Unity中的C#也适用。
Unity中的Javascript不是网页中经常见的Javascript。我们更愿意叫它Unity Script来区分它们。Unity中的Javascript是一种.NET语言,跟Javascript相比,它和Action Script关系更密切。它的确有一些Javascript的特性,但很多都没有保留。例如,它使用经典的继承而非原型继承。你不可以在编译后给对象添加函数,等等等等。
任何情况下,如果你学习真正的Javascript书籍或者教程,然后再应用到Unity中,最后,你只会变得更加困惑。


关于脚本的编译顺序,可以看Unity官网。


你只可以从一个方向实现这种访问,也就是说,从C#文件中访问Javascript,或者反过来。如果存在两种语言,你不可能从两个方向实现这种互相访问。
如果你使用一个完全独立的第三库,只要你把它们放在下面其中的位置(这些位置的脚本将首先被编译),那么它们是使用什么语言的不重要 —— Standard Assets, Pro Standard Assets 或者 Plugins。你可以在其他不在这些位置的代码中访问它们。

Javascript和C#不会被编译到同一个汇编中,因此不能只简单地从一个里面访问另一个。而任何在Plugins, Standard Assets 或者 Pro Standard Assets将会首先被编译,因此不在这些文件夹下的代码可以访问这些代码。 

记住,如果Javascript已经在其中一个文件夹中,那么它就不可以再访问任何C#代码,即便这些代码在上述特殊的文件夹中。反之亦然。

关于脚本的编译顺序,可以看Unity官网。


7.  Unity中的Javascript是什么

Unity支持的语言之一Javascript,和Jave没有什么关系,它只在一些high level上有些许类似。当初Javascript出现时,实际是被称为LiveScript。而那时Java已经非常流行了,于是它就被重命名来使得听起来好像有某种联系。
如果你之前是一个Java程序员,那么你会觉得C#比Unity的Javascript更接近Java。网上有很多从Java转换到C#的教程,这对于Unity中的C#也适用。
Unity中的Javascript不是网页中经常见的Javascript。我们更愿意叫它Unity Script来区分它们。Unity中的Javascript是一种.NET语言,跟Javascript相比,它和Action Script关系更密切。它的确有一些Javascript的特性,但很多都没有保留。例如,它使用经典的继承而非原型继承。你不可以在编译后给对象添加函数,等等等等。
任何情况下,如果你学习真正的Javascript书籍或者教程,然后再应用到Unity中,最后,你只会变得更加困惑。


8. 为什么Coroutine在wait和yield后没有执行完


大多数原因是因为你disable掉了它所在的脚本,或者销毁了所在的对象。比如,你想要在通过Coroutine播放一个死亡动画后再销毁,或者更新完分数后销毁。

Coroutines将会立即执行到第一个yield语句。因此,它的第一个部分总会被执行。如果你这时disable了你的脚本,或者销毁了你的对象,那么剩下的routine就永远也不会被执行了。
如果你使用WaitForSeconds,那么Time.timeScale必须大于0,否则你的yield永远不会返回。记住,WaitForSeconds使用受timeScale影响的游戏时间。
Coroutines将会执行在调用StartCoroutine的对象上。因此,如果你想在另一个的对象上开始一个coroutine,那么你就在该对象上使用StartCoroutine,而不是你当前正在处理的对象。例如,otherScript.StartCoroutine(otherScript.SomeFunction());

下面是写coroutine一个错误的写法:





你只可以从一个方向实现这种访问,也就是说,从C#文件中访问Javascript,或者反过来。如果存在两种语言,你不可能从两个方向实现这种互相访问。
如果你使用一个完全独立的第三库,只要你把它们放在下面其中的位置(这些位置的脚本将首先被编译),那么它们是使用什么语言的不重要 —— Standard Assets, Pro Standard Assets 或者 Plugins。你可以在其他不在这些位置的代码中访问它们。

Javascript和C#不会被编译到同一个汇编中,因此不能只简单地从一个里面访问另一个。而任何在Plugins, Standard Assets 或者 Pro Standard Assets将会首先被编译,因此不在这些文件夹下的代码可以访问这些代码。 

记住,如果Javascript已经在其中一个文件夹中,那么它就不可以再访问任何C#代码,即便这些代码在上述特殊的文件夹中。反之亦然。

关于脚本的编译顺序,可以看Unity官网。


7.  Unity中的Javascript是什么

Unity支持的语言之一Javascript,和Jave没有什么关系,它只在一些high level上有些许类似。当初Javascript出现时,实际是被称为LiveScript。而那时Java已经非常流行了,于是它就被重命名来使得听起来好像有某种联系。
如果你之前是一个Java程序员,那么你会觉得C#比Unity的Javascript更接近Java。网上有很多从Java转换到C#的教程,这对于Unity中的C#也适用。
Unity中的Javascript不是网页中经常见的Javascript。我们更愿意叫它Unity Script来区分它们。Unity中的Javascript是一种.NET语言,跟Javascript相比,它和Action Script关系更密切。它的确有一些Javascript的特性,但很多都没有保留。例如,它使用经典的继承而非原型继承。你不可以在编译后给对象添加函数,等等等等。
任何情况下,如果你学习真正的Javascript书籍或者教程,然后再应用到Unity中,最后,你只会变得更加困惑。


8. 为什么Coroutine在wait和yield后没有执行完


大多数原因是因为你disable掉了它所在的脚本,或者销毁了所在的对象。比如,你想要在通过Coroutine播放一个死亡动画后再销毁,或者更新完分数后销毁。

Coroutines将会立即执行到第一个yield语句。因此,它的第一个部分总会被执行。如果你这时disable了你的脚本,或者销毁了你的对象,那么剩下的routine就永远也不会被执行了。
如果你使用WaitForSeconds,那么Time.timeScale必须大于0,否则你的yield永远不会返回。记住,WaitForSeconds使用受timeScale影响的游戏时间。
Coroutines将会执行在调用StartCoroutine的对象上。因此,如果你想在另一个的对象上开始一个coroutine,那么你就在该对象上使用StartCoroutine,而不是你当前正在处理的对象。例如,otherScript.StartCoroutine(otherScript.SomeFunction());

下面是写coroutine一个错误的写法:

0 0
原创粉丝点击