ADS

Daftar Fitur Software Godot

 

Daftar fitur

Halaman ini bertujuan untuk mencantumkan semua fitur yang saat ini didukung oleh Godot.

Catatan

Halaman ini mencantumkan fitur-fitur yang didukung oleh versi stabil Godot saat ini. Beberapa fitur ini tidak tersedia dalam seri rilis 3.x.

Platform

Lihat juga

Lihat Persyaratan sistem untuk persyaratan versi perangkat keras dan perangkat lunak.

Dapat menjalankan editor dan proyek yang diekspor:

  • Windows (x86 dan ARM, 64-bit dan 32-bit).

  • macOS (x86 dan ARM, hanya 64-bit).

  • Linux (x86 dan ARM, 64-bit dan 32-bit).

    • Biner ditautkan secara statis dan dapat berjalan pada distribusi apa pun jika dikompilasi pada distribusi dasar yang cukup lama.

    • Biner resmi dikompilasi menggunakan buildroot Godot Engine , yang memungkinkan biner berfungsi di seluruh distribusi Linux umum.

  • Android (dukungan editor bersifat eksperimental).

  • Peramban web . Eksperimental di 4.0, penggunaan Godot 3.x direkomendasikan sebagai gantinya saat menargetkan HTML5.

Menjalankan proyek yang diekspor:

Godot bertujuan untuk menjadi platform yang se-independen mungkin dan dapat diporting ke platform baru dengan relatif mudah.

Catatan

Proyek yang ditulis dalam C# menggunakan Godot 4 saat ini tidak dapat diekspor ke platform web. Untuk menggunakan C# pada platform tersebut, pertimbangkan Godot 3 sebagai gantinya. Dukungan platform Android dan iOS tersedia sejak Godot 4.2, tetapi masih bersifat eksperimental dan beberapa batasan berlaku .

Editor

Fitur:

  • Editor pohon adegan.

  • Editor skrip bawaan.

  • Dukungan untuk editor skrip eksternal seperti Visual Studio Code atau Vim.

  • Debugger GDScript .

    • Dukungan untuk debugging dalam thread tersedia sejak 4.2.

  • Profiler visual dengan indikasi waktu CPU dan GPU untuk setiap langkah alur rendering.

  • Alat pemantauan kinerja, termasuk monitor kinerja khusus .

  • Memuat ulang skrip langsung.

  • Penyuntingan adegan langsung.

    • Perubahan akan terlihat di editor dan akan disimpan setelah menutup proyek yang sedang berjalan.

  • Inspektur jarak jauh.

    • Perubahan tidak akan terlihat di editor dan tidak akan disimpan setelah menutup proyek yang sedang berjalan.

  • Replikasi kamera langsung.

    • Gerakkan kamera dalam editor dan lihat hasilnya pada proyek yang sedang berjalan.

  • Dokumentasi referensi kelas offline bawaan.

  • Gunakan editor dalam lusinan bahasa yang disumbangkan oleh komunitas.

Plugin untuk:

Merender

Tersedia 3 metode rendering (menjalankan lebih dari 2 driver rendering):

  • Forward+ , berjalan di atas Vulkan 1.0 (dengan fitur Vulkan 1.1 dan 1.2 opsional). Backend grafis tercanggih, hanya cocok untuk platform desktop. Digunakan secara default pada platform desktop.

  • Forward Mobile , berjalan di atas Vulkan 1.0 (dengan fitur Vulkan 1.1 dan 1.2 opsional). Fiturnya lebih sedikit, tetapi merender adegan sederhana lebih cepat. Cocok untuk platform seluler dan desktop. Digunakan secara default pada platform seluler.

  • Kompatibilitas , berjalan pada OpenGL 3.3 / OpenGL ES 3.0 / WebGL 2.0. Backend grafis yang paling tidak canggih, cocok untuk platform desktop dan seluler kelas bawah. Digunakan secara default pada platform web.

