8 ابزار Open Source برای توسعه گیم

سه شنبه 27 آذر 1397

امروزه از ابزارهای توسعه گیم اپن سورس برای تعدادی از گیم های پیچیده استفاده می شود. اپن سورس در توسعه گیم، باعث فراهم شدن کیفیت بالا و امنیت خوب می شود.

 8 ابزار Open Source برای توسعه گیم

توسعه دهندگان می توانند با توجه به نیازمندیهای خود از میان ابزارهای توسعه گیم اپن سورس (اپن سورس یا متن باز یا منبع باز: نرم افزارهایی که تمامی افراد می توانند از آن استفاده کنند و در آن تغییراتی ایجاد کنند) که در این مقاله ارائه شده است، یکی را انتخاب کنند. به طور کلی در جامعه و در عرصه تکنولوژی، به توسعه گیم اپن سورس به عنوان یک سرگرمی عالی نگاه شده است. پیشرفت های سریع در تکنولوژی، همراه با نوآوری های بیشماری که هر روزه راه اندازی می شود، باعث شده است متخصصان تکنولوژی و گیمرها در یک موقعیت برد-برد قرار بگیرند. اپن سورس در توسعه گیم، باعث فراهم شدن کیفیت بالا و امنیت خوب شده است. پس تعجبی ندارد که امروزه از پلتفرم های اپن سورس برای تعدادی از گیم های پیچیده و موفق استفاده می شود.

برخی از مزایای پلتفرم های توسعه گیم اپن سورس

پلتفرم های گیم اپن سورس مزیت های بسیار زیادی در دنیای گیم و گیمینگ دارند که برخی از آنها شامل موارد زیر می شود:

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

خداحافظی با لایسنس: با وجود پلتفرم های کاملا اپن سورس، دیگر نیازی به هیچ نوع لایسنسی نخواهد بود. پس جدای از اینکه هزینه ای که برای لایسنس پرداخت می کردید حذف می شود، مسائل دیگری مانند ردیابی و نظارت نیز با این پلتفرم های اپن سورس حذف می شود.

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

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

GDevelop

GDevelop یک نرم افزار سازنده گیم چند پلتفرمی اپن سورس است که برای تازه کاران طراحی شده است. این پلتفرم اپن سورس، هیچ  نوعی نیازی به هر نوع مهارت برنامه نویسی ندارد. GDevelop یک پلتفرم اپن سورس عالی برای توسعه همه نوع گیم های 2 بعدی و 3 بعدی است. این پلتفرم شامل چندین ادیتور است که امکان ساخت گیم یا بازی را می دهد. لیست ادیتورها شامل موارد زیر می شود:

مدیر پروژه: مدیر پروژه، گیم های باز را در ادیتور نشان می دهد و به توسعه دهندگان اجازه می دهد تا صحنه ها را ایجاد و سازماندهی کنند. کاربران می توانند صحنه ای که نیاز به ادیت دارد را انتخاب کنند و پارامترهایی همچون عنوان، رنگ پشت زمینه، متن و غیره را اصلاح کنند. مدیر پروژه همچنین به ادیتور بانک تصاویر گیم ها دسترسی ایجاد می کند و به کاربر اجازه می دهد حد قابل استفاده توسط بازی را مشخص کند.

ادیتور بانک تصاویر: ادیتور بانک تصاویر به کاربر اجازه می دهد تا از طریق اشیاء همه نوع تصاویر را مدیریت کند. این گزینه از شفافیتی که در تصویر است پشتیبانی می کند.

ادیتور صحنه: ادیتور صحنه به کاربران اجازه می دهد صحنه را در ابتدا تنظیم کنند و سپس اشیا را در صحنه و در موقعیتی خاص قرار دهند.

ادیتور شی: ادیتور شی اجازه می دهد اشیائی مانند متن و باکس 3D در صحنه ایجاد کنید. آن همچنین شی «فرستنده ذره/Particle Transmitter» دارد که به توسعه دهندگان اجازه می دهد در بازی به راحتی از ذرات استفاده کنند.

ادیتور لایه: ادیتور لایه به کاربران اجازه می دهد تا سطحی را مدیریت کنند که بدون حرکت باقی می ماند و در عین حال به دوربین بقیه بازی اجازه می دهد حرکت کند یا زوم کند.

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

این وقایع توسط GDevelop در کدها ایجاد می شوند. مکانیزم GDevelop  آسان و مشابه نوشتن کد C + + می باشد.

ویژگی ها

