﻿1
00:00:04,320 --> 00:00:06,060
‫أهلا ومرحبا بهذه المحاضرة.

2
00:00:06,060 --> 00:00:10,950
‫سننظر في كيفية كتابة الأشياء في سجل الإخراج وتحديدًا كيف يمكننا كتابة

3
00:00:10,950 --> 00:00:16,290
‫قيم متغيراتنا فيه والتي يمكن أن تساعدنا في تصحيح أخطاء ألعابنا.

4
00:00:16,290 --> 00:00:18,450
‫دعونا نتعمق ونرى كيف يعمل هذا.

5
00:00:19,470 --> 00:00:26,640
‫لذلك في Blueprint ، تمكنا من كتابة الأشياء على الشاشة عندما أردنا عرض بعض المعلومات

6
00:00:26,640 --> 00:00:30,340
‫بسرعة أو ربما مجرد تصحيح شيء ما في الماضي.

7
00:00:30,360 --> 00:00:38,820
‫لقد استخدمنا في C ++ خاصية جديدة للقيام بذلك ، لكن يمكننا فعل ذلك باستخدام تعليمة log وهو أمر معقد بعض الشيء وغير

8
00:00:38,820 --> 00:00:43,610
‫واقعي ، ولهذا السبب ابتعدت عن القيام بذلك حتى هذه النقطة.

9
00:00:43,620 --> 00:00:47,850
‫لذلك نحن أكثر دراية ببنية C ++ قبل تقديمه لك.

10
00:00:48,180 --> 00:00:56,430
‫الآن ، الطريقة التي تعمل بها هي إذا كنت قد حصلت على الامتداد هنا ، وقمت بتثبيت المقتطفات الأربعة غير الواقعية بواسطة الأحرف الاستهلالية والقبعات الكبيرة

11
00:00:56,430 --> 00:01:01,200
‫، فهذا في الواقع يصبح أسهل قليلاً لأنك لست مضطرًا لتذكر كل تعقيدات بناء الجملة.

12
00:01:01,200 --> 00:01:07,860
‫ما عليك سوى الكتابة ، وتسجيل الدخول ، وسيظهر مع مربع حوار IntelliSense مثل هذا القول بأنك تسجل الدخول لمساعدتك

13
00:01:07,860 --> 00:01:13,590
‫في كتابة الجزء الكامل من الكود ويمكنك الضغط عليه أو إدخاله أو تحديده بالماوس.

14
00:01:13,590 --> 00:01:18,240
‫ثم ما سترونه هو أنه مكتوب على شيء يشبه بعض الشيء وظيفة.

15
00:01:18,240 --> 00:01:21,120
‫إنها في الواقع ليست وظيفة تحت الغطاء.

16
00:01:21,510 --> 00:01:27,660
‫إنه يحتوي على القليل من السحر غير الواقعي يحدث هنا ، لكنه يشبه إلى حد ما الوظيفة.

17
00:01:27,660 --> 00:01:33,330
‫إذن ما سنفعله هنا هو أننا نمرر بضع حجج لهذه الدالة.

18
00:01:33,330 --> 00:01:40,890
‫يخبرنا الأول عن نوع فئة السجل الذي نقوم به.

19
00:01:40,890 --> 00:01:44,700
‫يخبرنا الثاني مستوى السجل.

20
00:01:44,700 --> 00:01:46,860
‫إذن ما مدى إلحاحه بشكل أساسي.

21
00:01:47,160 --> 00:01:52,950
‫ثم أخيرًا حصلنا على هذا الشيء هنا ، وهو أساسًا دالة داخل دالة

22
00:01:52,950 --> 00:01:56,790
‫تخبرنا بالنص الذي نحتاج إلى طباعته.

23
00:01:57,060 --> 00:01:58,980
‫فكيف يعمل هذا؟

24
00:01:58,980 --> 00:02:05,730
‫إذا تركنا هذا في الكود الخاص بنا ، وانتقلنا إلى تجميع النتائج غير الواقعية ، فنحن نريد أن نرى أين سيظهر؟

