Mengumpulkan dan mengkonfigurasi koleksi aset dalam proses impor dan konfigurasi koleksi aset di lokasi pusat dalam pengalaman Anda untuk akses mudah dan mengganti. Proses ini dapat menghemat waktu signifikan saat Anda mempersiapkan untuk membangun lingkungan Anda, terutama jika Anda mengkonfigurasi nilai setiap aset untuk meningkatkan kinerja dan mengoptimalkan penggunaan memori di perangkat mid-
Menggunakan file Art Lingkungan - Assembling.rbxl sebagai referensi, bagian ini dari kurikulum seni lingkungan menunjukkan cara mengumpulkan perpustakaan aset dari sumber daya polished Anda, termasuk instruksi langkah demi langkah tentang:
- Membuat bahan khusus untuk tanah Anda dari tekstur yang dapat Anda ulang.
- Menciptakan objek SurfaceAppearance untuk halaman Anda, dan menerapkannya ke jaringan meshes yang belum dibungkus di library aset Anda.
- Mengatur parameter render untuk aset Anda untuk menjamin kinerja maksimal di semua perangkat.
- Mengubah aset Anda menjadi paket sehingga Anda dapat menyetel ulang dan menggunakannya kembali di semua proyek Anda.
Setelah Anda menyelesaikan bagian ini, Anda akan belajar cara menggunakan perpustakaan aset Anda secara kreatif untuk mengganti atau mengkonversi lingkungan kotak abu-abu, dan menambahkan sentuhan akhir yang meningkatkan ruang 3D total.
Buat Bahan Kustom
Studio mewakili bahan khusus sebagai MaterialVariant objek dalam MaterialService . These MaterialVariant objek memiliki empat propperti yang menggabungkan empat peta 1>texture1> untuk menghasilkan material khusus berkualitas tinggi dengan karakteristik fisik:
- MaterialVariant.ColorMap – Representasi peta tekstur albedo.
- MaterialVariant.MetalnessMap – Menggambarkan peta tekstur kesucian logam.
- MaterialVariant.NormalMap – Menggambarkan peta tekstur normal.
- MaterialVariant.RoughnessMap – Menggambarkan peta tekstur kasar.
Setelah Anda menyediakan peta tekstur untuk kepemilikan ini, Anda dapat menerapkan material baru Anda ke kedua bagian, meshes, dan terreno. Anda dapat menggunakan atau mengubah peta tekstur sampel .png file untuk menciptakan Lumpy Moss, Flowering Lumpy Moss, Lumpy Moss dengan Stones, dan Stones kustom material dalam
Untuk membuat objek MaterialVariant untuk tekstur yang dapat Anda ketuk:
Di tab Rumah atau Model di menu bar, klik tombol Manajer Material . Jendela 1> Manajer Material1> terbuka.
Dalam daftar Materials , pilih bahan dasar yang paling cocok dengan tekstur Anda. Misalnya, jika Anda membuat objek MaterialVariant untuk tekstur Lumpy Moss yang dapat disesuaikan, pilih bahan tanah default sehingga material mewarisi fisiknya.
Di Toolbar , klik ikon ⊕ . Sebuah MaterialVariant baru muncul di palet dengan ikon di sudut kanan bawah yang menunjukkan bahwa itu adalah material khusus.
Di Inspector , buka bagian Umum , lalu ganti nama material untuk mencocokkan nama tekstur yang dapat Anda tumpukkan.
Dalam bagian Peta Textur , di sisi kanan Warna , klik tombol Impor . Sebuah file browser ditampilkan.
Di file browser, pilih map tekstur Albedo .png file untuk tekstur yang dapat ditilepon, lalu tombol Buka . File browser menutup, dan peta warna baru ditampilkan dengan asetID-nya.
Ulangi proses ini untuk Metaless , Normal , dan Roughness map tekstur. Peta material khusus diperbarui untuk mencerminkan peta tekstur.
Dalam bagian Overrides , aktifkan tombol Tetapkan sebagai Override untuk memastikan bahwa ketika Anda menerapkan tanah ke terreno Anda, Studio menggunakan bahan khusus ini.
(Opsional) Jika Anda membuat materi khusus yang mewakili materi organik,
- Di bagian Tiling , klik tombol dropdown Pola .
- Pilih Organik untuk menyurutkan hasil dan mengurangi tampilan yang terlihat.
Ulangi proses ini untuk setiap teksur yang dapat Anda masukkan ke dalam pengalaman Anda.
Mengumpulkan Paket Penampilan Permukaan
Studio menggunakan objek SurfaceAppearance yang dapat Anda buat untuk MeshParts yang mengandung data UV. Mirip dengan bahan kustom, objek SurfaceAppearance memiliki empat propperti yang menggabungkan tiga map objek pemotongan yang menciptakan permukaan visual 3D berkualitas tinggi:
SurfaceAppearance.ColorMap – Menggambarkan peta tekstur albedo. SurfaceAppearance.MetalnessMap – Menggambarkan peta tekstur logam. SurfaceAppearance.NormalMap – Menggambarkan peta tekstur normal. 0> Class.SurfaceSurface.RoughnessMap0> – Menggambarkan peta tekst
Setelah Anda menyediakan peta tekstur ke property ini, Anda dapat membuat objek Class.Surface</
Anda dapat menggunakan atau mengubah peta teksur sampel .png file untuk menciptakan objek SurfaceAppearance yang menghormati data uv untuk modular aset dan proporsi dalam lingkup laser tag lingkungan, atau Anda dapat menggunakan yang Anda desain di bagian sebelumnya dari tutorial yang berlaku untuk modular aset dan proporsi Anda sendiri.
Untuk membuat SurfaceAppearance paket yang dapat Anda anak ke modular kit dan prop Anda:
Sisipkan objek Penampilan Permukaan ke Workspace.
Pilih objek SurfaceAppearance , lalu di jendela Properties , pilih property ColorMap . Pop-up ditampilkan.
Klik tombol Tambahkan Gambar… . Sebuah file browser ditampilkan.
Pilih peta tekstur Albedo untuk tekstur yang sesuai, lalu tombol Buka . File browser ditutup, dan property ColorMap diperbarui dengan ID baru.
Ulangi proses ini untuk MetalnessMap , NormalMap , dan RoughnessMap property, masing-masing memilih map teks mereka dari browser file.
Di jendela Explorer , klik kanan pada objek SurfaceAppearance , lalu pilih Konversi ke Packag dari menu konteks.Dialog 1> Konversi ke Package1> ditampilkan.
Isi judul dan deskripsi lapiran, tetapkan kepemilikan ke diri sendiri atau sebuah grup, lalu klik tombol 1> Submit1> . Setelah selesai, simbol taut tali ganda muncul di atas objek 4> Wajah 4> untuk mengidentifikasinya sebagai paket.
(Opsional) Pilih objek Tampilan anak objek Tampilan Permukaan , lalu di jendela 0>Properti0>, aktifkan 3>Pembaruan Otomatis3> untuk secara otomatis memperbarui paket jika Anda melakukan modifikasi apa pun pada objek 6>Tampilan 6>.
Impor Modular Aset dan Props
Studio mewakili aset dan proporsi modular yang Anda impor sebagai Model
Menggunakan 3D Importer, Anda dapat mengimpor kit modular sampel dan prop ke Studio untuk digunakan dalam perpustakaan aset Anda, atau Anda dapat mengimpor setiap aset yang Anda desain di bagian sebelumnya dari tutorial. Untuk informasi lebih lanjut tentang fungsionalitas alat ini, lihat 3D Importer .
Untuk mengimpor aset modular dan prop ke pengalaman:
Di tab Rumah atau Avatar , klik tombol Impor 3D . Sebuah file browser ditampilkan.
Pilih file .fbx untuk aset modular atau prop.
Verifikasi pratinjau objek dan pastikan bahwa pengaturan impor benar untuk objek Anda.
Verifikasi apa pun pesan peringatan atau kesalahan.
Klik Impor . Asset ditampilkan di jendela Explorer dan di viewport.
Ulangi proses ini untuk setiap modul aset dan prop.
Pindahkan semua aset Anda ke satu area pengalaman dekat geometri greybox Anda. Ini adalah library aset Anda.
Terapkan Data Penampilan Permukaan
Ketika Anda melalui proses pembukaan kembali UV dari mesh dalam perangkat lunak model링 pihak ketiga, perangkat lunak menyimpan data UV dalam file .fbx atau .obj mesin. Saat Anda mengimpor mesin itu ke Studio, obj
Untuk menerapkan SurfaceAppearance data tekstur ke meshes yang belum dibungkus di library aset Anda:
- Di jendela Explorer , klik paket Anda SurfaceAppearance , lalu tekan Ctrl , lalu tekan 0> D 0> ( 3> ⌘ 3> , 5> D5> ) untuk menduplikatnya.
- Anak duplikat SurfaceAppearance paket ke modul atau prop. Aset menerapkan data UV-nya ke peta tekstur dan menunjukkan perawatan visual.
- Ulangi proses ini untuk setiap modul aset dan prop.
Tetapkan Fisika dan Parametre Rendering
Sekarang Anda memiliki aset Anda di Studio, penting untuk menetapkan parameter fisik dan render yang mengizinkan aset untuk menyimpan kualitas visual tertinggi di perangkat dengan keterbatasan memori danGPU. umum, semakin dekat Anda mengikuti panduan dalam bagian ini, semakin performant Anda membuat pengalaman Anda. Namun, penting untuk dianggap dengan hati-hati dalam
Terancang
Properti BasePart.Anchored menentukan apakah sistem fisik Roblox mengubah posisi objek. Saat Anda mengaktifkan properti ini untuk Part atau MeshPart, itu menghapus objek dari perhitungan fisik dinamis yang selalu berjalan di pengalaman, yang ber
Objek yang tidak menyimulasikan respons fisika lebih murah untuk direndahkan karena mereka tidak mengambilGPU yang dibutuhkan untuk mengeksekusikan계산 fisika tersebut. Saat Anda bebas dariGPU, Anda meningkatkan kinerja untuk pengalaman Anda, terutama pada perangkat low-end yang perlu menyimpanGPU untuk gameplay cepat. Itu adalah alasan mengapa setiap
Dapatkan tabrakan
Properti BasePart.CanCollide menentukan apakah objek dapat berinteraksi secara fisik dengan objek lain. Saat Anda mengaktifkan properti ini untuk Part atau MeshPart, objek tidak tersentuh, dan mesin Roblox menghitungnya dalam hitungan fisik. Calcul
Untuk meredakan beberapa dampak ini pada pelaksanaan, nonaktifkan item ini untuk objek yang pengguna tidak akan pernah berinteraksi dengan. Misalnya, lingkungan laser tag akhir menonaktifkan item ini untuk semua daun.
Dapat disentuh
Properti BasePart.CanTouch menentukan apakah Touched dan TouchEnded acara berakhir di objek. Saat Anda mengaktifkan properti ini untuk objek
Proses ini terjadi untuk setiap frame, yang dapat mengambil jumlah signifikan memori jika mesin perlu memeriksa status acara sentuh untuk banyak objek sekaligus. Untuk mengurangi beberapa dampak memori ini, aktifkan saja property ini untuk objek yang harus menyebabkan acara.
Dapatkan
Properti BasePart.CanQuery menentukan apakah mesin Roblox menganggap objek selama operasi pemerintah ruang, seperti raycasting. Studio mengaktifkan properti ini untuk setiap Part atau MeshPart secara default,
Untuk alasan ini, disarankan untuk menonaktifkan property ini untuk objek yang mesin Roblox tidak perlu mempertimbangkan untuk operasi pencarian ruang. Saat membuat keputusan tentang di mana menonaktifkan property ini, pertimbangkan bagaimana setiap item berpengaruh pada gameplaykarena mesin membutuhkan untuk mengak
BayanganPara
Properti BasePart.CastShadow menentukan apakah objek mengkastasi bayangan. Saat Anda mengaktifkan properti ini untuk Part atau MeshPart, mesin Roblox menghitung setiap lokasi vertiks objek saat dijalankan, lalu menarik raycast dari matahari ke salah satu d
Perhitungan ini dapat datang dengan biaya kinerja, terutama ketika Anda memiliki banyak objek kompleks geometrik. Ini karena objek dengan kompleksitas geometris lebih banyak memiliki poligon daripada objek yang sederhana secara geometris, yang berarti mereka memiliki lebih banyak sudut yang dibutuhkan mesin untuk menghitung bayangan objek. Semakin sedikit poligon dalam objek, semakin cepat operasi dan lebih murah
Bayangan dapat memberikan nuansa realisme yang besar kepada objek dengan kedalaman geometrik 3D, jadi ketika Anda memutuskan di mana menonaktifkan propperti ini, pertimbangkan di mana objek memberikan peningkatan visual yang signifikan kepada lingkungan, dan di mana pengguna akan mengamati kehilangan bayangan. Misalnya, bayang
BerduaSisi
Properti MeshPart.DoubleSided menentukan apakah akan menyajikan kedua wajah atau pola di mesin. Saat Anda mengaktifkan properti ini untuk rencana MeshPart, seperti daun, ramb
Propiedad ini berguna untuk menambahkan realisme ke lingkungan Anda, tetapi itu datang dengan biaya kinerja karena mesin perlu menyelesaikan poligon objek dua kali: sekali untuk arah yang menghadap kamera pengguna, dan sekali lagi untuk setiap meshes yang menghadap jauh dari kamera pengguna. Untuk meredakan beberapa dampak ini p
Kesesuaian Tabrakan
Properti MeshPart.CollisionFidelity menentukan seberapa dekat hitbox fisik meshes atau uni dengan representasi visualnya. Secara default, pengaturan ini menyediakan hitbox yang sama persis dengan bentuk poligonal meshes, yang berarti bahwa di mana pengguna bertabrakan dengan objek hampir sama dengan geometri ny
Anda dapat menetapkan nilai ini ke nilai yang berbeda untuk mengurangi ke精确an hitbox meshes. Misalnya, ketika Anda menetapkan nilai ini ke Hull, mesin Roblox secara signifikan mengurangi jumlah sudut vertik
Mirip dengan BasePart.CastShadow, semakin banyak sudut yang dibutuhkan mesin Roblox untuk menyajikan, semakin tinggi biaya performa. Untuk alasan ini, penting untuk mempertimbangkan cara Anda ingin pengguna berinteraksi dengan setiap meshes untuk melihat apakah Anda dap
Untuk menunjukkan konsep ini, referensikan gambar berikut yang menunjukkan hitbox dari setiap mesh dari model wall yang memberikan peningkatan dalam ketinggian di antara lantai pertama dan kedua dari tag laser pengguna akhir. The default hitbox untuk lantai utama memiliki banyak geometri yang tidak perlu ketika hanya perlu memberikan permukaan untuk
Saat Anda membuat keputusan ini, penting untuk mempertimbangkan bagaimana mengubah nilai default dapat berdampak negatif pada pengguna saat mereka menjelajahi lingkungan Anda. Misalnya, jika Anda menetapkan propperti ke Box untuk meshes rendah dinding model dinding, pengguna akan bertabrakan
Catat bahwa penting untuk memiliki hitbox yang tepat berbentuk pada bentuk mesh Anda, terutama ketika Anda perlu mengontrol persis bagaimana pengguna bertabrakan dengan bentuknya. Misalnya, dalam lingkungan laser tag final, penting bagi pengguna untuk hanya bertabrakan dengan ujung pintu gerbang dan bukan pintu gerbang itu sendiri, jika tidak mereka tidak akan pernah dapat masuk atau keluar
Kesesuaian Rendah
Properti MeshPart.RenderFidelity menentukan tingkat detail mesin yang ditampilkan kepada pengguna. Saat Anda menetapkan properti ini ke Enum.RenderFidelity.Automatic , mesin Roblox mengurangi tingkat kejelasan mesin semakin pengguna ber
Semakin banyak objek yang mesin harus rendahkan dengan tepat kepada pengguna dari jarak apa pun, terutama jika mereka memiliki banyak vertikal, meningkatkan biaya performa. Untuk meredakan beberapa dampak ini pada pelaksanaan, atur property ini menjadi Enum.RenderFidelity.Performance untuk obj
Konversi Aset ke Paket
Sekarang semua aset modular Anda ada di Studio dengan parameter render yang ditetapkan untuk menjaga kualitas visual tinggi mereka bagi semua pengguna, saatnya untuk mengubahnya menjadi paket. Penting untuk mengubah aset Anda menjadi paket karena itu memungkinkan Anda untuk menggunakannya berulang kali di seluruh pengalaman Anda dan proyek lainnya. Sel
Karena objek SurfaceAppearance Anda sudah menjadi paket, ketika Anda mengubah objek Model Anda menjadi paket, mereka menjadi paket yang terbuktu. Paket terseret menyulitkan Anda untuk menjaga piramida hierarki anak yang dapat Anda modifikasi terlepas dari paket Model. Ini memung
Untuk mengubah modular Anda aset dan prop menjadi paket:
Di jendela Explorer , klik kanan pada aset modular atau prop, lalu pilih Konversi ke Paket dari menu konteks. Dialog Konversi ke Paket ditampilkan.
Isi Judul dan Deskripsi field, set kepemilikan ke diri sendiri atau sebuah grup, lalu klik tombol Submit . Setelah selesai, simbol link rantai akan muncul di atas ikon model untuk mengidentifikasinya sebagai satu paket.
Ulangi proses ini untuk setiap modul aset dan prop.
Setelah Anda senang dengan tata letak umum dari perpustakaan aset Anda, Anda dapat melanjutkan ke dekorasi lingkungan dengan aset baru Anda yang baru saja dipoles, dan menyiapkan elemen tambahan dari ruang 3D untuk membawa dunia Anda ke hidup.