【原创】关于unity图表插入到物体上方总是定位不准的问题探索

首先 经过测试发现 ,给图表设置forword=相机的forword就实现了图表一直朝向相机,而且不会正反颠倒

其次在研究摆放的时候发现总是无法左右居中,以及无法控制前后,
我发现修改x 不代表就是我认为的往左右调整, 修改z也不代表往前后,经过几天的踩坑 ,
先排查是否是缩放导致的, 通过计算缩放的值发现并不能解决问题

经过测试创建立方体

xxx
xxx

但是尝试创建一个立方体 然后让图表位置等于立方体位置发现立方体刚好位于圆盘上方,说明立方体没问题,那么我仔细对比发现我是改动了 z轴导致,我把z轴就等于被点击物体的z轴 x轴就等于被点击物体的就发现居中了,接下来是如何让物体靠前

我尝试在position中修改z轴或者+Vector.forword都不能解决问题

反而导致又无法居中了,
然后尝试

chartGameObject.transform.Translate(Vector3.forward*3);

发现依然如此,导致无法居中了,而且并没有向前,

突然我又想到了一个东西LookAt
终于 3句话全部写上去才成功让3d图表插入到游戏物体上面而且 还往前一些。

GameObject test= GameObject.CreatePrimitive(PrimitiveType.Cube);
        test.transform.SetParent(ChartCanvasManager.Instance.transform);
        test.transform.position = chartGameObject.transform.position = new Vector3(myRoomMaterials.transform.position.x, 4.98f, myRoomMaterials.transform.position.z);//
        chartGameObject.transform.LookAt(Camera.main.transform);
        chartGameObject.transform.Translate(Vector3.forward*3);

但是 我尝试用

首先是摆放位置
其次是转向
然后让物体往前走3米

chartGameObject.transform.DOLocalMove(chartGameObject.transform.localPosition+(Vector3.forward*2), 2);

这样发现并不是朝向摄像机移动所以搞不懂到底哪里出问题了 无论是本地坐标还是世界坐标都不好使了。

关于 高度不准问题

高度也跟物体的锚点 以及 被插入的物体锚点有关,创建一个立方体默认是居中的,如果调整后刚好插入到顶部,但是进行放大后,则此位置有偏差,需要根据缩放之后的大小减半 操作
但是由于被点击的物体有的中心点不一致,目前我暂时根据服务器配置读取自动摆放高度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值