02-03-2017، 19:14
نکات مهم :
در اموزش زیر نحوه ساخت کارکتر و خروجی گرفتن و ورود ان به برنامه اموزش داده نخواهد شد
در این اموزش نحوه تنظیم AnimTree باید از قبل توسط خود شما انجام شده باشد .
خب خب واسه اینکه این کار رو شروع کنیم اول یه توضیح کوچیک باید بدم .
من واسه شروع می خوام ساده ترین ساختار واسه این اموزش رو بهتون بگم .
ما توی این اموزش از ساختار انریل تورنومنت استفاده خواهیم کرد .
خب شروع کنید
ما به سه کلاس نیاز داریم
1-کلاس مربوط به بازی
2-کلاس کنترل کننده کارکتر
3-کلاس سازنده کارکتر
شروع کنید به ساختن !!!!
ابتدا از کلاس بازی شروع می کنیو :
خب فکر نکنم این دو خط نیازی به تعریف داشته باشن . میریم بعدی
خب حالا کلاس مربوط به کنترل پلایرمون رو می سازیم
خب اینجا یه مسئله می مونه . اینه که چرا من اینجا رو خالی دادم . ببینید من می خوام که به طور پیش فرض تمامی توابع و هرچی که پلایر اصلی رو کنترل می کنه واسه این هم اعمال بشه . وگرنه نوشتن توی این کلاس نیاز به کلی مقاله و توضیحات داره .
میریم سراغ بعدی
خب اینجا چند تا مسئله می مونه که باید توضیح داد:
این خطوط باعث میشه که متغییر هایی که ما بتونیم مقادیر خودمون رو توی کلاس UTFamilyInfo جایگزین کنیم
این خطوط پایینی هم باعث میشه که متغییر هایی که ما بالا برای جایگیزینی توی کلاس UTFamilyInfo انتخاب کردیم مقدار دهی بشن
خب تموم شد .
امیدوارم این بتونه به شما کمک کنه
در اموزش زیر نحوه ساخت کارکتر و خروجی گرفتن و ورود ان به برنامه اموزش داده نخواهد شد
در این اموزش نحوه تنظیم AnimTree باید از قبل توسط خود شما انجام شده باشد .
خب خب واسه اینکه این کار رو شروع کنیم اول یه توضیح کوچیک باید بدم .
من واسه شروع می خوام ساده ترین ساختار واسه این اموزش رو بهتون بگم .
ما توی این اموزش از ساختار انریل تورنومنت استفاده خواهیم کرد .
خب شروع کنید
ما به سه کلاس نیاز داریم
1-کلاس مربوط به بازی
2-کلاس کنترل کننده کارکتر
3-کلاس سازنده کارکتر
شروع کنید به ساختن !!!!
ابتدا از کلاس بازی شروع می کنیو :
1
2
3
4
5
6
7
8
9
10
11
12
[ltr]
[/ltr]
[ltr]
[/ltr]
[ltr]
[/ltr]
2
3
4
5
6
7
8
9
10
11
12
کد:
Class MyGame Extends UTGame
[ltr]
[/ltr]
کد:
defaultProperties
کد:
}
[ltr]
[/ltr]
کد:
PlayerControllerClass=
کد:
class
کد:
' '
کد:
defaultPawnClass=Class
کد:
' '
[ltr]
[/ltr]
کد:
{
خب فکر نکنم این دو خط نیازی به تعریف داشته باشن . میریم بعدی
خب حالا کلاس مربوط به کنترل پلایرمون رو می سازیم
1
2
3
4
5
6
7
8
9
10
11
12
[ltr]
[/ltr]
[ltr]
[/ltr]
2
3
4
5
6
7
8
9
10
11
12
کد:
Class MyPlayerCo Extends UTPlayerController;
[ltr]
[/ltr]
کد:
defaultProperties
کد:
}
[ltr]
[/ltr]
کد:
{
خب اینجا یه مسئله می مونه . اینه که چرا من اینجا رو خالی دادم . ببینید من می خوام که به طور پیش فرض تمامی توابع و هرچی که پلایر اصلی رو کنترل می کنه واسه این هم اعمال بشه . وگرنه نوشتن توی این کلاس نیاز به کلی مقاله و توضیحات داره .
میریم سراغ بعدی
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
[ltr]
[/ltr]
[ltr]
[/ltr]
[ltr]
[/ltr]
[ltr]
[/ltr]
[ltr]
[/ltr]
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
کد:
var MyPawn Extends UTPawn;
[ltr]
[/ltr]
کد:
var SkeletalMesh defaultMesh;
کد:
var AnimTree defaultAnimTree;
کد:
var array<AnimSet> defaultAnimSet;
کد:
var PhysicsAsset defaultPhysicsAsset;
[ltr]
[/ltr]
کد:
simulated function SetCharacterClassFromInfo(
کد:
class
کد:
<UTFamilyInfo> Info)
کد:
{
کد:
Mesh.SetSkeletalMesh(defaultMesh);
کد:
Mesh.SetMaterial(0,defaultMaterial0);
کد:
Mesh.SetPhysicsAsset(defaultPhysicsAsset);
کد:
Mesh.AnimSets=defaultAnimSet;
کد:
Mesh.SetAnimTreeTemplate(defaultAnimTree);
[ltr]
[/ltr]
کد:
}
[ltr]
[/ltr]
کد:
defaultproperties
کد:
{
کد:
defaultMesh=SkeletalMesh
کد:
'CH_IronGuard_Male.Mesh.SK _CH_IronGuard_MaleA'
کد:
defaultAnimTree=AnimTree
کد:
'CH_AnimHuman_Tree.AT_CH_H uman'
کد:
defaultAnimSet(0)=AnimSet
کد:
'CH_AnimHuman.Anims.K_Ani mHuman_BaseMale'
کد:
defaultPhysicsAsset=PhysicsAsset
کد:
'CH_AnimCorrupt.Me sh.SK_CH_Corrupt_Male_Physics'
[ltr]
[/ltr]
کد:
}
خب اینجا چند تا مسئله می مونه که باید توضیح داد:
1
2
3
4
5
6
7
8
9
10
11
[ltr]
[/ltr]
2
3
4
5
6
7
8
9
10
11
کد:
simulated function SetCharacterClassFromInfo(
کد:
class
کد:
<UTFamilyInfo> Info)
کد:
{
کد:
Mesh.SetSkeletalMesh(defaultMesh);
کد:
Mesh.SetMaterial(0,defaultMaterial0);
کد:
Mesh.SetPhysicsAsset(defaultPhysicsAsset);
کد:
Mesh.AnimSets=defaultAnimSet;
کد:
Mesh.SetAnimTreeTemplate(defaultAnimTree);
[ltr]
[/ltr]
کد:
}
این خطوط باعث میشه که متغییر هایی که ما بتونیم مقادیر خودمون رو توی کلاس UTFamilyInfo جایگزین کنیم
این خطوط پایینی هم باعث میشه که متغییر هایی که ما بالا برای جایگیزینی توی کلاس UTFamilyInfo انتخاب کردیم مقدار دهی بشن
1
2
3
4
5
2
3
4
5
کد:
defaultMesh=SkeletalMesh
کد:
'CH_IronGuard_Male.Mesh.SK _CH_IronGuard_MaleA'
کد:
defaultAnimTree=AnimTree
کد:
'CH_AnimHuman_Tree.AT_CH_H uman'
کد:
defaultAnimSet(0)=AnimSet
کد:
'CH_AnimHuman.Anims.K_Ani mHuman_BaseMale'
کد:
defaultPhysicsAsset=PhysicsAsset
کد:
'CH_AnimCorrupt.Me sh.SK_CH_Corrupt_Male_Physics'
خب تموم شد .
امیدوارم این بتونه به شما کمک کنه