Unity3D 控制物体移动、旋转、缩放

Transform基本移动函数:

transform.Translate(Vector3.forward *TranslateSpeed);
transform.Translate(xSpeed,0,zSpeed);
transform.position = Vector3(xPostion,0,zPostion);

1.输入指定按键:

if(Input.GetKey ("up"))
  print("Up!");
if(Input.GetKey(KeyCode.W);)
  print("W!");

2.鼠标控制

//按下鼠标左键(0对应左键 , 1对应右键 , 2对应中键)
if(Input.GetMouseButton(0))
  print("Mouse Down!");Input.GetAxis("Mouse X");//鼠标横向增量(横向移动) Input.GetAxis("Mouse Y");//鼠标纵向增量(纵向移动)

3.获取轴:

//水平轴/垂直轴 (控制器和键盘输入时此值范围在-1到1之间)
Input.GetAxis("Horizontal");//横向
Input.GetAxis ("Vertical");//纵向


物体旋转

  transform.Rotate(new Vector3(x,y,0));

物体缩放:

    transform.localScale += new Vector3(x, 0, z);
时间: 2024-10-10 17:29:29

Unity3D 控制物体移动、旋转、缩放的相关文章

Unity3D 控制物体旋转详解 —— 自身绕轴旋转、缓慢旋转、鼠标控制旋转、欧拉数和四元数的关系

问题描述:昨天需要实现一个功能是根据指令左转90度或者右转90度,当时脑汁可能是有浆糊吧,居然要用直接赋值rotation,这样一来就要牵扯到eulerAngles和四元数的Euler函数了,结果忙活了好久没解决,bug层出,今天经过详细了解,解决了相关问题,一并把其他关于角度和旋转的知识点整理出来. 一.问题的解决:如何让物体绕自身轴旋转 直接上关键代码: player_cube.Rotate(-90, 0, 0); player_cube是获取的需要旋转的物体的Transform,其中-90

Matrix控制平移、旋转和缩放的方法

1.setTranslate(float ds,float dy):控制Matrix进行平移.2.setSkew(float kx,float ky,float px,float py):控制Matrix以px.py为轴心进行倾斜.kx.ky为X.Y方向上的倾斜距离.3.setSkew(float kx,float ky):控制Matrix进行倾斜.kx.ky为X.Y方向上的倾斜距离.4.setRotate(float degrees):控制Matrix进行旋转,degrees控制旋转的角度.5

unity3d小小白之代码控制物体通过键盘输入移动

我通过键盘wsad来控制物体运动,代码如下: 这里说明一下我的代码. 这里面的back,forward,right,left 都是以你要控制移动的物体的自身坐标移动的. 我的代码是左右移动是在Z轴上,上下移动是X轴上,按理来讲,按下a,物体应该是Vector.left 而不是Vector.right.这是因为我在放物体的时候将物体绕Y轴旋转了180° ,如果我还按照按下a对应left,那么我按下a会向右走.因此我就调成按下a向右走了. 至于判断条件里的数字,是这样得到的:把你要移动的物体移到Ga

Unity3D 角色(物体) 移动方法 合集

1. 简介 在Unity3D中,有多种方式可以改变物体的坐标,实现移动的目的,其本质是每帧修改物体的position. 2. 通过Transform组件移动物体 Transform 组件用于描述物体在空间中的状态,它包括 位置(position), 旋转(rotation)和 缩放(scale). 其实所有的移动都会导致position的改变,这里所说的通过Transform组件来移动物体,指的是直接操作Transform来控制物体的位置(position). 2.1 Transform.Tra

iOS_2_按钮控制物体形变

BeyondViewController.h // // BeyondViewController.h // 02_按钮控制物体形变 // // Created by beyond on 14-7-21. // Copyright (c) 2014年 com.beyond. All rights reserved. // #import <UIKit/UIKit.h> @interface BeyondViewController : UIViewController // 控制器成员记住界面

iOS_2_button控制物体形变

终于效果图: BeyondViewController.h // // BeyondViewController.h // 02_button控制物体形变 // // Created by beyond on 14-7-21. // Copyright (c) 2014年 com.beyond. All rights reserved. // #import <UIKit/UIKit.h> @interface BeyondViewController : UIViewController /

Maya 脚本控制物体自转

在Maya中,我们可以用脚本来控制物体的自转方向,速度等等,步骤如下: 选择需要操作的物体object,打开通道盒Channel Box,点击编辑Edit,打开表达式Expressions面板 选择需要转动轴rotateX, rotateY, 或者rotateZ 然后在下面输入: object.rotateX = time * -64; 上面的代码表示物体每秒绕x轴逆时针旋转64度.延伸阅读请参见Maya表达式制作时钟转动效果.

旋转缩放代码

using UnityEngine; using System.Collections; // 直接放在相机上,控制相机的旋转和缩放 // public class CameraContro : MonoBehaviour { public Transform target; public float xSpeed=200, ySpeed=200, mSpeed=10; public float yMinLimit=-50, yMaxLimit=50; public float distance

osg矩阵变换节点-----平移旋转缩放

osg矩阵变换节点-----平移旋转缩放 转自:http://www.cnblogs.com/ylwn817/articles/1973396.html 平移旋转缩放这个三个是osg矩阵操作中,最常见的操作,下面给出示例以及说明 首先先了解下osg空间方向: osg方向如左图所示,x轴表示屏幕水平方向,y轴表示和屏幕垂直方向即屏幕里面方向,z轴表示屏幕垂直方向,每个箭头指向表示正方向 下面来学习矩阵变换操作 首先平移: #include<osgDB/ReadFile> #include<