build settings

Программирование на Юнити.

build settings

Сообщение Yellow12Phoenix 25 дек 2020, 23:51

Всем привет, при build settings или построении игры, возникают: некоторые, мелкие ошибки, например, не запускается эффект взрыва противника, самое главное - первый перфаб противника, взрывается как надо, последующие префабы просто исчезают; переместил в коде порядок операций, чтобы сначала взрывались потом исчезали - противник стал игнорить выстрелы, они теперь пролетают мимо него.
Но в Unity при тесте - всё работает прекрасно, без нареканий.
Может я какую-то галочку не нажал или...
Вообщем, если не сложно, пожалуйста, подскажите
https://yadi.sk/i/vCV3fROLD9_FrQ
после запуска снаряда, возникает ошибка
NullReferenceException ArgumentException: The Object you want to instantiate is null.
Последний раз редактировалось Yellow12Phoenix 26 дек 2020, 11:24, всего редактировалось 1 раз.
Yellow12Phoenix
UNец
 
Сообщения: 31
Зарегистрирован: 17 авг 2020, 20:44

Re: build settings

Сообщение Yellow12Phoenix 25 дек 2020, 23:54

Раньше возникала ошибка:
[23:31:43] Non-convex MeshCollider with non-kinematic Rigidbody is no longer supported since Unity 5. If you want to use a non-convex mesh either make the Rigidbody kinematic or remove the Rigidbody component. Scene hlerarchy path "LazerEnemy(Clone)/Quad", Mesh asset path "Libraryylunity default resources" Mesh name "Quad"
Но прочтя https://forum.unity.com/threads/non-con ... ed.344160/ - я отключил колайдеры и ошибка пропала
Yellow12Phoenix
UNец
 
Сообщения: 31
Зарегистрирован: 17 авг 2020, 20:44

Re: build settings

Сообщение Alkos26Rus 26 дек 2020, 11:32

Build setting здесь не при чем, исправляй ошибки в игре, там же написано в чем проблема, что объект который ты хочешь создать отсутствует
Аватара пользователя
Alkos26Rus
Адепт
 
Сообщения: 1640
Зарегистрирован: 26 ноя 2020, 17:52
Откуда: Москва

Re: build settings

Сообщение Yellow12Phoenix 26 дек 2020, 11:37

Alkos26Rus писал(а):Build setting здесь не при чем, исправляй ошибки в игре, там же написано в чем проблема, что объект который ты хочешь создать отсутствует

В принципе всё верно, только как исправить? я уже пол дня мучаюсь
Yellow12Phoenix
UNец
 
Сообщения: 31
Зарегистрирован: 17 авг 2020, 20:44

Re: build settings

Сообщение Alkos26Rus 26 дек 2020, 11:40

Что бы понять в чем причина нужен скрипт или сам проект если он не большой
Аватара пользователя
Alkos26Rus
Адепт
 
Сообщения: 1640
Зарегистрирован: 26 ноя 2020, 17:52
Откуда: Москва

Re: build settings

Сообщение Yellow12Phoenix 26 дек 2020, 11:41

Скрипт игрока
Синтаксис:
Используется csharp
    public GameObject LazerGun;
    public GameObject LazerGun1;
    public GameObject LazerShot;

   if (Input.GetButton("Fire1") && Time.time > nextShot)
        {
            // LazerShot = Resources.Load("Lazer") as GameObject;
             Instantiate(LazerShot, LazerGun.transform.position, Quaternion.identity);
             Instantiate(LazerShot, LazerGun1.transform.position, Quaternion.identity);
            nextShot = Time.time + lazerDelay;
        }


 