25
00:02:05,730 --> 00:02:10,230
‫حسنًا ، بمجرد انتهاء التجميع ، سنمضي قدمًا ونبدأ اللعب.

26
00:02:10,530 --> 00:02:15,480
‫وما تبحث عنه في الواقع هو أنه لن يظهر على الشاشة هنا.

27
00:02:15,480 --> 00:02:17,520
‫سيكون في الإخراج.

28
00:02:17,520 --> 00:02:22,630
‫قم بتسجيل الدخول هنا ويمكنك رؤيتها هنا.

29
00:02:22,630 --> 00:02:28,230
‫تقول ، اعرض رسالتك ولدينا كم رسالة؟

30
00:02:28,230 --> 00:02:30,960
‫واحد إثنان ثلاثة أربعة خمسة.

31
00:02:31,110 --> 00:02:39,930
‫والسبب في ذلك هو عرض رسالة لكل ممثل في مشهدنا وهي عبارة عن منصة متحركة.

32
00:02:39,960 --> 00:02:43,770
‫CP لذلك هذا هو السبب في أننا نتلقى الكثير من الرسائل.

33
00:02:43,770 --> 00:02:48,030
‫ويمكنك أن ترى أنه يمكننا تغيير الرسالة لتكون كل ما أردناه أن يكون هنا.

34
00:02:48,540 --> 00:02:57,180
‫ويمكننا أيضًا وضع بعض المعلومات الإضافية في هذه الرسالة ، مثل موقع البدء أو اسم الممثل ، أشياء

35
00:02:57,180 --> 00:02:59,100
‫من هذا القبيل.

36
00:02:59,280 --> 00:03:00,810
‫حسنا هيا بنا.

37
00:03:00,810 --> 00:03:04,980
‫إذن لدينا سجل إخراج ، لدينا رسالتنا ، ويمكنك البدء في رؤية الفئات التي

38
00:03:04,980 --> 00:03:06,120
‫كنت أتحدث عنها.

39
00:03:06,120 --> 00:03:13,710
‫يمكنك أن ترى أننا حصلنا على درجة حرارة السجل هنا ، ولكن أعلاه لدينا سجل مزج صوتي Log World.

40
00:03:13,710 --> 00:03:18,480
‫إذن ، هناك فئات مختلفة من التسجيل تساعدنا في التمييز من أين تأتي هذه الرسالة؟

41
00:03:18,480 --> 00:03:21,060
‫من أي جزء من Unreal يأتي هذا؟

42
00:03:21,060 --> 00:03:26,790
‫لكن درجة حرارة السجل هي في الغالب ما سنستخدمه لأنه مجرد مكان مؤقت لتسجيل الخروج من رسائل

43
00:03:26,790 --> 00:03:29,340
‫تصحيح الأخطاء ومن ثم يتم عرضه.

44
00:03:29,340 --> 00:03:35,130
‫هذا هو المستوى الافتراضي ، مستوى السجل ، ولكن يمكن أن يكون لدينا رسائل ، وأن نكون مجموعة من الأشياء المختلفة.

45
00:03:35,130 --> 00:03:39,390
‫يمكن عرضه أو أي قيمة من هذا الجدول بالأسفل هنا.

46
00:03:39,390 --> 00:03:43,680
‫لذلك ترى العرض هنا يطبع رسالة إلى وحدة التحكم وملف السجل.

47
00:03:43,680 --> 00:03:48,150
‫لدينا السجل هنا الذي يطبع رسالة فقط إلى ملف السجل ولا يعرضها في وحدة التحكم.

48
00:03:48,150 --> 00:03:53,400
‫إذن هذا للأشياء التي لا تريدها حقًا أن تظهر كثيرًا ، ولكن قد ترغب في استخدامها لتصحيح الأخطاء.

49
00:03:53,400 --> 00:03:58,770
‫إذا كنت تقوم بتصحيح أخطاء لعبة شخص ما وتم تشغيلها على أجهزتهم ، فإنهم يرسلون لك ملف سجل.

50
00:03:58,770 --> 00:04:00,270
‫ثم لديك تحذير.

