Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Konwersja string to Vector3


Rekomendowane odpowiedzi

Opublikowano

Witam,

 

robię grę w Unity pisaną w c# i mam taki problem:

Aktualnie robię zapis gry i on jest zapisywany do pliku tekstowego. Zapisywana tam jest pozycja itp. Pozycja jest zapisywana w postaci stringu (z Vector3 - komenda ToString) i teraz mam pytanie. Jak wczytać tego stringa jako Vector3?

 

Próbowałem już wielu sposobów, ale ciągle mi nie wychodziło.. Może ktoś tutaj mi pomoże?

 

Pozdrawiam

WmFbO0u.png

Opublikowano

Proponuję wczytanie tego stringa, podzielenie go na te trzy stringi po jednej wartości, sparsowanie każdej z nich do postaci floatów i przekazanie jako parametry do konstruktora. Mógłbym powiedzieć szczegóły, tylko nie widzę, w jakiej postaci jest zapisywany ten wektor po toString().


Pomagam w projektach dotyczących programowania (C++/C/Java/C#/inne). Jak masz jakiś problem, napisz do mnie, wspólnie poszukamy rozwiązania ;).

Opublikowano

Spróbuj podzielić pozycje gracza (vector 3) na trzy różne zmienne i je zapisać i później odczytać i prze konwertować na float i podstawić pod vector 3(x,y,z). Taki przykładowy kod:

public string x;

public string y;

public string z;

 

public Vector3 Pozycja_Gracza;

 

void Zapis()

{

x = Pozycja_Gracza.x.ToString();

y = Pozycja_Gracza.y.ToString();

z = Pozycja_Gracza.z.ToString();

 

//dalej robisz swój zapis do pliku zmienne x,y,z

}

 

void Odczyt()

{

//gdy gracz będzie próbował wczytać grę po prostu wykona się odczyt z pliku i podmiana wartości x,y,z

 

Pozycja_Gracza = new Vector3(float.Parse(x), float.Parse(y), float.Parse(z));

}

 

Mam nadzieję, że pomogłem

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...