‫Hej, witaj z powrotem.
‫W tym filmie dokonamy rozróżnienia między instancjami określonej klasy blueprint
‫a domyślnym blueprintem, który ma zastosowanie do wszystkich instancji.
‫Zobaczymy również, jak możemy przypisać, odczytać lub zapisać dostęp do określonej zmiennej C++ w planach.
‫Więc zacznijmy.
‫Jesteśmy teraz gotowi do zaprezentowania niektórych naszych komponentów w Blueprint.
‫Więc tutaj mamy nasze komponenty i widzieliśmy, że jeśli klikniemy na każdy z nich, nasz panel szczegółów
‫jest całkowicie pusty.
‫Musimy więc nauczyć się, jak możemy udostępnić pewne właściwości do projektu, a robimy to za pomocą
‫naszego makra właściwości U.
‫Wróćmy więc do kodu VS i spójrzmy na makro właściwości You.
‫To jest specjalne makro.
‫Jest unikalny dla Unreal Engine i ma ten zestaw nawiasów, ponieważ może teraz pobierać parametry wejściowe,
‫aby pokazać, jak eksponować rzeczy w określony sposób. Po prostu utworzymy kilka jednorazowych zmiennych, które
‫możemy po prostu usunąć, gdy będziemy gotowe.
‫Użyjemy ich tylko, aby zobaczyć, jak działa ta ekspozycja, abyśmy mogli utworzyć kilka liczb całkowitych.
‫Zróbmy INT 32 i zamierzam nazwać to int 32 widocznym w dowolnym miejscu int.
‫I właśnie tutaj zamierzam zainicjować to do wartości, powiedzmy 12.
‫Teraz, aby udostępnić to systemowi odbić, będziemy potrzebować nowego makra właściwości.
‫To jest tylko zwykła zmienna całkowita.
‫To nie jest komponent taki jak te, więc nie pojawi się na karcie komponentów.
‫Pamiętaj, że tutaj, w planie, mamy tę sekcję komponentów i pojawią się tutaj wszystkie komponenty,
‫ale pojawią się wszystkie zwykłe zmienne.
‫Jeśli klikniemy na przykład BP Pond, Tank Self, zobaczymy wszystkie inne zmienne, które nie
‫są komponentami.
‫Wracając więc do vs code, zdecydujmy, jak zamierzamy uwidocznić widoczne w dowolnym miejscu.
‫INT Cóż, przedstawię wam kilka słów kluczowych dotyczących własności.
‫Są to opcje, które można umieścić w nawiasach dla U.
‫Makro właściwości.
‫W tym przypadku dodamy widoczne w dowolnym miejscu.
‫Teraz przejdźmy dalej i skompilujmy to.
‫Dobra.
‫Więc skompilowaliśmy, wskoczmy z powrotem do edytora.
‫A tutaj, w BP Pond Tank, mam samodzielnie wybrany zbiornik BP pond i mogę wyszukać widoczne w panelu szczegółów,
‫a tutaj jest moje widoczne w dowolnym miejscu, aby zauważyć, że plan umieszcza spacje między każdym ze słów dzięki
‫sposobowi, w jaki nazwałem to z Camel Case i sprawdź to, widzimy, że ma
‫wartość 12 i jest wyszarzone.
‫Właściwie nie możemy tego w ogóle edytować.
‫A więc to właśnie oznacza „widoczne w dowolnym miejscu”.
‫Oznacza to, że jest widoczny, ale nie możemy edytować tej właściwości.
‫Ok, więc chodźmy dalej i stwórzmy kolejną INT 32.
‫Nazwę tę jedną edycję w dowolnym miejscu int.
‫I w tym celu podam mu wartość, powiedzmy 22, a ten otrzyma własne makro właściwości U i zamiast
‫widocznego gdziekolwiek, dam temu słowo kluczowe.
‫Edytuj w dowolnym miejscu.
‫Idźmy dalej i skompilujmy to i wróćmy tutaj w edytorze. Zamiast tego będę szukać edit w dowolnym miejscu, a
‫tutaj jest moja edycja w dowolnym miejscu i widać, że ma wartość 22, tylko że nie jest już wyszarzona.
‫Mogę to wybrać, mogę to zmienić.
‫Jest edytowalny.
‫To właśnie oznacza edycja w dowolnym miejscu.
‫To znaczy, że możemy to zmienić.
‫Więc nawet jeśli inicjujemy ją na 22 w C++, możemy nadpisać tę wartość tutaj w planie i
‫nadać jej nową wartość.
‫Więc teraz wiesz już o Widoczny wszędzie i edytuj wszędzie, ale jest więcej słów kluczowych niż te
‫dwa.
‫Na przykład stwórzmy nowy int 32 i nazwijmy tę jedną widoczną instancję tylko int i zainicjujmy to jako
‫11.
‫Teraz pobierze swoje makro właściwości, a słowo kluczowe, które podam temu, jest tylko widocznym
‫egzemplarzem.
‫Skompilujmy to i wróćmy tutaj w panelu szczegółów w schemacie, który będę szukać widocznych teraz zauważ, że możemy
‫zobaczyć widoczne w dowolnym miejscu int, ale gdzie jest nasza nowa zmienna?
‫Nazwaliśmy to tylko widocznym egzemplarzem.
‫INT Zobacz tylko widoczne wystąpienie.
‫INT Cóż, nie widzimy tego tutaj, ale spójrz na to.
‫Wezmę nasz zbiornik BP ze stawem i przeciągnę jeden z nich w świat tutaj.
‫I możemy zobaczyć na świecie liniowce.
‫Nagle mamy na świecie zbiornik stawowy BP.
‫Teraz, po wybraniu tego, mogę zejść tutaj do panelu szczegółów i wyszukać widoczne teraz sprawdź to,
‫teraz możemy zobaczyć nasze widoczne w dowolnym miejscu int i naszą widoczną instancję tylko int.
‫Jak więc możemy to zobaczyć tutaj, ale nie możemy tego zobaczyć, gdy patrzymy na sam plan.
‫Cóż, chcę dokonać rozróżnienia.
‫Widzisz, kiedy mamy nasz projekt tutaj w przeglądarce treści, możemy go dwukrotnie kliknąć, możemy go
‫otworzyć i zobaczyć jego właściwości.
‫Co?
‫Patrzymy tutaj, to domyślny plan.
‫Zawiera wszystkie domyślne informacje dotyczące planu.
‫Ale jak tylko przeciągnę jedną na poziom, mamy teraz coś, co nazywa się instancją.
‫Więc ten konkretny BP -- zbiornik, który istnieje na świecie, jest przykładem zbiornika BP w stawie.
‫W rzeczywistości możemy przeciągnąć wiele instancji, a każda z nich, która istnieje na świecie, jest instancjami
‫zbiornika BP pond.
‫Różni się to od domyślnego planu.
‫Oto mały wykres, do którego możesz się odwołać, a my będziemy go bardziej uzupełniać,
‫gdy poznamy więcej specyfikatorów.
‫Do tej pory widzieliśmy tylko widoczne w dowolnym miejscu, które zobaczysz zarówno pod kolumnami domyślnymi, jak
‫i instancjami.
‫I jest w rzędzie zatytułowanym Tylko do odczytu.
‫Możesz więc zobaczyć na tym wykresie, że widoczna w dowolnym miejscu Twoja właściwość będzie widoczna tylko.
‫Nie będzie można go edytować, ale będzie widoczny zarówno w ustawieniach domyślnych, jak i instancji.
‫Podczas gdy widoczna instancja ma dostęp tylko do odczytu, ale tylko do instancji.
‫W rzeczywistości nie można go zobaczyć na domyślnym planie.
‫A potem dowiedzieliśmy się o edycji w dowolnym miejscu, co pozwala nam faktycznie edytować tę właściwość na wartościach
‫domyślnych i instancji.
‫Dlatego istnieje zarówno w kolumnie domyślnej, jak i w kolumnie instancji.
‫Więc jako wyzwanie chciałbym abyś dodał zmienną do podstawowej klasy stawu.
‫Teraz umieść to w sekcji public, a to, co zamierzasz zrobić, to zdecydować, jaki typ zmiennej chcesz dodać, i
‫może to być wszystko, ale nie jest to typ podstawowy, taki jak liczba całkowita lub zmiennoprzecinkowa.
‫Możesz nawet uczynić go wektorem F lub łańcuchem F, jeśli chcesz po prostu zainicjować go z wartością domyślną, taką jak
‫nasz drugi koniec 30 dwójek.
‫A to może być dowolna zmienna, jaką chcesz.
‫Możesz ustawić zmienną prędkość lub zmienną wytrzymałość.
‫Masz tu trochę wolności.
‫Teraz, po utworzeniu tej zmiennej, zdecyduj, jaki poziom dostępu chcesz dla niej, a następnie nadaj
‫jej makro właściwości i dodaj tutaj poprawną specyfikację.
‫Teraz zdecyduj, czy chcesz, aby było to widoczne tylko w instancji, czy w ustawieniach domyślnych, lub jeśli chcesz, aby
‫było widoczne w dowolnym miejscu lub edytuj w dowolnym miejscu, użyj jednego ze specyfikatorów, których nauczyliśmy się do tej pory
‫i nadaj tej zmiennej poprawną specyfikację do śmiało, wstrzymaj wideo i utwórz teraz tę zmienną.
‫W porządku.
‫Więc zamierzam zrobić zmienną.
‫Teraz jest w porządku, jeśli zrobiłeś coś zupełnie innego.
‫To tylko dla praktyki.
‫Zamierzam zrobić float i nazwę tę prędkość i zainicjuję prędkość, aby powiedzieć 400 F.
‫I myślę, że chciałbym, aby ta zmienna prędkości była edytowalna zarówno w instancji, jak i domyślnie.
‫Więc dam to makro właściwości U i dokonam tej edycji w dowolnym miejscu.
‫Więc zamierzam to skompilować.
‫W edytorze mogę wybrać jedną z moich baz -- instancje czołgów.
‫A tutaj w panelu szczegółów widzę moją zmienną prędkości i oczywiście mogę ją tutaj edytować.
‫A jeśli otworzę -- tank, oto moja zmienna prędkości, jest ustawiona na 400 i można ją edytować.
‫Podsumowując, nauczyliśmy się różnicy między instancją a domyślną wartością konkretnej klasy
‫projektu.
‫Nauczyliśmy się również kilku nowych specyfikatorów właściwości, takich jak Visible Anywhere, Visible, instance only i edytuj w
‫dowolnym miejscu.
‫W następnym filmie będziemy kontynuować naukę kontrolowania dostępu do zmiennych C++ w Blueprint przy użyciu
‫tych nowych specyfikatorów właściwości.
‫Zobaczymy się wkrótce.