Unity3D 移动和旋转

移动和旋转

using UnityEngine;
using System.Collections;
/*
 * Adminer:sun2955
 * http:www.yinghy.com
 * */
public class Move : MonoBehaviour {
    private float moveSpeed = 7;
    private float rotateSpeed = 150;

    // 使用进行初始化
    void Start () {

    }

    //每一帧都会调用该函数
    void Update () {

       //  float inputx = Input.GetAxis("Horizontal"); //获得水平移动
       // float inputy = Input.GetAxis("Vertical"); //获得垂直移动

       //// this.transform.Translate(new Vector3(inputx * speed, 0, inputy * speed) * Time.deltaTime);

       // if(Input.GetKey(KeyCode.A)){
       //     this.transform.Rotate(new Vector3(inputx * speed, 0, inputy * speed) * Time.deltaTime);
       // }
       // if (Input.GetKey(KeyCode.D))
       // {
       //     this.transform.Rotate(new Vector3(inputx * speed, 0, inputy * speed) * Time.deltaTime);
       // }
    if(Input.GetKey(KeyCode.W)){
        this.transform.Translate(new Vector3(1, 0, 0)* moveSpeed * Time.deltaTime);
    }
    if (Input.GetKey(KeyCode.S))
    {
        this.transform.Translate(new Vector3(1, 0, 0) * -moveSpeed * Time.deltaTime);
    }
    if (Input.GetKey(KeyCode.A))
    {
        this.transform.Rotate(new Vector3(0, 1, 0) * -rotateSpeed * Time.deltaTime);
    }
    if (Input.GetKey(KeyCode.D))
    {
        this.transform.Rotate(new Vector3(0, 1, 0) *  rotateSpeed * Time.deltaTime);
    }

    }
    //物理运动
    void FixedUpdate()
    {

    }
}
时间: 2024-10-03 11:06:07

Unity3D 移动和旋转的相关文章

unity3d 移动与旋转 2

这次的代码示例是配合动画系统使用的 4.3新的动画系统允许动画带有位置偏移,只需要在Animator组件中勾选Apply Root Motion我们就可以使用它了. using UnityEngine; using System.Collections; public class DonePlayerMovement : MonoBehaviour { public AudioClip shoutingClip; // Audio clip of the player shouting. pub

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

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

Unity3D 如何图形问题修正旋转模型已导入?

 如何纠正旋转模型被导入? 一些立体艺术资源包导出其模式,以便 Z 轴向上.Unity 大多数标准的脚本中假定的三维世界 Y 轴代表了.在 Unity 比改动脚本使其契合easy得多. Z 轴朝上的模型 假设可能的话,建议导入前在三维建模应用程序中修正模型,使 Y 轴朝上. 假设不可行,能够多加入一个父变换在 Unity 中进行修正: 使用游戏对象 (GameObject)->创建空对象 (Create Empty) 菜单来创建一个空游戏对象. 定位新游戏对象.确保其位于网格中心或是不论什么

【转载】Unity3D研究院之IOS触摸屏手势控制镜头旋转与缩放

前几篇文章介绍了很多Unity3D引擎自身的一些问题, 今天我们在回到IOS设备上讨论一些触摸屏幕手势,本章的目标是通过触摸iPhone屏幕手势 实现模型左右的旋转,与模型的缩放. 大家想一想模型的旋转,实际上是镜头的旋转.模型的缩放实际上是镜头Z轴方向的坐标.那么实现本章的内容只需要控制镜头的位置方可实现. 我们创建一个简单的游戏平面, 然后平面中放一个箱子做为旋转缩放的参照物.如下图所示,选中摄像机,给摄像机添加一个脚本名称为Move. 脚本中有一个参数 Target,它的作用是设置摄像头旋

Unity3D 中 用quaternion 来对一个坐标点进行旋转的初步体会

在unity3d中,用四元数来表示旋转,四元数英文名叫quaternion . 比如 transform.rotation 就是一个四元数,其由四个部分组成 Quaternion = (xi + yj + zk + w ) = (x,y,z,w) 1.  http://en.wikipedia.org/wiki/Quaternion  有四元数的定义     2.  http://en.wikipedia.org/wiki/Quaternions_%26_spatial_rotation   有

unity3d模型旋转和模型导出obj

本文好多内容,来自互联网. 环境:unity3d 4.1, unity3d中写脚本实现模型的颜色变化和旋转,注意如果模型设置为static是旋转不了的. 功能描述:鼠标落到模型,模型颜色变化,按下鼠标模型开始旋转. 脚本代码如下: using UnityEngine; using System.Collections; public class test : MonoBehaviour { bool tri1=false; bool tri2=false; Color orgColor; //

unity3d 触屏多点触控(旋转与缩放)

unity3d 触屏多点触控(旋转与缩放) /*Touch OrbitProgrammed by: Randal J. Phillips (Caliber Mengsk)Original Creation Date: 12/16/2011Last Updated:                   12/16/2011Desctiption: Simple orbit by one touch and drag, as well as pinch to zoom with two finger

unity3d旋转摄像机脚本

void Update () { if(Input.GetMouseButton(1)) { if (axes == RotationAxes.MouseXAndY) { // Read the mouse input axis rotationX += Input.GetAxis("Mouse X") * sensitivityX; rotationY += Input.GetAxis("Mouse Y") * sensitivityY; rotationX =

Unity3d修炼之路:对一个简单对象Cube的移动 旋转和缩放

#pragma strict private var m_nFrameCount : int = 0; private var m_isSubCount : int = 0;//false function Update () { var fSpeed : float = 1.0f; var fAngle : float = 50.0f; var pCurrentPoint : Vector3 = transform.position; var pAxis : Vector3 = new Vec