Grafik 2D

  • Rendering sprite, poligon dan garis.

    • Alat tingkat tinggi untuk menggambar garis dan poligon seperti Polygon2D dan Line2D , dengan dukungan untuk tekstur.

  • AnimatedSprite2D sebagai pembantu untuk membuat sprite animasi.

  • Lapisan paralaks.

    • Dukungan pseudo-3D termasuk pratinjau dalam editor.

  • Pencahayaan 2D dengan peta normal dan peta spekular.

    • Lampu 2D titik (omni/spot) dan terarah.

    • Bayangan keras atau lembut (dapat disesuaikan berdasarkan tiap cahaya).

    • Shader kustom dapat mengakses representasi SDF real-time dari pemandangan 2D berdasarkan node LightOccluder2D , yang dapat digunakan untuk meningkatkan efek pencahayaan 2D termasuk iluminasi global 2D.

  • Rendering font menggunakan bitmap, rasterisasi menggunakan FreeType atau bidang jarak bertanda multi-saluran (MSDF).

    • Font bitmap dapat diekspor menggunakan alat seperti BMFont, atau diimpor dari gambar (hanya untuk font dengan lebar tetap).

    • Font dinamis mendukung font monokrom dan font berwarna (misalnya untuk emoji). Format yang didukung adalah TTF, OTF, WOFF1 dan WOFF2.

    • Font dinamis mendukung garis tepi font opsional dengan lebar dan warna yang dapat disesuaikan.

    • Font dinamis mendukung font variabel dan fitur OpenType termasuk ligatur.

    • Font dinamis mendukung simulasi cetak tebal dan miring jika berkas font tidak memiliki gaya tersebut.

    • Font dinamis mendukung oversampling untuk menjaga font tetap tajam pada resolusi yang lebih tinggi.

    • Font dinamis mendukung pemosisian subpiksel untuk membuat font lebih tajam pada ukuran rendah.

    • Font dinamis mendukung pengoptimalan subpiksel LCD untuk membuat font lebih tajam pada ukuran rendah.

    • Font bidang jarak bertanda dapat diskalakan pada resolusi apa pun tanpa memerlukan rasterisasi ulang. Penggunaan multisaluran membuat font SDF dapat diskalakan ke ukuran yang lebih rendah dengan lebih baik dibandingkan dengan font SDF monokrom.

  • Partikel berbasis GPU dengan dukungan untuk shader partikel kustom .

  • Partikel berbasis CPU.

  • Rendering HDR 2D opsional untuk kemampuan cahaya yang lebih baik.

Alat 2D

  • TileMaps untuk desain level berbasis ubin 2D.

  • Kamera 2D dengan fitur penghalusan dan pembatas geser bawaan.

  • Node Path2D untuk merepresentasikan jalur dalam ruang 2D.

    • Dapat digambar di editor atau dibuat secara prosedural.

    • Node PathFollow2D untuk membuat node mengikuti Path2D.

  • Kelas pembantu geometri 2D .

Fisika 2D

Badan fisika:

  • Badan statis.

  • Badan yang dapat dianimasikan (untuk objek yang hanya bergerak berdasarkan skrip atau animasi, seperti pintu dan platform).

  • Benda kaku.

  • Tubuh karakter.

  • Sendi.

  • Area untuk mendeteksi adanya mayat yang masuk atau keluar.

Deteksi tabrakan:

  • Bentuk bawaan: garis, kotak, lingkaran, kapsul, batas dunia (bidang tak terhingga).

  • Poligon tabrakan (dapat digambar secara manual atau dihasilkan dari sprite di editor).

Grafik 3D

  • Rendering HDR dengan sRGB.

  • Kamera perspektif, ortografik, dan frustum-offset.

  • Saat menggunakan backend Forward+, prepass kedalaman digunakan untuk meningkatkan kinerja dalam adegan yang kompleks dengan mengurangi biaya overdraw.

  • Shading laju variabel pada GPU yang didukung di Forward+ dan Forward Mobile.

Rendering berbasis fisik (fitur material bawaan):

  • Mengikuti model Disney PBR.

  • Mendukung mode bayangan difusi Burley, Lambert, Lambert Wrap (setengah Lambert) dan Toon.

  • Mendukung mode Schlick-GGX, Toon dan Disabled specular shading.

  • Menggunakan alur kerja kekasaran-metalik dengan dukungan untuk tekstur ORM.

  • Menggunakan oklusi spekular horizon (model Filamen) untuk meningkatkan tampilan material.

  • Pemetaan normal.

  • Pemetaan paralaks/relief dengan tingkat detail otomatis berdasarkan jarak.

  • Pemetaan detail untuk peta albedo dan normal.

  • Hamburan dan transmitansi bawah permukaan.

  • Refraksi ruang layar dengan dukungan untuk kekasaran material (menghasilkan refraksi kabur).

  • Memudarnya kedekatan (partikel lunak) dan memudarnya jarak.

  • Fade jarak dapat menggunakan alpha blending atau dithering untuk menghindari melewati jalur pipa transparan.

  • Dithering dapat ditentukan berdasarkan per-piksel atau per-objek.

