﻿1
00:00:04,340 --> 00:00:05,660
‫Xin chào và chào mừng.

2
00:00:05,660 --> 00:00:11,450
‫Trong bài giảng này, chúng ta sẽ vẽ các đường gỡ lỗi vào cảnh của chúng ta để chúng ta có thể hình dung ra

3
00:00:11,450 --> 00:00:16,790
‫dấu vết đường đang làm gì hoặc nó phải làm gì và tìm hiểu xem các giá trị mà chúng ta đang

4
00:00:16,790 --> 00:00:18,490
‫tính toán có chính xác hay không.

5
00:00:18,500 --> 00:00:20,390
‫Hãy đi sâu vào và xem xét.

6
00:00:21,270 --> 00:00:28,180
‫Vì vậy, như chúng ta có thể thấy, chức năng đa kênh bi quét của chúng tôi yêu cầu một vectơ bắt đầu và kết thúc.

7
00:00:28,200 --> 00:00:33,360
‫Bây giờ có thể hơi khó để tìm ra những gì đang xảy ra với các hàm này khi chúng ta thực sự sử

8
00:00:33,360 --> 00:00:34,020
‫dụng chúng.

9
00:00:34,140 --> 00:00:40,080
‫Bởi vì nếu bạn bắt đầu sử dụng nó và bạn không nhận được kết quả như mong đợi, đôi khi bạn có thể khiến bản thân tự hỏi,

10
00:00:40,680 --> 00:00:43,350
‫Chà, tôi đã hỏi đúng câu hỏi ngay từ đầu rồi phải không?

11
00:00:43,350 --> 00:00:46,620
‫Tôi có gửi đúng vectơ bắt đầu và kết thúc không?

12
00:00:46,830 --> 00:00:52,500
‫Chà, để tìm ra điều đó, những gì chúng ta sẽ làm là sử dụng một hàm khác ở đây được gọi

13
00:00:52,500 --> 00:00:59,070
‫là dòng gỡ lỗi vẽ để chúng ta chắc chắn có thể thấy vị trí của vectơ bắt đầu và kết thúc, về cơ bản bằng cách

14
00:00:59,070 --> 00:01:05,520
‫vẽ một đường thẳng giữa chúng và đưa ra điều này chính xác. loại công việc sẽ được thực hiện bởi quá trình quét của chúng tôi,

15
00:01:05,520 --> 00:01:11,610
‫thì đây là một cách tốt để xem trước hết là liệu chúng tôi đã có đầu vào phù hợp ngay từ đầu hay chưa.

16
00:01:11,850 --> 00:01:17,520
‫Vì vậy, bạn có thể thấy ở đây rằng dòng gỡ lỗi vẽ yêu cầu khá nhiều đối số, nhưng không phải tất cả chúng đều

17
00:01:17,520 --> 00:01:18,630
‫thực sự bắt buộc.

18
00:01:19,170 --> 00:01:23,000
‫Chỉ ba, bốn hoặc năm đầu tiên.

19
00:01:23,010 --> 00:01:26,490
‫Vì vậy, chúng tôi có điều đầu tiên đến là một thế giới mới.

20
00:01:26,550 --> 00:01:28,260
‫Chúng tôi biết cách nắm giữ thế giới.

21
00:01:28,260 --> 00:01:31,650
‫Bây giờ chúng ta đã có dòng bắt đầu, nằm trong một vector.

22
00:01:31,650 --> 00:01:36,450
‫Chúng ta có một kết thúc dòng một lần nữa, đó là một vectơ, sau đó là một màu F, đây là điều mà chúng ta chưa gặp trước

23
00:01:36,450 --> 00:01:38,910
‫đây, nhưng bạn có thể nhấp vào nó để tìm hiểu nó là gì.

24
00:01:39,090 --> 00:01:46,140
‫Và về cơ bản nó là một loại như vector F đại diện cho màu sắc và có một số màu tiện dụng đã được tích hợp sẵn cho chúng ta

25
00:01:46,140 --> 00:01:52,260
‫cho phép chúng ta chỉ cần nói, Này, chúng tôi muốn màu đen, chúng tôi muốn màu xanh lam, xanh lá cây, bất cứ điều gì.

26
00:01:52,260 --> 00:01:57,660
‫Bạn chỉ có thể sử dụng tên màu thay vì phải chỉ định các giá trị R, g b.

27
00:01:57,660 --> 00:02:04,110
‫Và sau đó, một vài điều cuối cùng ở đây là liệu chúng ta có những đường thẳng liên tục, cho chúng ta biết liệu đường đó có

