初步印象
- 语法和python、js这些很像,解释型语言、弱类型等等。写着舒服是真的。
- while do\repeat until这样的语法其实真心不舒服,感觉在语法上有些累赘。大多数语言都是do while,但是它非要是repeat until,也是无语。
- 我个人认为语法中的then和do设计的很混淆。比如if是和then,for是和do。从我对语言的理解上感觉可以统一用do或者then。
理想情况下,混合模式会为你料理好一切,照亮相同平衡范围内的动、静态对象(从而保留了视觉逼真度与一致性)。
只是一切都不是那么的美好,事实上是动态物体不会从spotlight上产生阴影。谈压缩就要谈到格式,unity目前在制作AssetBundle时默认就是压缩的,当然也可以设置为不压缩,但是显然不科学尤其是在移动端的开发上。
LZMA:这个是一个序列化数据文件流,也是AssetBundle的默认压缩格式。LZMA提供最佳的压缩比,但是在使用的时候需要完全解压后才能使用,因此加载时需要的事件比较多。
LZ4:5.3以后才加入的一种压缩格式,被unity自己大量使用。这是一种基于块的压缩方式,当一个对象从LZ4压缩的AssetBundle中加载时,会按照需要解压部分的块。这样的好处在于快速的加载对象,后面会提到一个最佳实践。当然,按照这个原理,你也可以想象如果一个LZ4AssetBundle中只包含了一个GameObject,那么也不存在什么按需加载了。当使用AssetBundle.LoadFromFile加载LZ4格式的文件时,其实不会将问价加载到内容,而是加载AssetBundle的Header。
AssetBundle也可以选择不压缩,这样体积最大但是加载最快。
Update your browser to view this website correctly. Update my browser now