موتور بازی سازی godot
فهرست مطالب
آخرین به روزرسانی در 05/02/2024
در این مقاله قصد داریم در رابطه با موتور بازی سازی godot صحبت کنیم.
شاید این موتور بازی سازی برای شما ناشناخته باشد و تا به حال اسم آن را نشنیده باشید
اما ما در ادامه به معرفی کامل آن همراه با مزایا و معایب به علاوه ی ، دلایل انتخاب آن را
خواهیم گفت پس با ما همراه باشید.
مقدمه ای بر موتور بازی سازی godot
Godot Engine یک موتور بازی رو به رشد است که محبوبیت آن به ویژه در بین توسعه دهندگان بازی در حال افزایش است.
گودو کاملا رایگان است و یادگیری آن نیز بسیار آسان است.
Godot یک موتور بازی رایگان و متن باز است که برای توسعه بازی های دو بعدی و سه بعدی ساخته شده است.
این موتور تحت مجوز MIT است. بنیانگذاران گودو با یک جامعه ی بسیار گسترده به صورت متداوم در حال توسعه ی این موتور قدرتمند می باشند.
پروژه های نرم افزاری رایگان و متن باز اغلب به منابع مالی خارجی متکی هستند.
گودو به حامیان خارجی و حامیان Patreon متکی است.
گودو در حال تبدیل شدن به یک انتخاب محبوب است.
این در واقع ششمین موتور بازی پر استفاده در Itch.io در آوریل امسال شد و از RPG Maker پیشی گرفت.
موتور گودو چه کار می کند؟
Godot Engine با تعداد زیادی ابزار داخلی ارائه می شود که اصول اولیه توسعه بازی را برای شما انجام می دهد، به طوری که می توانید بر ساخت بازی ها تمرکز کنید نه ابزارهای توسعه.
در اینجا برخی از ویژگی های داخلی وجود دارد که گودو را منحصر به فرد می کند.
ویژگی های موتور godot عبارتند از :
Built-In Nodes for Everything :
گودو دارای صدها Nodes داخلی است که آماده استفاده برای همه چیز در بازی شما هستند.
گودو دارای Nodes هایی برای گرافیک، صداها، رابط های کاربری، دوربین ها، انیمیشن ها، کاراکترها و خیلی چیزهای دیگر است.
این Nodes ها دارای عملکرد داخلی هستند که به شما امکان میدهد از کدنویسی های طولانی و کلاس های متنوع خودداری کنید.
Nodes داخلی گودو قبلاً این کار را برای شما انجام داده اند.
و بهترین بخش این است که در صورت تمایل می توانید آنها را با استفاده از اسکریپت های سفارشی نیز توسعه دهید.
Flexible Scene System :
گودو به شما امکان میدهد صحنههایی از Nodes متعدد بسازید و هر طور که میخواهید آنهارا سازماندهی کنید.
هنگامی که یک صحنه را ایجاد کردید، می توانید آن را به عنوان یک نوع داده داخلی ذخیره کنید (tscn یا scn)
هنگامی که یک صحنه را ذخیره کردید، می توانید آن را در صحنه های دیگر نمونه برداری کنید، یا صحنه های جدیدی ایجاد کنید که از آن به ارث می رسد.
این سیستم صحنه به شما در نحوه ساختار پروژه خود انعطاف پذیری می دهد.
این به شما امکان می دهد تقریباً برای هر چیزی صحنه ایجاد کنید.
هر صحنه ای را می توان به دلخواه نمونه برداری یا به ارث برد.
Built-In Scripting Language :
گودو زبان برنامه نویسی داخلی خود را دارد که GDScript نام دارد.
GDScript از نظر نحوی و دستوری بسیار شبیه به پایتون است.
توسعه دهندگان Godot آن را به طور خاص برای توسعه بازی در موتور Godot طراحی کرده اند.
با این حال، اگر مایل به استفاده از GDScript نیستید، گودو از پشتیبانی کامل C# و پشتیبانی کامل ++C نیز بهره خواهد برد.
همچنین این موتور دارای یک سیستم اسکریپت بصری داخلی است.
Built-In Animation Editor :
گودو مجموعه ای قوی از ابزارها را برای انیمیشن سازی ارائه می دهد.
به خصوص در سبک دو بعدی، این موتور با ابزارهایی همراه است که به توسعه دهندگان اجازه می دهد تا گرافیک های دو بعدی خود را تغییر دهند و گرافیک خود را با پشتیبانی کامل از سیستم استخوان IK متحرک کنند.
با این حال، این موتور همچنین از انیمیشن های سه بعدی و همچنین صفحات اسپرایت دو بعدی پشتیبانی می کند.
Built-in Debugger :
توسعه بازی همراه با باگ های بسیاری است به همین دلیل است که گودو با یک دیباگر داخلی ساخته شده برای رفع باگ ها.
دیباگر داخلی می تواند نقاط شکست را در کد شما ردیابی کند و گزارش های دقیق باگ را در کنسول ارائه دهد.
گودو همچنین دارای یک پنجره استقرار از راه دور است که به شما امکان می دهد تمام نودهای پروژه خود را در حین اجرا مشاهده کنید.
این یکی دیگر از ابزارهای اشکال زدایی مفید است که می تواند ساعت ها سردرگمی در کدنویسی را راحت کند.
Multi-Platform Deploy :
ویژگی بعدی در موتور بازی سازی godot ، خروجی کراس پلتفرم آن می باشد.
گودو برای پلتفرمهای اصلی دسکتاپ از جمله مک، ویندوز و لینوکس به شما خروجی می دهد.
و همچنین برای پلتفرم های موبایل از جمله iOS و اندروید است به علاوه ی پلتفرم های کنسول از جمله نینتندو سوییچ ، پلی استیشن 5 و ایکس باکس s\x نیز خروجی خواهد داد.
Supportive Community :
جامعه گودو کوچک اما قدرتمند است. این جامعه در حال توسعه بوده و در حال ایجاد منابع جدیدی نیز می باشد.
انجمن گودو در Godot GitHub فعال است و برای کمک به توسعه دهندگان در انجمن پرسش و پاسخ گودو در دسترس است.
علاوه بر این، انجمن گودو آموزشهای زیادی را در یوتیوب و سایتهای دیگر مانند Udemy ایجاد کرده است.
برای کسانی که به دنبال ورود به توسعه بازی هستند، گودو به دلیل تعداد ابزارهای داخلی که ارائه می دهد و جامعه مفید اطراف آن یک موتور قابل اطمینان نیز می باشد.
مزایای موتور بازی سازی godot
1- برتری در ساخت بازی های دوبعدی :
در حالی که گودو یک موتور بازی سازی همه کاره است و با استفاده از آن می توانید پروژه های سه بعدی را نیز ران کنید؛
اما بازی های دو بعدی جایی است که گودو به وضوح نقاط قوت خود را نشان می دهد و
آن را با GameMaker، MonoGame و Construct قابل مقایسه می کند.
گودو در واقع با موتورهای دو بعدی و سه بعدی جداگانه عرضه می شود.
وقتی صحبت از دوبعدی به میان میآید، گودو قدرت خود را نشان داده و به شدت به توسعه دهندگان بازی آنرا پیشنهاد می کنیم.
Shane Sicienski یکی از بنیانگذاران Fat Gem Games می گوید که گودو در ساخت بازی های دو بعدی یک مزیت نسبت به موتورهای دیگر دارد.
سیستم اندازه گیری داخلی در گودو پیکسل است که در طراحی بازی های پیکسلی 2 بعدی فوق العاده مفید است.
این باعث شد که گودو برای ما بسیار جذاب تر از موتورهایی مانند Unity که از سیستم های اندازه گیری غیر مبتنی بر پیکسل استفاده می کنند.
به طور کلی همانطور که در بالا ذکر شد، گودو از یک موتور دو بعدی اختصاصی استفاده می کند.
این باعث می شود در مقایسه با موتورهای دیگر مانند Unity و Unreal، در پردازش گرافیک های دو بعدی، محاسبات فیزیک دو بعدی، نورپردازی دو بعدی و … بسیار کارآمدتر باشد.
بنابراین، اگر هدف شما دوبعدی است، گودو قطعاً از رقبا برتر است.
2- رابط کاربری آسان :
همانطور که در قسمت ویژگی های این موتور بازی سازی گفته شد ؛
گودو دارای یک سیستم اسکریپت بصری با استفاده از بلوکهایی است که میتوانید آنها را به هم متصل کنید و آن را به ابزاری قابل دسترس حتی برای مبتدیان تبدیل میکند.
شما فقط می توانید انواع اطلاعات را با استفاده از نود ها و صحنه ها بکشید و رها کنید.
ساختار node در واقع یکی از دلایل مهمی است که باعث استفاده از گودو می شود.
3- اوپن سورس بودن گودو :
یکی دیگر از مهمترین مزایای گودو رایگان بودن و متن باز بودن آن است.
گودو موتوری نیست که بتواند شرایط توسعه دهندگان را بدون رضایت آنها تغییر دهد، و
اگر چیزی وجود دارد که دوست دارید در گودو ببینید، کاملاً این اختیار را دارید که خودتان آن را بسازید.
شرکتهایی که از Godot استفاده میکنند باگها و ویژگیهای جدید را به موتور اضافه میکنند و
در نتیجه کاملاً پایدار است، و توسعه از اولین نسخه سریعتر آن بسیار سریع تر شده است.
معایب گودو
1- گودو برای پروژه های سه بعدی پیچیده هنوز بسیار عقب است :
همانطور که قبلاً اشاره شد، بازی های سه بعدی جایی نیست که گودو در آن مانور بدهد،
زیرا ابزارهای طراحی سطح آن و موتور رندر آن به اندازه سایر فناوری ها قدرتمند نیستند.
بنجامین اندرسون، خالق آکادمی HeartBeast Gamedev می گوید: “من فکر می کنم گودو به خوبی Unity یا Unreal کار سه بعدی نمی کند.”
و این مشکلی است که مشارکت کنندگان اصلی گودو در حال رفع و توسعه ی آن هستند.
یک موتور رندر سه بعدی جدید در کنار سایر ویژگی ها در حال حاضر در حال تولید برای این موتور است.
همچنین Lovato می گوید: “موتور سه بعدی Godot در نسخه 3 فاقد بهینه سازی برای رندر کردن جهان های بزرگ بازی است. و عملکرد آن به طور کلی مانند Unity یا Unreal نیست.” ( که البته این موضوع در نسخه ی 4 این موتور بازی سازی بسیار بهبود یافته است.)
2- گودو فاقد ویژگی های اساسی است :
برخی از ویژگی های موجود در موتورهای بزرگی مانند Unity و Unreal هنوز در Godot پیاده سازی نشده اند.
به عنوان مثال، هیچ ویرایشگر sprite داخلی در گودو وجود ندارد.
ادغام کتابخانه های شخص ثالث به سادگی سایر موتورهای معتبرتر نیست.
3- جامعه ی کوچک تر نسبت به سایر موتورهای محبوب :
هنگام کار با موتورهای بازی کوچکتر، داشتن یک جامعه محدود می تواند یک مشکل باشد.
به عنوان مثال، برای بازی های دو بعدی موتوری به محبوبیت GameMaker وجود دارد، که به تمام سوالات شما اغلب در انجمن ها پاسخ داده می شود.
لواتو می گوید: گودو هنوز به اندازه ماستودون های صنعت بازی کاربر ندارد.
زیراکه بودجه یک شرکت بزرگ فناوری مانند Epic Games را ندارد و در نتیجه گودو هنوز در فضای توسعه بازی کمی ضعیف است.
انتخاب موتور بازی سازی گودو عاقلانه است ؟
شاید پاسخ به این سوال در نگاه اول کمی بدیهی باشد و با حضور موتورهای بازی سازی مانند یونیتی و آنریل انجین 5 استفاده از موتورهای دیگری مانند گودو کار اشتباهی باشد.
اگر بخواهیم پاسخ به این سوال را بازتر کنیم باید بگوییم قطعا این موتور از لحاظ محبوبیت و قدرت به پای موتورهای یونیتی و آنریل نخواهد رسید و چندین رده از این موتورهای بازی سازی از همه لحاظ (جامعه تا کارایی و مزیت ها) پایین تر است.
اما با اینحساب چرا ما اقدام به معرفی این موتور بازی سازی و ارائه ی توضیحاتی در رابطه با آن کردیم ؟
قطعا این موتور بازی سازی مانند هر موتور بازی سازی دیگری مزایایی نیز دارد که یکی از مهم ترین این مزایا رایگان بودن آن است.
این موتور به صورت کامل از پروسه ی ساخت بازی تا انتشار آن رایگان می باشد در صورتیکه موتورهای دیگری که نام برده شد رایگان نبوده و در صورتی که درآمد ماهیانه ی شما از بازی از 1000 دلار بیشتر شد باید درصدی از درآمد خود را به آن موتور بازی سازی اختصاص دهید چیزی که در موتور بازی سازی گودو وجود ندارد.
همچنین گودو شما را با ابزارهایی که در اختیار شما قرار می دهد محدود نمی کند، بنابراین می توانید خلاقیت خود را تا حد امکان کشف کنید زیرا منبع باز است.
نکته ی بعدی که در رابطه با گودو وجود دارد مبحث یادگیری آن است ؛ موتورهای بازی سازی دیگر مانند یونیتی و آنریل موتورهای بسیار قدرتمندی هستند که یادگیری آنها بسیار گسترده و نیازمند دوره های چندین و چند ماهه می باشد ؛
اما در رابطه با گودو مسئله متفاوت بوده و یادگیری آن به مراتب ساده تر از سایر موتورهای بازی سازی می باشد و به همین علت استفاده از آن برای مبتدیانی که تازه قصد شروع فعالیت در زمینه ی بازی سازی را دارند می تواند گزینه ی خوبی باشد.
مهرسا امینی
برنامه نویس ، انیماتور ، سئوکار
در زندگی رویاهات را دنبال کن