﻿1
00:00:04,430 --> 00:00:05,360
‫أهلا ومرحبا.

2
00:00:05,360 --> 00:00:09,830
‫في هذه المحاضرة ، سنتعلم شيئًا يسمى كائن العالم ، كائن مهم جدًا

3
00:00:09,830 --> 00:00:10,820
‫في Unreal.

4
00:00:10,820 --> 00:00:16,340
‫سأرى كيف يمكننا الحصول على الوقت الحالي في لعبتنا من هذا الكائن وطباعته على وحدة

5
00:00:16,340 --> 00:00:18,500
‫التحكم بنهاية هذه المحاضرة.

6
00:00:18,500 --> 00:00:20,690
‫لذلك دعونا نتعمق ونرى كيف يعمل هذا.

7
00:00:21,230 --> 00:00:28,280
‫حتى نتمكن من القيام بتتبع الخطوط أو المسح ، نحتاج إلى فهم مفهوم آخر ، نوع آخر

8
00:00:28,280 --> 00:00:34,550
‫من الأشياء الموجودة في أرض غير حقيقية ، وهذا الكائن هو العالم.

9
00:00:34,550 --> 00:00:37,640
‫لذلك تعاملنا كثيرًا مع المستويات.

10
00:00:37,640 --> 00:00:41,540
‫لذلك إذا ذهبنا إلى رسم المحتوى الخاص بنا ، فقد تعاملنا مع الخرائط أيضًا.

11
00:00:41,540 --> 00:00:46,790
‫إذن الخريطة والمستوى الذي تحدثنا عنه نوعًا ما مترادفان.

12
00:00:46,790 --> 00:00:51,050
‫ومع ذلك ، فإن العالم موجود نوعًا ما هناك في البداية.

13
00:00:51,050 --> 00:00:59,120
‫في البداية كان العالم الجديد والعالم الجديد هو النوع ، وهو فئة البيئة التي

14
00:00:59,120 --> 00:01:01,940
‫نراها عندما نلعب لعبة.

15
00:01:02,300 --> 00:01:05,360
‫لكنها ليست بالضرورة مستوى واحد فقط.

16
00:01:05,360 --> 00:01:12,830
‫يمكنك تحميل مستوى يسمى مستوى أنت في C ++ ، وهو مجرد مجموعة من الممثلين الذين يجب أن نجلبهم

17
00:01:12,830 --> 00:01:14,750
‫إلى العالم الجديد.

18
00:01:14,750 --> 00:01:19,730
‫حتى تتمكن من تحميل مستوى إلى عالمك ، ولكن ليس بالضرورة مستوى واحد فقط.

19
00:01:19,730 --> 00:01:23,510
‫يمكنك التحميل في مستويات متعددة في عالم واحد.

20
00:01:23,510 --> 00:01:28,280
‫وذلك لأنه غالبًا ما يكون لدينا مستويات البث هذه ، ولدينا مستويات كبيرة جدًا حيث لا

21
00:01:28,280 --> 00:01:32,510
‫نريد تحميل كل شيء ، كل ممثل في المستوى دفعة واحدة لأسباب تتعلق بالأداء.

22
00:01:32,510 --> 00:01:38,930
‫لذلك قمنا بتقسيمها إلى عدة مستويات وهذا يسمح لنا بإحضار أجزاء فقط من المشهد كما

23
00:01:38,930 --> 00:01:39,860
‫هو مطلوب.

24
00:01:39,860 --> 00:01:44,780
‫لذلك إذا ألقينا نظرة على صفحة التوثيق في New World ، أعتقد أنها تصفها بإيجاز

25
00:01:44,780 --> 00:01:51,020
‫إلى حد ما أن العالم هو كائن المستوى الأعلى الذي يمثل خريطة أو صندوق رمل حيث سيتواجد الممثلون والمكونات

26
00:01:51,020 --> 00:01:52,820
‫ويتم تقديمهم.

27
00:01:52,820 --> 00:01:57,500
‫وإذا نظرت إلى الأسفل قليلاً ، فستجد أن العالم يمكن أن يكون مستوى ثابتًا واحدًا

28
00:01:57,500 --> 00:02:03,890
‫، مما يعني أساسًا المستوى الذي سيكون موجودًا باستمرار أو يحتمل أن يكون هناك قائمة اختيارية لمستويات البث