28
00:02:04,110 --> 00:02:08,790
‫bám xung quanh hay nó biến mất ở cuối khung cho chúng ta biết thời gian tồn tại hay không.

29
00:02:08,790 --> 00:02:14,700
‫Vì vậy, nó sẽ tồn tại bao nhiêu giây cho ưu tiên độ sâu và độ dày, cả hai thứ mà chúng

30
00:02:14,700 --> 00:02:16,170
‫ta sẽ không sử dụng?

31
00:02:16,470 --> 00:02:21,840
‫Vì vậy, phần thông tin hữu ích khác trên trang tài liệu này là bao gồm.

32
00:02:21,840 --> 00:02:26,610
‫Vì vậy, bạn có thể thấy ở đây để sử dụng chức năng này, chúng ta cần sử dụng tệp tiêu đề

33
00:02:26,610 --> 00:02:29,730
‫khai báo nó, đó là trình trợ giúp gỡ lỗi hash include draw.

34
00:02:29,730 --> 00:02:34,320
‫Vì vậy, hãy tiếp tục và làm điều đó trước tiên, vì điều đó sẽ đảm bảo rằng tính năng tự động hoàn thành hoạt động

35
00:02:34,320 --> 00:02:35,010
‫trong Visual Studio.

36
00:02:35,010 --> 00:02:40,110
‫Nếu bạn không có tệp tiêu đề, thì Visual Studio thực sự không biết cách tự động hoàn thành các

37
00:02:40,110 --> 00:02:40,890
‫chức năng này.

38
00:02:40,890 --> 00:02:47,880
‫Sau đó, chúng ta sẽ đi xuống để đánh dấu vào thành phần và tôi sẽ loại bỏ thông báo nhật ký của chúng ta để có

39
00:02:47,880 --> 00:02:48,960
‫thời gian chuẩn bị.

40
00:02:48,960 --> 00:02:51,330
‫Trên thực tế, chúng tôi sẽ loại bỏ tất cả thời gian này.

41
00:02:51,330 --> 00:02:52,650
‫Và bạn biết những gì?

42
00:02:52,650 --> 00:02:58,830
‫Chúng ta sẽ xóa chức năng đánh dấu của mình, mọi thứ sau thành phần dấu ngoặc kép, dấu

43
00:02:58,830 --> 00:03:04,920
‫hai chấm, chúng ta sẽ xóa và chúng ta sẽ bắt đầu với dòng gỡ lỗi vẽ.

44
00:03:04,920 --> 00:03:09,120
‫Vì vậy, hãy vẽ dòng gỡ lỗi và sau đó mở một số dấu ngoặc đơn.

45
00:03:09,120 --> 00:03:16,170
‫Nếu bạn nhấn vào một không gian điều khiển, thì bạn có thể thấy các thông số mà chúng ta vừa nói đến và một số thông tin khác

46
00:03:16,170 --> 00:03:19,920
‫không có sẵn ở đó, chẳng hạn như giá trị mặc định của chúng.

47
00:03:19,920 --> 00:03:24,180
‫Một số trong số chúng có giá trị mặc định, đặc biệt là sau các dòng liên tục.

48
00:03:24,180 --> 00:03:25,530
‫Bạn có thể thấy giá trị mặc định là false.

49
00:03:25,530 --> 00:03:31,500
‫Vì vậy, bạn không thực sự phải cung cấp đối số nếu nó có giá trị mặc định, nhưng bạn có thể thấy rằng màu

50
00:03:31,500 --> 00:03:33,090
‫không có giá trị mặc định.

51
00:03:33,090 --> 00:03:36,120
‫Vì vậy, chúng tôi cần cung cấp mọi thứ cho đến thời điểm đó.

52
00:03:36,600 --> 00:03:39,180
‫Vì vậy, điều đầu tiên là thử thách nhỏ thế giới.

53
00:03:39,180 --> 00:03:42,900
‫Làm thế nào để bạn nắm bắt và vượt qua thế giới để vẽ dòng gỡ lỗi.

54
00:03:43,990 --> 00:03:51,340
‫Bạn thực hiện một thế giới ngoặc đơn như vậy thì chúng ta sẽ cần một sự bắt đầu và kết thúc.

55
00:03:51,340 --> 00:03:56,290
‫Vì vậy, tôi sẽ tạo hai biến ngay trước khi vẽ dòng gỡ lỗi và tôi sẽ không điền

