is 仅用 is null或is not null
is 仅用 is null或is not null
每一行的主键都不能重复
3 commonly seen flock behaviours:
Seperation/Alignment/Cohesion
private const string ColorEnd = "</color>";
private const string ColorVar = "<color=#{0}>";
public static string Color(string str, Color color) {
string htmlColor = ColorUtility.ToHtmlStringRGBA(color);
string result = "";
result = string.Format(ColorVar, htmlColor) + str + ColorEnd;
return result;
}
unity的Color类已经记录了许多颜色,使用发现记录的数据格式不同。
百度转换发现Unity有ColorUtility类实现颜色RGBA与HTML格式之间的转换。这样既增大不少颜色种类,又 减少不少代码。
实现如代码段,其中Color存储不少枚举颜色
unity的Color类已经记录了许多颜色,使用发现记录的数据格式不同。
百度转换发现Unity有ColorUtility类
逻辑相同,动画不同,使用动画层同步
这里windows平台下可以直接打开,是不是老师用的是苹果系统的原因?
Unity使用左手坐标系
记一下随机数的坑
1.unity里的随机数方法有两个,一个是int参数,一个是float参数。
但是lua里只有number
lua调用时会调用到float的方法。
2.我用lua自带的 math.random(min,max)
但是这里也有个坑
unity里的 Ramdon.Range(min,max) 不包括max
而lua里的math.random(min,max) 包括了max
最后导致了数组索引越界。
所以最后用了math.random,记得把传入的max值-1就好了
另外
local halfLength = self.fishList.Length/2
这里可能会得到小数
直接传入math.random会报错
向下取证就好了
local halfLength = math.modf(self.fishList.Length/2)
object:C#
Object:Unity
Duration应该是释放特效时间
Start Lifetime 是粒子生命时间
//音效渐变 if (startEndScript) { Camera.main.transform.localPosition = Vector3.Lerp(Camera.main.transform.localPosition, new Vector3(-13.4f, 6.6f, 10),0.01f); if(audioSource.volume > 0 && hasDefault) { audioSource.volume -= Time.deltaTime * 0.5f; if (audioSource.volume <= 0) { hasDefault = false; hasReady = true; audioSource.clip = audioClip; audioSource.Play(); } } if (audioSource.volume <= 0.9f && hasReady) { audioSource.volume += Time.deltaTime * 0.5f; if(audioSource.volume >= 0.85f) { hasReady = false; Destroy(this); } } }
AddRelativeForce()//在自身方向添加力
刚体要加在移动的物体上,否则刚体会休眠
遮挡->custom axis: x0,y1,z0
hotfix使用
1.在类上打上hotfix标签
2.在方法上加上luacallcsharp
3.生成xlua文件
4.执行hotfix标签
5.在lua中加入c#dll
6.在lua中 通过hotfix的方法调用重写该方法
这节课笑场了哈哈哈哈 call call calllllll
script Name:CustomImage
需要组件:Polygon Collider 2D
实现图片不规则区域点击
Resources.Load<AudioClip>("AudioClips/Sound/" + soundPath);
soundPath就是文件名?