29
00:02:03,890 --> 00:02:07,730
‫أو المستويات الأساسية التي يمكن تحميلها وقتما نريد .

30
00:02:08,150 --> 00:02:10,850
‫الآن ، لماذا أي من هذا مثير للاهتمام؟

31
00:02:10,910 --> 00:02:14,600
‫إنه مثير للاهتمام لأنه يسمح لنا بتتبع الخطوط.

32
00:02:14,600 --> 00:02:20,600
‫إذا بحثنا في التوثيق هنا عن تتبع الخطوط ، فسترى أن هناك مجموعة من الوظائف

33
00:02:20,600 --> 00:02:28,340
‫هنا ، ولا سيما الوظيفة الأكثر إثارة للاهتمام بالنسبة لنا هي تتبع الخط واحدًا بقناة أو تتبع الخط

34
00:02:28,340 --> 00:02:36,020
‫متعدد القنوات ، والذي يسمح لنا بشكل أساسي على التوالي للحصول على هذا الكائن الأول اصطدم أو اصطدمت

35
00:02:36,020 --> 00:02:39,170
‫جميع الكائنات بتتبع خط.

36
00:02:39,320 --> 00:02:45,350
‫ويمكنك أن ترى أن قائمة الحجج ، خاصةً إذا نظرت إلى سطر تتبع مفرد ،

37
00:02:45,350 --> 00:02:52,520
‫قائمة الحجج لها البداية ، لها النهاية ، لديها قناة تتبع للقيام بالتتبع.

38
00:02:52,520 --> 00:02:58,100
‫وهو في الواقع يعطينا نتيجة في قائمة المعلمات ، وهو أمر غريب بعض الشيء وسنغطي

39
00:02:58,100 --> 00:02:59,570
‫ذلك قريبًا.

40
00:02:59,960 --> 00:03:02,000
‫لكن على أي حال ، هذا هو تتبع الخط.

41
00:03:02,000 --> 00:03:05,570
‫لدينا أيضًا القدرة على القيام بمسح.

42
00:03:05,570 --> 00:03:09,980
‫لذلك إذا بحثنا عن مسح ، يمكنك أن ترى أن هناك قناة مسح متعددة ثنائية.

43
00:03:10,010 --> 00:03:12,620
‫هناك أيضًا عملية مسح واحدة تلو الأخرى.

44
00:03:12,620 --> 00:03:20,180
‫وهنا بالإضافة إلى البداية والنهاية ، لديك أيضًا نوع شكل التصادم الذي يمكنك تمريره

45
00:03:20,180 --> 00:03:20,690
‫فيه.

46
00:03:20,690 --> 00:03:26,900
‫بشكل أساسي ، إذا نقرنا على شكل الاصطدام F ، يمكنك متابعة التوثيق في Unreal

47
00:03:26,900 --> 00:03:33,650
‫لقراءة المزيد عنه ويمكنك أن ترى أن شكل الاصطدام F يدعم بشكل أساسي كونه إما صندوق

48
00:03:33,650 --> 00:03:36,440
‫كبسولة كروية أو خط.

49
00:03:36,440 --> 00:03:43,880
‫لذلك سنستخدم الكرة في حالتنا على هذا النحو وسنرى كيف نبنيها لاحقًا.

50
00:03:43,880 --> 00:03:48,530
‫لكن يمكنك معرفة سبب رغبتنا في الحصول على هذا العالم الجديد ، ولماذا هو مهم بالنسبة لنا.

51
00:03:48,530 --> 00:03:52,550
‫لكن السؤال هو كيف نحصل على العالم الجديد؟

52
00:03:52,550 --> 00:03:55,490
‫وبمجرد أن نحصل عليه ، كيف نستخدمه؟

53
00:03:55,850 --> 00:03:59,360
‫حسنًا ، دعنا نذهب ونلقي نظرة على كود Visual Studio.

54
00:03:59,990 --> 00:04:06,710
‫في كل مكون وكل ممثل ، هناك وظيفة تسمى Get World.

55
00:04:06,890 --> 00:04:12,800
‫وإذا كتبت get world ثم أقواس ، فهذا يعيد كائنًا من نوع U world.