Скрипт снаряда
Синтаксис:
Используется csharp
public float speed;
    private GameObject lazerd;

    protected GameController gameControllerScript;
    // Start is called before the first frame update
    void Start()
    {
        GetComponent<Rigidbody>().velocity = Vector3.forward * speed;
 
Yellow12Phoenix
UNец
 
Сообщения: 31
Зарегистрирован: 17 авг 2020, 20:44

Re: build settings

Сообщение Alkos26Rus 26 дек 2020, 11:46

Скорей всего на LazerShot отсутствует ссылка на объект, может ты забыл накинуть его в редакторе?
Аватара пользователя
Alkos26Rus
Адепт
 
Сообщения: 1640
Зарегистрирован: 26 ноя 2020, 17:52
Откуда: Москва

Re: build settings

Сообщение Alkos26Rus 26 дек 2020, 11:50

Вобще в ошибке показано на какую строку кода она приходится, поэтому посмотри конкретней, ты говорил что у тебя там создаются какието взрывы может и при их создании ошибка
Аватара пользователя
Alkos26Rus
Адепт
 
Сообщения: 1640
Зарегистрирован: 26 ноя 2020, 17:52
Откуда: Москва

Re: build settings

Сообщение Yellow12Phoenix 26 дек 2020, 11:56

Alkos26Rus писал(а):Скорей всего на LazerShot отсутствует ссылка на объект, может ты забыл накинуть его в редакторе?

Нет ничего не забыл, в программе Unity - всё работает

Alkos26Rus писал(а):Вобще в ошибке показано на какую строку кода она приходится, поэтому посмотри конкретней, ты говорил что у тебя там создаются какието взрывы может и при их создании ошибка

Да начали возникать:
[11:52:31] Destroying assets is not permitted to avoid data loss.
If you really want to remove an asset use Destroylmmediate (theObject, true);
Вот скрипт взрыва
Синтаксис:
Используется csharp
Instantiate(EnemyShip1_explosion, transform.position, Quaternion.identity);
            gameControllerScript.increaseScore(20);
            Destroy(other.gameObject);
            Destroy(gameObject);
            Destroy(EnemyShip1_explosion, 2);
 
Yellow12Phoenix
UNец
 
Сообщения: 31
Зарегистрирован: 17 авг 2020, 20:44

Re: build settings

Сообщение Alkos26Rus 26 дек 2020, 12:01

зачем вот эта строка? Destroy(EnemyShip1_explosion, 2);
Аватара пользователя
Alkos26Rus
Адепт
 
Сообщения: 1640
Зарегистрирован: 26 ноя 2020, 17:52
Откуда: Москва

Re: build settings

Сообщение Yellow12Phoenix 26 дек 2020, 12:05

Alkos26Rus писал(а):зачем вот эта строка? Destroy(EnemyShip1_explosion, 2);

для уничтожения анимации взрыва, раньше она работала превосходно, но сейчас отключил и всё заработало
Yellow12Phoenix
UNец
 
Сообщения: 31
Зарегистрирован: 17 авг 2020, 20:44

Re: build settings

Сообщение Yellow12Phoenix 26 дек 2020, 12:10

Alkos26Rus писал(а):зачем вот эта строка? Destroy(EnemyShip1_explosion, 2);

Большое спасибо за помощь, выручил, а то я уже замучался
Yellow12Phoenix
UNец
 
Сообщения: 31
Зарегистрирован: 17 авг 2020, 20:44

Re: build settings

Сообщение Alkos26Rus 26 дек 2020, 12:11

Ты не взрыв пытаешся удалить а префаб на который ссылаешся при создании дубликата. Естественно при повторной попытке создания взрыва он выдает ошибку что объект отсутствует.
Вот так должно быть.

Синтаксис:
Используется csharp
GameObject exp = Instantiate(EnemyShip1_explosion, transform.position, Quaternion.identity);
            gameControllerScript.increaseScore(20);
            Destroy(other.gameObject);
            Destroy(gameObject);
            Destroy(exp, 2);
 
Аватара пользователя
Alkos26Rus
Адепт
 
Сообщения: 1640
Зарегистрирован: 26 ноя 2020, 17:52
Откуда: Москва

Re: build settings

Сообщение Yellow12Phoenix 26 дек 2020, 12:29

Alkos26Rus писал(а):Ты не взрыв пытаешся удалить а префаб на который ссылаешся при создании дубликата. Естественно при повторной попытке создания взрыва он выдает ошибку что объект отсутствует.
Вот так должно быть.

Синтаксис:
Используется csharp
GameObject exp = Instantiate(EnemyShip1_explosion, transform.position, Quaternion.identity);
            gameControllerScript.increaseScore(20);
            Destroy(other.gameObject);
            Destroy(gameObject);
            Destroy(exp, 2);
 

Да, спасибо ещё раз, всё работает без ошибок
Yellow12Phoenix
UNец
 
Сообщения: 31
Зарегистрирован: 17 авг 2020, 20:44


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8