Pencahayaan waktu nyata:

  • Lampu arah (matahari/bulan). Hingga 4 lampu per adegan.

  • Lampu omnidirectional.

  • Lampu sorot dengan sudut kerucut dan redaman yang dapat disesuaikan.

  • Cahaya spekular, cahaya tidak langsung, dan energi kabut volumetrik dapat disesuaikan berdasarkan tiap cahaya.

  • "Ukuran" cahaya yang dapat disesuaikan untuk lampu area palsu (juga akan membuat bayangan lebih kabur).

  • Sistem pemudaran jarak opsional untuk memudarkan cahaya jauh dan bayangannya, sehingga meningkatkan kinerja.

  • Saat menggunakan backend Forward+ (default pada desktop), lampu dirender dengan pengoptimalan maju yang dikelompokkan untuk mengurangi biaya masing-masing. Render yang dikelompokkan juga menghapus batasan jumlah lampu yang dapat digunakan pada mesh.

  • Saat menggunakan backend Forward Mobile, hingga 8 lampu omni dan 8 lampu spot dapat ditampilkan per sumber daya mesh. Pencahayaan yang dipantulkan dapat digunakan untuk mengatasi batasan ini jika diperlukan.

Pemetaan bayangan:

  • DirectionalLight: Orthogonal (tercepat), PSSM 2-split dan 4-split. Mendukung pencampuran antar-split.

  • OmniLight: Paraboloid ganda (cepat) atau cubemap (lebih lambat tetapi lebih akurat). Mendukung tekstur proyektor berwarna dalam bentuk panorama.

  • SpotLight: Tekstur tunggal. Mendukung tekstur proyektor berwarna.

  • Bias offset normal bayangan dan pancaking bayangan untuk mengurangi jumlah jerawat bayangan dan peter-panning yang terlihat.

  • Keburaman bayangan mirip PCSS didasarkan pada ukuran cahaya dan jarak dari permukaan tempat bayangan terbentuk.

  • Keburaman bayangan dapat disesuaikan berdasarkan tiap cahaya.

Pencahayaan global dengan pencahayaan tidak langsung:

  • Peta cahaya yang dipanggang (cepat, tetapi tidak dapat diperbarui saat dijalankan).

    • Mendukung pemanggangan cahaya tidak langsung saja atau pemanggangan cahaya langsung dan tidak langsung. Mode pemanggangan dapat disesuaikan berdasarkan tiap cahaya untuk memungkinkan pengaturan pemanggangan cahaya hibrida.

    • Mendukung pencahayaan objek dinamis menggunakan probe yang ditempatkan secara otomatis dan manual.

    • Secara opsional mendukung pencahayaan terarah dan pantulan kasar berdasarkan harmonik bola.

    • Lightmaps dibuat pada GPU menggunakan compute shader (jauh lebih cepat dibandingkan dengan lightmapping CPU). Pembuatan hanya dapat dilakukan dari editor, tidak dalam proyek yang diekspor.

    • Mendukung pengurangan derau berbasis GPU dengan JNLM, atau pengurangan derau berbasis CPU/GPU dengan OIDN.

  • Probe GI berbasis voxel . Mendukung lampu dinamis dan okluder dinamis, sekaligus mendukung refleksi. Memerlukan langkah pemanggangan cepat yang dapat dilakukan di editor atau saat run-time (termasuk dari proyek yang diekspor).

  • Medan GI jarak-tertanda yang dirancang untuk dunia terbuka yang besar. Mendukung lampu dinamis, tetapi tidak mendukung okluder dinamis. Mendukung pantulan. Tidak memerlukan pemanggangan.

  • Pencahayaan tidak langsung pada ruang layar (SSIL) pada resolusi setengah atau penuh. Sepenuhnya real-time dan mendukung semua jenis sumber cahaya emisif (termasuk stiker).

  • VoxelGI dan SDFGI menggunakan tahapan tertunda untuk memungkinkan rendering GI pada resolusi setengah guna meningkatkan kinerja (sementara masih memiliki dukungan MSAA yang fungsional).

Refleksi:

  • Refleksi berbasis voxel (saat menggunakan probe GI) dan refleksi berbasis SDF (saat menggunakan GI dengan jarak bertanda). Refleksi berbasis voxel terlihat pada permukaan transparan, sedangkan refleksi berbasis SDF kasar terlihat pada permukaan transparan.

  • Refleksi yang dipanggang dengan cepat atau refleksi waktu nyata yang lambat menggunakan ReflectionProbe. Koreksi kotak paralaks dapat diaktifkan secara opsional.

  • Refleksi ruang layar dengan dukungan untuk kekasaran material.

  • Teknik refleksi dapat dicampur bersama untuk mendapatkan akurasi atau skalabilitas yang lebih baik.

  • Saat menggunakan backend Forward+ (default pada desktop), probe refleksi dirender dengan pengoptimalan forward yang dikelompokkan untuk mengurangi biaya masing-masing. Render yang dikelompokkan juga menghilangkan batasan jumlah probe refleksi yang dapat digunakan pada mesh.

  • Saat menggunakan backend Forward Mobile, hingga 8 probe refleksi dapat ditampilkan per sumber daya mesh.