GDevelop حاوی اشیا متنوعی است که به آسانی قابل استفاده هستند. این اشیاء شامل اشیا متن، باکس های سه بعدی، شکل های سفارشی با Shape Painter، نورهای متحرک و سایه ها، ماسک های برخورد متداول و غیره می شود.

GDevelop به اشیاء از طریق موتور فیزیک، راهیابی، حرکات بالا پایین، موتور پلتفرمر، اشیاء قابل کشیدن و خودکار سازی وظایف، ویژگی هایی اضافه می کند.

GDevelop از طریق ادیتور صحنه، لایه های چندگانه، دیباگر و پروفایل های عملکرد، ویژگی های طراحی پیشرفته و مشترک ارائه می دهد.

ویژگی های دیگر GDevelop شامل پشتیبانی از HTML5، صدا و افکت های موسیقی و یکپارچگی با کیبورد می شود.

آخرین نسخه: 4.0.94

Godot Engine

Godot Engine یک موتور توسعه گیم چند پلتفرمی بسیار قوی است که از توسعه بازی 2 بعدی و 3 بعدی، با استفاده از یک رابطه مشترک پشتیبانی می کند. این پلتفرم از ویندوز، OS X، لینوکس و BSD برای توسعه بازی هایی پشتیبانی می کند که در کامپیوتر شخصی و کنسول اجرا می شوند. این پلتفرم اپن سورس با ابزارهای متنوع زیادی ترکیب شده است، برای توسعه دهندگان هزاران حق انتخاب فراهم می کند و حتی نیاز به یک ابزار سوم را حذف می کند. Godot Engine با استفاده از مفهوم یک درخت با صحنه های تو در تو ساخته شده است.

بازی هایی که با Godot ساخته شده اند، یا با زبان C + + یا با یک زبان آغازگر سفارشی بنام GDScript نوشته شده اند که یک زبان متحرک و سطح بالا بوده و شباهت های زیادی به Python دارد. زبان GDScript به خوبی برای موتور Godot تنظیم و بهینه شده است. پلتفرم اپن سورس Godot از یک قدرت ادیتور متن بهره می برد که برای توسعه دهندگان، ویژگی های متنوعی همچون تو رفتگی خودکار، مشخص کردن ترکیب و حتی تکمیل کد فراهم کرده است. این پلتفرم همچنین یک دیباگر دارد تا نقاط انفصال و مراحل برنامه را فراهم کند.

پلتفرم اپن سورس Godot از موتور گرافیکی OpenGL ES 2.0 استفاده می کند که ویژگی های زیادی همچون شفافیت، مسیردهی طبیعی، سایه های متحرک و افکت های بعد از پردازش متنوع، همچون FXAA، DOF و HDR  دارد.

ویژگی ها

رابط خوب و تمیز: یک ادیتور بصری، یک سیستم صحنه متحرک، یک رابط ایجاد محتوای کاربر پسند، یک ابزار ادیت سایه بصری و ادیت زنده در گوشی های موبایل دارد.

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

یک موتور انیمیشن انعطاف پذیر برای بازی ها است که توسط ادیتور انیمیشن بصری، انیمیشن مبنی بر فریم و حمایت درخت انیمیشن توانمند شده است.

ویژگی های دیگر شامل یک زبان مشابه Python و یک دیباگر قوی و یک زبان رابط برنامه نویسی کاربردی آسان C + + می شود.

آخرین نسخه: 2.1.3

Cocos2d-x

Cocos2d-x یک پلتفرم توسعه گیم اپن سورس است که تحت لیسانس MIT در دسترس قرار گرفته است. این پلتفرم به توسعه دهندگان اجازه می دهد تا بازی ها، اپلیکیشن ها و برنامه های تعاملی متنوعی بسازند. Cocos2d-x به توسعه دهندگان کمک می کند تا از زبان های C + + ، Lua و JavaScript برای آرایش چند پلتفرمی در iOS، اندروید، ویندوز فون، OS X و لینوکس استفاده کنند.

Cocos2d-x به خوبی برای گرافیک 2 بعدی با پشتیبانی از OpenGL بهینه شده است. این پلتفرم هزاران ویژگی دارد. برخی از ویژگی های آن عبارتند از: سیستم های مختصات، افکت های بصری، تکسچر، وسایل چند رزولوشنی و غیره.

ویژگی ها

انیمیشن: این پلتفرم اپن سورس حق انتخاب انیمیشن های زیادی فراهم می کند که با استفاده از یک سری فعالیت ها و تایمرها بر بلوک های پیکسلی کار می کند. آن با استفاده از سایه ها و غیره، از انیمیشن افکت های ذره و افکت های فیلتر کننده تصویر پشتیبانی می کند.

