2017-09-27 73 views
7

Oda içinde bir geçiş etkisi sağlamak için bir panoramik küp görüntüsünden diğerine sorunsuz geçiş yapmaya çalışıyorum. Scene, Camera, Mesh SkyBox'ın tüm kurulumları için bir başlatıcı olarak this örneğini kullandım. Şimdi yeni bir panoramik küpün geçişini sağlamanın en iyi yollarını düşünüyorum, böylece bir küp görüntüsü odaya yaklaşıyor ve kullanıcı odaya giriyormuş gibi karışıyor.Three.js: Geçiş 2 Büyütme ve Karışım Efektleri ile Dokular

İkinci bir Sahne ve ikinci Kameraya sahip olmayı düşündüm, çünkü eski görüntünün yakınlaştırılması ve kaybolması gerekir; Burada aynı anda 2 resim göstermenin bazı zorlukları vardı. Sabit bile bu doğru bir yaklaşımdır, ben ikinci bir düşünce veriyorum Ama

renderer.clear();//multi-scene 
if(sceneA && cameraA) 
     renderer.render(sceneA, cameraA); 
renderer.clearDepth(); 
renderer.render(sceneB, cameraB); 

: Eski bir - - Scenea'dan SceneB görünür ve onu kaplıyorsa görünür değil. Belki de doku geçişi ile deney yapmak isterim. Örnekler bulamıyorum ya da nasıl yapılacağını öğrenemiyorum.

Görünür bir küp görüntüsünden (dokuya), sahneleri veya dokuların farklı kaynaklarını kullanarak, bir diğerine sorunsuz geçiş nasıl yapılır?

+0

Açıklama alabilir miyim: Hızlı yakınlaştırma _warp_ türünde bir şey gibi bir "yakınlaştırma" türü efekti istiyor musunuz? Ya da 2 küp arasında kademeli bir çapraz geçiş yeterli olur mu? Ya da net bir şekilde tanımlanmış bir kapıdan yeni bir odaya geçip, bir odada durup diğer odaya bakabiliyor musunuz? Herkes için yaklaşımları düşünebilirim ama senin istediğini bilmem gerek. –

+0

Teşekkürler Martin. Bu örnek nasıl yapar: http://biganto-visual.ru/portfolio/53/749.html. Sorunsuz bir şekilde geçiş yapmam gereken aynı küp kümesine sahip olacağım. Başka bir deyişle, sahne1 başka bir sahneye zum yapar ve kaybolur. – Vad

+0

Ah-ha Görüyorum! Evin tüm noktalarından 1 metre aralıklarla fiziksel olarak durabileceğiniz birçok küp yaprağı (3d fotoğraf) var. 3D yakalama işlemi saatlerce sürecektir. Bana öyle geliyor ki küpleri gerçekçi boyutlara getiriyorlar ve onları yerleştirdiler, böylece merkezleri 3D kameranın oturduğu yer. _transitioning_ süreci, aynı anda eski küpün sıfır donukluğa düştüğü ve yeni küpün tamamen opaklığa dönüştüğü sırada, kameranın yeni bir küpün ortasına yerleştirilmesidir. Tüm mezunlara TWEEN kütüphanesini kullanırdım. –

cevap

3

Bir boşluk boyunca küçük aralıklarla çok sayıda küp şeklinde (3 boyutlu fotoğraf çekimi) alınmışsa, THREE.CubeTextureLoader'u kullanarak küp şeklindeki ağ gözlerinin iç yüzeylerine gerçekçi boyutlara göre eşleştirebilirsiniz. içeri çekildiler ve onları mekânın içine yerleştirdiler, böylece merkezleri, 3D kameranın yakalama anında oturduğu yerlerdi. aynı zamanda eski küp sıfır opaklık renge dönüşür ve yeni küp toplam solar ise

enter image description here

Daha sonra, konum arasında geçiş bir işlem, yeni bir küp merkezine kamera dollying bir kombinasyonu olacaktır opaklık.

İstediğiniz zaman yalnızca 1 küp tam olarak görünür olacak, kalanlar var ancak var olan görünmez.

Tüm mezuniyetler için Three.js TWEEN library'u kullanırım: kameranın konumu ve 2 küpün saydamlığı.

Not Not: Sahnelerimi her zaman 3d dünyadaki 1 birim gerçek dünyadaki 1 metredir. İşleri gerçekçi bir şekilde daha hızlı bir hale getirmeye yardımcı olur ve ayrıca modelleri veya kod tekniklerini, uyumlu olma olasılıkları daha yüksek olan projeler arasında paylaşmak isterim.