﻿1
00:00:04,390 --> 00:00:05,410
‫Xin chào và chào mừng.

2
00:00:05,420 --> 00:00:11,230
‫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

3
00:00:11,230 --> 00:00:17,680
‫đượ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ể.

4
00:00:17,680 --> 00:00:19,900
‫Hãy đi sâu vào và xem cách này hoạt động như thế nào.

5
00:00:20,690 --> 00:00:26,480
‫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

6
00:00:26,480 --> 00:00:28,200
‫độ mà chúng tôi đã thử nghiệm.

7
00:00:28,220 --> 00:00:34,130
‫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?

8
00:00:34,160 --> 00:00:36,570
‫Hãy tiếp tục và chơi và xem điều gì sẽ xảy ra.

9
00:00:36,590 --> 00:00:42,410
‫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ị

10
00:00:42,410 --> 00:00:43,710
‫trí như trước đây.

11
00:00:43,730 --> 00:00:53,330
‫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à

12
00:00:53,330 --> 00:00:58,910
‫chính xác khoảng cách đã di chuyển, chúng tôi có thể có ảnh chụp quá mức.

13
00:00:58,910 --> 00:01:01,490
‫Và điều đó được ghi lại ở đây trong câu lệnh if.

14
00:01:01,490 --> 00:01:06,890
‫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á

15
00:01:06,890 --> 00:01:07,310
‫mức.

16
00:01:07,310 --> 00:01:11,680
‫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.

17
00:01:11,690 --> 00:01:17,840
‫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.

18
00:01:17,840 --> 00:01:23,690
‫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í

19
00:01:23,690 --> 00:01:26,990
‫xuất phát của chúng ta có thể bị trôi theo thời gian.

20
00:01:26,990 --> 00:01:28,550
‫Nó có thể không liên tục.

21
00:01:28,550 --> 00:01:35,570
‫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

22
00:01:35,570 --> 00:01:39,770
‫để đến địa điểm mới bằng cách sử dụng khoảng cách di chuyển chính xác.

23
00:01:39,770 --> 00:01:43,040
‫Vì vậy, chúng ta hãy thử và hình dung phép tính qua lại này.

24
00:01:43,040 --> 00:01:46,430
‫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.

25
00:01:46,520 --> 00:01:53,090
‫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

26
00:01:53,090 --> 00:01:55,840
‫có một khoảng cách mà chúng tôi muốn nó di chuyển.

27
00:01:55,850 --> 00:01:58,160
‫Chúng tôi sẽ chỉ đại diện cho nó bằng dấu ngoặc nhọn ở đây.

28
00:01:58,700 --> 00:02:05,720
‫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ẽ ở

29
00:02:05,720 --> 00:02:09,960
‫cuối, không phải quá mức, mà chỉ chính xác vị trí cuối cùng.

30
00:02:09,980 --> 00:02:14,960
‫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 đó.

31
00:02:14,960 --> 00:02:21,380
‫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ó

32
00:02:21,380 --> 00:02:22,610
‫kích thước là một.

33
00:02:22,610 --> 00:02:25,970
‫Vì vậy, chúng tôi nhận được hướng nhưng kích thước của một.

34
00:02:25,970 --> 00:02:31,700
‫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.

35
00:02:32,090 --> 00:02:39,080
‫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

36
00:02:39,080 --> 00:02:45,230
‫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.

37
00:02:45,230 --> 00:02:46,310
‫Một cách chính xác.

38
00:02:46,310 --> 00:02:49,760
‫Vì vậy, chúng ta hãy xem cách chúng ta có thể làm điều này trong C ++.

39
00:02:49,760 --> 00:02:52,460
‫Những gì chúng tôi đang tìm kiếm là một vị trí bắt đầu mới.

40
00:02:52,460 --> 00:02:58,670
‫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ẽ

41
00:02:58,670 --> 00:02:59,780
‫bằng với cái gì?

42
00:02:59,780 --> 00:03:05,150
‫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

43
00:03:05,150 --> 00:03:10,850
‫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.

44
00:03:10,850 --> 00:03:13,250
‫Vậy vectơ màu xanh lá cây đó ở đó là gì?

45
00:03:13,670 --> 00:03:18,770
‫Chà, đó là nơi chúng ta cần lấy tốc độ bình thường của nền tảng.

46
00:03:18,770 --> 00:03:24,740
‫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ó.

47
00:03:24,740 --> 00:03:32,630
‫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

48
00:03:32,630 --> 00:03:38,060
‫rõ ràng hơn những gì chúng tôi đang cố gắng lưu trữ trong đó và sau

49
00:03:38,060 --> 00:03:47,780
‫đó 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.

50
00:03:47,780 --> 00:03:48,950
‫Vậy điều gì đang xảy ra ở đây?

51
00:03:48,950 --> 00:03:50,660
‫Chúng tôi chưa từng thấy điều này trước đây.

52
00:03:50,660 --> 00:03:54,770
‫Chúng tôi đã sử dụng Dot để nắm giữ các thành phần của vector, X, Y và Z.

53
00:03:54,770 --> 00:03:55,970
‫Đó là những biến số.

54
00:03:56,060 --> 00:04:04,580
‫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ể

55
00:04:04,580 --> 00:04:08,510
‫sử dụng toán tử DOT để nắm được một trong các hàm đó.

56
00:04:08,510 --> 00:04:13,250
‫Chúng tôi đã sử dụng dấu hai chấm khi cố gắng đưa nó ra khỏi lớp.

57
00:04:13,250 --> 00:04:20,480
‫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ó

58
00:04:20,480 --> 00:04:25,520
‫thể sử dụng toán tử dấu chấm để lấy pháp tuyến của vectơ đó.

59
00:04:25,520 --> 00:04:30,830
‫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.

60
00:04:31,070 --> 00:04:36,770
‫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

61
00:04:36,770 --> 00:04:41,360
‫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.

62
00:04:41,360 --> 00:04:50,330
‫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

63
00:04:50,330 --> 00:04:56,870
‫đã đượ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á.

64
00:04:56,870 --> 00:05:01,850
‫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.

65
00:05:01,850 --> 00:05:08,630
‫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ị

66
00:05:08,630 --> 00:05:14,780
‫ả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, đó

67
00:05:14,780 --> 00:05:16,460
‫là vị trí ảnh chụp quá mức.

68
00:05:16,700 --> 00:05:20,000
‫Vì vậy, điều đó cho phép chúng tôi di chuyển chính xác đến điểm cuối.

69
00:05:20,050 --> 00:05:23,710
‫Và sau đó bắt đầu từ vị trí xuất phát mới đó.

70
00:05:23,740 --> 00:05:29,020
‫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ì

71
00:05:29,020 --> 00:05:31,420
‫chúng tôi đang sử dụng nó để nắm bắt hướng di chuyển.

72
00:05:31,420 --> 00:05:36,230
‫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.

73
00:05:36,250 --> 00:05:40,690
‫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.

74
00:05:40,690 --> 00:05:46,690
‫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à

75
00:05:46,690 --> 00:05:47,230
‫chơi.

76
00:05:47,230 --> 00:05:53,800
‫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

77
00:05:53,800 --> 00:05:56,020
‫đầu và kết thúc mà chúng tôi mong đợi.

78
00:05:56,020 --> 00:05:58,300
‫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.

79
00:05:58,300 --> 00:06:03,880
‫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.

80
00:06:03,880 --> 00:06:05,380
‫Hẹn gặp lại các bạn trong phần tiếp theo.

