مهمان عزیز خوش‌آمدید. ورود عضــویت


یه مشکل در تست بازی
#1
سلام دوستان 

من وقتی میخوام پروژه ای که تفریحی ساختم رو تست کنم ارور میده 

این اولین پروژه ی من هست و میخواستم عملکرد اسلحه رو درست کنم

اینم تصویر ارور:

[عکس: Untitled.png]
برای ظهور و سلامتی امام زمان صلوات بفرستید
 
پاسخ دهید
 سپاس شده توسط:
#2
دوست عزیز، کدی که برای بازی نوشتید اشکال داره، برای تست بازی باید کدتون رو به طور صحیح وارد کنید.

پنجره ی کنسول ( Console ) تعداد ارور و جزئیات اونو نشون میده، از اون و خود کد یه عکس بفرستید تا شاید بتونیم بگیم مشکل کدتون کجاس.
 
پاسخ دهید
 سپاس شده توسط: danials008 ، shazde
#3
سلام اینم عکس ها

[عکس: Untitled.png]

[عکس: Untitled1.png]
برای ظهور و سلامتی امام زمان صلوات بفرستید
 
پاسخ دهید
 سپاس شده توسط:
#4
اگه اشتباه نکنم به متغیر Rigidbody تون از توی محیط یونیتی مقدار ندادید. 

 
پاسخ دهید
 سپاس شده توسط: shazde
#5
prefab به اسم bullet بهش نسبت دادم
برای ظهور و سلامتی امام زمان صلوات بفرستید
 
پاسخ دهید
 سپاس شده توسط:
#6
سلامی دوباره، اول من یه چیزی رو خدمت تون عرض کنم، تازه تو عکس متوجهش شدم...

شما تو کدتون متد Instatiate رو به صورت Istantiate نوشتید، یه n جا انداختید.

یه نکته ی دیگه ای هم هست که من از یکی از دوستانم ( danials008 ) در مورد کدتون پرسیدم
اونم اینه که متد Instantiate معمولا برای گیم آبجکت ها به کار میره، در حالی که متغیر شما از نوع ریجید بادی هستش
 
پاسخ دهید
 سپاس شده توسط: shazde
#7
خب برای نیرو دادن به آبجکت باید از rigidbody استفاده کرد و اگر متغیر از نوع گیم آبجکت بزارم ارور میده 

پس از چه متدی استفاده کنم؟
برای ظهور و سلامتی امام زمان صلوات بفرستید
 
پاسخ دهید
 سپاس شده توسط:
#8
(1397/5/18، 06:44 عصر)alireza24 نوشته: خب برای نیرو دادن به آبجکت باید از rigidbody استفاده کرد و اگر متغیر از نوع گیم آبجکت بزارم ارور میده 

پس از چه متدی استفاده کنم؟

به پرفب تون باید کامپوننت rigid body رو اضافه کنید بعد تو کد با استفاده از همون متغیر گیم آبجکت، کلاس rigid body پرفب رو فرا بخونید.
 
پاسخ دهید
 سپاس شده توسط:
#9
خب به پریفب که ریجید بادی دادم اما اون کلاس ریجید بادی باید اینجوری بنویسم؟

public class = Rigidbody  GameObject Bullet  
برای ظهور و سلامتی امام زمان صلوات بفرستید
 
پاسخ دهید
 سپاس شده توسط:
#10
شما یه متغیر ریجید بادی و یه متغیر گیم آبجکت بسازید
پرفب تون رو که به همون متغیر گیم آبجکت نسبت بدید، بعد از اون تو کد با استفاده از GetComponent کلاس ریجید بادی پرفب تون رو به متغیر ریجید بادی نسبت بدید.

بعدش میتونید با استفاده از متد Instantiate گیم آبجکت تون رو تو بسازید، و بعدش با استفاده از متغیر ریجید بادی تون که به کلاس فیزیک پرفب تون نسبتش دادید، پرفب تون رو به حرکت در بیارید.

این کد احتمالا بتونه کارتون رو راه بندازه


کد:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class NewBehaviourScript : MonoBehaviour {

    public GameObject gameObject;
    Rigidbody bullet;
    public Vector3 vec;

    void Start () {
        
    }

    void Update () {

        bullet = gameObject.GetComponent <Rigidbody> ();

        if (Input.GetKeyDown(KeyCode.Space)) {

            Instantiate (gameObject);
            bullet.AddForce (vec);
        }
    }
}

 
پاسخ دهید
 سپاس شده توسط: alireza24
  


موضوعات مشابه ...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  سازگاری با تمامی صفخات shayan100 0 52 1397/9/14، 11:19 عصر
آخرین ارسال: shayan100
  معرفی انجمن یونیتی arian 2 74 1397/8/27، 04:50 عصر
آخرین ارسال: arian
  کمک اموزش درون برنامه یونیتی mandani 0 48 1397/8/22، 07:04 عصر
آخرین ارسال: mandani
  سیستم پارتیکل یونیتی ebrahiminiya 1 73 1397/8/9، 07:44 عصر
آخرین ارسال: developer
  کد خاموش نشدن صفحه گوشی در یونیتی ebrahiminiya 2 96 1397/7/25، 12:41 عصر
آخرین ارسال: ebrahiminiya

پرش به انجمن: