تبلیغات :
آکوستیک ، فوم شانه تخم مرغی، صداگیر ماینر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 2 12 آخرآخر
نمايش نتايج 1 به 10 از 13

نام تاپيک: آموزشهای پیوسته UnrealScript ( قدم به قدم مقدماتی تا پیشرفته )

  1. #1
    ناظر انجمن توسعه و ساخت بازی Reza Azimy_RW's Avatar
    تاريخ عضويت
    Jun 2008
    محل سكونت
    بی سرزمین تر از باد
    پست ها
    3,269

    پيش فرض آموزشهای پیوسته UnrealScript ( قدم به قدم مقدماتی تا پیشرفته )

    سلام دوستان اول از همه که انجمن چقدر بد استایل شده دوم اینکه تصمیم گرفتم از مقدماتی تا پیشرفته اموزشهای آنریل اسکریپت رو قرار بدم با توضیحات 100 درصد کامل که هر کسی متوجه بشه مثل بقیه آموزشهای روی نت هم نیست که وسط کار ول بشه و ادامه پیدا نکنه تا پیشرفته مطمینا" ادامه پیدا میکنه هر اموزش رو به صورت یه پست جدا توی تایپیک قرار میدم
    فقط یکم رسمی تایپ میکنم چون میخام جاهای دیگه هم بزارم اموزشا رو

    موفق باشین
    Last edited by Reza Azimy_RW; 21-05-2012 at 20:26.

  2. 10 کاربر از Reza Azimy_RW بخاطر این مطلب مفید تشکر کرده اند


  3. #2
    ناظر انجمن توسعه و ساخت بازی Reza Azimy_RW's Avatar
    تاريخ عضويت
    Jun 2008
    محل سكونت
    بی سرزمین تر از باد
    پست ها
    3,269

    پيش فرض

    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

    برای کد نویسی در این انجین باید یک سری مسایل را رعایت کنید تا کدهای شما توسط انجین تشخیص داده بشه
    کدهایی که نوشته میشه مستقیما" اجرا نخواهند شد و باید موقع اجرای انجین کامپایل شوند
    برای شروع کد نویسی به مسیری که یو دی کی در آن نصب است رفته و به مسیر Development\Src بروید و یک پوشه با نام دلخواه انتخاب کنید
    سپس یک پوشه دیگر داخل این پوشه با نام Classes ایجاد کنید اکنون میتوانید کدهای خود را داخل این پوشه ایجاد کنید
    سپس برای اینکه انجین متوجه بشه پوشه ای یا یک سری کد جدید اضافه شده به مسیر UDKGame\Config رفته و فایل DefaultEngine.ini را باز کنید و در زیر قسمت :
    [Engine.ScriptPackages]
    این خط کد را اضافه کنید :
    +NonNativePackages=MyCodes
    با این تفاوت که به جای MyCodes نام پوشه ای که ایجاد کردید را قرار دهید

  4. 6 کاربر از Reza Azimy_RW بخاطر این مطلب مفید تشکر کرده اند


  5. #3
    ناظر انجمن توسعه و ساخت بازی Reza Azimy_RW's Avatar
    تاريخ عضويت
    Jun 2008
    محل سكونت
    بی سرزمین تر از باد
    پست ها
    3,269

    پيش فرض

    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

    در این بخش از آموزش قصد داریم یک کلاس ساده بنویسیم که در اون فانکشن PostBeginPlay رو معرفی میکنیم . خاصیت این فانکشن اینه که اولین فانکشنی هست که موقع اجرای بازی فراخانی میشه و فقط یک بار این کار انجام میشه .
    کلاس ما به این شکل هست که توضیحات رو در ادامه خواهم داد :
    class RWScript extends Actor
    placeable;

    function PostBeginPlay()
    {
    `log("RW Game And Design");
    }

    DefaultProperties
    {
    begin object class="SpriteComponent" Name=RWSprite
    Sprite=Texture2D'EditorResources.S_NavP'
    HiddenGame=true;
    end object
    Components.Add(RWSprite)
    }
    توضیحات :
    class RWScript extends Actor
    placeable;
    در این قسمت کلاس ما از اکتور مشتق گرفته شده تا بتونیم کلاسمون رو از بخش Actor Class در اینجین وارد مرحله یا لولمون بکنیم

    function PostBeginPlay()
    {
    `log("RW Game And Design");
    }
    شکل کلی این فانکشن به این صورت هست که در اینجا ما متن RW Game And Design رو داخل اون نوشتیم که داخل فایل Launch.log در مسیر \UDKGame\Logs بتونیم متن رو ببینیم پس از اجرای بازی


    DefaultProperties
    {
    begin object class="SpriteComponent" Name=RWSprite
    Sprite=Texture2D'EditorResources.S_NavP'
    HiddenGame=true;
    end object
    Components.Add(RWSprite)
    }
    این قسمت هم در کل مییگه یه اسپرات برای شکل اکتورمون ایجاد شه و در بازی هم نمایش داده نشه و فقط بشه اون رو در ادیتور دید

  6. 6 کاربر از Reza Azimy_RW بخاطر این مطلب مفید تشکر کرده اند


  7. #4
    ناظر انجمن توسعه و ساخت بازی Reza Azimy_RW's Avatar
    تاريخ عضويت
    Jun 2008
    محل سكونت
    بی سرزمین تر از باد
    پست ها
    3,269

    پيش فرض

    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

    در این اموزش قصد داریم به معرفی کلی متغیرها و معرفی اختصاصی دو متغیر بپردازیم

    متغیرهای int :
    این نوع از متغیرها که به این شکل تعریف میشوند :
    var int RWGame;
    متغیرهایی هستند که فقط عدد صحیح میپذیرند . مثلا : 1-2 -3 و ...

    Array ها :
    متغیرهایی هستند که چند متغیر را در خود جای میدهند . یعنی در کل اگر ما کد زیر را بنویسیم :
    var int RWGame[4]
    در اینجا ما چهار متغیر از نوع int با نامهای :
    RWGame[0]
    RWGame[1]
    RWGame[2]
    RWGame[3]
    ایجاد کردیم که میتوانیم به تک تک انها مغدار جدا گانه ای را بدهیم . در کل استفاده از ارای ها بیشتر برای خلاصه نویسی و دسترسی سریعتره

    به عنوان مثال کدهای زیر را ببینید :

    class AwesomeActor extends Actor
    placeable;
    var int Baskets[4];
    var int TestNumber;
    function PostBeginPlay()
    {
    TestNumber = 2;
    Baskets[0] = 2;
    Baskets[1] = 13;
    Baskets[2] = 4;
    Baskets[3] = 1;
    'log("Test Basket:" @ Baskets[TestNumber]);
    }
    defaultproperties
    {
    Begin Object class="SpriteComponent" Name=Sprite
    Sprite=Texture2D'EditorResources.S_NavP'
    HiddenGame=True
    End Object
    Components.Add(Sprite)
    }



    در این کدها خروجی ما ScriptLog: Test Basket: 4 است
    موفق باشید

  8. 6 کاربر از Reza Azimy_RW بخاطر این مطلب مفید تشکر کرده اند


  9. #5
    کاربر فعال انجمن توسعه و ساخت بازی parvizamd's Avatar
    تاريخ عضويت
    Nov 2009
    محل سكونت
    بوشهر
    پست ها
    3,115

    پيش فرض

    سلام دوستان اول از همه که انجمن چقدر بد استایل شده دوم اینکه تصمیم گرفتم از مقدماتی تا پیشرفته اموزشهای آنریل اسکریپت رو قرار بدم با توضیحات 100 درصد کامل که هر کسی متوجه بشه مثل بقیه آموزشهای روی نت هم نیست که وسط کار ول بشه و ادامه پیدا نکنه تا پیشرفته مطمینا" ادامه پیدا میکنه هر اموزش رو به صورت یه پست جدا توی تایپیک قرار میدم
    فقط یکم رسمی تایپ میکنم چون میخام جاهای دیگه هم بزارم اموزشا رو

    موفق باشین
    آقا این چه کاری بود انصافا حالم از این استایل بهم می خوره...
    دمتت گرم رضا ادامه بده.

  10. 4 کاربر از parvizamd بخاطر این مطلب مفید تشکر کرده اند


  11. #6
    ناظر انجمن توسعه و ساخت بازی Reza Azimy_RW's Avatar
    تاريخ عضويت
    Jun 2008
    محل سكونت
    بی سرزمین تر از باد
    پست ها
    3,269

    پيش فرض

    قربونت پرویز

    struct ها
    یه توضیح کلی در این مورد میدم و میگذریم از این بخش چون فعلا" بهش نیازی نداریم
    یک نمونه struct :
    struct Cylinder
    {
    var float Radius, Height;
    };
    فرض میگیریم این در یک کلاس نوشته شده حالا اگه بخوایم از متغیر Height که داخل اون نوشته شده استفاده کنیم به این طریق عمل میکنیم :
    var Cylinder MyCylinder;
    نمیدونم چجوری توضیح بدم ببینید اول ما میخایم یه متغیر تعریف کنیم که تمامی خصوصیات Struct رو داشته باشه پس مینویسیم Var Cylinder یعنی قسمت اولش بعد باید بریزیمش تو یه متغیر جدید تا بتونیم ازش استفاده کنیم اون متغیر هم هست MyCylinder
    بعد مثلا" الان میخایم متغیر Radius رو از داخل Struct مون رو ازش استفاده کنیم برای این کار کد بعد از کد قبلی کد زیر رو مینویسیم :
    MyCylinder.Radius = 50;
    موفق باشید

  12. 6 کاربر از Reza Azimy_RW بخاطر این مطلب مفید تشکر کرده اند


  13. #7
    ناظر انجمن توسعه و ساخت بازی Reza Azimy_RW's Avatar
    تاريخ عضويت
    Jun 2008
    محل سكونت
    بی سرزمین تر از باد
    پست ها
    3,269

    پيش فرض

    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
    خوب اول اینکه وکتورها چی هستن ... در فضای دو بعدی دو مختصات داریم x و y که محل قرار گیری شی رو تعیین میکنه . در فضای سه بعدی یه مختصات دیگه اضافه میشه که z هست و مربوط میشه به عمق
    این سه مختصات x و y و z رو میتونیم در یک وکتور نگهداری یا تعیین کنیم .
    حالا میرسیم به بخش عملی
    این کدها رو داخل یک کلاس بنویسید :

    Class RWScript extends Actor
    placeable;
    var vector MyLocation;
    function PostBeginPlay()
    {
    MyLocation.Z = 64.0;
    SetLocation(Location + MyLocation);
    }
    defaultproperties
    {
    Begin Object Class=SpriteComponent Name=Sprite
    Sprite=Texture2D'EditorResources.S_NavP'
    End Object
    Components.Add(Sprite)
    }
    توضیحات :
    ابتدا یک وکتور تعریف شده با نام MyLocation:
    var vector MyLocation;
    سپس در یک تابع PostBeginPlay که همونطور که قبلا توضیح دادیم یک بار اول بازی اجرا میشه میخایم بگیم که همون اول بازی آبجکت ما به اندازه 64 بالا بره . پس در این فانکشن مینویسیم :
    ابتدا تعیین مقدار z وکتورمون یعنی MyLocation :
    MyLocation.Z = 64.0;
    سپس با استفاده کد زیر ابتدا بمیگیم SetLocation که این به ما میگه محل اکتورمون رو ست کن به ....
    بعد میبینید که داخل پرانتز نوشته شده Location + MyLocation که میگه Location یا محل فعلی قرار گیری آبجکت با محلی که ماتعیین کردیم ( MyLocation) جمع بشه یعنی اضافه بشه به محل فعلی .
    SetLocation(Location + MyLocation);
    در این صورت در نتیجه کار ما میبینیم که هر جایی اکتورمون رو داخل ادیتور قرار بدیم وقتی بازی رو اجرا کردیم به اندازه مختصاتی که وارد کردیم یعنی 64 بالا تر میره

    معرفی ایونت Tick :
    در ادامه همین آموزش میخایم ایونت Tick رو هم معرفی کنیم . Tick ایونتی هست که در هر لحظه فراخانی میشه . برای بهتر درک کردن مفهموم این کلاس رو بنویسید :
    Class RWScript extends Actor
    placeable;

    var vector LocationOffset;

    Event Tick(float deltaTime)
    {
    LocationOffset.Z = 0.1;
    SetLocation(Location + LocationOffset);
    }

    defaultproperties
    {
    Begin Object Class=SpriteComponent Name=Sprite
    Sprite=Texture2D'EditorResources.S_NavP'
    End Object
    Components.Add(Sprite)
    }
    حالا با قرار دادن اکتورمون در صحنه و اجرای بازی میبینیم که اکتورمون آروم آروم به سمت بالا حرکت میکنه
    چند تا اموزش پشت سر هم نوشتم چون تو روزهای آینده درگیرم نمیتونم آموزش بنویسم
    موفق باشین

  14. 5 کاربر از Reza Azimy_RW بخاطر این مطلب مفید تشکر کرده اند


  15. #8
    پروفشنال armin_555's Avatar
    تاريخ عضويت
    Apr 2010
    محل سكونت
    Minas Tirith
    پست ها
    977

    پيش فرض

    من UDK کار نمیکنم ولی توضیحاتت خیلی خوبن.
    خسته نباشی.
    منم حالم از این استایل بهم میخوره.
    مگه قبلا چه ایرادی داشت که اینجوریش کردن؟؟!!!

  16. 4 کاربر از armin_555 بخاطر این مطلب مفید تشکر کرده اند


  17. #9
    ناظر انجمن توسعه و ساخت بازی Reza Azimy_RW's Avatar
    تاريخ عضويت
    Jun 2008
    محل سكونت
    بی سرزمین تر از باد
    پست ها
    3,269

    پيش فرض

    سلام دوستان
    اموزشها رو پی دی اف کردم واسه دانلود که 40 صفحه شده که حدود 10 صفحه همین اموزشهاس بقیش جدیده
    از اینجا دانلود کنید فقط کسی دانلود کرد نظرشو بگه :
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

  18. 3 کاربر از Reza Azimy_RW بخاطر این مطلب مفید تشکر کرده اند


  19. #10
    پروفشنال aliscan's Avatar
    تاريخ عضويت
    Jun 2008
    محل سكونت
    ♥کرمـــان♥
    پست ها
    726

    پيش فرض

    سلام

    دستت درد نکنه رضا جان،حیفم اومد فقط تشکر خالی بزنم و پست ندم.عالی بود آموزش،امیدوارم توانش رو داشته باشی و بخش های بعدیش رو هم آموزش بدی.

    خسته نباشـــــــــی

  20. 3 کاربر از aliscan بخاطر این مطلب مفید تشکر کرده اند


صفحه 1 از 2 12 آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •