بنا به درخواست کارگران! برگرفته از opennet
پس از 10 ماه توسعه، انتشار یک موتور بازی رایگان منتشر شد گودو 3.2، مناسب برای ساخت بازی های دو بعدی و سه بعدی. این موتور از یک زبان منطقی بازی با یادگیری آسان، یک محیط گرافیکی برای طراحی بازی، یک سیستم استقرار بازی با یک کلیک، قابلیت های انیمیشن و شبیه سازی گسترده برای فرآیندهای فیزیکی، یک دیباگر داخلی و یک سیستم برای شناسایی گلوگاه های عملکرد پشتیبانی می کند. . کد موتور بازی، محیط طراحی بازی و ابزارهای توسعه مرتبط (موتور فیزیک، سرور صدا، بکاندهای رندر دو بعدی و سه بعدی و غیره) تحت مجوز MIT توزیع میشوند.
این موتور در سال 2014 توسط OKAM پس از ده سال توسعه یک محصول اختصاصی حرفه ای که برای ایجاد و انتشار بازی های زیادی برای رایانه شخصی، کنسول های بازی و دستگاه های تلفن همراه استفاده شده است، منبع باز شد. این موتور از تمامی پلتفرم های محبوب دسکتاپ و موبایل (لینوکس، ویندوز، macOS، Wii، Nintendo 3DS، پلی استیشن 3، PS Vita، Android، iOS، BBX) و همچنین توسعه بازی برای وب پشتیبانی می کند. مجموعه های باینری آماده برای اجرا برای لینوکس، ویندوز و macOS ایجاد شده اند.
یک شعبه جداگانه در حال توسعه یک بکاند رندر جدید بر اساس API گرافیکی Vulkan است که در نسخه بعدی Godot 4.0 ارائه میشود، بهجای بکاندهای ارائهشده فعلی از طریق OpenGL ES 3.0 و OpenGL 3.3 (پشتیبانی از OpenGL ES و OpenGL خواهد بود. از طریق ارائه باطن قدیمی OpenGL ES 2.0 /OpenGL 2.1 در بالای معماری جدید رندر مبتنی بر Vulkan حفظ شود. انتقال از Godot 3.2 به Godot 4.0 به دلیل ناسازگاری در سطح API نیاز به کار مجدد برنامه دارد، اما شاخه Godot 3.2 چرخه پشتیبانی طولانی خواهد داشت که مدت زمان آن به تقاضای کاربران برای این شاخه بستگی دارد. نسخههای موقت 3.2.x همچنین شامل امکان انتقال نوآوریها از شاخه 4.x است که بر پایداری تأثیر نمیگذارند، مانند پشتیبانی از کامپایل AOT، ARCore، DTLS و پلتفرم iOS برای پروژههای C#.
ویژگی های کلیدی جدید در Godot 3.2:
- اضافه شدن پشتیبانی از کلاه های واقعیت مجازی Oculus Quest که با استفاده از یک پلاگین برای پلتفرم اندروید پیاده سازی شده است. برای توسعه سیستم های واقعیت افزوده برای iOS، پشتیبانی از چارچوب ARKit اضافه شده است. پشتیبانی از چارچوب ARCore برای اندروید در حال توسعه است، اما هنوز آماده نیست و در یکی از نسخه های متوسط 3.3.x گنجانده خواهد شد.
- رابط ویرایشگر سایه بان بصری دوباره طراحی شده است. گره های جدیدی برای ایجاد سایه بان های پیشرفته تر اضافه شده اند. برای سایهزنهای پیادهسازی شده توسط اسکریپتهای کلاسیک، پشتیبانی از ثابتها، آرایهها و اصلاحکنندههای "متغیر" اضافه شده است. بسیاری از سایهزنهای مخصوص OpenGL ES 3.0 به OpenGL ES 2 منتقل شدهاند.
- پشتیبانی از رندر مبتنی بر فیزیکی (PBR) با قابلیتهای موتورهای رندر PBR جدید، مانند Blender Eevee و Substance Designer، هماهنگ میشود تا از نمایش صحنه مشابه در گودو و بستههای مدلسازی سهبعدی استفاده شده اطمینان حاصل شود.
- تنظیمات مختلف رندر برای بهبود عملکرد و بهبود کیفیت تصویر بهینه شده اند. بسیاری از ویژگیهای GLES3 به باطن GLES3 منتقل شدهاند، از جمله پشتیبانی از روش ضد آلیاسینگ MSAA (Multisample anti-aliasing) و اثرات مختلف پس از پردازش (درخشش، تاری DOF و BCS).
- اضافه شدن پشتیبانی کامل برای وارد کردن صحنهها و مدلهای سه بعدی در glTF 3 (فرمت انتقال GL) و اضافه شدن پشتیبانی اولیه برای فرمت FBX، که به شما امکان میدهد صحنههایی را با انیمیشن از Blender وارد کنید، اما هنوز با Maya و 2.0ds Max سازگار نیست. اضافه شدن پشتیبانی از پوسته های مش هنگام وارد کردن صحنه ها از طریق glTF 3 و FBX، به شما امکان می دهد از یک مش در چندین مش استفاده کنید. کار برای بهبود و تثبیت پشتیبانی glTF 2.0 با همکاری جامعه Blender انجام شده است، که پشتیبانی بهبود یافته glTF 2.0 را در نسخه 2.0 ارائه خواهد کرد.
- قابلیت های شبکه موتور با پشتیبانی از پروتکل های WebRTC و WebSocket و همچنین قابلیت استفاده از UDP در حالت چندپخشی گسترش یافته است. API برای استفاده از هش رمزنگاری و کار با گواهی ها اضافه شده است. یک رابط گرافیکی برای پروفایل فعالیت شبکه اضافه شده است. کار بر روی ایجاد یک پورت گودو برای WebAssembly/HTML5 آغاز شده است که به ویرایشگر اجازه می دهد در یک مرورگر از طریق وب راه اندازی شود.
- افزونه برای پلتفرم اندروید و سیستم صادرات دوباره طراحی شده است. اکنون، برای ایجاد بستهها برای اندروید، دو سیستم صادرات جداگانه ارائه میشود: یکی با موتور از پیش ساخته شده، و دومی که به شما امکان میدهد ساختهای خود را بر اساس گزینههای موتور سفارشی ایجاد کنید. سفارشی سازی مجموعه های خود را می توان در سطح پلاگین برای اندروید، بدون ویرایش دستی الگوی منبع انجام داد.
- پشتیبانی از غیرفعال کردن انتخابی ویژگیهای فردی به ویرایشگر اضافه شده است، به عنوان مثال، میتوانید دکمههای فراخوانی ویرایشگر سه بعدی، ویرایشگر اسکریپت، کتابخانه منابع، گرهها، پانلها، ویژگیها و سایر عناصری که توسط توسعهدهنده مورد نیاز نیستند را حذف کنید (پنهان کردن موارد غیر ضروری چیزها به شما امکان می دهد رابط کاربری را به طور قابل توجهی ساده کنید).
- اضافه شدن پشتیبانی اولیه برای ادغام با سیستم های کنترل کد منبع و پیاده سازی یک افزونه برای پشتیبانی از Git در ویرایشگر.
- امکان تعریف مجدد دوربین برای یک بازی در حال اجرا از طریق پنجره ای در ویرایشگر وجود دارد که امکان ارزیابی حالت های مختلف در بازی (نمای آزاد، بازرسی گره ها و غیره) را ممکن می سازد.
- اجرای سرور LSP (پروتکل سرور زبان) برای زبان GDScript پیشنهاد شده است که به شما امکان می دهد اطلاعات مربوط به معنای GDScript و قوانین تکمیل کد را به ویرایشگرهای خارجی مانند افزونه VS Code و Atom منتقل کنید.
- بهبودهای متعددی در ویرایشگر اسکریپت داخلی GDScript انجام شده است: توانایی تنظیم نشانک ها در موقعیت های کد اضافه شده است، یک پانل نقشه کوچک پیاده سازی شده است (برای مرور سریع همه کدها)، تکمیل خودکار ورودی بهبود یافته است، و قابلیت های حالت طراحی اسکریپت بصری گسترش یافته است.
- یک حالت برای ایجاد بازی های شبه سه بعدی اضافه شده است که به شما امکان می دهد با تعریف چندین لایه که یک چشم انداز ساختگی را تشکیل می دهند، از اثر عمق در بازی های دو بعدی استفاده کنید.
- پشتیبانی از اطلس های بافت به ویرایشگر دوبعدی بازگشته است.
- رابط کاربری گرافیکی فرآیند قرار دادن لنگرها و مرزهای منطقه را مدرن کرده است.
- برای دادههای متنی، قابلیت نظارت بر تغییرات پارامترهای افکت در پرواز اضافه شده است، پشتیبانی از برچسبهای BBCode ارائه شده است و امکان تعریف جلوههای شخصی شما فراهم شده است.
- یک ژنراتور جریان صوتی اضافه شده است که به شما امکان می دهد امواج صوتی را بر اساس فریم های جداگانه و یک تحلیلگر طیفی ایجاد کنید.
- با استفاده از کتابخانه V-HACD، می توان مش های مقعر را به قطعات محدب دقیق و ساده شده تجزیه کرد. این ویژگی تولید اشکال برخورد برای مش های سه بعدی موجود را بسیار ساده می کند.
- قابلیت توسعه منطق بازی در سی شارپ با استفاده از مونو برای پلتفرم های اندروید و WebAssembly پیاده سازی شده است (قبلاً سی شارپ برای لینوکس، ویندوز و macOS پشتیبانی می شد). بر اساس Mono 6.6، پشتیبانی از C# 8.0 پیاده سازی شده است. برای سی شارپ، پشتیبانی اولیه از کامپایل پیش از زمان (AOT) نیز پیاده سازی شده است که به پایه کد اضافه شده است، اما هنوز فعال نشده است (برای WebAssembly، هنوز از مفسر استفاده می شود). برای ویرایش کد C#، امکان اتصال ویرایشگرهای خارجی مانند MonoDevelop، Visual Studio for Mac و Jetbrains Rider وجود دارد.
- اسناد به طور قابل توجهی گسترش یافته و بهبود یافته است. ترجمه بخشی از اسناد به روسی منتشر شده است (راهنمای مقدماتی برای شروع ترجمه شده است).
منبع: linux.org.ru