Stiker:

  • Mendukung albedo , emisif, ORM , dan pemetaan normal.

  • Saluran tekstur dihamparkan secara halus di atas material di bawahnya, dengan dukungan untuk stiker normal/ORM saja.

  • Dukungan untuk pemudaran normal untuk memudarkan stiker tergantung pada sudut datangnya.

  • Tidak bergantung pada pembuatan mesh saat dijalankan. Ini berarti stiker dapat digunakan pada mesh dengan kulit yang rumit tanpa penurunan kinerja, bahkan jika stiker berpindah setiap frame.

  • Dukungan untuk penyaringan tekstur terdekat, bilinear, trilinear, atau anisotropik (dikonfigurasi secara global).

  • Sistem pemudaran jarak opsional untuk memudarkan stiker yang jauh, meningkatkan kinerja.

  • Saat menggunakan backend Forward+ (default pada desktop), stiker dirender dengan pengoptimalan maju yang dikelompokkan untuk mengurangi biaya masing-masing. Rendering yang dikelompokkan juga menghapus batasan jumlah stiker yang dapat digunakan pada mesh.

  • Saat menggunakan backend Forward Mobile, hingga 8 stiker dapat ditampilkan per sumber daya mesh.

Langit:

  • Panorama langit (menggunakan HDRI)

  • Langit prosedural dan langit berbasis fisik yang merespons Cahaya Terarah dalam pemandangan.

  • Dukungan untuk shader langit khusus , yang dapat dianimasikan.

  • Peta cahaya yang digunakan untuk cahaya sekitar dan cahaya spekular dapat diperbarui secara real-time tergantung pada pengaturan kualitas yang dipilih.

Kabut:

  • Kabut dengan kedalaman eksponensial.

  • Kabut dengan ketinggian eksponensial.

  • Dukungan untuk warna kabut otomatis tergantung pada warna langit (perspektif udara).

  • Dukungan untuk hamburan matahari dalam kabut.

  • Dukungan untuk mengendalikan seberapa banyak kabut yang muncul akan memengaruhi langit, dengan kontrol terpisah untuk kabut tradisional dan volumetrik.

  • Dukungan untuk membuat material tertentu mengabaikan kabut.

Kabut volumetrik:

  • Kabut volumetrik global yang bereaksi terhadap cahaya dan bayangan.

  • Kabut volumetrik dapat memperhitungkan cahaya tidak langsung saat menggunakan VoxelGI atau SDFGI.

  • Node volume kabut yang dapat ditempatkan untuk menambahkan kabut ke area tertentu (atau menghilangkan kabut dari area tertentu). Bentuk yang didukung meliputi kotak, elips, kerucut, silinder, dan peta kepadatan berbasis tekstur 3D.

  • Tiap volume kabut dapat memiliki shader kustomnya sendiri.

  • Dapat digunakan bersama dengan kabut tradisional.

Partikel:

  • Partikel berbasis GPU dengan dukungan untuk subemitor (2D + 3D), jejak (2D + 3D), atraktor (hanya 3D), dan tumbukan (2D + 3D).

    • Bentuk penarik partikel 3D yang didukung: kotak, bola, dan medan vektor 3D.

    • Bentuk tumbukan partikel 3D didukung: kotak, bola, bidang jarak bertanda panggang dan peta ketinggian waktu nyata (cocok untuk efek cuaca dunia terbuka).

    • Tabrakan partikel 2D ditangani menggunakan medan jarak bertanda yang dihasilkan secara real-time berdasarkan node LightOccluder2D dalam pemandangan.

    • Jalan setapak dapat menggunakan jaring jejak pita dan jaring jejak tabung bawaan, atau jaring khusus dengan rangka.

    • Dukungan untuk shader partikel khusus dengan emisi manual.

  • Partikel berbasis CPU.

