Evde kullanmak için 3D modeller oluşturma
Giriş Windows Mixed Reality, kullanıcıların uygulamaları başlatmadan önce inerek giriş noktasıdır. Uygulamalarınızı özel Windows Mixed Reality için tasarlarken, uygulama başlatıcısı olarak 3D modeli kullanın ve 3D derin bağlantıları giriş Windows Mixed Reality yer edin. Bu makalede, ana bilgisayar ile uyumlu 3D model oluşturma yönergeleri Windows Mixed Reality özetlemektedir.
Varlık gereksinimlerine genel bakış
Windows Mixed Reality için 3D modeller oluştururken tüm varlıkların karşılaması gereken bazı gereksinimler vardır:
- Dışarı aktarma - Varlıklar .glb (ikili glTF), .obj veya .fbx dosya biçiminde teslim edilecektir
- Modelleme - Varlıklar 10.000 üçgenden az olmalı, LOD başına en fazla 64 düğüm ve 32 alt tireye sahip olmalı
- Malzemeler - Dokular 4096 x 4096'dan büyük ve en küçük mip eşlemesi iki boyutta da 4'den büyük olmayacaktır
- Animasyon - Animasyonlar 30 KARE (36.000 ana kare) <ile 20 dakikadan uzun sürebilir ve = 8192 biçimli hedef köşeler içermesi gerekir
- İyi duruma getirme - Varlıklar WindowsMRAssetConverter kullanılarak iyileştirilmiş olması gerekir. Işletim Windows <= 1709* için gereklidir ve işletim sistemi Windows >= 1803'te önerilir
Not
Uygulama 3B Görüntüleyici farklı biçimleri ve çözünürlükleri destekler, ancak son olarak modelleri giriş Karma Gerçeklik görüntülemeden önce .glb/glTF'ye dönüştürür.
Bu makalenin geri kalan bölümü, bu gereksinimlere ayrıntılı bir genel bakış ve modellerinin ana evle birlikte iyi bir şekilde Windows Mixed Reality içerir.
Ayrıntılı kılavuz
Modelleri dışarı aktarma
Bu Windows Mixed Reality, 3B varlıkların ekli görüntüler ve ikili verilerle .glb dosya biçimi kullanılarak teslim biçimlendirilmiş olmasını bekler. Glb, GlTF biçiminin ikili sürümüdür. Bu sürümDeronos grubu tarafından bakımı yapılan 3B varlık teslimi için ücretsiz bir açık standarttır. glTF birlikte çalışabilir 3D içerik için endüstri standardı olarak geliştikçe, Microsoft'un farklı uygulamalar ve deneyimler genelinde Windows desteklemektedir. Daha önce bir glTF varlığı oluşturmadıysanız, glTF çalışma grubu github sayfasında desteklenen kaynak ve dönüştürücülerin listesini bulabilirsiniz.
Modelleme yönergeleri
Windows, giriş deneyimiyle uyumluluğu sağlamak için varlıkların aşağıdaki modelleme yönergeleri kullanılarak Karma Gerçeklik bekler. Kendi tercihi olarak programda modelleme yapmak için aşağıdaki önerileri ve sınırlamaları unutmayın:
- Yukarı ekseni "Y" olarak ayar gerekir.
- Varlığın pozitif Z eksenine doğru "ileri" ile karşı karşıya olması gerekir.
- Tüm varlıklar sahne kökeninde yer düzlemi üzerinde (0,0,0) inşa edilecektir
- Varlıkların dünya ölçeğinde yazılmalarını sağlamak için Çalışma Birimlerinin metre ve varlıklar olarak ayarlanmış olması gerekir
- Tüm tirelerin bir araya kullanılmasına gerek yok, ancak kaynak kısıtlı cihazları hedeflediğiniz için önerilir
- Tüm meshes tek bir malzemeyi paylaşmalı ve varlığın tamamı için yalnızca bir doku kümesi kullanılmalıdır
- UV'ler 0-1 alanda kare düzende düzende düzende düzende yer alan bir düzende düzen gerekir. İzin verilse de dokuları araklamamak.
- Çoklu UV'ler desteklenmiyor
- Çift taraflı malzemeler desteklenmiyor
Üçgen sayıları ve ayrıntı düzeyleri (LOD)
Ana Windows Mixed Reality, 10.000'den fazla üçgene sahip modelleri desteklemez. Bu s sayımı aşmamalarını sağlamak için, dışarı aktarmadan önce, tirelerinizi üçgene alamanız önerilir. Windows MR, yüksek performanslı ve yüksek kaliteli bir deneyim sağlamak için isteğe bağlı ayrıntı geometrisi düzeylerini (LOD) da destekler. WindowsMRAssetConverter , modelinizin 3 sürümünü tek bir .glb modelinde birleştirmenize yardımcı olur. Windows, modelin sahip olduğu ekran alan miktarına göre hangi LOD'nin görüntüleniyor olduğunu belirler. Aşağıdaki önerilen üçgen sayılarıyla yalnızca 3 LOD düzeyi de desteklemektedir:
| LOD Düzeyi | Önerilen Üçgen Sayısı | Maksimum Üçgen Sayısı |
|---|---|---|
| LOD 0 | 10,000 | 10,000 |
| LOD 1 | 5.000 | 10,000 |
| LOD 2 | 2,500 | 10,000 |
Düğüm sayıları ve alt düğüm sınırları
Ana Windows Mixed Reality, LOD başına 64'den fazla düğüm veya 32 alt tır'a sahip modelleri desteklemez. Düğümler, sahnedeki nesneleri tanımlayan glTF belirtimleri kavramıdır. Alt tireler, nesnesinde mesh üzerinde temel öğeler dizisinde tanımlanır.
| Özellik | Açıklama | Desteklenen Maksimum | Belgeler |
|---|---|---|---|
| Düğümler | glTF Sahnesinde nesneler | LOD başına 64 | Burada |
| Alt tireler | Tüm meshes'ler üzerinde temel değerlerin toplamı | LOD başına 32 | Burada |
Malzeme yönergeleri
Dokular PBR metal kabalık iş akışı kullanılarak hazırlanır. Başlangıç olarak Albedo, Normal, Occlusion, Kabalık ve Kabalık gibi dokulardan tam bir küme oluşturma. Windows Mixed Reality, 4096x4096'ya kadar çözünürlüklere sahip dokuları destekler, ancak 512x512'de yazman önerilir. Dokular, 4'lerinin katlarında çözünürlüklerde yazmalı. Bu, aşağıda özetlenen dışarı aktarma adımlarında dokulara uygulanan sıkıştırma biçimi için bir gereksinimdir. Mip eşlemeleri veya doku oluşturmada en düşük mip en fazla 4x4'e sahip olması gerekir.
| Önerilen Doku Boyutu | En Büyük Doku Boyutu | En Düşük Mip |
|---|---|---|
| 512x512 | 4096x4096 | en fazla 4x4 |
Albedo (temel renk) haritası
Aydınlatma bilgisi olan ham renk. Bu harita ayrıca sırasıyla metal (siyah haritada beyaz) ve metal yüzeyleri (eşlem haritasında siyah) için yansıtma ve yayma bilgilerini içerir.
Normal
Tanjgent Space Normal haritası
Kabalık haritası
Nesnenin mikrosuface'i açıklar. Beyaz 1.0 kabaca Siyah 0.0 düzdür. Bu harita, varlığın en çok karaktere sahip olduğunu gösterir çünkü yüzeyi gerçekten açıklar. Örneğin, karalamalar, parmak izleri, musikiler ve daha pek çok şey.
Ortam tıkanıklığı haritası
Yansımaları engelleyen, occluded ışığın alanlarını gösteren değer ölçek haritası
Harita haritası
Gölgelendiriciye bir şeyin metal olup olmadığını söyler. Ham Metal = 1,0 beyaz Metal olmayan = 0,0 siyah. Ham metali kaplayan bir şeyi gösteren geçiş grisi değerler olabilir, ancak genel olarak bu harita yalnızca siyah ve beyaz olması gerekir.
İyileştirmeler
Windows Mixed Reality giriş, özel uzantılar kullanılarak tanımlanan temel glTF özelliklerine ek olarak bir dizi iyileştirme sunar. Bu iyileştirmeler, Windows <= 1709 sürümlerinde gereklidir ve daha yeni sürümlerde Windows. Herhangi bir glTF 2.0 modelini, Windows Mixed Reality Asset Converter'ı kullanarak kolayca GitHub. Bu araç, aşağıda belirtilen şekilde doğru doku paketleme ve iyileştirmeleri gerçekleştirecek. Genel kullanım için WindowsMRAssetConverter'ın kullanılması önerilir, ancak deneyim üzerinde daha fazla denetime ihtiyacınız varsa ve kendi iyileştirme işlem hattınızı oluşturmak için aşağıdaki ayrıntılı belirtime bakabilirsiniz.
Not
Tam model sınırları için olasılıkların kesin listesi için Dynamics 365 uygulamalarında kullanmak üzere 3D model iyileştirme makalesine bakın.
Malzemeler
Karma Gerçeklik ortamlarında varlık yükleme Windows için MR, bu bölümde tanımlanan doku paketleme düzenine göre paketlenmiş sıkıştırılmış DDS dokularını işlemeyi destekler. DDS dokulara uygulama uzantısı kullanılarak MSFT_texture_dds edilir. Dokuları sıkıştırmak kesinlikle önerilir.
HoloLens
HoloLens tabanlı karma gerçeklik deneyimleri, dokuların aşağıdaki paketleme belirtimi kullanılarak 2 doku düzeni kullanılarak paketlenir:
| glTF Özelliği | Doku | Paketleme Düzeni |
|---|---|---|
| pbrMetallicRoughness | baseColorTexture | Kırmızı (R), Yeşil (G), Mavi (B) |
| MSFT_packing_normalRoughnessMetallic | normalRoughnessMetallicTexture | Normal (RG), Kabalık (B), Kabalık (A) |
DDS dokuları sıkıştırılırken her haritada aşağıdaki sıkıştırma beklenir:
| Doku | Beklenen Sıkıştırma |
|---|---|
| baseColorTexture, normalRoughnessMetallicTexture | BC7 |
Çevreleyici (VR) başlığı
Çevreleyici (VR) Windows Mixed Reality pc tabanlı deneyimler, dokuların aşağıdaki paketleme belirtimi kullanılarak 3 dokulu bir kurulum kullanılarak paketlenir:
Windows işletim sistemi >= 1803
| glTF Özelliği | Doku | Paketleme Düzeni |
|---|---|---|
| pbrMetallicRoughness | baseColorTexture | Kırmızı (R), Yeşil (G), Mavi (B) |
| MSFT_packing_occlusionRoughnessMetallic | occlusionRoughnessMetallicTexture | Tıkanıklık (R), Kabalık (G), Kabalık (B) |
| MSFT_packing_occlusionRoughnessMetallic | normalTexture | Normal (RG) |
DDS dokuları sıkıştırılırken her haritada aşağıdaki sıkıştırma beklenir:
| Doku | Beklenen Sıkıştırma |
|---|---|
| normalTexture | BC5 |
| baseColorTexture, occlusionRoughnessMetallicTexture | BC7 |
Windows işletim sistemi <= 1709
| glTF Özelliği | Doku | Paketleme Düzeni |
|---|---|---|
| pbrMetallicRoughness | baseColorTexture | Kırmızı (R), Yeşil (G), Mavi (B) |
| MSFT_packing_occlusionRoughnessMetallic | roughnessMetallicOcclusionTexture | Kabalık (R), G, Oklama (B) |
| MSFT_packing_occlusionRoughnessMetallic | normalTexture | Normal (RG) |
DDS dokuları sıkıştırılırken her haritada aşağıdaki sıkıştırma beklenir:
| Doku | Beklenen Sıkıştırma |
|---|---|
| normalTexture | BC5 |
| baseColorTexture, roughnessMetallicOcclusionTexture | BC7 |
Mesh LOD'ları ekleme
Windows MR, ekran kapsamına bağlı olarak 3D modelleri farklı ayrıntı düzeylerinde işlemek için geometri düğümü LOD'lerini kullanır. Bu özellik teknik olarak gerekli değildir ancak tüm varlıklar için önerilir. Şu Windows 3 ayrıntı düzeyi desteklemektedir. Varsayılan LOD, en yüksek kaliteyi temsil eden 0'dır. Diğer LOD'lar sıralı olarak numaralıdır, örneğin, 1, 2 ve daha düşük kaliteye sahip olur. Windows Mixed Reality Asset Converter, birden çok glTF modeli kabul edilerek ve bunları geçerli LOD düzeylerine sahip tek bir varlıkta birleştirerek bu LOD belirtimlerine uygun varlıklar oluşturmayı destekler. Aşağıdaki tabloda beklenen LOD sıralama ve üçgen hedefleri özetler:
| LOD Düzeyi | Önerilen Üçgen Sayısı | Maksimum Üçgen Sayısı |
|---|---|---|
| LOD 0 | 10,000 | 10,000 |
| LOD 1 | 5.000 | 10,000 |
| LOD 2 | 2,500 | 10,000 |
LOD kullanırken her zaman 3 LOD düzeyi belirtin. LOD sistemi eksik LOD düzeyine geçilse de, eksik LOD'ler modelin beklenmedik şekilde işlemeye neden olmaz. glTF 2.0 şu anda temel özellikleri kapsamında LOD'ları desteklememektedir. LOD'lar, ana MSFT_LOD tanımlanmalıdır.
Ekran kapsamı
LOD'lar Windows Mixed Reality her LOD'da ayarlanmış ekran kapsamı değeri tarafından yönlendiren bir sisteme göre görüntülenir. Şu anda ekran alanı büyük bir kısmını tüketen nesneler daha yüksek BIR LOD düzeyinde görüntülenir. Ekran kapsamı, temel glTF 2.0 spec'in bir parçası değil ve MSFT_ScreenCoverage uzantısının "ek" bölümünde MSFT_lod belirtilmelidir.
| LOD Düzeyi | Önerilen Aralık | Varsayılan Aralık |
|---|---|---|
| LOD 0 | %100-50% | 0,5 |
| LOD 1 | %50 altında-%20 | 0,2 |
| LOD 2 | %20-%1 oranında | 0.01 |
| LOD 4 | %1 altında | - |
Animasyon yönergeleri
Not
bu özellik Windows 10 nisan 2018 güncelleştirmesininbir parçası olarak eklenmiştir. daha eski Windows, bu animasyonlar geri yürütülmeyecektir, ancak bu makaledeki kılavuza göre yazılmışsa yine de yüklenmeye devam eder.
karma gerçeklik girişi, HoloLens ve modern (VR) kulaklıklar üzerinde animasyonlu gltf nesnelerini destekler. Modelinizde animasyon tetiklemek isterseniz, glTF biçiminde animasyon eşleme uzantısını kullanmanız gerekir. Bu uzantı, kullanıcının dünyadaki varlığına bağlı olarak glTF modelindeki animasyonları tetiklemenizi sağlar, örneğin, Kullanıcı nesneye yakın olduğunda veya BT üzerinde gezinirken bir animasyon tetikleyebilirsiniz. GlTF nesnesinin animasyonları varsa ancak Tetikleyicileri tanımlamıyorsa, animasyonlar geri çalınmaz. Aşağıdaki bölümde, bu Tetikleyicileri herhangi bir animasyonlu glTF nesnesine eklemek için bir iş akışı açıklanmaktadır.
Araçlar
İlk olarak, henüz yoksa aşağıdaki araçları indirin. Bu araçlar, tüm glTF modelini açmayı, önizlemeyi, değişiklikleri yapmayı ve glTF veya. GLB olarak geri kaydetmeyi kolaylaştırır:
Modeli açma ve Önizleme
. GlTF dosyasını düzenleyici penceresine sürükleyerek, ' i VSCode 'da Glcode 'da açarak başlayın. . GlTF dosyası yerine. GLB dosyanız varsa, indirdiğiniz glTF Tools eklentisini kullanarak VSCode içine aktarabilirsiniz. "Görünüm- > komut paleti" ne gidin ve ardından komut paletinde "gltf" yazmaya başlayın ve bir. GLB ile içe aktarmanız için bir dosya Seçici açılır.
GlTF modelinizi açtıktan sonra, JSON 'ı düzenleyici penceresinde görmeniz gerekir. Ayrıca, sağ tıklama menüsünde, dosya adına sağ tıklayıp "glTF: Preview 3D model" komut kısayolunu seçerek modeli canlı bir 3B görüntüleyicide önizleyebilirsiniz.
Tetikleyiciler ekleme
Animasyon Tetikleyicileri, animasyon eşleme uzantısı kullanılarak glTF model JSON ' a eklenir. animasyon eşleme uzantısı burada GitHub (NOTE: bu bir taslak uzantısıdır) üzerinde genel olarak belgelenmiştir. Uzantıyı modelinize eklemek için düzenleyicideki glTF dosyasının sonuna kaydırma yapın ve henüz yoksa "extensionsUsed" ve "Extensions" bloğunu dosyanıza ekleyin. "ExtensionsUsed" bölümünde, "EXT_animation_map" uzantısına bir başvuru ekleyeceksiniz ve "Uzantılar" bloğunda, eşlemlerinizi modeldeki animasyonlara ekleyeceksiniz.
Belirtimde belirtildiği gibi, bir animasyon dizinleri dizisi olan "animasyonlar" listesindeki "anlam" dizesini kullanarak animasyonu neyin tetikleyeceğini tanımlarsınız. Aşağıdaki örnekte, kullanıcı nesnesine animasyon uygulanırken yürütmeye yönelik animasyonu belirttik:
"extensionsUsed": [
"EXT_animation_map"
],
"extensions" : {
"EXT_animation_map" : {
"bindings": [
{
"semantic": "GAZE",
"animations": [0]
}
]
}
}
aşağıdaki animasyon tetikleyicileri semantiği Windows Mixed Reality giriş tarafından desteklenir.
- "ALWAYS": sürekli bir animasyon döngüsü
- "Tutuldu": bir nesnenin tamamı sırasında, tüm süre boyunca kıvrımlı.
- "GAZE": bir nesne arandığında kıvrımlı
- "YAKıNLıK": bir görüntüleyici bir nesneye yakınken kıvrımlı
- "Işaret": Kullanıcı bir nesneyi işaret ederken kıvrımlı
Kaydetme ve dışarı aktarma
GlTF modelinizde değişiklikler yaptıktan sonra, bunu doğrudan glTF olarak kaydedebilirsiniz. Ayrıca, düzenleyicide dosyanın adına sağ tıklayıp, bir. GLB 'yi dışarı aktarmak için "glTF: GLB 'ye aktar (ikili dosya)" seçeneğini belirleyebilirsiniz.
Kısıtlamalar
Animasyonlar 20 dakikadan uzun olamaz ve 36.000 'den fazla ana kare içeremez (30 FPS 'de 20 dakika). Ayrıca, Morph hedef tabanlı animasyonların kullanılması 8192 Morph hedef köşelerini veya daha azını aşmaz. bu sayıları aşmamak, animasyonlu varlıkların Windows Mixed Reality giriş bölümünde desteklenmemesine neden olur.
| Özellik | Maksimum |
|---|---|
| Süre | 20 dakika |
| Gezen | 36.000 |
| Morph hedef köşeleri | 8192 |
glTF uygulama notları
Windows MR, negatif ölçekler kullanarak geometriyi ters çevirme desteğini desteklemez. Negatif ölçekler içeren geometri, büyük olasılıkla görsel yapıtlara neden olur.
gltf varlığı, Windows MR tarafından işlenecek olan sahne özniteliğini kullanarak varsayılan sahneye işaret etmelidir. ayrıca, Windows 10 nisan 2018 güncelleştirmesindenönce MR gltf yükleyicisi Windows erişimcilerigerektirir :
- En az ve en fazla değere sahip olmalıdır.
- Tür SKALER bir componentType UNSIGNED_SHORT (5123) veya UNSIGNED_INT (5125) olmalıdır.
- Type VEC2 ve VEC3, componentType FLOAT (5126) olmalıdır.
Aşağıdaki malzeme özellikleri Core glTF 2,0 spec 'den kullanılır ancak gerekli değildir:
- baseColorFactor, metallicFactor, Kabaghnessfactor
- baseColorTexture: DDS 'de depolanan bir dokuya işaret etmelidir.
- emissiveTexture: DDS 'de depolanan bir dokuyu işaret etmelidir.
- emissiveFactor
- Harfler modu
Aşağıdaki malzeme özellikleri temel belirtimden yok sayılır:
- Tüm çoklu-UVs 'ler
- metalRoughnessTexture: bunun yerine, aşağıda tanımlanan Microsoft iyileştirilmiş doku paketlemesi kullanılmalıdır
- normalTexture: bunun yerine aşağıda tanımlanan Microsoft iyileştirilmiş doku paketlemesi kullanılmalıdır
- normalScale
- occlusionTexture: bunun yerine aşağıda tanımlanan Microsoft iyileştirilmiş doku paketlemesi kullanılmalıdır
- Occlusıonkuvveti
Windows MR, ilkel mod çizgilerini ve noktalarını desteklemez.
Yalnızca tek bir UV köşesi özniteliği desteklenir.
Diğer kaynaklar
- glTF dışarı Leyiciler ve dönüştürücüler
- glTF araç seti
- glTF 2,0 belirtimi
- Microsoft glTF LOD uzantı belirtimi
- bilgisayar Karma Gerçeklik doku paketleme uzantıları belirtimi
- HoloLens Karma Gerçeklik doku paketleme uzantıları belirtimi
- Microsoft DDS dokuları glTF uzantıları belirtimi