挂载在游戏物体上的单例需要进行泛型约束
public class singleton<T>:monobehaviour
where T:monobehaviour
代表不是继承自monobehaviour的类无法使用这个单例
挂载在游戏物体上的单例需要进行泛型约束
public class singleton<T>:monobehaviour
where T:monobehaviour
代表不是继承自monobehaviour的类无法使用这个单例
VS管理扩展: HLSL Tools for Visual Studio
用于提示。
1.生成jar/aar
修改build.gradle第一行为apply plugin 'com.android.library'->注释applicationId "com.Ocean.RFramework"->Build(Rebuild)->
aar在app/build/outputs/app-debug.aar,jar在app/build/intermediates/packaged-classes/debug/classes.jar
2.移动并重命名jar
为了避免生成jar后,每次都要手动移动并改名jar包。可以进行以下操作:
在build.gradle最后面写命令行方法:
task makeJar(type:Copy){
delete 'build/libs/ocean.jar'
from('build/intermediates/packaged-classes/debug/')
into('build/libs/')
include('classes.jar')
rename('classes.jar','ocean.jar')
}
->
在Terminal中执行gradles makejar
aar:包括代码(src)、依赖库(libs)、资源(res)。适合接入底层多(复杂的sdk),不需要自己拷贝库和资源之类的。多个sdk很容易发生库冲突,推荐jar
jar:纯粹只有代码(src)。需要自己拷贝依赖库和依赖资源
eventID特性好用
其实这里,用unity提供的Horizontal Layout Group组件,然后勾选Child Controls Size就可以自适应大小了,不用再单独去改参数
向量是以原点de坐标
模是长度
三角形法则:首尾相连,连接收尾,指向终点。
坐标 ——位置
向量 ——长度、方向
use pass通道名称时,名称必须全大写。
tags可以写再所有pass的前面对之后的所有pass定义,也可以写在pass内,对单独的pass定义。
里外都定义时,走的时外面。
Render设置同理。
用shader做顶点变换时不可以做合批,会出问题。
所以unity的批处理依赖的GPU的是CPU而不是GPU。
1.如果当前类未继承MonoBehaviour,还想调用AudioSource组件的方法的话,可以使用AudioSource的静态方法调用。
那个-2应该在2位置,不是4位置,
offset = endId(0) - _id(-2) - 1 = 1
所以endId(3) - offset(1) = 位置(2)
changeId(endId - offset)
a/c/aa
a/c/aa/a.prefab
桥接模式:桥接和适配器都是让两个东西配合工作
using static ZenjectExample/*yourNameSpace*/.testInstaller/*yourInstaller*/;
在写属性器注入的时候 需要 using 一下,不然会报错
不需要在编辑器里面,给list设置scrollBarSkin.
在代码里面this.lstCharacter.hScrollBarSkin = "";就可以了
顶点数不等于片元数,一般片元数大于顶点数
纹理坐标(UV)