Pasca-pemrosesan:

  • Pemetaan nada (Linear, Reinhard, Filmik, ACES).

  • Penyesuaian eksposur otomatis berdasarkan kecerahan area pandang (dan pengesampingan eksposur manual).

  • Kedalaman bidang dekat dan jauh dengan simulasi bokeh yang dapat disesuaikan (kotak, segi enam, lingkaran).

  • Oklusi ambien ruang layar (SSAO) pada resolusi setengah atau penuh.

  • Bersinar/mekar dengan peningkatan bikubik opsional dan beberapa mode campuran tersedia: Layar, Cahaya Lembut, Tambah, Ganti, Campur.

  • Cahaya dapat memiliki tekstur peta kotoran berwarna, yang berfungsi sebagai efek kotoran lensa.

  • Cahaya dapat digunakan sebagai efek buram ruang layar .

  • Koreksi warna menggunakan ramp satu dimensi atau tekstur LUT 3D.

  • Pembatas kekasaran untuk mengurangi dampak aliasing spekuler.

  • Penyesuaian kecerahan, kontras, dan saturasi.

Penyaringan tekstur:

  • Penyaringan terdekat, bilinear, trilinear, atau anisotropik.

  • Pilihan penyaringan ditentukan berdasarkan tiap penggunaan, bukan tiap tekstur.

Kompresi tekstur:

  • Basis Universal (lambat, tetapi menghasilkan file yang lebih kecil).

  • BPTC untuk kompresi berkualitas tinggi (tidak didukung pada macOS).

  • ETC2 (tidak didukung pada macOS).

  • S3TC (tidak didukung pada platform seluler/Web).

Antialiasing:

  • Antialiasing temporal (TAA).

  • AMD FidelityFX Super Resolution 2.2 antialiasing (FSR2), yang dapat digunakan pada resolusi asli sebagai bentuk antialiasing temporal berkualitas tinggi.

  • Antialiasing multi-sampel (MSAA), untuk antialiasing 2D dan antialiasing 3D .

  • Antialiasing perkiraan cepat (FXAA).

  • Antialiasing super-sample (SSAA) menggunakan penskalaan 3D bilinear dan skala resolusi 3D di atas 1,0.

  • Antialiasing alfa, cakupan alfa MSAA, dan hashing alfa berdasarkan per materi.

Skala resolusi:

  • Dukungan untuk merender 3D pada resolusi yang lebih rendah sambil mempertahankan rendering 2D pada skala asli. Ini dapat digunakan untuk meningkatkan kinerja pada sistem kelas bawah atau meningkatkan visual pada sistem kelas atas.

  • Skala resolusi menggunakan penyaringan bilinear, AMD FidelityFX Super Resolution 1.0 (FSR1) atau AMD FidelityFX Super Resolution 2.2 (FSR2).

  • Bias LOD mipmap tekstur disesuaikan secara otomatis untuk meningkatkan kualitas pada skala resolusi yang lebih rendah. Bias ini juga dapat dimodifikasi dengan offset manual.

Sebagian besar efek yang tercantum di atas dapat disesuaikan untuk performa yang lebih baik atau untuk lebih meningkatkan kualitas. Ini dapat membantu saat menggunakan Godot untuk rendering offline .

Alat 3D

  • Jaring bawaan: kubus, silinder/kerucut, (hemi)bola, prisma, bidang, segi empat, torus, pita, tabung.

  • GridMaps untuk desain level berbasis ubin 3D.

  • Geometri padat yang konstruktif (dimaksudkan untuk pembuatan prototipe).

  • Alat untuk pembuatan geometri prosedural .

  • Node Path3D untuk merepresentasikan jalur dalam ruang 3D.

    • Dapat digambar di editor atau dibuat secara prosedural.

    • Node PathFollow3D untuk membuat node mengikuti Path3D.

  • Kelas pembantu geometri 3D .

  • Dukungan untuk mengekspor pemandangan terkini sebagai berkas glTF 2.0, baik dari editor maupun pada saat run-time dari proyek yang diekspor.

Fisika 3D

Badan fisika:

  • Badan statis.

  • Badan yang dapat dianimasikan (untuk objek yang hanya bergerak berdasarkan skrip atau animasi, seperti pintu dan platform).

  • Benda kaku.

  • Tubuh karakter.

  • Badan kendaraan (ditujukan untuk fisika arcade, bukan simulasi).

  • Sendi.

  • Tubuh lunak.

  • Boneka kain.

  • Area untuk mendeteksi adanya mayat yang masuk atau keluar.

Deteksi tabrakan:

  • Bentuk bawaan: kuboid, bola, kapsul, silinder, batas dunia (bidang tak terhingga).

  • Hasilkan bentuk tumbukan segitiga untuk jaring apa pun dari editor.

  • Hasilkan satu atau beberapa bentuk tumbukan cembung untuk setiap jaring dari editor.

Bayangan

  • 2D: Kustom vertex, fragmen, dan shader cahaya.

  • 3D: Kustomisasi vertex, fragmen, cahaya, dan shader langit.

  • Shader berbasis teks menggunakan bahasa shader yang terinspirasi oleh GLSL .

  • Penyunting shader visual.

    • Dukungan untuk plugin shader visual.