56
00:03:56,290 --> 00:03:56,920
‫chúng ngay.

57
00:03:56,920 --> 00:04:07,390
‫Vì vậy, nếu vectơ bắt đầu và kết thúc vectơ F và chúng sẽ là hai tham số tiếp theo bắt đầu và kết thúc của chúng ta, và sau đó chúng ta cần cung cấp một màu để

58
00:04:07,390 --> 00:04:13,990
‫thực hiện màu mà chúng ta có thể thực hiện F color, dấu hai chấm, dấu hai chấm và sau đó chúng ta có

59
00:04:13,990 --> 00:04:20,500
‫thể sử dụng một trong số những màu được xác định trước đó, chẳng hạn như màu đỏ luôn là một màu tốt.

60
00:04:20,500 --> 00:04:21,580
‫Bạn có thể dễ dàng nhìn thấy nó.

61
00:04:21,580 --> 00:04:26,320
‫Và trong trường hợp này, bởi vì chúng tôi đang làm việc đó trong tích tắc và chúng tôi đang làm

62
00:04:26,320 --> 00:04:31,930
‫từng khung hình, chúng tôi đang viết dòng này ra màn hình, chúng tôi chỉ có thể sử dụng các dòng liên tục bằng false.

63
00:04:31,930 --> 00:04:38,860
‫Vì vậy, mọi vé sẽ được vẽ lại dòng gỡ lỗi này, đóng dấu ngoặc đơn và sau đó chúng ta có thể đặt dấu

64
00:04:38,860 --> 00:04:40,300
‫chấm phẩy ở cuối dòng.

65
00:04:40,300 --> 00:04:44,230
‫Vậy các giá trị bắt đầu và kết thúc này sẽ trông như thế nào?

66
00:04:44,590 --> 00:04:51,490
‫Chà, lúc bắt đầu, nó thực sự chỉ là vị trí của thành phần grabber của chúng ta bởi vì nó sẽ được

67
00:04:51,490 --> 00:04:55,810
‫gắn vào máy ảnh và đó là một vị trí bắt đầu tốt.

68
00:04:55,810 --> 00:05:02,320
‫Bây giờ hãy nhớ rằng có một vectơ chuyển tiếp cho thành phần này, cho máy ảnh, cho người

69
00:05:02,410 --> 00:05:09,070
‫lấy và hướng về phía trước đó sẽ hướng ra ngoài từ máy ảnh vào cảnh, luôn hướng về phía

70
00:05:09,070 --> 00:05:09,730
‫trước.

71
00:05:09,730 --> 00:05:19,000
‫Vì vậy, những gì chúng tôi muốn làm là lấy vectơ bắt đầu của chúng tôi, thêm vectơ chuyển tiếp nhân với một số lượng.

72
00:05:19,000 --> 00:05:25,180
‫Về cơ bản, đó là một số lượng sẽ là khoảng cách tối đa mà chúng ta sẽ tìm kiếm đối tượng.

73
00:05:25,180 --> 00:05:31,990
‫Vì vậy, bạn có thể có một hoặc hai hoặc ba mét là số tiền và sau đó chúng ta sẽ kết thúc với một vectơ kết

74
00:05:31,990 --> 00:05:32,440
‫thúc.

75
00:05:32,440 --> 00:05:39,520
‫Vì vậy, bắt đầu cộng với vectơ chuyển tiếp của grabber sẽ bằng với vectơ kết thúc.

76
00:05:39,520 --> 00:05:45,580
‫Vì vậy, độ sâu tối đa mà chúng ta muốn nhìn vào cảnh là thứ mà chúng ta có thể muốn định cấu hình.

77
00:05:45,580 --> 00:05:48,580
‫Vì vậy, chúng tôi sẽ đặt nó như một tài sản của bạn trên grabber.

78
00:05:49,450 --> 00:05:55,180
‫Hãy đi đến cửa grabber H và tạo một phần riêng tư, tạo thuộc tính U mà chúng ta sẽ

79
00:05:55,180 --> 00:06:03,040
‫thực hiện chỉnh sửa ở bất kỳ đâu và sau đó chúng ta sẽ có kiểu float B sao cho nó có thể là bất kỳ khoảng cách

80
00:06:03,040 --> 00:06:03,850
‫số nào.

81
00:06:04,120 --> 00:06:12,400
‫Và chúng tôi sẽ gọi đây là khoảng cách lấy tối đa và chúng tôi sẽ đặt nó thành khoảng cách bốn mét theo mặc

82
00:06:12,400 --> 00:06:12,850
‫định.

83
00:06:12,850 --> 00:06:18,460
‫Có lẽ đó sẽ phải là 400 vì đơn vị mặc định là cm.

84
00:06:18,460 --> 00:06:22,330
‫Vì vậy, tôi muốn thách thức bạn tính toán những điểm bắt đầu và kết thúc.

85
00:06:22,330 --> 00:06:30,580
‫Sử dụng vị trí thành phần get trong trường hợp đầu tiên, sử dụng vectơ nhận chuyển tiếp để tính toán kết thúc và nhân

86
00:06:30,580 --> 00:06:35,560
‫với khoảng cách lấy tối đa mà chúng ta vừa định cấu hình ở đó.

87
00:06:35,590 --> 00:06:41,170
‫Sau đó, biên dịch, phát và loại bỏ diễn viên của bạn vì dòng này sẽ đi thẳng xuống máy

88
00:06:41,170 --> 00:06:41,470
‫ảnh.

89
00:06:41,470 --> 00:06:42,790
‫Bạn có thể không nhìn thấy nó ban đầu.

90
00:06:42,790 --> 00:06:43,570
‫Vì vậy, đẩy ra.

91
00:06:43,630 --> 00:06:49,420
‫Hãy đến và bước ra khỏi cơ thể của chính bạn và bạn có thể xem dòng tạm dừng, video và bắt đầu.

92
00:06:52,800 --> 00:06:53,280
‫Được chứ.

93
00:06:53,280 --> 00:06:53,910
‫Chào mừng trở lại.

94
00:06:53,910 --> 00:06:59,010
‫Vì vậy, chúng ta hãy bắt đầu lấy EP và bắt đầu viết những gì chúng ta sẽ bắt đầu.

95
00:06:59,460 --> 00:07:05,640
‫Như chúng tôi đã nói, đơn giản chỉ là lấy vị trí thành phần và sau đó là bắt đầu.

96
00:07:05,670 --> 00:07:18,360
‫Thay vào đó, phần cuối sẽ là phần bắt đầu, cộng với vectơ nhận chuyển tiếp nhân với khoảng cách lấy tối đa, giống như đặt dấu chấm

97
00:07:18,360 --> 00:07:21,090
‫phẩy ở cuối dòng đó.

98
00:07:21,090 --> 00:07:27,930
‫Chúng tôi sẽ tiếp tục và biên dịch và nếu nó biên dịch thành công, hãy tiếp tục và nhấn play và sau

99
00:07:27,930 --> 00:07:32,820
‫đó lấy khối lượng của chúng tôi trong khung nhìn nhấn f tám để đẩy ra.

100
00:07:32,820 --> 00:07:39,900
‫Và nếu chúng ta bước ra khỏi chính mình, bạn có thể thấy vạch rõ ràng như ban ngày từ nơi máy

101
00:07:39,930 --> 00:07:42,270
‫ảnh của chúng ta ở dưới sàn.

102
00:07:42,270 --> 00:07:47,460
‫Và có lẽ nếu tôi bước ra, chúng ta thậm chí có thể thấy rằng nó cũng đang nhô ra khỏi

103
00:07:47,460 --> 00:07:48,600
‫đáy sàn một chút.

104
00:07:48,600 --> 00:07:50,160
‫Đó là bốn mét cho bạn.

105
00:07:50,160 --> 00:07:52,410
‫Vì vậy, chúng tôi đã bắt đầu, chúng tôi đã kết thúc.

106
00:07:52,410 --> 00:07:59,580
‫Và nếu chúng ta sử dụng dòng này, đây sẽ là một dòng tuyệt vời cho các tham số đầu vào cho quá trình quét

107
00:07:59,580 --> 00:08:02,520
‫hình học mà chúng ta sẽ sử dụng sau này.

108
00:08:02,520 --> 00:08:03,120
‫Công cụ tuyệt vời.

109
00:08:03,120 --> 00:08:06,690
‫Chúng tôi đã học cách vẽ các đường gỡ lỗi vào cảnh của chúng tôi.

110
00:08:06,690 --> 00:08:11,610
‫Đây là một kỹ năng rất hữu ích mà bạn sẽ sử dụng rất nhiều khi bạn không thể hiểu tại sao một cái gì đó không hoạt động.

111
00:08:11,610 --> 00:08:12,510
‫Tôi hy vọng bạn thích nó.

112
00:08:12,510 --> 00:08:14,070
‫Hẹn gặp lại các bạn trong bài giảng tiếp theo.

