void Start () { var pgo = transform.Find ("Button").gameObject; obtn = Instantiate (pgo); //obtn = Instantiate (pgo, pgo.transform.Parent);         var pos = obtn.transform.position; //obtn.transform.localPosition = Vector3.zero; Debug.LogFormat…
在CCNode的类中,有一个得到 一个节点坐标系转换父亲坐标系的一个矩阵,节点内坐标乘以这个矩阵,就可以转换为在节点父节点中的坐标,方法名为: Mat4& Node::getNodeToParentTransform() 现在简单分析一下转换原理: /* 得到节点坐标系转换到父亲的坐标系的 矩阵 某个点(在本地也就是节点坐标) 乘以这个矩阵,就得到自己在父亲节点下的坐标,嵌套坐标 举例子:LayerA 添加 LayerB,B的原点坐标也就是左下角坐标为10,10,也就是这一点在自身坐标下为0,0…
1.物体的局部坐标的方向(物体自身的方向) transform.forward. transform.right. transform.up 2.物体的世界坐标的方向 Vector3.forward. Vector3.right. Vector3.up 例子: 子弹沿自身坐标轴的Z轴方向运动 Vector3 v = this.transform.forward * this.speed; this.body.velocity = v; 注意: 父节点在Scene视图中显示出来的位置并非真正的In…
Unity 版本:4.5 NGUI版本:3.6.5 参考链接:http://game.ceeger.com/Script/Camera/Camera.ScreenPointToRay.html,Uniyt圣典   http://www.unitymanual.com/blog-4392-1229.html,作者:游戏蛮牛 han1127   http://www.cnblogs.com/alongu3d/archive/2013/01/05/raycast1.html,博客园 梦想之家 1.3D…
鼠标坐标转世界坐标和局部坐标: Vector3 MousePosition2Local () { mousePosition = Input.mousePosition; //获取屏幕坐标 mouseWorldPos = Camera.main.ScreenToWorldPoint (mousePosition); //屏幕坐标转世界坐标 mouseLocalPos = transform.parent.transform.InverseTransformPoint (mouseWorldPos…
在使用缓存读取数据后修改发现缓存被修改.于是找了下复制对象的方法. 关于对象克隆 按我的理解,对象是包含引用+数据.通常变量复制都是将引用传递过去.比如: Person p1 = new Person(); Person p2 = p1; 这两句话,创建两个引用p1,p2,但指向共同的内存大堆数据.修改任何一个,另一个的数据也将修改. 直接引用传递测试用例: 1.实体类: package com.test.java; import java.io.Serializable; /** * Crea…
Ruby内置的方法Object#clone和Object#dup可以用来copy一个对象,两者区别是dup只复制对象的内容,而clone还复制与对象相关联的内容,如singleton method [ruby] view plaincopyprint? s = "cat" def s.upcase "CaT" end s_dup = s.dup s_clone = s.clone s_dup.upcase #=> "CAT" (single…
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.浅复制即是指针赋值,复制对象的修改会影响被复制对象:深复制即是真正的对象复制,会复制出来一个副本,这个副本和原对象是完全分开的. Foundation类实现了两个复制的方法:copy和mutableCopy.copy复制出来的是一个不可变的副本,mutableCopy复制出来的是一个可变的副本. 同时注意,产生一个对象的可变副本并不要求被复制的对…
好吧,上一篇我怎么也没想到会写那么多字那么少的代码,希望这一篇不会如此哦. 言归正传,对象的复制分为浅复制和深复制,前者只是复制对象的引用,当原对象的内容发生变化时,复制对象的内容也会发生变化,毕竟他们都指向同一个对象啊!有人可能会说了,原对象如果是不可改变对象,不就可以放心的做浅复制了吗?因为不能修改它的值,也就不用担心复制对象的内容改变啦!还是不行哦!我们设想如下情况: #import <Foundation/Foundation.h> #define msg(...) NSLog(__V…
Ruby中如何复制对象 (deep clone) 用Ruby复制一个对象(object)也许没有你想像的那么容易. 今天我google了半天, 做个总结吧. 先从最简单的开始, b = a 是复制吗? 看代码说话: a= [0,[1,2]] b=a b[0]=88 b[1][0]=99 b => [88, [99, 2]] a => [88, [99, 2]] 从上面代码发现, 一但修改b, 原来的a也同时被改变了. 甚至: b.equal?(a) => true 原来b跟a根本就是同一…