Penulisan skrip

Umum:

  • Pola desain berorientasi objek dengan skrip yang memperluas node.

  • Sinyal dan grup untuk berkomunikasi antar skrip.

  • Dukungan untuk skrip lintas bahasa .

  • Banyak tipe data aljabar linear 2D, 3D dan 4D seperti vektor dan transformasi.

Skrip GD:

C#:

  • Dikemas dalam biner terpisah untuk menjaga ukuran file dan dependensi tetap rendah.

  • Mendukung .NET 6 dan yang lebih tinggi.

    • Dukungan penuh untuk sintaks dan fitur C# 10.0.

  • Mendukung Windows, Linux, dan macOS. Sejak versi 4.2, dukungan eksperimental untuk Android dan iOS juga tersedia (memerlukan proyek .NET 7.0 untuk Android dan 8.0 untuk iOS).

    • Pada platform Android, hanya beberapa arsitektur yang didukung: arm64dan x64.

    • Pada platform iOS, hanya beberapa arsitektur yang didukung: arm64.

    • Platform web saat ini tidak didukung. Untuk menggunakan C# pada platform tersebut, pertimbangkan Godot 3 sebagai gantinya.

  • Disarankan menggunakan editor eksternal untuk mendapatkan manfaat dari fungsionalitas IDE.

GDExtension (C, C++, Rust, D, ...):

  • Saat Anda membutuhkannya, tautkan ke pustaka asli untuk kinerja yang lebih tinggi dan integrasi pihak ketiga.

    • Untuk skrip logika permainan, GDScript atau C# direkomendasikan jika kinerjanya sesuai.

  • Pengikatan GDExtension resmi untuk C dan C++ .

    • Gunakan sistem pembangunan dan fitur bahasa apa pun yang Anda inginkan.

  • Binding GDExtension yang dikembangkan secara aktif untuk binding D , Swift , dan Rust yang disediakan oleh komunitas. (Beberapa dari binding ini mungkin bersifat eksperimental dan belum siap untuk produksi).

Suara

Fitur:

  • Keluaran mono, stereo, 5.1 dan 7.1.

  • Pemutaran nonposisional dan posisional dalam 2D ​​dan 3D.

    • Efek Doppler opsional dalam 2D ​​dan 3D.

  • Dukungan untuk bus audio yang dapat dirutekan ulang dan efek dengan puluhan efek yang disertakan.

  • Dukungan untuk polifoni (memutar beberapa suara dari satu node AudioStreamPlayer).

  • Dukungan untuk volume dan nada acak.

  • Dukungan untuk penskalaan nada secara real-time.

  • Dukungan untuk pemilihan sampel berurutan/acak, termasuk pencegahan pengulangan saat menggunakan pemilihan sampel acak.

  • Node Listener2D dan Listener3D untuk mendengarkan dari posisi selain kamera.

  • Dukungan untuk pembuatan audio prosedural .

  • Masukan audio untuk merekam mikrofon.

  • Masukan MIDI.

    • Belum ada dukungan untuk keluaran MIDI.

API yang digunakan:

  • Jendela: WASAPI.

  • macOS: CoreAudio.

  • Linux: PulseAudio atau ALSA.

Impor

Format:

  • Gambar: Lihat Mengimpor gambar .

  • Suara:

    • WAV dengan kompresi IMA-ADPCM opsional.

    • Ogg Vorbis.

    • MP3.

  • Adegan 3D: Lihat Mengimpor adegan 3D .

    • glTF 2.0 (disarankan) .

    • .blend(dengan memanggil fungsi ekspor glTF Blender secara transparan).

    • FBX (dengan memanggil FBX2glTF secara transparan).

    • Collada (.dae).

    • Wavefront OBJ (hanya pemandangan statis, dapat dimuat langsung sebagai mesh atau diimpor sebagai pemandangan 3D).

  • Dukungan untuk memuat adegan glTF 2.0 pada waktu proses, termasuk dari proyek yang diekspor.

  • Jaring 3D menggunakan Mikktspace untuk menghasilkan garis singgung saat diimpor, yang memastikan konsistensi dengan aplikasi 3D lain seperti Blender.

