柚子快报邀请码778899分享:常用代码
物体拖拽最简实现
using UnityEngine;
[RequireComponent(typeof(Collider))]
public class CardTouch : MonoBehaviour
{
private void OnMouseDrag() {
var mousePos = Input.mousePosition;
mousePos.z = 10; // select distance = 10 units from the camera
transform.position = Camera.main.ScreenToWorldPoint(mousePos);
}
}
任意位置跟随
private Vector3 screenPoint;
private Vector3 offset;
private Camera camera;
private Camera CameraMain {
get {
if (camera == null) {
camera = Camera.main;
}
return camera;
}
}
void OnMouseDown() {
Vector3 pos = transform.position;
screenPoint = CameraMain.WorldToScreenPoint(pos);
offset = pos - CameraMain.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z));
}
void OnMouseDrag() {
Vector3 curScreenPoint = new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z);
Vector3 curPosition = CameraMain.ScreenToWorldPoint(curScreenPoint) + offset;
transform.position = curPosition;
}
按钮按下时触发事件,而非抬起
1.添加Event Trigger组件
2.Code
public EventTrigger et;
void Start() {
EventTrigger.Entry entry = new EventTrigger.Entry ();
entry.eventID = EventTriggerType.PointerDown;
entry.callback.AddListener(click);
et.triggers.Add(entry);
}
3. PointerDown 可以改成别的
Animation跳转最后一帧
animation.Rewind();
animation.Play();
animation.Sample();
animation.Stop();
柚子快报邀请码778899分享:常用代码
发表评论