Split Screen - اسپلیت اسکرین
دوستان سلام
حتما تا حالا بازیهایی رو دیدین که صفحه ی بازی رو برای پلیر های مختلف 2، 3 و یا 4 قسمت می کنه که همه بتونن تو یه سیستم و با یه مانیتور بازی کنن. بیشتر بازی های ماشینی و موتوری ازش استفاده می کنن و یه تعدادی هم از بازی های اکشن.
توی بازی های Showcase سایت UDK یه بازی هست به نام Dungeon Defence که از این ویژگی برای بازی استفاده کرده و تا 4 پلیر رو ساپورت می کنه.:21:
در صورتی که می خواین این ویژگی رو برای بازیتون بزارین، توضیحات زیر رو بخونین. فقط یه نکته رو بگم و اون اینکه این پست برای آموزش کامل نیست، صرفا یه راهنما هست برای اینکه از کجا شروع کنین، پس اگه خواستین ازش استفاده کنین باید خودتون جزئیاتشو در بیارین.
خب برای اینکه این قابلیت رو اضافه کنین، نیاز دارین یه کلاس جدید بنویسین که از کلاس GameViewportClient مشتق شده.
تو کلاس مذکور یه Enum هست به نام ESplitScreenType که انواع قابل استفاده رو لیست کرده:
کد:
enum ESplitScreenType
{
eSST_NONE, // No split
eSST_2P_HORIZONTAL, // 2 player horizontal split
eSST_2P_VERTICAL, // 2 player vertical split
eSST_3P_FAVOR_TOP, // 3 Player split with 1 player on top and 2 on bottom
eSST_3P_FAVOR_BOTTOM, // 3 Player split with 1 player on bottom and 2 on top
eSST_4P, // 4 Player split
};
تو اون کلاس یه متغیر به نام ActiveSplitscreenType از نوع این Enum تعریف شده. که شما می تونین تو کلاس خودتون هر کدوم از انواع رو خواستین توش قرار بدین.:5:
برای جزئیات بیشتر و مرتبط کردن این کلاس با بازی خودتون حتما باید مثال موجود تو بازی Dungeon Defence رو مطالعه کنین:
کد:
http://www.udk.com/showcase-dungeon-defense
سورس کامل بازی Dungeon Defence رو می تونین رایگان از اینجا بگیرین:
کد:
http://download.udk.com/blog/dungeon_defense_source_final.zip
البته حجم این فایل بیش از 400 مگ هست. برای دوستانی که نمی تونن این حجم رو دانلود کنن فایل زیر رو قرار دادم. این فایل حدود 300 کیلو هست و فقط کدهای Unreal Script رو داره که البته برای این آموزش کافیه:
کد:
http://farshad12.persiangig.com/document/Dungeon%20Defence%20Src.rar
سورس رو که دانلود کردین، توی شاخه ی Src\UDKGame\Classes یه کلاس هست به نام DunDefViewportClient که باید کامل مطالعه کنین. البته برای ارتباطش با بازی لازمه به کلاس های دیگه هم یه سری بزنین.
امیدوارم به دردتون بخوره.:8: فعلا بای.