Table of Contents

Menambahkan target pelacakan Mega

Artikel ini memperkenalkan cara menambahkan target pelacakan Mega dan cara memuat model lingkungan di editor Unity untuk membantu pengembangan.

Sebelum memulai

Catatan

Konten dan alat berikut hanya berlaku untuk proses pengembangan aplikasi Unity menggunakan EasyAR Mega.

Jika Anda mengembangkan aplikasi mini, silakan merujuk ke membuat dan mengunggah anotasi menggunakan editor Unity (pengembangan aplikasi mini).

Jika Anda hanya ingin melihat hasil pemetaan Mega, silakan merujuk ke pratinjau mesh pemandangan 3D dalam panduan penggunaan Mega.

Jika Anda perlu menjalankan simulasi untuk melihat efek pelokalan, tetapi Anda tidak memiliki proyek aplikasi Unity yang dapat digunakan, silakan merujuk ke pratinjau efek simulasi dalam panduan penggunaan Mega.

Target pelacakan Mega

Target pelacakan Mega adalah objek kosong yang berisi komponen BlockController, disebut block. Di dalam scene, block akan diatur di bawah objek kosong yang berisi komponen BlockRootController, objek ini secara default bernama MegaBlocks. Semua objek block di bawah MegaBlocks mewakili semua target pelacakan dalam perpustakaan pelokalan saat ini.

alt text

Dalam pengembangan, seringkali perlu menggunakan model block untuk membantu melihat dan menempatkan konten 3D. Model ini dapat dimuat ke dalam scene menggunakan alat untuk memudahkan peninjauan dan referensi.

alt text

Posisi model sejajar dengan target pelacakan block, sehingga konten 3D dapat langsung ditempatkan pada model.

Kiat

Model disimpan di bawah node alat, hanya ada dalam mode editor, dan tidak akan dimasukkan ke dalam aplikasi akhir.

Menambahkan target pelacakan di editor

Metode ini memerlukan konfigurasi BlockHolder.BlockRootSource menjadi External (default) atau Mixed.

alt text

Menambahkan alat Block Viewer for Unity Developer

Di tampilan Hierarchy, klik kanan pada area kosong, lalu melalui menu EasyAR Mega > Tool > Block Viewer for Unity Developer (Edit Mode) untuk menambahkan alat Block Viewer untuk pengembangan Unity.

alt text

Penting

Saat mengembangkan aplikasi Mega dengan Unity, Anda harus menggunakan alat Block Viewer for Unity Developer. Alat lain di bawah menu EasyAR Mega > Tool tidak cocok untuk pengembangan aplikasi Unity.

Meskipun Annotation Tool memiliki fungsi serupa, beberapa fungsi alat ini akan dihapus di versi mendatang, sehingga tidak disarankan untuk digunakan.

Fungsi anotasi Annotation Tool (hanya anotasi itu sendiri) akan segera dipindahkan ke situs web pusat pengembangan EasyAR, pemuatan block mesh dan penempatan model tidak terpengaruh.

Setelah alat berhasil ditambahkan, node EasyAR.Mega.BlockViewer (Dev) dan node MegaBlocks akan muncul di hierarki scene.

alt text

Menghasilkan target pelacakan — block

Pilih node EasyAR.Mega.BlockViewer (Dev), di panel Inspector isi informasi akun EasyAR dan masuk;

alt text

Klik tombol di sebelah kanan Mega Cloud Service;

alt text

Pilih Layanan pelokalan Mega yang ingin digunakan, klik OK.

alt text

Setelah memilih layanan, daftar block di perpustakaan saat ini akan ditampilkan di bawah node MegaBlocks dan ditampilkan di panel alat.

alt text

Kiat

Mengapa MegaBlocks saya kosong?

Disarankan untuk memeriksa apakah perpustakaan pelokalan saya sudah dapat digunakan?

Sampai di sini, target pelacakan block telah dihasilkan, setiap node anak yang dimulai dengan Block_ di bawah node MegaBlocks mewakili satu target pelacakan block.

Memuat model block

Klik Load untuk memilih Block:

alt text

Setelah pemuatan selesai, Block akan ditampilkan di jendela Scene.

alt text

Menambahkan target pelacakan secara otomatis saat pelokalan berhasil

Metode ini memerlukan konfigurasi BlockHolder.BlockRootSource menjadi Internal atau Mixed.

Dalam dua mode ini, jika sebuah block baru dilokalisasi dan tidak ada block tersebut di bawah node BlockHolder.BlockRoot, block baru ini akan secara otomatis ditambahkan ke node BlockHolder.BlockRoot. Jika BlockHolder.BlockRoot tidak ada, node tersebut akan dibuat secara otomatis.

Kiat

Saat menambahkan target pelacakan secara otomatis saat pelokalan berhasil, model block tidak dapat dimuat, hanya target pelacakan block yang dapat ditambahkan.

Menambahkan target pelacakan dalam skrip

Metode ini memerlukan konfigurasi BlockHolder.BlockRootSource menjadi Internal atau Mixed, dalam hal ini jika BlockHolder.BlockRoot tidak ada, node tersebut akan dibuat secara otomatis. Atau Anda juga dapat menentukan objek BlockHolder.BlockRoot terlebih dahulu di editor saat BlockHolder.BlockRootSource adalah External.

Catatan

Jika block tidak ada di perpustakaan pelokalan, meskipun ditambahkan ke scene menggunakan skrip, block tidak dapat dilokalisasi.

Anda dapat menggunakan metode BlockHolder.Hold untuk menambahkan block baru ke node BlockHolder.BlockRoot. Metode ini biasanya digunakan saat menggunakan file anotasi ema, skrip membaca informasi anotasi dan menambahkan block.

Misalnya, cuplikan kode berikut menunjukkan cara menggunakan informasi dari file anotasi untuk menambahkan block:

foreach (var item in ema.blocks)
{
    var info = new BlockController.BlockInfo { ID = item.id.ToString(), Timestamp = item.timestamp };
    if (!item.keepTransform && item.location.OnSome)
    {
        blockHolder.Hold(info, item.location.Value);
    }
    else
    {
        blockHolder.Hold(info, item.transform.ToUnity());
    }
}
Kiat

Saat menambahkan target pelacakan saat runtime menggunakan skrip, model block tidak dapat dimuat, hanya target pelacakan block yang dapat ditambahkan.

Langkah selanjutnya

Topik terkait