پرتاب نارنجک به نقطه ای که کلیک کردیم برای حالت دو بعدی در یونیتی 5
سه شنبه, ۲۱ مهر ۱۳۹۴، ۰۴:۱۸ ق.ظ
منبع:gameover.blog.ir
کد به زبان سیشارپ در یونیتی 5.1 فاینال تست شده(حالت دو بعدی)
//shellik be jayi ke click kardim 2d mode using UnityEngine; using System.Collections; public class test : MonoBehaviour { public GameObject pref_Bullet; public int bulletSpeed=1000; float distance= 10.0f; void Update (){ if (Input.GetMouseButtonDown(0)) { Vector3 position=new Vector2(Input.mousePosition.x, Input.mousePosition.y); position = Camera.main.ScreenToWorldPoint(position); GameObject go= Instantiate(pref_Bullet, transform.position, Quaternion.identity) as GameObject ; go.transform.LookAt(position); Debug.Log(position); go.AddComponent<Rigidbody2D>(); go.gameObject.GetComponent<Rigidbody2D>().AddForce(go.transform.forward*bulletSpeed); } } }
نکته: متغیر pref_Bullet از نوع public هست.پریفب نارنجک رو بدید بهش.
پریفب رو اگه نمی دونید بگم:
هر گیم ابجکت یا جسم بازی که می سازیم می ذاریم توی صحنه رنگش و متریال وخصوصیات دیگه رو تغییر می دید هر جور دوس دارید. یا زیر شاخش هر چی می خواید می ذارید(مثل ماشین با چرخ و درب و غیره)، سپس با ماوس از کادر هایرارکی یا کادر اجزای صحنه ی بازی(hierarchy) می کشید توی کادر project یه نمونه ازش می سازه بهش می گیم prefab یا پریفب . حالا هر چی دلمون بخواد می تونیم ازش با ماوس بندازیم تو صحنه و فقط کافیه تغییر رو روی پریفب اصلی اعمال کنیم تا روی همشون اعمال بشه.
۹۴/۰۷/۲۱