Unity 坐标转换
如图是场景中的布局,Player
和pool
都是空物体,用来当做物体的parent的,这里这两个的位置不重要(不在一起也没有问题),player
下的ABC是三层父物体,D是一个小球,在C下面,现在我想在pool
下面生成一个cube,位置和D一样,需要用到坐标转换 此处为pool.InverseTransformPoint(D的世界坐标)
,代码如下
public class test : MonoBehaviour
{// 在parent下生成一个物体,位置和D所在的位置public Transform D;public Transform pool;void Start(){// D的世界坐标转换为相对于Parent的本地坐标Vector3 Pos = pool.InverseTransformPoint(D.position);// 创建一个cube,生成在指定位置GameObject ga = GameObject.CreatePrimitive(PrimitiveType.Cube);ga.transform.localScale = Vector3.one * 0.1f;ga.transform.SetParent(pool);ga.transform.localPosition = Pos;}}
效果如下
自己的理解是 把D这个子物体相对于世界的位置记录下来,再放到pool这个空间中,因为相对位置固定,所以生成的位置会叠在一起
UI坐标转换
需求是把B挪到A所在的位置,且不改变父物体,很常见的需求
public class Testt : MonoBehaviour
{public RectTransform BParent;public RectTransform A;public RectTransform B;void Start(){// 把A的世界坐标先转屏幕坐标Vector3 screenPos = Camera.main.WorldToScreenPoint(A.position);// 把A的屏幕坐标转成B的UI坐标RectTransformUtility.ScreenPointToLocalPointInRectangle(BParent, screenPos, Camera.main, out Vector2 localPoint);B.anchoredPosition = localPoint;}
}
Unity 坐标转换相关推荐
- unity坐标转换总结
好久没更了,今天来总结下unity里面常用的unity的坐标转换 常见的坐标转换: 1.世界坐标转屏幕坐标 2.屏幕坐标转世界坐标 3.视口坐标转屏幕坐标 基本上都是:Main.Camer(注释:摄像 ...
- Blender模型导入Unity坐标转换
背景 Blender和Unity中的坐标系不同,因此由Blender生成的模型,在导入Unity后,通常需要将X轴坐标变为-90.本文将通过在Blender中修改物体属性以适配Unity的坐标,避免在 ...
- 顶点片元Shader(Unity)
目录 坐标空间 Unity坐标转换 顶点片元Shader 坐标空间 物体空间: 3D物体自己的空间,一般设计时几何体以中心为原点,人物以双脚为原点 世界空间: 3D物体在场景中的世界坐标,整个游戏场景 ...
- java ndc_【Unity Shader】从NDC(归一化的设备坐标)坐标转换到世界坐标的数学原理...
从NDC(归一化的设备坐标)坐标转换到世界坐标要点 参考资料 How to go from device coordinates back to worldspace http://feepingcr ...
- unity 坐标系转换_Unity3D之笛卡尔坐标系转换——屏幕坐标转换世界坐标,世界坐标转换相机坐标工具...
因为要做AR的标记功能,所以就要用到坐标的转换,就总结了一下屏幕坐标.世界坐标.相机坐标之间的转换. 首先说明的是Unity3D遵从Direct3D标准的左手笛卡尔坐标系变换规则. 也就是说: 世界坐 ...
- 3.Unity中c#代码学习(按键+屏幕和三维坐标转换+组件的调用)
if (Input.GetMouseButtonDown(0)) 0左键 1右键 2中键 判断鼠标按下 鼠标事件只触发一次 if (Input.GetMouseButtonUp(0) ...
- unity世界坐标与相对坐标转换
你看到的是相对坐标 儿子的世界坐标 = 父亲的世界坐标 + 儿子的相对坐标!
- Unity 4.3 2D 教程:新手上路
这篇文章译自 Christopher LaPollo 先生的 Unity 4.3 2D 教程的第一部分 Unity 4.3 2D Tutorial: Getting Started 感谢这套优秀教程的 ...
- unity怎么显示骨骼_骨骼动画的原理及在Unity中的使用
制作骨骼动画 我们看看这几步操作后,我们得到了那些数据: 1.每个皮肤顶点的初始世界坐标. 2.每个骨骼关节顶点的初始世界坐标. 3.每个顶点被骨骼顶点的影响信息. 4.骨骼如何移动. 骨骼动画原理 ...
- unity 角度限制_Unity自定义可编程渲染管线(SRP)(九)——灯光照明
本文是自定义可渲染管线系列比较重要的章节,我们将实现自定义可编程渲染管线对灯光照明的支持. 如果我们想创建一个更加逼真的场景,那么我们必须要模拟物体表面的光照现象.这需要提供更加复杂的shader才能 ...
最新文章
- 王式安概率论与数理统计基础课手写笔记-第一章概率与事件-第二章随机变量及其分布
- hdu1007最近点对问题(分冶java)
- C# winfrom 通过代码 删除TableLayoutPanel控件的一行或列
- 英雄联盟祖安服务器位置,LOL“4区版英雄联盟”:城区有2个,郊区有2个,山区有1个...
- Git 仓库代码迁移步骤记录
- linux --- 部署前后端分离项目
- JSP教程第5讲笔记
- 企业标准化产线建设_机加生产线:标准化管理.ppt
- 微信公众号授权登陆流程
- K650c + Ubuntu15.04双显卡切换
- ECshop商品详情页显示可赠送积分和购买使用金额积分
- 房地产销售技巧:形成客户的信任心理
- 创建jira sprint_如何在Excel中创建高级sprint燃尽图
- 优秀的程序员都在关注「沉默王三」公众号
- java 象限分析_四象限分析法
- 深圳电信isp劫持www.google-analytics.com的ga.js来弹出广告窗口分析
- 手机上的python怎么运行,python在手机上怎么操作
- 总结常用的Javafx功能及用法(下)
- 我的Android进阶之旅------Android Widget 桌面数字时钟(DigtalClockWidget)实例
- UG NX 曲面造型设计思路
热门文章
- 百看不如一练, 247 个 Python 实战案例(附源代码)
- 【电商界的屠龙者-拼多多】——“拼多多”竞品分析
- TCP-Drinc:Smart Congestion Control Based on Deep Reinforcement Learning笔记
- c语言天数倒计时软件,c语言 日期倒计时 日期计算器
- 计算机命令清除所有,电脑深度清理命令设置方法
- npm i安装命令中的-g -D -S的区别
- Periodic Strings
- java 日期加7天_java – 如何检查日期是否超过七天
- u8反启用固定资产_U8和T3固定资产没有启用不能结账的处理方法
- 逆转录转座子简单介绍