Masukan

  • Sistem pemetaan masukan menggunakan peristiwa masukan yang dikodekan secara keras atau tindakan masukan yang dapat dipetakan ulang.

    • Nilai sumbu dapat dipetakan ke dua tindakan berbeda dengan zona mati yang dapat dikonfigurasi.

    • Gunakan kode yang sama untuk mendukung keyboard dan gamepad.

  • Masukan papan ketik.

    • Tombol dapat dipetakan dalam mode "fisik" agar tidak bergantung pada tata letak keyboard.

  • Masukan tetikus.

    • Kursor tetikus dapat terlihat, disembunyikan, ditangkap atau dibatasi dalam jendela.

    • Saat ditangkap, masukan mentah akan digunakan pada Windows dan Linux untuk menghindari pengaturan akselerasi mouse OS.

  • Input gamepad (hingga 8 pengontrol simultan).

  • Input pena/tablet dengan dukungan tekanan.

Jaringan

  • Jaringan TCP tingkat rendah menggunakan StreamPeer dan TCPServer .

  • Jaringan UDP tingkat rendah menggunakan PacketPeer dan UDPServer .

  • Permintaan HTTP tingkat rendah menggunakan HTTPClient .

  • Permintaan HTTP tingkat tinggi menggunakan HTTPRequest .

    • Mendukung HTTPS secara langsung menggunakan sertifikat yang dibundel.

  • API multipemain tingkat tinggi menggunakan UDP dan ENet.

    • Replikasi otomatis menggunakan panggilan prosedur jarak jauh (RPC).

    • Mendukung transfer yang tidak dapat diandalkan, andal, dan teratur.

  • Klien dan server WebSocket , tersedia di semua platform.

  • Klien dan server WebRTC , tersedia di semua platform.

  • Dukungan untuk UPnP untuk menghindari persyaratan meneruskan port saat menghosting server di belakang NAT.

Internasionalisasi

  • Dukungan penuh untuk Unicode termasuk emoji.

  • Simpan string lokalisasi menggunakan CSV atau gettext .

    • Dukungan untuk menghasilkan file POT dan PO gettext dari editor.

  • Gunakan string lokal dalam proyek Anda secara otomatis dalam elemen GUI atau dengan menggunakan tr()fungsi.

  • Dukungan untuk konteks pluralisasi dan penerjemahan saat menggunakan terjemahan gettext.

  • Dukungan untuk penataan huruf dua arah , pembentukan teks, dan formulir lokal OpenType.

  • Pencerminan UI otomatis untuk lokal kanan-ke-kiri.

  • Dukungan untuk pseudolokalisasi untuk menguji proyek Anda untuk keramahan i18n.

Integrasi Windowing dan OS

  • Menghasilkan beberapa jendela independen dalam satu proses.

  • Pindahkan, ubah ukuran, perkecil, dan maksimalkan jendela yang dibuat oleh proyek.

  • Ubah judul dan ikon jendela.

  • Minta perhatian (akan menyebabkan bilah judul berkedip di sebagian besar platform).

  • Mode layar penuh.

    • Menggunakan layar penuh tanpa bingkai secara default di Windows untuk alt-tabbing yang cepat, tetapi secara opsional dapat menggunakan layar penuh eksklusif untuk mengurangi jeda input.

  • Jendela tanpa batas (layar penuh atau non-layar penuh).

  • Kemampuan untuk selalu menjaga jendela berada di atas.

  • Integrasi menu global pada macOS.

  • Menjalankan perintah dengan cara memblokir atau tidak memblokir (termasuk menjalankan beberapa contoh proyek yang sama).

  • Buka jalur berkas dan URL menggunakan penangan protokol default atau khusus (jika terdaftar pada sistem).

  • Menguraikan argumen baris perintah khusus.

  • Biner Godot apa pun (editor atau proyek yang diekspor) dapat digunakan sebagai server tanpa kepala dengan memulainya menggunakan --headlessargumen baris perintah. Hal ini memungkinkan menjalankan mesin tanpa GPU atau server tampilan.

Seluler

  • Pembelian dalam aplikasi di Android dan iOS .

  • Dukungan untuk iklan menggunakan modul pihak ketiga.

Dukungan XR (AR dan VR)

  • Dukungan siap pakai untuk OpenXR .

    • Termasuk dukungan untuk headset desktop populer seperti Valve Index, headset WMR, dan Quest over Link.

  • Dukungan untuk headset berbasis Android menggunakan OpenXR melalui plugin.

    • Termasuk dukungan untuk headset mandiri yang populer seperti Meta Quest 1/2/3 dan Pro, Pico 4, Magic Leap 2, dan Lynx R1.

  • Perangkat lain yang didukung melalui struktur plugin XR.

  • Berbagai perangkat canggih tersedia yang mengimplementasikan fitur-fitur umum yang dibutuhkan oleh aplikasi XR.

Sistem GUI