51
00:04:00,270 --> 00:04:06,870
‫هذا عندما يبدو أن الأمور تسير بشكل خاطئ ويتم طباعتها على وحدة التحكم في السجل وهي أيضًا باللون

52
00:04:06,870 --> 00:04:07,530
‫الأصفر.

53
00:04:07,560 --> 00:04:14,340
‫ثم لدينا خطأ يطبعه باللون الأحمر ثم قاتل ، يطبع بشكل أساسي على وحدة التحكم ويعطل

54
00:04:14,640 --> 00:04:15,480
‫المحرك.

55
00:04:15,480 --> 00:04:21,720
‫لذا فأنت تريد نوعًا ما استخدام هذا كحل أخير ، لكنه يسمح لك بالحصول على مستويات مختلفة في ملف

56
00:04:21,720 --> 00:04:22,500
‫السجل.

57
00:04:22,500 --> 00:04:27,330
‫وسأريكم فقط كيف سيبدو الأمر إذا وضعنا رسائل مختلفة هنا.

58
00:04:27,330 --> 00:04:32,790
‫لذا سأقوم بنسخ الخط الخاص بنا للتسجيل وسأقوم بعمل ثلاثة منهم.

59
00:04:32,790 --> 00:04:37,980
‫سيكون لدينا عرض ، سيكون لدينا تحذير ، وسوف يكون لدينا خطأ.

60
00:04:37,980 --> 00:04:40,890
‫الآن ، هذه هي المستويات التي سنستخدمها.

61
00:04:40,890 --> 00:04:43,980
‫لذلك دعونا نمضي قدمًا ونلقي نظرة ونرى كيف تبدو.

62
00:04:43,980 --> 00:04:49,170
‫دعنا نذهب إلى Unreal ، واضغط على زر الترجمة ودعنا نتوقف ونعيد التشغيل.

63
00:04:49,170 --> 00:04:55,290
‫وبالمناسبة ، يمكنك إظهار سجل الإخراج عن طريق الضغط على مفتاح التلدة مرتين.

64
00:04:55,380 --> 00:05:02,070
‫ستظهر هناك ، لدينا سجل الإخراج الخاص بنا ويمكنك أن ترى أن لدينا ثلاث مجموعات من الرسائل ، الشاشة

65
00:05:02,070 --> 00:05:05,970
‫الموجودة فقط في تحذير أبيض عادي ، باللون الأصفر.

66
00:05:05,970 --> 00:05:09,690
‫لذلك تبرز أكثر قليلاً ، خطأ ، من الواضح ، والذي يبرز أكثر من ذلك بكثير.

67
00:05:09,690 --> 00:05:12,360
‫الآن يمكننا إضافة البيانات إلى رسائل السجل لدينا.

68
00:05:12,360 --> 00:05:18,600
‫سأقوم فقط بحذف سطور التحذير والخطأ من السجل ويمكننا إضافة بعضها.

69
00:05:18,700 --> 00:05:21,280
‫لاحقًا في هذه السلسلة التي ستتم طباعتها.

70
00:05:21,280 --> 00:05:27,190
‫الطريقة التي سنقوم بها هي ، على سبيل المثال ، إذا أردت طباعة مسافة التحرك التي تم

71
00:05:27,190 --> 00:05:34,480
‫تكوينها لمنصة معينة يكون من السهل جدًا القيام بها ، فيمكننا أن نقول إنها تم تكوين مسافة التحرك ، وهذا

72
00:05:34,480 --> 00:05:36,190
‫هو النص الذي سيظهر.

73
00:05:36,190 --> 00:05:37,840
‫سأضع نقطتين هنا.

74
00:05:37,840 --> 00:05:44,560
‫وتذكر أن هذا كله ضمن علامات الاقتباس المزدوجة للتأكد من تضميننا في النص.

75
00:05:45,010 --> 00:05:51,460
‫وبعد ذلك يمكننا استخدام علامة النسبة المئوية متبوعة بالحرف F.

76
00:05:51,610 --> 00:05:57,360
‫وترى أن هذا يتم تمييزه بشكل مختلف لأن هذا هو ما يُعرف بالتنسيق المحدد هنا.

