Problem z kodem związanym z kamerą

Ogólne pytania na temat Unity3D

Problem z kodem związanym z kamerą

Postprzez TreektusPL » 08 Paź 2018, 16:36

Witam. Napisałem taki prosty skrypt.

Kod: Zaznacz wszystko
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CameraMove : MonoBehaviour {

    public Transform player;
    public Transform cameraa;
    int cameramovevalue=1;

    void Update () {

        if (cameramovevalue == 1)
        {
            CameraNormal();
        }

        else if (cameramovevalue == 2)
        {
            CameraUp();
        }
    }

    void CameraNormal() {
        Vector3 vector = new Vector3(3f, 2.5f, 0);

        cameraa.position = player.position + vector;
        cameraa.LookAt(player);
        Debug.Log("1 " + cameramovevalue);
    }

    void CameraUp() {
        Vector3 vector = new Vector3(3f, 12.5f, 0);

        cameraa.position = player.position + vector;
        cameraa.LookAt(player);
        Debug.Log("2 " + cameramovevalue);
    }
    void OnTriggerEnter(Collider other)
    {
        cameramovevalue = 2;
    }
}


Na samym początku przepisałem zmiennej cameramovevalue wartość 1. Następnie jest metoda Update, która ciągle sprawdza jaka jest wartość zmiennej cameramovevalue. Jeśli wartość owej zmiennej jest równa 1 to wykonuje się metoda CameraNormal, jeśli wartość jest równa 2 wykonuje się metoda CameraUp. Również w kodzie znajduje się metoda OnTriggerEnter, która ustawia wartość dla zmiennej cameramovevalue na 2.

Podczas uruchomienia gry stale wyświetla się (w konsoli) wartość 1 co oznacza, że działa to wszystko aktualnie prawidłowo gdyż początkowo wartość cameramovevalue jest równa 1. Jeśli "player" wejdzie w kolizje z obiektem do którego jest przepisany skrypt zaczyna się pojawiać jednocześnie wartość 2 i 1. Czemu tak jest? Nie powinno podczas kolizji z obiektem zmienić się wartość zmiennej cameramovevalue z 1 na 2 i pozostać tak do końca?
TreektusPL
 
Posty: 4
Rejestracja: 23 Wrz 2018, 20:16
Has thanked: 0 time
Been thanked: 0 time

Re: Problem z kodem związanym z kamerą

Postprzez Ether_141 » 08 Paź 2018, 17:29

Dziwne. Nie widzę w tym kodzie błędu. Może gdzieś indziej modyfikujesz tą zmienną.
Awatar użytkownika
Ether_141
 
Posty: 360
Rejestracja: 29 Sie 2015, 11:47
Has thanked: 0 time
Been thanked: 0 time


Wróć do Wsparcie Unity

Kto jest na forum

Użytkownicy przeglądający to forum: Brak zarejestrowanych użytkowników oraz 10 gości