GUI Godot dibuat menggunakan simpul Kontrol yang sama yang digunakan untuk membuat game di Godot. UI editor dapat dengan mudah diperluas dengan berbagai cara menggunakan add-on.

Simpul:

  • Tombol.

  • Kotak centang, tombol centang, tombol radio.

  • Entri teks menggunakan LineEdit (satu baris) dan TextEdit (beberapa baris). TextEdit juga mendukung fitur penyuntingan kode seperti menampilkan nomor baris dan penyorotan sintaksis.

  • Menu tarik-turun menggunakan PopupMenu dan OptionButton .

  • Bilah gulir.

  • Label.

  • RichTextLabel untuk teks yang diformat menggunakan BBCode , dengan dukungan untuk efek animasi khusus.

  • Pohon (juga dapat digunakan untuk merepresentasikan tabel).

  • Pemilih warna dengan mode RGB dan HSV.

  • Kontrol dapat diputar dan diubah skalanya.

Perekat:

Tema:

  • Editor tema bawaan.

    • Hasilkan tema berdasarkan pengaturan tema editor saat ini.

  • Tema berbasis vektor prosedural menggunakan StyleBoxFlat .

    • Mendukung sudut membulat/miring, bayangan jatuh, lebar per batas, dan antialiasing.

  • Tema berbasis tekstur menggunakan StyleBoxTexture .

Ukuran distribusi Godot yang kecil dapat menjadikannya alternatif yang cocok untuk kerangka kerja seperti Electron atau Qt.

Animasi

  • Kinematika langsung dan kinematika terbalik.

  • Dukungan untuk menganimasikan properti apa pun dengan interpolasi yang dapat disesuaikan.

  • Dukungan untuk memanggil metode dalam track animasi.

  • Dukungan untuk memutar suara di trek animasi.

  • Dukungan untuk kurva Bézier dalam animasi.

Format berkas

  • Adegan dan sumber daya dapat disimpan dalam format berbasis teks atau biner.

    • Format berbasis teks dapat dibaca manusia dan lebih ramah terhadap kontrol versi.

    • Format biner lebih cepat disimpan/dimuat untuk adegan/sumber daya yang besar.

  • Membaca dan menulis file teks atau biner menggunakan FileAccess .

    • Secara opsional dapat dikompresi atau dienkripsi.

  • Membaca dan menulis file JSON .

  • Membaca dan menulis file konfigurasi gaya INI menggunakan ConfigFile .

    • Dapat (de)serialisasi tipe data Godot apa pun, termasuk Vector2/3, Color, ...

  • Membaca berkas XML menggunakan XMLParser .

  • Muat dan simpan gambar, audio/video, font dan arsip ZIP dalam proyek yang diekspor tanpa harus melalui sistem impor Godot.

  • Kemas data permainan ke dalam file PCK (format khusus yang dioptimalkan untuk pencarian cepat), ke dalam arsip ZIP, atau langsung ke dalam file yang dapat dieksekusi untuk distribusi file tunggal.

  • Ekspor file PCK tambahan yang dapat dibaca oleh mesin untuk mendukung mod dan DLC.

Aneka ragam

  • Pemutaran video dengan dukungan bawaan untuk Ogg Theora.

  • Mode Movie Maker untuk merekam video dari proyek yang sedang berjalan dengan audio yang tersinkronisasi dan kecepatan bingkai yang sempurna.

  • Akses tingkat rendah ke server yang memungkinkan melewati overhead pohon adegan saat diperlukan.

  • Antarmuka baris perintah untuk otomatisasi.

    • Ekspor dan terapkan proyek menggunakan platform integrasi berkelanjutan.

    • Skrip pelengkap shell tersedia untuk Bash, zsh dan fish.

    • Cetak teks berwarna ke keluaran standar pada semua platform menggunakan print_rich .

  • Dukungan untuk modul C++ yang ditautkan secara statis ke biner mesin.

  • Mesin dan editor ditulis dalam C++17.

    • Dapat dikompilasi menggunakan GCC, Clang, dan MSVC. MinGW juga didukung.

    • Ramah terhadap para pembuat paket. Dalam kebanyakan kasus, pustaka sistem dapat digunakan sebagai pengganti pustaka yang disediakan oleh Godot. Sistem pembuatan tidak mengunduh apa pun. Pembuatan dapat direproduksi sepenuhnya.

  • Dilisensikan di bawah lisensi MIT yang permisif.

Lihat juga

Repositori proposal Godot mencantumkan fitur-fitur yang telah diminta oleh komunitas dan dapat diimplementasikan dalam rilis Godot mendatang.

Tidak ada komentar:

Posting Komentar