İçindekiler:
Video: Unity 3D Türkçe Ders 02 Basit Objeler Yaratma, Texture ve Prefab 2024
Sanal bir 3D dünyası yaratmak, JavaFX'te her zamankinden daha kolay. Bu örnekte, JavaFX programınıza bir küre eklemeyi, animasyon yapmayı ve ona bir ışık kaynağı eklemeyi öğrenirsiniz.
Birinci adım: Bir küre ekleyin
Önce Sphere sınıfıyla temsil edilen bir küre ekleyin. Sphere kurucusu, kürenin yarıçapını belirten tek bir parametreyi kabul eder. Örneğin, bu çizgiler, yarıçapı 100 olan bir küre oluşturup onu sanal dünyanın merkez noktasından uzaklaştırmak için çevirir:
Sphere küre = yeni Küre (100); küre. setTranslateX (-180); küre. setTranslateY (-100); küre. setTranslateZ (100) olup; kök. GetChildren (). (Küre) ekleyin;
Küreye aynı mavi Phong malzemesini uygulamak yerine, daha ilginç bir şey yapabilirsiniz: Bu kodu kullanarak dünyanın silindirik projeksiyonunun bir görüntüsünden oluşturulmuş bir Phong malzemesi uygulayın:
Image earthImage = new Image ("dosya: toprak. jpg"); PhongMaterial earthPhong = yeni PhongMaterial (); earthPhong. setDiffuseMap (earthImage); küre. setMaterial (earthPhong);
Bu şekil sonuçtaki küreyi gösterir.
Bu tekniği kullanarak herhangi bir görüntüyü bir küreye (veya başka herhangi bir 3B nesneye) sarabilirsiniz. Bu programın görüntüsünü Wikipedia'dan da edinebilirsiniz. Sadece Behrmann Projection arayın ve dosyayı indirin. (Windows Paint'i, görüntünün kenarlarını biraz kırpmak için kullanınız, çünkü Wikipedia'da bulunan resim kenarlar etrafında küçük bir kenarlığa sahiptir.)
İkinci adım: Nesneleri canlandırın
Vay canına! 3B sanal dünyanız artık bir nesneye sahiptir: dünyaya benzeyen bir küre. Şu anda başka nesneler de ekleyebilirsiniz.
Bu adımda, tüm nesnelerin eğirilmesini sağlamak için bir animasyon ekleyin. Her nesne basit bir RotationTransition animasyonu alır. Önce, küre:
RotateTransition rt4 = yeni RotateTransition (); RT4. setNode (küre); RT4. ayarlama Süresi (Süre; milis (9000)); RT4. setAxis (Döndür, Y_AXIS); RT4. setByAngle (360); RT4. setCycleCount (Animasyon, INDEFINITE); RT4. setInterpolator (Interpolator LINEAR); RT4. oyun();
Oyun yöntemi çağrıldıktan sonra, küre dönmeye başlar, z ekseni etrafında her üç saniyede bir tam dönüş yapar.
Küre, y ekseni etrafında dönerek dünyanın döndüğü izlenimini yaratıyor. Küre için hız her 10 saniyede bir devir olarak ayarlanır.
Üçüncü adım: Işık kaynağı ekle
3D programlama dünyasına girmek için son adım bir ışık kaynağı eklemektir.Işık kaynağı burada gösterildiği gibi sahnenin tüm görünümünü değiştirecektir.
Işık kaynağını eklemek için aşağıdaki kodu kullanın:
3D dünyanız bir ışık kaynağı ile birlikte.PointLight ışığı = yeni PointLight (Renkli BEYAZ); Işık. setTranslateX (-1000); Işık. setTranslateY (100) olup; Işık. setTranslateZ (-1000); kök. GetChildren (). (Hafif) ekleyin;
PointLight sınıfı, sahnedeki belirli bir noktadan kaynaklanan ve verilen rengin ışığını projelendiren bir ışık kaynağı tanımlar (bu durumda, eski güzel beyaz). Işık efekti oluşturmak için ışığı koordinatlarını 1, 000 sola, 100 aşağıya ve 1.000 000 birime kullanıcıya doğru çevirerek yeniden konumlandırın. Sonuç, eğirme nesnelerinin arka taraflarına güzel gölgeler kazandırır.