Học Unity
»
Lập trình Unity 3D
»
Bài hướng dẫn
»
Bài hướng dẫn sử dụng Raycast tác động lực cho đối tượng Unity
Danh hiệu: Administration
Nhóm: Gia nhập: 19-08-2014(UTC) Bài viết: 145
Được cảm ơn: 7 lần trong 6 bài viết
|
Dùng chuyển động vật, va vào đối tượng ở xa, các bạn xem và trao đổi thêm
using UnityEngine; using System.Collections;
public class move : MonoBehaviour {
public Rigidbody prefab; // Use this for initialization void Start () { } // Update is called once per frame void Update () { //print ("Update"); // -1 <-> 0 <-> 1 transform.Translate (new Vector3(20* Input.GetAxis("Horizontal") * Time.deltaTime,0f, 20* Input.GetAxis("Vertical") * Time.deltaTime));
if (Input.GetMouseButtonDown(0)) { RaycastHit hit; //Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); vector3.forward Ray ray = new Ray(transform.position, new Vector3(0,0,1)); if (Physics.Raycast(ray, out hit)) if (hit.rigidbody != null) hit.rigidbody.AddForceAtPosition(ray.direction * 100000, hit.point);
print ("Name:" + hit.transform.name);
Debug.DrawLine(ray.origin, hit.point,Color.red); }
Rigidbody newTrans = Instantiate(prefab, new Vector3(2 * 2.0F, 0, 0), Quaternion.identity) as Rigidbody;
newTrans.AddForce (new Vector3 (0,1,0) *10);
}
}
|
|
|
|
Học Unity
»
Lập trình Unity 3D
»
Bài hướng dẫn
»
Bài hướng dẫn sử dụng Raycast tác động lực cho đối tượng Unity
Di chuyển
Bạn không thể tạo chủ đề mới trong diễn đàn này.
Bạn không thể trả lời chủ đề trong diễn đàn này.
Bạn không thể xóa bài của bạn trong diễn đàn này.
Bạn không thể sửa bài của bạn trong diễn đàn này.
Bạn không thể tạo bình chọn trong diễn đàn này.
Bạn không thể bỏ phiếu bình chọn trong diễn đàn này.