Unity UGUI在鼠标位置不同时 图片浮动效果

 1 /// <summary>
 2 /// 在鼠标位置不同时 图片浮动效果
 3 /// </summary>
 4 public class TiltWindow : MonoBehaviour
 5 {
 6     public Vector2 range = new Vector2(5f, 3f);
 7
 8     Transform mTrans;
 9     Quaternion mStart;
10     Vector2 mRot = Vector2.zero;
11
12     void Start ()
13     {
14         mTrans = transform;
15         mStart = mTrans.localRotation;
16     }
17
18     void Update ()
19     {
20         Vector3 pos = Input.mousePosition;
21
22         float halfWidth = Screen.width * 0.5f;
23         float halfHeight = Screen.height * 0.5f;
24         float x = Mathf.Clamp((pos.x - halfWidth) / halfWidth, -1f, 1f);
25         float y = Mathf.Clamp((pos.y - halfHeight) / halfHeight, -1f, 1f);
26         mRot = Vector2.Lerp(mRot, new Vector2(x, y), Time.deltaTime * 5f);
27
28         mTrans.localRotation = mStart * Quaternion.Euler(-mRot.y * range.y, mRot.x * range.x, 0f);
29     }
30 }
时间: 2024-11-04 19:17:39

Unity UGUI在鼠标位置不同时 图片浮动效果的相关文章

鼠标滑过显示图片大图效果

mnesia在频繁操作数据的过程可能会报错:** WARNING ** Mnesia is overloaded: {dump_log, write_threshold},可以看出,mnesia应该是过载了.这个警告在mnesia dump操作会发生这个问题,表类型为disc_only_copies .disc_copies都可能会发生. 如何重现这个问题,例子的场景是多个进程同时在不断地mnesia:dirty_write/2 mnesia过载分析 1.抛出警告是在mnesia 增加dump

unity获取ugui上鼠标位置

public class GetMousePos : MonoBehaviour { public Canvas canvas;//画布 private RectTransform rectTransform;//坐标 void Start() { canvas = GameObject.Find("Canvas").GetComponent<Canvas>(); rectTransform = canvas.transform as RectTransform; //也可

CSS3感应鼠标背景闪烁和图片缩放效果

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>CSS3感应鼠标的背景闪烁和图片缩放动态效果&l

以鼠标位置为中心缩放平移图片(图片map)

最近一个项目使用一张图片实现地图类似的效果,即图片以鼠标位置为中心缩放.平移:通过度娘搜索找到几个版本,最终下面这个版本真正实现该功能:具体代码是网上Copy的,若有版权或其他问题,请联系我予以处理,有不当之处,请原作者原谅. <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>移动缩放图片</title>

在WPF里面实现以鼠标位置为中心缩放移动图片

原文:在WPF里面实现以鼠标位置为中心缩放移动图片 在以前的文章使用WPF Resource以及Transform等技术实现鼠标控制图片缩放和移动的效果里面,介绍了如何在WPF里面移动和放大缩小图片,程序也支持使用滚轮的方式缩放图片.然而前面文章里介绍的缩放功能只能以图片中心为原点来实现,但是这种功能往往并不是客户想要的,我们看图片的时候,往往都喜欢以鼠标放在图片的焦点为原点进行图片的缩放. 咋看起来,实现这个功能也不是很难, ScaleTransform类里面定义了CenterX和Center

【Unity笔记】物体朝着鼠标位置移动

其实思路也很简单,就是先获取到鼠标的坐标,然后赋值给目标物体即可. void Update(){ // 物体跟随鼠标移动 Vector2 mousePos = Input.mousePosition; gameObject.transform.position = mousePos; } 这是物体即时改变位置的做法,如果想要物体朝鼠标位置缓慢移动(有过程时间),可以尝试用Vector2.Lerp().

Unity鼠标位置转世界坐标

1 using UnityEngine; 2 using System.Collections; 3 /// <summary> 4 /// 鼠标位置控制世界空间对象坐标 5 /// 因为只能控制2维坐标,所以要注意相机所看向的方向,及移动对象的坐标轴 6 /// </summary> 7 public class MyTest : MonoBehaviour { 8 9 public Transform Obj;//参考对象 10 private float posX, posY

Unity UGUI —— 无限循环List

还记得大学毕业刚工作的时候是做flash的开发,那时候看到别人写的各种各样的UI组件就非常佩服,后来自己也慢慢尝试着写,发现其实也就那么回事.UI的开发其实技术的成分相对来说不算多,但是一个好的UI是绝对少不了底层组件的支持的.我个人认为UI组件中相对比较复杂的就是List了,所以,这两天实现了一个UGUI的list,写了好几个版本,最终这个版本是相对比较好用的,在这我介绍一下大概思路,一是巩固一下知识做个记录,二是发扬一下分享精神.嘿嘿,大家多多赐教. 写List有两个重点是需要考虑的: 1.

Unity UGUI 实现简单拖拽功能

说到拖拽,那必然离不开坐标,UGUI 的坐标有点不一样,它有两种坐标,一种是屏幕坐标,还有一种就是 UI 在Canvas内的坐标(暂时叫做ugui坐标),这两个坐标是不一样的,所以拖拽就需要转换. 因为鼠标的移动是屏幕坐标,而 UI 的移动是ugui坐标.转换的方法: RectTransformUtility.ScreenPointToLocalPointInRectangle ( - ); 这个方法可以把屏幕坐标转换成 ugui 坐标.这里我们只需要知道 UI 的坐标和鼠标的坐标是不一样的,他