‫Xin chào và chào mừng.
‫Trong bài giảng này, chúng ta sẽ giới thiệu các hàm thành viên và hàm này nhận
‫được hàm an toàn và bình thường cho phép chúng ta nắm được hướng của một vectơ cụ thể.
‫Hãy đi sâu vào và xem cách này hoạt động như thế nào.
‫Vì vậy, phương pháp đơn giản của chúng tôi để gửi nền tảng trở lại theo hướng ngược lại đang hoạt động ở tốc
‫độ mà chúng tôi đã thử nghiệm.
‫Nhưng điều gì sẽ xảy ra nếu tôi nói, Này, hãy làm cho nền tảng này hoạt động nhanh hơn gấp mười lần?
‫Hãy tiếp tục và chơi và xem điều gì sẽ xảy ra.
‫Chà, đột nhiên các nền tảng nhảy về phía trước khá nhiều và nó không bay quanh cùng một vị
‫trí như trước đây.
‫Và lý do cho điều này là bởi vì vị trí hiện tại, khi chúng tôi đặt nó làm vị trí bắt đầu, không nhất thiết phải là
‫chính xác khoảng cách đã di chuyển, chúng tôi có thể có ảnh chụp quá mức.
‫Và điều đó được ghi lại ở đây trong câu lệnh if.
‫Chúng ta đang nói rằng khoảng cách di chuyển lớn hơn khoảng cách di chuyển, điều đó có nghĩa là chúng ta sẽ bị bắn quá
‫mức.
‫Chúng ta phải có ảnh chụp quá mức để có thể kích hoạt câu lệnh if này.
‫Nhưng câu hỏi đặt ra là bao nhiêu, và điều đó sẽ phụ thuộc rất nhiều vào thời gian Delta lớn như thế nào.
‫Chúng ta có thể vượt quá một lượng khá lớn, đặc biệt nếu tốc độ nền tảng lớn, có nghĩa là vị trí
‫xuất phát của chúng ta có thể bị trôi theo thời gian.
‫Nó có thể không liên tục.
‫Vì vậy, cách tốt hơn để làm điều này là tính toán khoảng cách chúng ta cần di chuyển từ vị trí xuất phát ban đầu
‫để đến địa điểm mới bằng cách sử dụng khoảng cách di chuyển chính xác.
‫Vì vậy, chúng ta hãy thử và hình dung phép tính qua lại này.
‫Chúng tôi nói rằng chúng tôi đã có một nền tảng tại vị trí bắt đầu của nó ở đây.
‫Chúng tôi nói rằng nó có một vận tốc mà chúng tôi có thể biểu thị bằng một mũi tên là hướng và kích thước, và nó cũng
‫có một khoảng cách mà chúng tôi muốn nó di chuyển.
‫Chúng tôi sẽ chỉ đại diện cho nó bằng dấu ngoặc nhọn ở đây.
‫Bây giờ, những gì chúng tôi đang nói là chúng tôi muốn tìm ra điểm chính xác mà nền tảng sẽ ở
‫cuối, không phải quá mức, mà chỉ chính xác vị trí cuối cùng.
‫Bây giờ, cách chúng ta có thể làm là lấy hướng của mũi tên vận tốc đó.
‫Vì vậy, theo cách nói của vectơ, đây được gọi là pháp tuyến của mũi tên, và về cơ bản, nó có
‫kích thước là một.
‫Vì vậy, chúng tôi nhận được hướng nhưng kích thước của một.
‫Vì vậy, điều đó cho phép chúng ta biết số lượng này, về cơ bản là kích thước của vận tốc, tốc độ chúng ta đang đi.
‫Và sau đó những gì chúng ta có thể làm là chúng ta có thể nhân hướng đó với số lượng khoảng cách của chúng ta để tạo cho
‫chúng ta một mũi tên cung cấp cho chúng ta toàn bộ chuyển động từ vị trí bắt đầu đến vị trí kết thúc.
‫Một cách chính xác.
‫Vì vậy, chúng ta hãy xem cách chúng ta có thể làm điều này trong C ++.
‫Những gì chúng tôi đang tìm kiếm là một vị trí bắt đầu mới.
‫Vì vậy, hãy xóa cách chúng tôi hiện đang làm điều này và chúng tôi sẽ có một vị trí bắt đầu bằng, tốt, nó sẽ
‫bằng với cái gì?
‫Chà, trước hết nó sẽ bằng với, vị trí bắt đầu cộng với một thứ gì đó, bởi
‫vì chúng tôi bắt đầu từ đây và chúng tôi thêm vectơ màu xanh lá cây này để đi đến cuối.
‫Vậy vectơ màu xanh lá cây đó ở đó là gì?
‫Chà, đó là nơi chúng ta cần lấy tốc độ bình thường của nền tảng.
‫Và để giúp chúng ta dễ hiểu hơn, tôi sẽ chia nó thành biến số của riêng nó.
‫Vì vậy, chúng tôi sẽ tạo một biến mới của vectơ loại F, mà tôi sẽ gọi là hướng di chuyển, chỉ để làm
‫rõ ràng hơn những gì chúng tôi đang cố gắng lưu trữ trong đó và sau
‫đó chúng tôi sẽ lấy điều này từ dấu chấm vận tốc nền tảng, lấy an toàn, bình thường và sau đó là một số dấu ngoặc đơn ở cuối.
‫Vậy điều gì đang xảy ra ở đây?
‫Chúng tôi chưa từng thấy điều này trước đây.
‫Chúng tôi đã sử dụng Dot để nắm giữ các thành phần của vector, X, Y và Z.
‫Đó là những biến số.
‫Nhưng trong C ++ và trong lập trình hướng đối tượng nói chung, chúng ta cũng có các hàm tồn tại trên các lớp, vì vậy chúng ta có thể
‫sử dụng toán tử DOT để nắm được một trong các hàm đó.
‫Chúng tôi đã sử dụng dấu hai chấm khi cố gắng đưa nó ra khỏi lớp.
‫Nhưng khi chúng ta muốn thực hiện một phép toán với chính vectơ thực, vectơ vận tốc nền tảng, chúng ta có
‫thể sử dụng toán tử dấu chấm để lấy pháp tuyến của vectơ đó.
‫Vì vậy, đó là những gì chúng tôi đang làm ở đây, sử dụng một hàm thành viên thay vì một biến thành viên.
‫Vì vậy, chúng tôi đã có mức bình thường an toàn của vận tốc nền tảng đó và chúng tôi sẽ đặt dấu chấm phẩy ở cuối
‫dòng vì ở đây chúng tôi có một biến về cơ bản chúng tôi đang nói đó là hướng di chuyển.
‫Vì vậy, bây giờ chúng ta có thể sử dụng nó trong dòng tiếp theo để thực hiện một hướng di chuyển nhân với khoảng cách di chuyển
‫đã được định cấu hình bởi vì chúng ta muốn di chuyển chính xác đến cuối, không vượt quá.
‫Và sau khi chúng tôi đã làm điều đó, chúng tôi thực sự nên di chuyển nền tảng của mình đến vị trí cuối cùng.
‫Vì vậy, chúng tôi sẽ thiết lập một vị trí diễn viên để làm vị trí bắt đầu, bởi vì nếu không nền tảng của chúng tôi sẽ bị
‫ảnh hưởng quá mức và đi qua vị trí kết thúc đó bởi vì chúng tôi đã cập nhật nó với vị trí hiện tại, đó
‫là vị trí ảnh chụp quá mức.
‫Vì vậy, điều đó cho phép chúng tôi di chuyển chính xác đến điểm cuối.
‫Và sau đó bắt đầu từ vị trí xuất phát mới đó.
‫Bây giờ, điều quan trọng là chúng tôi phải cập nhật vận tốc nền tảng sau khi chúng tôi thực hiện tất cả những điều này vì
‫chúng tôi đang sử dụng nó để nắm bắt hướng di chuyển.
‫Vì vậy, tôi sẽ cập nhật tốc độ nền tảng sau khi chúng tôi đặt vị trí diễn viên.
‫Bây giờ chúng ta hãy quay lại một cuộn và nhấn biên dịch và xem điều này có được khắc phục hay không.
‫Vấn đề với nền tảng của chúng tôi di chuyển ngược và tiến, hãy đóng thiết bị đầu cuối này và
‫chơi.
‫Và bây giờ nếu chúng ta để ý, nền tảng đang di chuyển nhanh chóng, nhưng nó đang di chuyển đáng tin cậy xung quanh vị trí bắt
‫đầu và kết thúc mà chúng tôi mong đợi.
‫Vì vậy, đó là tất cả những gì tôi muốn trình bày trong bài giảng này.
‫Chúng tôi chỉ sửa một chút lỗi có thể đã cắt đối với một số cấu hình nền tảng của chúng tôi.
‫Hẹn gặp lại các bạn trong phần tiếp theo.