İçeriğe geç
TREN
Atlıhan Harita

LCC for Unity Kullanım Kılavuzu · Özellik Geliştirme Kılavuzu

Uygulama ve Veriyi Birlikte Paketleme Geliştirme Kılavuzu

Bölüm 15.18 / 17Kılavuz sürümü v2.3.0Türkçe

LCC Unity SDK, uygulamanın veriden ayrılmasını destekler. Ancak gerçek uygulama geliştirmede, uygulamayı 3DGS sahne verisiyle birlikte paketleyip yayınlamanız gerekebilir. Bu belge, PC ve Android için birlikte paketleme yaklaşımlarını tanıtır.

PC'de Çalışma Zamanında Dinamik Veri Yükleme

SDK, veriyi çalışma zamanında Load() yöntemiyle yükler; belirtilen yol bir mutlak yol olmalıdır, örneğin G:\Data\xxx.lcc2.

Uygulamayı ve veriyi birlikte dağıtmak için uygulamanın çalışma yolunu ve LCC sahne verisinin göreli yolunu birleştirerek mutlak bir yol oluşturabilirsiniz. Adımlar şöyledir:

  1. Unity'nin Application.dataPath özelliğiyle uygulamanın çalışma yolunu alın.
  2. Verinin göreli yolunu çalışma yoluyla birleştirerek 3DGS sahne verisinin mutlak yolunu oluşturun.

Kod örneği aşağıdadır:

using UnityEngine;
using LCCCore;
using XGrids.LCC;

public class LCCRenderer : MonoBehaviour
{
    public LCCManager m_manager;
    public string m_FilePath;
    private LCCCore.Renderer m_renderer;

    void Start()
    {
        m_renderer = m_manager.GetRender(this.transform);

#if !UNITY_EDITOR
        string _dataPath = Application.dataPath;
        string _dataPath2 = _dataPath + "/data/meta.lcc2";   // Concatenate the LCC file relative path
        m_FilePath = _dataPath2.Replace('/', '\\');
#endif

        m_renderer.Load(m_FilePath, onLoadProgress, onLoadCallback);
    }
}

Not:

  • Yukarıdaki yol birleştirme işlemi #if !UNITY_EDITOR ile sarılmıştır: Unity Editör durumunda Inspector'da belirtilen m_FilePath (yerel geliştirme verisi) doğrudan kullanılır; uygulama çalışma dizinindeki göreli yol yalnızca yayınlanmış çalışma ortamında birleştirilir.
  • PC derlemesinde Application.dataPath, uygulama dizini altındaki <AppName>_Data klasörünü işaret eder. Bu nedenle verinin göreli yolu, verinin daha sonra kopyalanacağı konumla eşleşmelidir.
  • Windows yolları ters eğik çizgi \ kullanır; örnekte dönüştürme için Replace('/', '\\') kullanılmıştır.

LCC Sahne Verisini Belirtilen Dizine Kopyalama

Unity projesini normal şekilde derleyip uygulamayı derleme/yayınlama işleminden sonra, oluşturulan uygulama dizin yapısı aşağıda gösterilmiştir.

Unity derlemesi ve yayınlama sonrasında oluşturulan uygulama dizin yapısı

Unity derlemesi ve yayınlama sonrasında oluşturulan uygulama dizin yapısı

Koddaki LCC göreli yolu data/meta.lcc2 uyarınca, LCC sahne verisini uygulamanın oluşturduğu dizin altındaki ilgili konuma kopyalamanız gerekir. Aşağıda gösterilmiştir.

LCC sahne verisini göreli yola göre uygulama dizinine kopyalayın

LCC sahne verisini göreli yola göre uygulama dizinine kopyalayın

Dizinin Tamamını Paketleme

Uygulama dizininin tamamını paketleyin (Zip sıkıştırma) ve ihtiyacı olan kullanıcılara dağıtın. Kullanıcı arşivi çıkarıp Viewer'ı çalıştırdığında, belirtilen dizindeki sahne verisi yüklenebilir.

Android Paketleme İş Akışı

Android, PC ile aynı yaklaşımı kullanır; ancak veri yolunda küçük bir değişiklik gerekir: veri kök dizini olarak Application.persistentDataPath kullanın.

Görüntüleme betiğini, veri yolunu persistentDataPath ile birleştirecek şekilde değiştirin. Platform türünün SetPlatformType() ile ayrıca (GetRender() öncesinde) ayarlandığını, Load() yönteminin ise yalnızca yolu ve geri çağrıları aldığını unutmayın:

void Start()
{
    // The platform type must be set before GetRender()
    m_manager.SetPlatformType(PlatformType.Pico);

    m_renderer = m_manager.GetRender(this.transform);
    m_renderer.Load(
        $"{Application.persistentDataPath}/LccData/meta.lcc2",
        onLoadProgress,
        onLoadCallback);
}

Paketleme ve dağıtım adımları:

  1. Kodu kaydedin ve mobil cihazı, Unity projesinin bulunduğu bilgisayara USB 3.0 kablosuyla bağlayın.
  2. Unity menü çubuğunda File → Build Settings → Build seçeneğini seçerek APK dosyasını alın.
  3. APK dosyasını mobil cihaza kopyalayın ve yükleyin.
  4. Yüklemeden sonra, sistemin ilgili paket adı için dizini oluşturması amacıyla uygulamayı önce bir kez açın, ardından uygulamayı kapatın.
  5. İlgili paket adının dizini altında bir LccData klasörü oluşturun ve LCC verisini bu klasöre kopyalayın (yol genellikle Android cihaz depolama alanı → Android → data → uygulama BundleID → Files şeklindedir; belirli dizin için Android uygulama yükleme yoluna bakın).
  6. Uygulamayı yeniden açın; LCC içeriği telefonda veya VR cihazında görüntülenir.
Android uygulama paket adı dizini altında bir LccData klasörü oluşturun ve veriyi içine kopyalayın

Android uygulama paket adı dizini altında bir LccData klasörü oluşturun ve LCC verisini içine kopyalayın

Notlar

  • iOS, yukarıdaki yerel dizinden dinamik yükleme yaklaşımını desteklemez. iOS, bir uygulamanın belirtilen klasör altındaki tüm dosyaları okumasına izin vermez; yalnızca belirtilen tek bir dosyayı okuyabilir.
  • Mobil ve VR cihazlarda, veriyi doğrudan APK uygulama paketine eklemek yerine veriyi bir sunucuya yerleştirmeniz ve çalışma zamanında veriyi sunucudan çekmeniz önerilir. Doğrudan paketlemek uygulama paketini çok büyütür ve şişirir.

Bu bölüm XGRIDS'in resmî kullanım kılavuzundan Türkçeye çevrildi; ekran görüntüleri ve arayüz adları özgün haliyle İngilizcedir. İngilizce aslı (yeni sekmede açılır) · Güncelleme:

XGRIDS Türkiye

Kurulumda ve Sahada Yanınızdayız

Atlıhan Harita; cihaz kurulumu, firmware güncellemesi, yazılım kullanımı ve saha uygulamalarında eğitim ve teknik destek verir. Sorunuzu iletin, uzmanımız size dönsün.

+90 216 546 0804