56
00:04:12,800 --> 00:04:16,070
‫في الواقع ، مؤشر إلى كائن من نوع العالم الجديد.

57
00:04:16,070 --> 00:04:17,090
‫لذلك دعونا نخزن ذلك.

58
00:04:17,090 --> 00:04:23,690
‫لدينا مؤشر للعالم الجديد ، والذي سيكون سوف نسميه العالم ، أليس كذلك؟

59
00:04:23,870 --> 00:04:25,700
‫وهذا يساوي الحصول على العالم.

60
00:04:25,700 --> 00:04:28,550
‫وبعد ذلك يمكننا وضع فاصلة منقوطة في النهاية هناك.

61
00:04:28,550 --> 00:04:34,550
‫الآن ، من أجل الحصول على أي شيء من هذا العالم ، سنستخدم عامل تشغيل الأسهم.

62
00:04:34,550 --> 00:04:40,310
‫لذلك سنقوم بعمل سهم عالمي ، وبعد ذلك سنتمكن من الذهاب وإلقاء نظرة على بعض تفاصيل

63
00:04:40,310 --> 00:04:41,300
‫هذا العالم.

64
00:04:41,300 --> 00:04:47,330
‫ولكن قبل القيام بذلك ، نحتاج إلى تضمين ملف الرأس الخاص به لأنه بخلاف ذلك ، فإن ملف C

65
00:04:47,330 --> 00:04:52,580
‫++ هذا ، عندما يصل المترجم إليه ، لن يعرف ما هو مضمن داخل نوع عالمي جديد.

66
00:04:52,580 --> 00:04:55,700
‫ليس لديها معلومات عن عالم جديد على الإطلاق.

67
00:04:55,850 --> 00:04:59,990
‫لإصلاح ذلك ، نحتاج إلى إلقاء نظرة على وثائقنا الخاصة بالعالم الجديد.

68
00:04:59,990 --> 00:05:03,470
‫قم بالتمرير إلى الأعلى وابحث عن المكان الذي توجد فيه.

69
00:05:03,570 --> 00:05:10,530
‫يقول تضمين وهذا يعطينا التضمين الذي نحتاج إلى استخدامه ، يمكنك أن ترى تضمين محرك اقتباس Ford

70
00:05:10,530 --> 00:05:18,990
‫slash world وهذا ما نحتاجه لذلك سنضع ذلك بعد أن أحصل على H هنا والآن إذا وصلنا إلى مساحة التحكم ، يجب أن نحصل على قائمة

71
00:05:18,990 --> 00:05:23,670
‫بالأشياء التي يمكننا القيام بها مع هذا العالم بالذات.

72
00:05:23,670 --> 00:05:26,400
‫وهناك الكثير منهم لدينا.

73
00:05:26,400 --> 00:05:34,770
‫من الواضح أنه يمكننا إيجاد تتبع الخط لدينا ، ويمكننا إيجاد المسح بواسطة متعدد أو مفرد.

74
00:05:34,770 --> 00:05:38,070
‫لذلك أود أن أتحداك أن تطبع الفاصل الزمني.

75
00:05:38,070 --> 00:05:42,030
‫هذه خاصية متاحة على كائن العالم الجديد.

76
00:05:42,060 --> 00:05:48,060
‫سوف تجد خاصية الوقت بالثواني التي تقرأ عنها في الوثائق المرتبطة

77
00:05:48,060 --> 00:05:53,010
‫بهذه المحاضرة وتخزينها في متغير من النوع المناسب.

78
00:05:53,010 --> 00:05:58,950
‫مرة أخرى ، سيخبرك النظر في الوثائق عن النوع الذي يجب أن يكون عليه ثم تسجيل ذلك في وحدة التحكم مرة

79
00:05:58,950 --> 00:06:01,260
‫أخرى باستخدام التنسيق المناسب.

80
00:06:01,260 --> 00:06:03,900
‫حدد مقطع فيديو وقفة وانطلق.

81
00:06:07,350 --> 00:06:08,340
‫حسنًا ، مرحبًا بعودتك.

82
00:06:08,340 --> 00:06:13,890
‫لذلك سنستفيد من هذا في وإذا بحثت عن الوقت في وثائق العالم الجديد ، يمكنك

