LCC Unity SDK tarafından sunulan ve LCCManager ile Görüntüleme Motoru metotlarında kullanılan enum ve struct yapıları.
Enum'lar
PlatformType
Hedef çalışma zamanı platformu. SetPlatformType() tarafından kullanılır.
public enum PlatformType { PC, Mac, Android, iOS, Pico, Quest, AVP, PicoSwan, OpenXR, PCVR }
ActiveRenderMode
Genel görüntüleme mimarisi modu. SwitchRenderPass() tarafından kullanılır.
public enum ActiveRenderMode { MultiRender, SingleRender }
| Değer | Açıklama |
|---|---|
MultiRender | Paylaşımlı bir GPU arabelleği kullanır ve aynı anda en fazla 255 Renderer görüntüleyebilir |
SingleRender | SDK, görüntüleme yolunu veri boyutuna göre otomatik olarak seçer |
Yalnızca PC / Mac platformları için geçerlidir; mobil / VR platformları otomatik olarak uyarlanabilir bir strateji benimser ve
SwitchRenderPass()çağrısı reddedilir.
SourceType
Veri kaynağı türü. Görüntüleme Motoru.GetSourceType() tarafından döndürülür.
public enum SourceType { LCC, PLY, SPLAT, TYY, None, SOG, SPZ, KSPLAT }
DataType
Veri biçimi türü. Görüntüleme Motoru.GetDataType() tarafından döndürülür.
public enum DataType { L1, L2, L2Pro, K2, Drone, Drone_L2, PortalCam, None }
MipMode
Mip görüntüleme modu. SetMipMode() tarafından kullanılır.
public enum MipMode { Mip, Non_Mip }
| Değer | Açıklama |
|---|---|
Mip | Mipmap örneklemesi kullanır (varsayılan) |
Non_Mip | Mipmap'i devre dışı bırakır; görüntüleme ayrıntıları daha incedir ancak performans yükü daha yüksektir |
SnapType
Yakalama türü. HitResult.snapType ve SnapPreviewState.snapType tarafından kullanılır.
public enum SnapType { None, Edge, Corner }
SelectionMode
Düğüm seçim stratejisi. SetSelectionMode() tarafından kullanılır.
public enum SelectionMode { Auto, Normal, Large }
| Değer | Açıklama |
|---|---|
Auto | Sahnenin genel sınır kutusuna göre otomatik olarak belirlenir (varsayılan) |
Normal | Küçük ve orta ölçekli sahnelere uygundur |
Large | Çok büyük sahnelere uygundur (1000 metreden fazla) |
RenderMode
Nokta bulutu / 3DGS görüntüleme modu. SwitchRenderMode() tarafından kullanılır.
public enum RenderMode { PointCloud, LCCGS }
| Değer | Açıklama |
|---|---|
PointCloud | Nokta bulutu görüntüleme |
LCCGS | 3DGS görüntüleme |
SelectMode
Seçimi alma/hariç tutma modu. Data2D ve Data3D gibi seçim verileri tarafından kullanılır.
public enum SelectMode { normal, invert, clip }
OperationMode
Çoklu geometri için boolean işlem modu. Data3D ve DataMix gibi seçim verileri tarafından kullanılır.
public enum OperationMode { normal = 0, erase = 1 }
| Değer | Açıklama |
|---|---|
normal | Birleşim |
erase | Çıkarma |
EditType
Karma seçimdeki girdi türü. DataMix ve ToneMix tarafından kullanılır.
public enum EditType { Edit2D, Edit3D }
ShapeType
3B kırpma / vurgulama geometri türü. Data3D, DataMix ve ToneMix tarafından kullanılır.
public enum ShapeType { box, sphere }
Struct'lar
HitResult
Raycast isabet sonucu. Raycast(), RaycastMesh() ve RaycastWithSnap() tarafından döndürülür.
public struct HitResult {
public bool isHit; // Whether a hit occurred
public float distance; // Distance
public Vector3 hitPos; // Hit point in world coordinates
public Vector3 normal; // Hit normal
public float hitAlpha; // Alpha of the hit ellipsoid
public float dist2Origin; // Distance to the ray origin
public float scale; // Ellipsoid scale
public SnapType snapType; // Snap type (None / Edge / Corner)
public Vector3 originalHitPos; // Original hit point before snapping
}
İsabet noktasının dünya koordinatı alanı
hitPosolarak adlandırılır.
SnapPreviewState
Yakalama önizleme durumu. GetSnapPreviewState() tarafından döndürülür.
public struct SnapPreviewState {
public bool hasTarget; // Whether there is a snap target
public SnapType snapType; // None / Edge / Corner
public Vector2 screenPos; // Screen coordinates of the snap target
public float distanceToMouse; // Pixel distance to the mouse position
}
screenPosekran koordinatlarındadır (piksel), dünya koordinatlarında değildir. Dünya koordinatları gerektiğindeHitResult.hitPosdeğerini almak için RaycastWithSnap() kullanın.
Data2D
2B doku projeksiyon seçimi. 2B doku kırpma / vurgulama için kullanılır.
public struct Data2D {
public Texture2D texture; // R8 1024x1024 mask texture
public Matrix4x4 mv; // ModelView matrix
public Matrix4x4 mvp; // ModelViewProjection matrix
public SelectMode mode; // normal / invert
}
Data3D
3B geometri seçimi. 3B geometri kırpma / vurgulama için kullanılır.
public struct Data3D {
public ShapeType type; // box / sphere
public Matrix4x4 invMat; // Inverse transform matrix of the geometry
public OperationMode operation; // normal=union, erase=subtraction
public SelectMode mode; // normal / invert / clip
}
DataMix
2B + 3B karma seçim. Karma mod kırpma / vurgulama için kullanılır.
public struct DataMix {
public EditType editType; // Edit2D / Edit3D
public ShapeType type; // 3D geometry type
public Matrix4x4 invMat; // 3D inverse transform matrix
public Texture2D texture; // 2D mask texture
public Matrix4x4 mv; // 2D ModelView
public Matrix4x4 mvp; // 2D MVP
public OperationMode operation;
public SelectMode mode;
}
ToneMix
DataMix üzerine ton parametreleri ekleyen ton seçimi. SetTone() tarafından kullanılır.
public struct ToneMix {
public EditType editType; // Edit2D / Edit3D
public ShapeType type; // 3D geometry type
public Matrix4x4 invMat; // 3D inverse transform matrix
public Texture2D texture; // 2D mask texture
public Matrix4x4 mv; // 2D ModelView
public Matrix4x4 mvp; // 2D MVP
public OperationMode operation;
public SelectMode mode;
public float brightness; // Brightness (default 1.0)
public float saturation; // Saturation (default 1.0)
public float contrast; // Contrast (default 1.0)
public int lutid; // LUT filter index (0 = not used)
}
PointLightData
Özel nokta ışık / spot ışık verisi. SetLights() tarafından kullanılır.
public struct PointLightData {
public float3 position; // World coordinates
public int lightType; // 0=point light, 1=spot light
public float3 color; // RGB color (no alpha component)
public float intensity; // Light intensity
public float3 direction; // Spot light direction (ignored for point light)
public float range; // Light range
public float spotAngle; // Spot light cone angle (degrees, ignored for point light)
public float3 pad; // Alignment padding, no assignment needed
}
Alan türü
Vector4değil,Unity.Mathematics.float3türüdür;coloralfa bileşeni içermez.lightTypedeğeri0olduğunda nokta ışıktır (direction/spotAngleyok sayılır),1olduğunda ise spot ışıktır.
DecalOcclusionSettings
Çıkartma (decal) oklüzyon eleme kalite parametreleri. SetDecalOcclusionSettings() tarafından kullanılır.
public struct DecalOcclusionSettings {
public float opacityCutoff; // Minimum opacity in [0,1] for a splat to participate in the depth map, default 0 (all participate)
public float depthBias; // Relative depth tolerance ratio, default 0.05
public int footprintMaxPx; // Maximum square footprint radius (px), 0~16, default 2
public int resolution; // Depth map resolution (px, power of 2, 256~4096), default 1024
public static DecalOcclusionSettings Default { get; } // cutoff=0, bias=0.05, footprint=2, resolution=1024
}
| Alan | Açıklama |
|---|---|
opacityCutoff | Yalnızca opaklığı bu değerden büyük veya eşit olan splat'ler derinlik haritasına katılır; bu, havada asılı kalan / sis benzeri splat'leri filtreleyebilir. Varsayılan 0 (tümü katılır). |
depthBias | Nokta bulutu yüzey kalınlığını mesafeyle orantılı olarak karşılayan göreli derinlik tolerans oranı. Varsayılan 0.05. Çok küçük olması kendi kendine oklüzyon gürültüsüne, çok büyük olması oklüzyonların kaçırılmasına neden olur. |
footprintMaxPx | Komşuluğu kapsamak ve içinden geçme sızıntılarını önlemek için kullanılan, ihtiyatlı en büyük kare ayak izi yarıçapı (piksel cinsinden). 0 tek bir texel'dir, aralık 0~16, varsayılan 2. Çok büyük olması kontur genişlemesine ve aşırı oklüzyona neden olur. |
resolution | Derinlik haritası çözünürlüğü (piksel, 2'nin kuvveti, 256~4096). Düşürmek, oklüzyon sınırlarını biraz daha pürüzlü hale getirme pahasına seyrek boşlukları doldurur. Varsayılan 1024. |
SplatMeta
3DGS verisinin meta verileri. Görüntüleme Motoru.GetMeta() tarafından çıktı olarak verilir; veri kaynağı (source) ve veri biçimi (dataType) gibi meta verileri içerir ve veri tamamen yüklenmeden okunabilir.
LCCMeshBlockInfo
Çarpışma Mesh bloğu meta verileri. Görüntüleme Motoru.GetMeshBlockInfos() tarafından döndürülür.
public struct LCCMeshBlockInfo {
public string id; // Node id, corresponding to LCCMeshBlock.id
public Bounds boundsWorld; // World-space AABB, used to select ids
public Bounds boundsLocal; // Local-space AABB
public int vertexCount; // Vertex count
public int faceCount; // Face count
}
| Alan | Tür | Açıklama |
|---|---|---|
id | string | Düğüm id'si, LCCMeshBlock.id ile eşleşir |
boundsWorld | Bounds | Dünya uzayında AABB, id seçmek için kullanılır |
boundsLocal | Bounds | Yerel uzayda AABB |
vertexCount | int | Köşe sayısı |
faceCount | int | Yüz sayısı |
LCCMeshBlock
Çarpışma Mesh bloğu geometri verileri. Görüntüleme Motoru.GetMeshes() tarafından döndürülür.
public struct LCCMeshBlock {
public string id; // Node id
public Vector3[] vertices; // Vertices, in local coordinates
public int[] triangles; // Triangle indices, three per group
public Bounds boundsLocal; // Bounding box in the same space as vertices
}
| Alan | Tür | Açıklama |
|---|---|---|
id | string | Düğüm id'si |
vertices | Vector3[] | Nesnenin yerel koordinat sistemindeki köşe noktası dizisi |
triangles | int[] | Üçgen indeksleri, her grupta üç adet |
boundsLocal | Bounds | Köşe noktalarıyla aynı uzaydaki sınırlayıcı kutu |
vertices/boundsLocalher ikisi de nesnenin yerel koordinat sistemindedir; Mesh'i taşıyan GameObject'iRenderer.Transformaltına yerleştirmek bunları otomatik olarak hizalar. Tek bir blok 65535'ten fazla köşe noktası içerebilir; bu nedenle Mesh oluşturulmadan öncemesh.indexFormat = IndexFormat.UInt32ayarlanmalıdır.
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:

