【Unity引擎学习】数学知识在游戏开发中的应用

本文介绍了Unity引擎中四种坐标系:世界坐标系、局部坐标系、屏幕坐标系和视口坐标系,并详细阐述了它们之间的转换方法。此外,还探讨了向量运算,包括单位化、距离计算、点乘和叉乘的应用,这些在游戏开发中至关重要。

1.unity中的几种坐标系:

  • Unity中使用左手系,即z轴正向指向垂直屏幕内部。

(1)世界坐标系(World):transform.position获取,子物体transform里的position需叠加上它的父物体的position才是子物体的世界坐标。

  • 叠加公式:每个当前层的position×上一层的scale值的求和(最上层默认上层scale为1)

(2)局部坐标系(Local):transform.localPosition获取,子物体本身transform里的坐标就是。

(3)屏幕坐标系(Screen):以像素为单位,屏幕左下角为(0,0),右上角为(screen.width,screen.height)。使用鼠标(input.mouseosition)或手指点击触屏获取到的都是屏幕坐标,对UI操作也基于屏幕坐标。

(4)视口坐标系(Viewport):相机有自己的视口坐标,物体要转换到视口坐标才能被看到。相机的视口左下角为(0,0),右上角为(1,1)。

转换方法:

camera.WorldToScreenPoint(transform.position)

camera.ScreenToViewportPoint

Camera.WorldToViewportPoint

2.向量运算

(1)单位化:Vector.normalized 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值