﻿1
00:00:04,350 --> 00:00:04,980
‫أهلا ومرحبا.

2
00:00:04,980 --> 00:00:13,110
‫في هذه المحاضرة ، سنقوم بإنتاج بندقيتنا في وقت التشغيل من فئة الشخصيات في C ++.

3
00:00:13,110 --> 00:00:15,270
‫دعنا نتعمق ونرى كيف يتم ذلك.

4
00:00:16,560 --> 00:00:16,740
‫تمام.

5
00:00:16,830 --> 00:00:23,640
‫لذلك نريد أن نجعل سلاحنا يفرز كطفل لشخصية مطلق النار ، فإن أول نقطة اتصال هي أن نكون قادرين

6
00:00:23,640 --> 00:00:27,390
‫على إنتاج هذا الممثل من داخل ممثل آخر.

7
00:00:27,870 --> 00:00:29,160
‫سنفعل ذلك في وقت التشغيل.

8
00:00:29,160 --> 00:00:32,340
‫سنفعل ذلك عند بدء اللعب لأن هذه هي الطريقة التي تحتاجها للقيام بذلك.

9
00:00:32,340 --> 00:00:34,440
‫عندما تقوم بتوليد ممثلين ، فأنت بحاجة إلى القيام بذلك في وقت التشغيل.

10
00:00:34,620 --> 00:00:38,430
‫والطريقة التي سنفعل بها ذلك هي أننا سنمسك بالعالم أولاً.

11
00:00:38,430 --> 00:00:44,820
‫لذا احصل على عالم ومن ثم سنقوم باستدعاء دالة على الحصول على العالم ، بالمناسبة ، عالم ومستوى مرادف.

12
00:00:44,820 --> 00:00:48,810
‫إذن ما نفعله هنا في الواقع هو أننا نرتقي إلى المستوى ونقول ، مهلاً ، المستوى

13
00:00:48,810 --> 00:00:54,210
‫، هل يمكنك أن تبدع كممثل لأن جميع الممثلين ينتمون أساسًا إلى مستوى معين أو يعيشون فيه؟

14
00:00:54,690 --> 00:00:58,500
‫ثم نقول ، كما تعلم ، أنجب ممثلًا لي ، من فضلك.

15
00:00:58,830 --> 00:01:04,830
‫وهذا ممثل تفرخ يأخذ نموذجًا.

16
00:01:04,830 --> 00:01:10,530
‫يمكنك القول ، أريد أن يكون هذا الممثل الذي سأقوم بتجسيده من النوع A.

17
00:01:10,530 --> 00:01:19,680
‫ولكي يعمل ذلك ، سنحتاج إلى تضمين تجزئة أعلى هنا للمسدس dot h.

18
00:01:21,240 --> 00:01:29,760
‫وبعد ذلك سنأخذ حجة ويمكن أن تكون حجة التكاثر في الواقع من نوع فئة.

19
00:01:29,760 --> 00:01:33,780
‫لذلك بشكل افتراضي سوف تمضي قدما وتنتج C ++.

20
00:01:33,780 --> 00:01:38,190
‫لكن هنا نريد أن ننتج الطفل المخطط لهذا السلاح.

21
00:01:38,190 --> 00:01:43,590
‫لذلك نحن بحاجة إلى معرفة ما يجب أن يتم ربطه في مخطط Blueprint.

22
00:01:43,590 --> 00:01:46,110
‫لا يمكن توصيله هنا بلغة C ++ ، على الأقل ليس بسهولة.

23
00:01:46,110 --> 00:01:48,330
‫أفضل مكان للقيام بذلك هو Blueprint.

24
00:01:48,330 --> 00:01:52,380
‫لذلك سنقوم بعمل بديل للذهاب إلى ملف الرأس حتى يتم تحويل مشكلتنا إلى شخصية.

25
00:01:52,860 --> 00:01:55,620
‫وسنقوم بإضافة خاصية جديدة لك هنا.

26
00:01:56,390 --> 00:02:03,470
‫للسماح لنا بتكوين الفئة التي يجب أن نشير إليها من أجل إنتاج ممثل.

27
00:02:03,470 --> 00:02:07,010
‫ما هي فئة المخطط التي يجب أن ننتجها من شخصية مطلق النار هذه؟

28
00:02:07,370 --> 00:02:17,510
‫سنقوم بتحريرها كإعدادات افتراضية فقط وقم بتحرير الإعدادات الافتراضية فقط لأننا لا نريد أن نتمكن من تعديل هذا في وقت التشغيل لأنه

29
00:02:17,510 --> 00:02:22,490
‫سيعطي انطباعًا خاطئًا أنه يمكنك تغيير نوع البندقية التي نستخدمها

