unity 2D 物体跟随鼠标旋转 移动
using System.Collections;
using System.Collections.Generic;
using UnityEngine; public class FollowMouse:MonoBehaviour { // Use this for initialization
void Start() { } // Update is called once per frame
void Update() {
FollowMouseRotate();
FollowMouseMove();
} //物体跟随鼠标旋转
private void FollowMouseRotate() {
//获取鼠标的坐标,鼠标是屏幕坐标,Z轴为0,这里不做转换
Vector3 mouse = Input.mousePosition;
//获取物体坐标,物体坐标是世界坐标,将其转换成屏幕坐标,和鼠标一直
Vector3 obj = Camera.main.WorldToScreenPoint(transform.position);
//屏幕坐标向量相减,得到指向鼠标点的目标向量,即黄色线段
Vector3 direction = mouse - obj;
//将Z轴置0,保持在2D平面内
direction.z = 0f;
//将目标向量长度变成1,即单位向量,这里的目的是只使用向量的方向,不需要长度,所以变成1
direction = direction.normalized;
//物体自身的Y轴和目标向量保持一直,这个过程XY轴都会变化数值
transform.up = direction;
} //跟随鼠标移动
private void FollowMouseMove() {
float moveSpeed = 3.0f;
if(Input.GetMouseButton(0)) //如果按下鼠标左键,移动速度变快
{
moveSpeed = 6.0f;
transform.Translate(Vector3.up * moveSpeed * Time.deltaTime);
} else {
transform.Translate(Vector3.up * moveSpeed * Time.deltaTime);
}
}
}

转载:(19条消息) Unity2D简单实现物体跟随鼠标移动并旋转_雨牧_的博客-CSDN博客_unity 物体跟随鼠标旋转
unity 2D 物体跟随鼠标旋转 移动的更多相关文章
- 【Unity】物体跟随鼠标移动
需求:2D游戏中,需要物体跟随鼠标移动. 做法:其实思路也很简单,就是先获取到鼠标的坐标,然后赋值给目标物体即可. void Update(){ // 物体跟随鼠标移动 Vector2 mousePo ...
- Unity3D 物体跟随鼠标旋转
float speed=1000f; void Update () { if (Input.GetMouseButton (0)) { transform.Rotate (0,-Input.GetAx ...
- canvas实现跟随鼠标旋转的箭头
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta ht ...
- Unity3D GUI中的图片跟随鼠标旋转脚本
var Mid : Texture2D; var mouse : Texture2D; //鼠标图片 var mousePs = Vector2.zero; //鼠标的位置 private var a ...
- Unity全视角跟随鼠标右键转换视角实现——研究笔记
using UnityEngine; using System.Collections; public class CameraMove : MonoBehaviour { public Transf ...
- 【Unity笔记】物体朝着鼠标位置移动
其实思路也很简单,就是先获取到鼠标的坐标,然后赋值给目标物体即可. void Update(){ // 物体跟随鼠标移动 Vector2 mousePos = Input.mousePosition; ...
- Unity 3D 简易制作摄像机围绕物体随鼠标旋转效果
Unity 3D 简易制作摄像机围绕物体随鼠标旋转效果 梗概: 一. 摄像机围绕目标物体旋转, 即摄像机离目标物体有一定的距离且旋转轴心为该物体的位置. 二. 当目标物体被障碍物挡住后, 需要将摄像机 ...
- Unity 3d 实现物体跟随摄像机视野运动
https://blog.csdn.net/qq_31411825/article/details/61623857 Unity 3d 实现物体跟随摄像机视野运动Created by miccall ...
- Unity 2D入门基础教程之僵尸先生
注:这是根据网上教程完成的. 翻译:http://blog.1vr.cn/?p=1422 原文:http://www.raywenderlich.com/61532/unity-2d-tutorial ...
- 【Unity】7.2 鼠标输入
分类:Unity.C#.VS2015 创建日期:2016-04-21 一.简介 在桌面系统的游戏中,鼠标输入是最基本的输入方式之一.游戏很多操作都需要鼠标来完成,例如武器的瞄准和开火.菜单的单击.物体 ...
随机推荐
- EMBARK研究: 依那西普治疗早期nr-axSpA达48周的临床和MRI疗效
关键词: 放射学阴性中轴型SpA; TNF拮抗剂; 磁共振影像 EMBARK研究48周结果: 依那西普治疗早期放射学阴性中轴型SpA患者的临床与MRI疗效 电邮发布日期:2016年1月25日 文献: ...
- 代码随想录算法训练营day10 | leetcode 232.用栈实现队列 225. 用队列实现栈
基础知识 使用ArrayDeque 实现栈和队列 stack push pop peek isEmpty() size() queue offer poll peek isEmpty() size() ...
- CF818G - Four Melody
题意:对于一个序列,令一个 \(melody\) 为一个子序列满足子序列的相邻两项相差 \(1\) 或者模 \(7\) 同余.现在提取四个不重合的 \(melody\),求最长总长度. 我们先考虑暴力 ...
- Word 段落首行缩进
描述 使 Word 段落第一行左突出两个字符的位置,即段落首行缩进的方式有两种. "视图"选项卡--"显示"组--标尺 "开始"选项卡--& ...
- CSS transform: scale()
前言 transform属性允许你旋转,缩放,倾斜或平移给定元素.其中scale(x, y)就是实现元素缩放的属性值. scale(x, y)的 x 乘以原本元素的 x:y 乘以原本的元素 y,就可以 ...
- LeetCode-1996 游戏中弱角色的数量
来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/the-number-of-weak-characters-in-the-game 题目描述 你正 ...
- 手把手教你搭建Windows 搭建Prometheus + Grafana + Jmeter可视化监控平台
下载安装包 Prometheus windows_exporter Grafana 下载地址:https://share.weiyun.com/D9sdiWoC 工作原理 Exporter 监控工具, ...
- C语言学习--动态内存分配(未完待续)
内存分配的类型: 在C/C++中内存分为5个区,分别为栈区.堆区.全局/静态存储区.常量存储区.代码区. 静态内存分配:编译时分配.包括:全局.静态全局.静态局部三种变量. 动态内存分配:运行时分配. ...
- Vue 非单文件组件(不常用)3步骤(创建、注册、使用)和几个注意点、组件的本质(VueComponent)
Vue中使用组件的三大步骤: 1.定义组件(创建) 2.注册组件 3.使用组件(写组件标签) 一.如何定义一个组件? 使用Vue.extend(options)创建,其中options 和 new V ...
- ABAP PDF 打印
SPAN { font-family: "Courier New"; font-size: 10pt; color: rgba(0, 0, 0, 1); background: r ...