77
00:05:57,400 --> 00:06:01,900
‫إنه شيء يأتي من C طوال طريق العودة في التاريخ.

78
00:06:01,900 --> 00:06:07,540
‫وعادة ما تقوم عادةً بعمل علامة النسبة المئوية ثم بعد ذلك حرف ما يمكنك رؤية الأحرف المختلفة

79
00:06:07,540 --> 00:06:08,350
‫هنا.

80
00:06:08,380 --> 00:06:15,670
‫يتوافق الحرف F مع الفاصلة العشرية العشرية ويمكنك رؤية مثال لما يبدو عليه الناتج

81
00:06:15,670 --> 00:06:17,410
‫في عمود المثال.

82
00:06:17,410 --> 00:06:26,530
‫وهناك الكثير من الأشياء الأخرى هنا يمكننا تمثيلها بـ D أو I عددًا صحيحًا عشريًا مثل ذلك.

83
00:06:26,980 --> 00:06:30,820
‫إذن فنحن نستخدم F لأن لدينا عدد فاصلة عائمة.

84
00:06:30,820 --> 00:06:35,230
‫ثم ما يتعين علينا القيام به هو إضافة متغير آخر إلى دالة السجل E.

85
00:06:35,230 --> 00:06:43,540
‫لذا تأكد من قيامك بذلك بعد إغلاق الأقواس لوظيفة النص هذه وبدلاً من ذلك نضع

86
00:06:43,540 --> 00:06:45,520
‫فاصلة بعد ذلك.

87
00:06:45,520 --> 00:06:51,730
‫إذن بين هذين القوسين ، يجب أن يكون داخل المجموعة الخارجية ، ولكن خارج المجموعة الداخلية ، إذا كان

88
00:06:51,730 --> 00:06:52,690
‫ذلك منطقيًا.

89
00:06:52,900 --> 00:07:00,910
‫ثم ما يمكننا فعله هو تمرير قيمة المتغير الخاص بنا حتى نتمكن من عمل متغير مسافة الحركة مثل

90
00:07:00,910 --> 00:07:04,390
‫، فلننتقل إلى Unreal ونرى هذا عمليًا.

91
00:07:04,390 --> 00:07:11,170
‫لقد قمت بالضغط على زر الترجمة ، وأغلق نافذة الترجمة واضغط على تشغيل ثم اضغط على Tilde مرتين لإحضار

92
00:07:11,170 --> 00:07:11,860
‫السجل.

93
00:07:11,860 --> 00:07:17,980
‫ويمكنك أن ترى مسافات الحركة التي تم تكوينها تظهر للمنصات المختلفة ، 505 مائة

94
00:07:17,980 --> 00:07:24,130
‫لمنصتين متحركتين و 1500 للدفعات الثلاث التي حصلنا عليها في المشهد.

95
00:07:24,130 --> 00:07:29,620
‫لذا فإن إحدى المعلومات التي قد تكون مثيرة للاهتمام أو مفيدة بعض الشيء هي

96
00:07:29,620 --> 00:07:36,370
‫أننا تحدثنا سابقًا عن كيفية تجاوزنا أو تجاوزنا المسافة التي قطعناها ، وسيكون من المثير للاهتمام

97
00:07:36,370 --> 00:07:39,490
‫معرفة نوع المستويات التي تحدث.

98
00:07:39,490 --> 00:07:43,510
‫إذن ما يمكننا فعله هو إنشاء متغير عائم داخل تعليمة if.

99
00:07:43,510 --> 00:07:45,520
‫لذلك نحن نعلم أننا تجاوزنا في الوقت الحالي.

100
00:07:45,520 --> 00:07:49,900
‫يمكننا القول تجاوز متغير عائم يسمى التجاوز.

101
00:07:49,900 --> 00:07:56,440
‫سنجعلها مساوية للمسافة المقطوعة ناقص مسافة الحركة.

102
00:07:56,440 --> 00:07:59,740
‫هذا يخبرنا عن مقدار التجاوز.

103
00:07:59,740 --> 00:08:04,330
‫لذا أود منك أن تجرب تسجيل متغير التجاوز الذي أنشأناه للتو هنا.