30
00:02:22,490 --> 00:02:23,840
‫في مدة العرض.

31
00:02:23,840 --> 00:02:29,810
‫في حين تم استدعاء Begin Play بالفعل أن الأسلحة قد تم إنتاجها بالفعل وبالتالي لن تقوم بالفعل بتحديث

32
00:02:29,810 --> 00:02:30,710
‫أي شيء.

33
00:02:30,710 --> 00:02:35,090
‫لذلك لا نريد أن نجعله قابلاً للتعديل حتى لا نعطي الناس انطباعًا خاطئًا عما يمكن فعله.

34
00:02:35,450 --> 00:02:41,810
‫ثم هنا سنستخدم ماكرو يسمى T subclass والذي ربما تكون قد صادفته أو لم تصادفه من قبل

35
00:02:41,810 --> 00:02:45,230
‫وفئة DT الفرعية الخاصة به عبارة عن قالب.

36
00:02:45,230 --> 00:02:52,520
‫لذلك استخدمنا أقواس الزاوية مرة أخرى ونريد أن نقول فئة فرعية من البندقية.

37
00:02:52,790 --> 00:02:59,630
‫وما يعنيه هذا أساسًا هو أنه يسمح لـ Blueprint بتقييد الفئات التي يمكننا

38
00:02:59,630 --> 00:03:05,630
‫الاختيار من بينها إلى الفئات الفرعية فقط من فئة Gun C ++.

39
00:03:05,960 --> 00:03:11,000
‫الآن لن يكون هذا مؤشرًا لأننا لا نشير إلى مثيل حقيقي للبندقية.

40
00:03:11,000 --> 00:03:15,590
‫ما نحصل عليه هنا في هذا المتغير هو فئة بحد ذاتها.

41
00:03:15,590 --> 00:03:18,530
‫في هذه الحالة ، إنه فصل دراسي ، لكنه لا يزال فصلًا دراسيًا.

42
00:03:18,860 --> 00:03:25,730
‫إذن ما نريد أن نسميه هذا هو فئة البندقية ، فقط لتوضيح أن هذا ليس البندقية

43
00:03:25,730 --> 00:03:27,950
‫في الواقع.

44
00:03:28,010 --> 00:03:36,800
‫نريد خاصية أخرى هنا لتخزين المسدس ، ولن يكون ذلك تعديلًا افتراضيًا.

45
00:03:36,800 --> 00:03:42,470
‫لذلك ، في الأساس ، لا نريد أن نجعل هذه خاصية مرئية على الإطلاق ، لكنها ستكون مؤشر

46
00:03:42,470 --> 00:03:43,130
‫بندقية.

47
00:03:43,130 --> 00:03:43,880
‫ترى الفرق؟

48
00:03:43,880 --> 00:03:50,780
‫أحدهما عبارة عن فئة فرعية من البندقية ، والآخر عبارة عن مؤشر بندقية وهذا هو البندقية الفعلية.

49
00:03:50,780 --> 00:03:54,710
‫هذا بمجرد إنشاء مثيل للفصل ، حيث سنقوم بتخزينه.

50
00:03:54,920 --> 00:04:03,860
‫لذا دعنا ننتقل إلى CP مطلق النار لدينا وننهي هذه اللعبة حيث نبدأ في إنتاج الأشياء ، لذا سنحصل على سلاح

51
00:04:03,860 --> 00:04:08,030
‫متساوٍ للحصول على بندقية الممثل العالمي.

52
00:04:08,030 --> 00:04:14,930
‫والحجة التي سنناقشها هنا هي فئة السلاح ، والتي سنضعها في مخطط Blueprint.

53
00:04:14,930 --> 00:04:17,810
‫لذلك دعونا نذهب ونحاول تجميع هذا.

54
00:04:17,810 --> 00:04:18,890
‫قد يعطينا بعض الأخطاء.

55
00:04:18,890 --> 00:04:25,850
‫دعنا نرى ، لديّ سجل الرسائل مفتوحًا مع سجل الترجمة وبالتأكيد ، نحصل على بعض الأخطاء هنا في الملف الرئيسي

56
00:04:25,850 --> 00:04:31,250
‫تقول معرّفًا غير معلن لأننا نحتاج إلى إعادة توجيه إعلان البندقية.

57
00:04:31,250 --> 00:04:35,690
‫لذا سأفعل هذا في الأعلى لأنه في مكانين سأقولهما كلاس.

58
00:04:36,580 --> 00:04:39,460
‫بندقية من هذا القبيل.