GUI آسان: این پلتفرم اپن سورس شامل یک GUI آسان می شود که با تکست باکس ها، برچسب ها، منوها، دکمه ها و المان های مشترک ارتباط دارد.

موتور فیزیک: این پلتفرم از موتورهای فیزیک 2 بعدی مانند BOX2D و Chipmunk پشتیبانی می کند.

صدا: این پلتفرم از افکت های صدا و موسیقی پس زمینه پشتیبانی می کند.

حمایت شبکه: HTTP با SSL، WebSocket API ، XMLHttpRequest API و غیره.

آخرین نسخه: 3.15.1

Delta Engine

Delta Engine یک موتور توسعه گیم و برنامه 2 بعدی و 3 بعدی اپن سورس است که توسط شرکت موتور دلتا پشتیبانی می شود. اپلیکیشن ها و بازی ها را می توان از طریق Visual Studio.net یا ادیتور موتور دلتا به آسانی توسعه داد. پلتفرم اپن سورس Delta Engine از زبان ها و قالب های مختلفی مانند C# OpenGL، C# OpenTK، C# GLFW، C# XNA، C# SharpDX، C# MonoGame، Linux OpenGL، Mac OpenGL و WebGl پشتیبانی می کند. این پلتفرم اپن سورس از سیستم عامل های متنوعی همچون ویندوز OS، OS X، لینوکس، اندروید، Android TV پشتیبانی می کند.

ویژگی ها

از ویژگی های 3 بعدی مانند وارد کردن مدل 3 بعدی، ادیتور افکت ذره و غیره پشتیبانی می کند.

محتواهایی مانند تصاویر، صداها، موسیقی و مدل های 3 بعدی مستقیما با استفاده از موتور دلتا ذخیره می شود.

از محرک فیزیکی پشتیبانی می کند؛ بیشتر کدها برای هر دو محرک 2 بعدی و 3 بعدی قابل تعویض است.

از یکپارچگی کتابخانه ها و فریم ورک های خارجی مانند کتابخانه انیمیشن Sprites 2 بعدی پشتیبانی می کند.

ابزار سازنده اپلیکیشن که در ادیتور ترکیب شده است از ساخت، آرایش و اجرای برنامه ها در یک گوشی موبایل پشتیبانی می کند.

آخرین نسخه: 0.9.11

Starling

Starling یک فریم ورک توسعه گیم 2 بعدی اپن سورس است که از هر دو پلتفرم دسکتاپ و موبایل پشتیبانی می کند. Starling یک کتابخانه ActionScript 3 خالص است که بسیار مشابه با معماری سنتی فلش (Flash) می باشد. این پلتفرم اپن سورس، معماری لیست نمایش فلش را در راس سخت افزار گرافیک سرعت یافته، از نو خلق می کند.

Starling یک قالب خیلی فشرده است، اما شامل پکیج ها و کلاس های متنوع می شود. در ادامه شاهد مجموعه ای از ابزارها خواهید بود که برای توسعه برنامه با پلتفرم اپن سورس Starling یکپارچه شده اند:

نمایش برنامه نویسی: هر شی یک شی نمایشگر است.

تصاویر و تکسچرها

متن متحرک (داینامیک)

مدیریت واقعه (Event handling)

انیمیشن

مدیریت دارائی (Asset management)

افکت های خاص

سودمندی ها

ویژگی ها

این پلتفرم اپن سورس بر پایه Stage3D است و از چند پلتفرم مانند اندروید، iOS، مرورگرهای وب، OS X و غیره پشتیبانی می کند.

برحسب CPU، حافظه و GPU، نیازمند به پیکربندی کمی است.

مصرف باتری کمتری دارد.

از طریق درخت های سلسله مراتبی (یعنی رابطه والد فرزندی) سازماندنی شی موثری دارد.

با استفاده از ActionScript، سیستم واقعه بسیار قوی و سودمندی دارد.

از اطلس های تکستچر، فیلترها، ماسک های استنسیل، مدهای مخلوط، Tweens، لمس چندگانه، فونت های بیت مپ (Bitmap) و افکت های 3 بعدی پشتیبانی می کند.

آخرین نسخه: 2.2

Panda 3D

