‫Xin chào và chào mừng.
‫Trong bài giảng này, chúng ta sẽ tìm hiểu khái niệm về biến cục bộ, những biến chỉ tồn
‫tại trong một hàm nhất định.
‫Và chúng ta sẽ xem cách chúng ta có thể sử dụng điều này để đặt vị trí của chúng ta thành một giá trị khác với giá trị được lưu
‫trữ trong vectơ của tôi.
‫Hãy đi sâu vào.
‫Vì vậy, cho đến thời điểm này, chúng tôi đã xử lý các biến thuộc về một lớp.
‫Chúng tôi đã thực hiện điều này trong Blueprint và bây giờ chúng tôi đã thực hiện nó trong C ++.
‫Và điều này có nghĩa là biến tồn tại miễn là thể hiện của lớp.
‫Mỗi cá thể nhận được bản sao riêng của một biến, nhưng trong khi cá thể lớp còn tồn tại, thì biến đó
‫là hai.
‫Bây giờ, khái niệm mà tôi vừa nói đến thực sự có một cái tên.
‫Nó được gọi là Phạm vi.
‫Điều đó có nghĩa là biến tồn tại trong bao lâu?
‫Và tôi vừa mô tả một biến thể hiện đó là một biến tồn tại lâu dài như một thể hiện cụ thể
‫của một lớp.
‫Bây giờ cũng có các loại biến khác.
‫Có những biến tồn tại lâu dài như một hàm.
‫Về cơ bản, khi bạn gọi một hàm cụ thể, hàm đó sẽ chạy và ngay sau khi hàm
‫kết thúc, biến sẽ chết.
‫Vì vậy, trong C ++, nói chung, một biến là một giá trị hợp lệ giữa các dấu ngoặc nhọn trong cú pháp.
‫Vì vậy, đó là một quy tắc ngón tay cái.
‫Nó không phải lúc nào cũng chính xác, nhưng ví dụ như hàm đánh dấu, chúng ta có một
‫số dấu ngoặc nhọn ở đây và nếu chúng ta khai báo một biến bên trong hàm đánh dấu này, thì nó sẽ chỉ tồn tại một lần.
‫Hàm đánh dấu được gọi và lần sau nó sẽ được tạo mới.
‫Nền tảng di chuyển.
‫Chúng ta có thể thấy điều đó nếu chúng ta nhìn vào nền tảng di chuyển.
‫H Bạn có thể thấy vectơ của tôi đang được khai báo trong một số dấu ngoặc nhọn thuộc định nghĩa của lớp,
‫đó là lý do tại sao các biến này tồn tại lâu như một thể hiện của lớp.
‫Vì vậy, tôi muốn chứng minh điều này cho bạn.
‫Vì vậy, chúng ta hãy đi vào nền tảng di động DHCP và hãy tạo một biến cục bộ bên trong này.
‫Vì vậy, tôi sẽ tạo ra nó theo cách giống hệt như chúng tôi đã làm.
‫Khi chúng ta khai báo lỗi trong tệp tiêu đề, chúng ta sẽ có một vectơ F, sau đó là tên của vectơ,
‫tôi sẽ gọi nó là vectơ cục bộ.
‫Và sau đó chúng tôi có thể đặt giá trị này ngay khi chúng tôi tạo nó.
‫Chúng ta có thể làm điều đó bằng cách sử dụng hàm tạo cho vectơ F hoặc chúng ta có thể làm điều đó từ một biến
‫khác, giống như chúng ta có thể truyền một biến vào một hàm.
‫Vì vậy, trước hết chúng ta có thể sử dụng phương thức khởi tạo.
‫Vì vậy, chúng ta sẽ có véc tơ F và tôi sẽ cho nó từ 1 đến 3 và sau đó là dấu chấm phẩy ở cuối
‫dòng.
‫Vì vậy, đó bây giờ là một biến cục bộ.
‫Nó chỉ tồn tại trong hàm này và nó được đặt lại mỗi khi hàm được gọi.
‫Vì vậy, nếu tôi phải làm điều gì đó như thế này, nếu tôi làm điều gì đó giống
‫như chúng ta ở dòng 29 với vectơ của tôi đang được cập nhật, chúng ta có thể có vectơ cục bộ, chúng ta có thể có vectơ
‫địa phương z bằng vectơ địa phương z cộng một.
‫Và nếu tôi đặt vị trí của mình thành vectơ cục bộ đó, thì mọi khung hình sẽ giống nhau vì chúng tôi
‫đặt lại và bắt đầu từ cùng một vị trí.
‫Một, hai, ba, mỗi chức năng đánh dấu.
‫Vì vậy, chức năng này thực sự chỉ tồn tại cục bộ.
‫Vì vậy, tôi muốn bạn thử một thử nghiệm nhỏ như một thử thách của bạn để thiết lập vectơ cục bộ từ vectơ của tôi.
‫Vì vậy, về cơ bản bạn sẽ làm thay vì đặt nó từ hàm tạo, bạn sẽ đặt nó
‫từ giá trị hiện có trong vectơ của tôi.
‫Nó sẽ đưa một bản sao của vectơ đó vào vectơ cục bộ của bạn.
‫Sau đó, tôi muốn bạn đặt nó vào vị trí bằng cách sử dụng vectơ cục bộ.
‫Và bởi vì chúng tôi đang cố gắng cập nhật vectơ cục bộ đó cho mọi khung hình, hãy xem hiệu ứng là gì.
‫Nền tảng có di chuyển không?
‫Bạn có mong đợi nó sẽ hoạt động và thử nó, biên dịch mã chơi và xem liệu nó có thực sự hoạt động hay không.
‫Tạm dừng video và tiếp tục.
‫Được chứ.
‫Chào mừng trở lại.
‫Vì vậy, tôi sẽ thay vì sử dụng hàm tạo ở đây để đặt vectơ cục bộ, thay vào đó tôi
‫sẽ đặt vectơ của mình.
‫Vì vậy, chúng tôi đang lấy giá trị hiện được lưu trữ trong vectơ của tôi và chúng tôi đang đặt nó vào vectơ cục
‫bộ và sau đó chúng tôi đang cập nhật vectơ cục bộ.
‫Chúng tôi đang tăng mức độ nói của nó lên từng khung hình và sau đó tôi muốn đặt vị trí của
‫diễn viên thay vì từ vectơ của tôi, chúng tôi sẽ đặt nó từ vectơ cục bộ.
‫Bây giờ điều gì sẽ xảy ra trong trường hợp này, bạn có nghĩ đến không?
‫Chúng ta cùng đi tìm hiểu nhé.
‫Tôi sẽ nhấn nút biên dịch và tiếp tục nhấn play và chúng ta sẽ
‫thấy rằng nền tảng vẫn đang di chuyển sang bên phải, nhưng nó không đi lên theo hướng Z.
‫Vì vậy, bạn có thể thấy rằng điều này không thực sự có tác động, sự gia tăng của vectơ cục bộ bởi vì
‫nó đang được đặt lại từ giá trị hiện tại trong vectơ của tôi, mọi khung hình.
‫Tuy nhiên, vectơ của tôi vẫn đang được cập nhật.
‫Mọi khung hình, giá trị y đang được tăng lên, mọi khung hình.
‫Và đó là lý do tại sao chúng ta đang thấy sự chuyển động sang bên phải.
‫Vì vậy, một cách chúng ta có thể thấy rằng sự thay đổi này đối với vectơ cục bộ chỉ là cục bộ là tăng giá trị này
‫từ một lên có thể là 100.
‫Vì vậy, chúng tôi đang thêm 100 vào giá trị vectơ cục bộ.
‫Chúng ta có thể xem qua và biên dịch và sau đó chơi.
‫Và những gì bạn sẽ thấy là nền tảng thực sự cao hơn 100 đơn vị trong không khí.
‫Hãy dành một giây ở đây và đẩy ra với F tám và tạm dừng trò chơi bằng nút tạm dừng trong thanh công
‫cụ chính, sau đó chọn nền tảng di chuyển của chúng tôi để xem nó trong ngăn chi tiết.
‫Để làm điều đó, tôi phải thực sự nhấp vào nó trong khung nhìn vì một số lý do.
‫Đôi khi nó không hoạt động, chỉ cần nhấp vào nó trong phác thảo.
‫Và tôi muốn chỉ ra với bạn rằng giá trị trong vectơ của tôi, giá trị z trong vectơ của tôi nhỏ hơn 100
‫đơn vị so với vị trí Z của phép biến đổi.
‫Vì vậy, bạn có thể thấy rằng việc thêm vào vectơ cục bộ đó đã có tác động.
‫Chúng tôi đã có một vị trí, cao hơn 100 đơn vị so với vị trí trong vectơ của tôi.
‫Và điều thực sự tuyệt vời về các biến cục bộ là khi hàm hoàn thành quá trình thực thi cụ thể
‫của nó, chúng sẽ được xóa và đặt lại.
‫Vì vậy, bạn luôn có thể biết điều gì sẽ xảy ra với một biến cục bộ.
‫Bạn luôn biết giá trị nào sẽ có trong nó, không giống như một biến lớp có thể được cập nhật bất kỳ lúc
‫nào từ bất kỳ hàm nào khác.
‫Vì vậy, chúng tôi sẽ đưa các biến cục bộ này thông qua các bước của chúng trong một vài giờ giảng.
‫Hãy đi sâu vào.