Sistem Pembangunan

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Roblox Battle Royale menyertakan sistem pembangunan yang memungkinkan pengguna membangun struktur mereka sendiri untuk mencapai tanah lebih tinggi untuk sudut pandang yang lebih baik, atau untuk memberikan perlindung selama pertempuran. Menggunakan menu, pengguna dapat memilih dari beberapa jenis ubin yang berbeda dan menempatkannya di dunia.

Building Example

Untuk mempertahankan sistem yang beraturan dan terstruktur:

  • Setiap ubin harus terhubung ke ubin lain atau ke tanah.
  • Tempatkan semua ubin bangunan dalam grid yang koordinasi dengan dunia game sehingga ubin terhubung dengan benar dan tidak bertumpang-tindik.

Komposisi Kachel

Agar pengguna dapat dengan cepat dan mudah membangun ubin baru, sistem pembangunan perlu memahami mana ubin yang terhubung satu sama lain dan di mana ubin baru dapat ditempatkan di grid.

Keramik menggunakan 3 komponen: asi visual yang digunakan sebagai objek kuile, informasi tentang ruang yang ditempati kuile dalam referensi ke objek dunia lain, dan poin koneksi dari ubin yang memungkinkan ubin tambahan untuk terhubung ke sudut yang tersedia.

Aset

Sebuah aset adalah BasePart ( Part , MeshPart , dll) yang ditempatkan di 1> ReplicatedStorage/BuildingSystem/Assets1> yang mewakili apa yang terlihat seperti di dunia game. 4> Class.BasePart ini harus memiliki dua anak:

  • ObjectType — A StringValue dengan Value dari nama jenis ubin.
  • MulaiPutar — A NumberValue dengan Value dari rotasi pemutar pada saat pengguna menempatkannya di dunia.

Penggunaan

Pastikan bahwa sebuah ubin mengisi lokasi yang benar dalam sistem grid adalah penting dan dapat dilakukan menggunakan bitMask. BitMask mewakili ruang fisik yang ditempati oleh jenis ubin tertentu dalam sebuah bagian dasar dari ruang dunia, atau sel. Set

Indeks BitMakna
0Wajah bawah sel
1Wajah atas sel
2Wajah kanan sel
3Wajah belakang sel
4Wajah kiri sel
5Wajah depan sel
6 +X, –Y, +Z Octant sel dengan asal di tengah sel
7 +X, +Y, +Z Octant sel dengan asal di tengah sel
8 -X, -Y, +Z Octant sel dengan asal di tengah sel
9 -X, +Y, +Z Octant sel dengan asal di tengah sel
10 -X, -Y, -Z octant dari sel dengan asal di tengah sel
11 -X, +Y, -Z octant dari sel dengan asal di tengah sel
12 +X, –Y, –Z octant dari sel dengan asal di tengah sel
13 +X, +Y, –Z octant dari sel dengan asal di tengah sel

Koneksivitas

Keramik perlu terhubung satu sama lain untuk membuat struktur. Anda dapat menggunakan topeng bit yang mewakili apa bagian dari wajah/udung sel yang di sentuh oleh jenis ubin pembuatan. Sebuah ubin sistem pembangunan / objek tersambung dengan serangkaian poin koneksi, bit, di permukaan sel. Mereka berurutan dalam cara berikut di wajah sel:

Octant Cube Diagram

Objek sistem bangunan dianggap terhubung ke objek sistem bangunan lain di grid jika mereka berbagi setidaknya 2 titik koneksi di permukaan sel.

Membuat Jenis Kaki Baru

Untuk membuat ketikubin baru:

  1. Tempatkan aset di ReplicatedStorage/BuildingSystem/Assets . Ingat bahwa itu harus berisi ObjectType dan StartingRotation anak-anak seperti yang di definisikan di atas.

    Battle Royale Weapon Example
  2. Definisikan Penggunaan dan Koneksi untuk jenis ubin baru Anda di ReplicatedStorage/BuildingSystem/Libraries/Grid/ObjectTypeConfigurations :

    Battle Royale Weapon Example

Misalnya, jenis ubin dinding Wall ditunjukkan sebagai berikut:


ObjectTypeConfigurations.Wall = {
ASSET_OFFSET_FROM_CENTER = Vector3.new(0, 0, -CELL_DIMENSIONS.Z / 2),
CONNECTIVITY = 0xFF8000, -- 0b 111 111 111 000 000 000 000 000
OCCUPANCY = 0x20, -- 0b 00 00 00 00 1 0 0 0 0 0
}

Bekerja Dengan Tanah

Jika Anda ingin membuat peta dengan free-form tanah yang berbaris dengan sempurna dengan sistem pembangunan, kami merekomendasikan Anda menggunakan sistem import ketinggian seperti yang ditunjukkan dalam Environmental Terrain dan bahwa Anda mengamati detail berikut:

  • Terreno di Roblox diwakili oleh matriks阵 tiga dimensi dari voxel, masing-masing dari mereka mengambil kubus 4×4×4 studs di dunia. Karena ini, Roblox Battle Royale menggunakan ukuran sel lintang 20×16×20, dengan ubin dinding yang 20×16×1 studs dan ubin langit/

  • Setiap pixel dalam gambar tinggi Anda harus mewakili satu voxel tanah di X/Z pesawat, jadi area 5×5 dalam pixel mewakili satu sel jaringan sistem bangun yang mengambil area 20×20.

  • Dalam gambar peta ketinggian Anda, pastikan nilai saluran merah atau saluran abu-abu untuk setiap pixel dibagi oleh ketinggian jaringan sistem pembelajaran Anda sehingga ubin lantai berada dengan baik di atas tanah.

  • Ketika Anda mengimpor peta ketinggian Anda, atur:


    Position (X, Y, Z) = 0, 0, 0
    Size (X, Y, Z) = heightmap_width × 4, 256, heightmap_length × 4