83
00:06:13,890 --> 00:06:17,790
‫أن ترى أن هناك تعويمًا يسمى الوقت بالثواني.

84
00:06:17,790 --> 00:06:21,360
‫هذا هو الذي أريده في هذه الحالة هو وقت اللعبة.

85
00:06:21,360 --> 00:06:26,040
‫لذلك إذا قمت بإبطاء الوقت أو تسريعه ، فسيتم إبطاء أو تسريع هذا أيضًا.

86
00:06:26,040 --> 00:06:29,280
‫ولكن هناك حالات لا يتأثر فيها ذلك.

87
00:06:29,580 --> 00:06:30,480
‫هناك أنواع مختلفة.

88
00:06:30,480 --> 00:06:33,570
‫لديك الوقت ، الثواني ، وقت عدم الإيقاف المؤقت ، الثواني.

89
00:06:33,570 --> 00:06:38,700
‫هناك أيضًا ثوانٍ في الوقت الفعلي ، والتي لا يتم إيقافها مؤقتًا أو تغييرها بأي شكل من الأشكال.

90
00:06:38,910 --> 00:06:40,590
‫لذلك أنا مهتم بالثواني الزمنية.

91
00:06:40,590 --> 00:06:43,710
‫لا يهم حقًا أي واحد نستخدمه لأنهم جميعًا يطفو على أي حال.

92
00:06:43,710 --> 00:06:48,360
‫لذلك سأقوم بإنشاء عوامة تسمى الوقت وتخزين وقت السهم العالمي.

93
00:06:48,360 --> 00:06:53,940
‫هناك ثوانٍ الآن باختصار ، لسنا بحاجة فعليًا إلى وضع العالم في المتغير الخاص به.

94
00:06:53,940 --> 00:06:56,790
‫إنها قصيرة جدًا بما يكفي لمجرد الاتصال بالعالم.

95
00:06:56,790 --> 00:06:57,960
‫هذا ما نفعله عادة.

96
00:06:57,960 --> 00:07:01,590
‫سوف تحصل على العالم ثم سهم الوقت ثانية مثل.

97
00:07:01,590 --> 00:07:12,420
‫الآن يمكننا عمل سجل نقول أن الوقت الحالي هو ومن ثم سنقوم بعمل نسبة مئوية من F لأننا نطبع رقم فاصلة

98
00:07:12,420 --> 00:07:19,790
‫عائمة هنا ومن ثم يمكننا أن نعطيه الوقت كمدخلات في السجل.

99
00:07:19,800 --> 00:07:28,440
‫الآن دعنا ننتقل إلى التحكم في alt f 11 للعيش في الكود ، ثم سنفتح سجل الإخراج وإرسائه.

100
00:07:29,760 --> 00:07:31,620
‫وضرب اللعب.

101
00:07:32,670 --> 00:07:39,570
‫وهناك يمكنك أن ترى أن لدينا وقتًا حاليًا يتم احتسابه بالثواني مع مرور الوقت في لعبتنا

102
00:07:39,570 --> 00:07:40,860
‫مثل ذلك.

103
00:07:40,860 --> 00:07:47,580
‫وإذا ضغطنا بالفعل على زر الإيقاف المؤقت ، ستلاحظ أن الوقت يتوقف ، وإذا ضغطنا على زر

104
00:07:47,580 --> 00:07:50,310
‫التشغيل ، فإنه يستأنف من حيث كنا.

105
00:07:50,610 --> 00:07:51,150
‫انه يريد.

106
00:07:51,150 --> 00:07:56,130
‫يمكنك تجربة استخدام الثواني في الوقت الفعلي ومعرفة ما إذا كان هذا التأثير سيحدث أم لا.

107
00:07:56,220 --> 00:07:57,690
‫لكنني لن أذهب إلى هنا.

108
00:07:57,690 --> 00:08:03,600
‫لقد أظهرنا أنه يمكننا الحصول على هذه الأشياء العالمية الجديدة ، هذا الكائن العالمي الذي

109
00:08:03,600 --> 00:08:07,980
‫نحن فيه حاليًا ويمكننا الحصول على خصائص منه باستخدام سهمنا.

110
00:08:07,980 --> 00:08:11,580
‫عامل الهاتف يربت على ظهرك وسوف أراك في المحاضرة القادمة.