59
00:04:39,760 --> 00:04:45,070
‫وللتذكير فقط ، فإن إعادة التصريح بهذا الشكل يعني أنه يمكننا تقليل أوقات الترجمة من خلال

60
00:04:45,070 --> 00:04:47,650
‫عدم تضمين الكثير في ملفات الرأس الثقيلة.

61
00:04:48,010 --> 00:04:49,570
‫دعونا نحاول إعادة الترجمة ونرى.

62
00:04:49,820 --> 00:04:51,250
‫يبدو أن هذا كان الخطأ الوحيد.

63
00:04:51,250 --> 00:04:52,730
‫تم تجميعه الآن بنجاح.

64
00:04:52,750 --> 00:04:55,930
‫دعنا نمضي قدمًا ونضرب التشغيل ونرى ما سيحدث.

65
00:04:55,960 --> 00:04:56,410
‫مخرج.

66
00:04:56,440 --> 00:04:57,860
‫الق نظرة على.

67
00:04:57,880 --> 00:05:00,760
‫نريد أساسًا إلقاء نظرة على سجل الرسائل ، الذي لم أفتحه.

68
00:05:00,760 --> 00:05:07,770
‫لذلك دعنا ننتقل إلى أدوات النافذة والمطورين ونلقي نظرة على سجل الإخراج ونرى ما إذا كان لدينا أي أخطاء هنا.

69
00:05:07,780 --> 00:05:10,810
‫نعم ، فشل إنتاج الممثل لأنه لم يتم تحديد فئة.

70
00:05:10,810 --> 00:05:14,920
‫بالتأكيد ، لم يتم تحديد أي فئة لأننا لم نقم بتكوينها بعد في المخطط.

71
00:05:14,920 --> 00:05:21,190
‫لذلك سأقدم هذا كتحدي لك لتوصيل البندقية ، والعثور على الخاصية في مخطط شخصيتنا

72
00:05:21,190 --> 00:05:25,660
‫، وضبطها على البندقية الصحيحة واختبار أنها تتكاثر.

73
00:05:25,660 --> 00:05:26,740
‫أوقف مقطع فيديو واذهب.

74
00:05:26,770 --> 00:05:27,580
‫K مرحبا بعودتك.

75
00:05:27,580 --> 00:05:37,210
‫لذلك دعنا ننتقل إلى شخصية مطلق النار BP ونجد الخاصية التي يجب أن تكون على الطريق أو في الفصل.

76
00:05:37,210 --> 00:05:40,810
‫تذهب الإعدادات الافتراضية إلى التفاصيل وتقلل من هدف الشخصية.

77
00:05:40,810 --> 00:05:47,380
‫يمكنك أن ترى أن لدينا معدل دوران هنا والذي قمنا بتكوينه ولدينا فئة البندقية الخاصة بنا ،

78
00:05:47,380 --> 00:05:52,150
‫وهي قائمة منسدلة تتيح لي الاختيار بين البندقية كونها مسدس C ++.

79
00:05:52,150 --> 00:05:54,460
‫وهنا يأتي دور اصطلاح التسمية لدينا.

80
00:05:54,460 --> 00:05:57,790
‫الأشياء المسبوقة بشرطة BP السفلية هي المخططات.

81
00:05:57,790 --> 00:06:04,900
‫لذلك نريد بندقيتنا السفلية من BP ، المضي قدمًا واختيار هذا التجميع المحفوظ ، انتقل إلى المشهد واضغط

82
00:06:04,900 --> 00:06:05,830
‫على اللعب.

83
00:06:06,190 --> 00:06:11,950
‫الآن ، نأمل ألا يكون لدينا أي أخطاء حول إنتاج سلاحنا.

84
00:06:11,980 --> 00:06:13,480
‫يجب أن يكون البندقية قد ولدت.

85
00:06:13,480 --> 00:06:14,410
‫تمام.

86
00:06:14,410 --> 00:06:20,620
‫ولمعرفة ما إذا كان الأمر كذلك ، يمكننا f ثمانية وإلقاء نظرة على مخطط العالم.

87
00:06:20,710 --> 00:06:26,200
‫إذا جعلت العالم مخططًا أكبر قليلاً ، يمكنني البحث عن بندقية BP السفلية.

88
00:06:26,350 --> 00:06:26,910
‫يا هلا.

89
00:06:26,920 --> 00:06:32,470
‫لقد حصلنا على بندقية BP تسطير في اللحظة التي تكون فيها في منتصف اللامكان وهي ليست بطاقة هوية الطفل بشكل صحيح.

90
00:06:32,470 --> 00:06:34,780
‫سيكون هذا موضوع المحاضرة القادمة.

91
00:06:34,780 --> 00:06:36,760
‫لذلك سأراك هناك.