پلتفرم Panda 3D یک فریم ورک اپن سورس برای رندرینگ و توسعه بازی های 3 بعدی است که از طریق زبان های برنامه نویسی C + + و Python کار می کند. تمام بخش های موتور گیم با زبان C + + نوشته شده است و از ژنراتورهای پوشاننده خودکار استفاده می کند تا عاملیت کامل موتور را از طریق رابط Python در معرض دید قرار دهد. این پلتفرم اپن سورس از OpenGL و DirectX پشتیبانی می کند. پلتفرم اپن سورس Panda 3D، شامل ابزارهای متنوعی مانند جستجوکننده گراف، نظارت بر عملکرد، بهینه سازی انیمیشن و غیره می شود.

ویژگی ها

نصب این پلتفرم اپن سورس رایگان و آسان است و از ویندوز، OS X و لینوکس پشتیبانی می کند.

با زبان Python کاملا ترکیب شده است و از طریق زبان C + + به خوبی بهینه سازی می شود.

با ویژگی های متنوع OpenGL و DirectX، همچون GLSL همراه می شود، یک رابط قوی بین سایه زن ها و موتور دارد و از رندر تکسچر و هدف های رندر چندگانه پشتیبانی می کند.

ویژگی های دیگر این پلتفرم اپن سورس شامل تولید سایه، خط 3 بعدی، پشتیبانی برای  OpenAL Audio Engine، Engine FMOD Audio و Engine Miles Audio می شود.

برای موتور فیزیک Bullet، موتور فیزیکی ODE و موتور فیزیک PhysX نیز پشتیبان دارد.

آخرین نسخه: 1.9.4

Superpowers

Superpowers یک پلتفرم قوی، اپن سورس و توسعه رایگان است که به توسعه دهندگان اجازه می دهد بازی های 2 بعدی و 3 بعدی کاملا سفارشی را ایجاد کنند و بسیار انعطاف پذیر می باشد. Superpowers یک ابزار توسعه بازی چند پلتفرمی اپن سورس است و از ویندوز، لینوکس و سیستم های پردازنده OS X پشتیبانی می کند. این پلتفرم از زبان Typescript استفاده می کند تا منطق گیمینگ را بنویسد.

ویژگی ها

رابط GUI آسان و تنظیم شده، حتی به تازه واردان کمک می کند تا سریعا توسعه بازی را یاد بگیرند.

یک ادیتور Typescript قوی دارد که ویژگی هایی همچون ترکیب، کد خود اجرا و گزارش خطا دارد.

همراه با مدل های 3 بعدی، افکت های صدا، فونت ها و موسیقی می آید.

کتابخانه درونی گیم ها و مثال ها، همچون یک پلتفرم قوی برای تازه کاران عمل می کند.

آخرین نسخه: 4.0

MonoGame

MonoGame یک نرم افزار رایگان قوی است که توسعه دهندگان مبنی بر ویندوز و گیمرهای ویندوزفون، از آن برای اجرا کردن بر روی سیستم های دیگر استفاده می کنند. این نرم افزار اپن سورس یک ابزار توسعه بازی چند پلتفرمی است و از سیستم عامل های لینوکس، Os X، اندروید، موبایل، پلی استیشن، Nintendo Switch و غیره پشتیبانی می کند.

MonoGame اساسا یک اجرا از فریم ورک اپن سورس Microsoft XNA 4 می باشد. هدف ابتدایی پلتفرم MonoGame اپن سورس این است که «یکبار بنویسید، همه جا بازی کنید».

در ادامه تکنولوژی هایی آورده شده است که به توانمندی های پلتفرم چندسکویی MonoGame  قدرت می دهد:

Open TK: یک کتابخانه سطح پایین C# است که OpenGL، OpenCL و OpenAL را برای گرافیک 3 بعدی ترکیب می کند.

SharpDX: یک اجراسازی اپن سورس DirectX API برای .NET است که از عملکرد بالای 2 بعدی و 3 بعدی بازی ها و صدای زمان واقعی پشتیبانی می کند.

Lidgren.Network: این یک کتابخانه شبکه برای فریم ورک .NET است که از سوکت UDP استفاده می کند تا برای اتصال به مشتری و سرور و ارسال و خواندن پیام ها، رابط برنامه نویسی کاربردی فراهم کند.

ویژگی ها

از طریق زبان های C# و .NET MonoGame به توسعه دهندگان این قدرت را می دهد که نوعی کدهای بازی بنویسند که قابل اعتماد بوده و عملکرد بالایی دارد.

کدهای اپن سورس، ابزار تغییرات و حتی ارتباط به پلتفرم های جدید را فراهم می کند.

MonoGame با بیش از هزار بازی گروه بندی شده است و می توان از آن برای توسعه بازی های گران استفاده کرد.

آخرین نسخه: 3.6

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید