今天项目里面需要多点触发且在屏幕对应位置生成物体或者特效等等,特此记录。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ClickIncident : MonoBehaviour
{
private Camera TempC;
public GameObject monster;
void Start()
{
TempC = this.GetComponent<Camera>();//获取摄像机的组件 Camera
}
void Update()
{
for (int i = 0; i <Input.touchCount; i++)
{
if (Input.GetTouch(i).phase == TouchPhase.Began)
{
// 从当前触摸坐标构造一条射线
RaycastHit hitt = new RaycastHit();
Ray ray = Camera.main.ScreenPointToRay(Input.GetTouch(i).position);
//如果被击中,创建一个粒子
Physics.Raycast(ray, out hitt);
Debug.Log(hitt.point);
if (Physics.Raycast(ray))
{
Instantiate(monster,new Vector3 (hitt.point.x, hitt.point.y,hitt.point.z), Quaternion.Euler(new Vector3(0,0,0)));
}
}
}
记录所遇到的点点滴滴,发现开始喜欢写博客记录自己的问题了。
千里之行始于足下。