104
00:08:04,330 --> 00:08:06,610
‫لذا استخدم وظيفة Yule log.

105
00:08:06,610 --> 00:08:11,470
‫هنا كمرجع على الأقل نوع الهيكل الذي من المحتمل أن تستخدمه.

106
00:08:11,470 --> 00:08:19,330
‫يمكنك أيضًا التدرب على استخدام تسجيل الإكمال التلقائي لوضعه بدلاً من ذلك ثم تجميع الكود واختباره

107
00:08:19,330 --> 00:08:21,220
‫ومعرفة ما إذا كان يعمل.

108
00:08:21,220 --> 00:08:22,660
‫أوقف الفيديو واذهب.

109
00:08:25,690 --> 00:08:26,170
‫تمام.

110
00:08:26,170 --> 00:08:26,970
‫مرحبًا بعودتك.

111
00:08:26,980 --> 00:08:30,790
‫لذلك سنستخدم خيار الإكمال التلقائي هنا.

112
00:08:30,790 --> 00:08:33,280
‫سأقوم فقط بإغلاق الشريط الجانبي الخاص بي للحصول على مساحة أكبر قليلاً.

113
00:08:33,400 --> 00:08:40,450
‫ثم داخل هذا ، إذا قمنا بعد إنشاء المتغير ، فسنقوم بكتابة تسجيل الدخول والضغط على

114
00:08:40,960 --> 00:08:43,360
‫إدخال ثم نتركه معروضًا.

115
00:08:43,360 --> 00:08:52,690
‫سنقوم بتخطي النظام الأساسي للنص ثم سنستخدم النسبة المئوية F ثم بين هذين القوسين

116
00:08:52,690 --> 00:09:02,020
‫، سنضيف حجة جديدة لمتغير التجاوز مثل ، لذا دعنا الآن نعود إلى Unreal.

117
00:09:02,050 --> 00:09:08,770
‫لقد قمت بالضغط على زر الترجمة ، وأغلق سجل الترميز المباشر ، واضغط على زر التشغيل وانقر نقرًا مزدوجًا على مفتاح التلدة.

118
00:09:09,310 --> 00:09:15,340
‫ويمكنك أن ترى أنه في كل مرة تستدير فيها المنصة ، فإنها تطبع رسالة سجل وتقول عدد

119
00:09:15,340 --> 00:09:17,560
‫الوحدات التي تجاوزتها.

120
00:09:17,560 --> 00:09:18,730
‫يمكنك في الواقع رؤية الشبكة.

121
00:09:18,730 --> 00:09:26,200
‫في كثير من الحالات يتم تجاوز عدد قليل جدًا ، عدد ملحوظ جدًا من الوحدات ، ثلاث وحدات

122
00:09:26,200 --> 00:09:27,190
‫أو 0. 5 وحدات.

123
00:09:27,190 --> 00:09:30,370
‫هذا في الأساس 0. 5٪ إلى ثلاثة سنتيمترات.

124
00:09:30,370 --> 00:09:35,230
‫يكفي أنه على مدار لعبتك ، كان من الممكن أن تنجرف هذه المنصات.

125
00:09:35,230 --> 00:09:39,250
‫وهذا أمر رائع أننا قمنا بتنفيذ إصلاح لذلك بالفعل.

126
00:09:39,280 --> 00:09:39,760
‫أشياء عظيمة.

127
00:09:39,760 --> 00:09:45,280
‫لذلك نأمل الآن أن يكون لديك أداة أخرى في ترسانتك لمحاولة اكتشاف ما يحدث داخل الكود الخاص

128
00:09:45,280 --> 00:09:45,880
‫بك.

129
00:09:45,880 --> 00:09:51,220
‫وفي وقت لاحق عندما تشعر بمزيد من الثقة في إنشاء الكود الخاص بك ، في محاولة لمعرفة

130
00:09:51,220 --> 00:09:53,020
‫ما لا يعمل بشكل جيد.

131
00:09:53,470 --> 00:09:56,020
‫حسنًا ، سأراك في المحاضرة القادمة.

