foreach (var key in tab.GetKeys()) {
print("key:"+key+"---keyType:"+key.GetType()+"---value:"+tab[key]);
}
table中本没有键的那些值,转换成LuaTable后,会自动添加一个int64类型的键,下标从1开始。
foreach (var key in tab.GetKeys()) {
print("key:"+key+"---keyType:"+key.GetType()+"---value:"+tab[key]);
}
table中本没有键的那些值,转换成LuaTable后,会自动添加一个int64类型的键,下标从1开始。
float h = Input.GetAxis("Horizontal");
水平方向移动
float v = Input.GetAxis("Vertical");
垂直方向移动
rd.AddForce(new Vector3(h, 0, v));
把设的h和v填入相应的位置
public float speed = 3;
transform.Translate(new Vector3(h, 0, v)*speed);
可以设置一个速度,在乘与
public class player : MonoBehaviour {
public Transform pt;
private Vector3 offset;
// Use this for initialization
void Start () {
offset=transform.position - pt.position;
}
// Update is called once per frame
void Update () {
transform.position= pt.position + offset;
}
}
相机跟随物体。先定义物体的Transform,在开始写出物体和相机的偏移值为相机的position减去物体的position,再定义一个值来保存这个数据public Vector3 offset,在Update里相机的位置为物体的position+offset(偏移值)。
transform.Rotate(new Vector3(0, 1, 0));
围绕一个轴旋转
collision.colldier
获取碰撞到游戏物体身上的collision组件
string name = collision.collider.name;
获取碰撞道德游戏物体的名字
print
可以把一个字符串输出显示到控制台
Destroy(collision.collider.gameObject)
销毁游戏物体
private void OnCollisionEnter(Collider other)
碰撞检测
private void OnCollisionExit(Collision collision)
检测物体碰撞后离开,只会触发一次
private void OnCollisionStay(Collision collision)
检测物体在碰撞后呆一段时间,会一直触发
word文档下载后无法打开
Demo1ServiceEvent
RequestScoreCommand
CubeMediator
ScoreModel
StartCommand
DemolContextView
这里我直接在 BasePanel 里写 OnClosePanel(),然后在 BasePanel 的 OnEnter() 和 OnExit() 方法内使用 gameObject.SetActive(true/false) 控制显示隐藏,但目前还不知道这种做法有没有什么弊端?
HotFixScript
CSarpCallLua
需要在场景跳转时发送事件!
万万没想到啊,居然是这样取消异步加载的,但是异步加载协程的那个AsyncLoadParam还存在,只是回调方法都不会执行了,也就是物体不会创建。但是AB包加载的情况它相关的预制体还是消耗掉了最多的内存= =。。。
注意:这节课所弄的引用计数在
public ResourceObj LoadResource(string path, ResourceObj resObj)
和 public bool ReleaseResource(ResourceObj resObj, bool destroyObj = false)
都会进行对引用次数的更改。
而这节课添加的4个方法,可以说是上面所说2个方法的一部分代码,仅仅只是为了提供给ObjectManager从对象池获取资源时添加引用计数,回收到对象池时减少引用次数的目的,如果抛开对象池这个东西,一直是用上面2个方法进行创建和回收的话,引用次数是按照正常思维那样子,谁使用了就会加1,谁不用就会-1.
我发现ObjectManager的对象池里面的每个对象都是参照着一个ResourceItem制造的,也就是ResourceObj的crc是一样的,其他都不一样,在第一次创建物体时,会去加载出这个ResourceItem并且存入ResourceManager的缓存池,而且会对resourceItem的m_Clear进行赋值为ResourceObj的m_bClear,那么注意是第一次才会进行赋值,第二次就会从缓存池取item,直接设置好resObj的item后会返回了,也就是说,这个参照物ResourceItem的m_Clear确定是在第一次创建的时候确定的,这种确定方法,确定OK么。。
Unity5.6 出现仅仅卸载AB包 而不去特地把clip置空的话 clip不会马上释放内存,必须要将audiosource的clip和 脚本引用了clip的地方全部置空才可以。
使用ScriptObject制作Asset配置表,一个List用于将单独资源打包,第二个list用于将文件内的资源进行打包放到一个包里面,需要指定AB名和文件目录路径都是绝对路径。
本人使用的Unity版本2018.2.19f1
使用的VisualStudio版本2017
Camera.main.ScreenToWorldPoint(new Vector3(myTouch.position.x,myTouch.position.y,10)
完整通信流程
1客户端
发起请求 Peer.OpCustom
2服务器
接受请求OnOperationRequest
发送响应SendOperationResponse
3客户端
接收响应OnOperationResponse
2:25 initSvc什么时候调用,为什么直接赋值了?
4:42 为什么constants不用实例化?