Geometri Oluşturma – Analizi Yaptırma Fiyatları – Yazılım Analizi Örnekleri – Ücretli Analizi Yaptırma – Ücretli Yazılım Yaptırma
Küp Eşleme
Yeni bir özellik olan geometri gölgelendiriciyi kullanarak küp eşlemeyi açıklıyoruz. Geleneksel olarak, küp eşleme dokuları oluşturmak için sahnenin altı görünümünü sırayla işlemek için çok geçişli işleme teknolojisini kullanmamız gerekiyordu. Geometrik gölgelendirici ile, grafik donanımında aynı anda sahnenin altı görüntüsünü işleyebiliriz.
Küp haritalamanın temel fikri, altı alt yüze sahip bir doku haritasında saklanan bir ortamdan yansıma rengine bakmak için bir nesnenin yüzeyinden yansıma vektörünü kullanmamızdır. Ortam eşleme doğru yapılırsa, sonuç, işlenmekte olan nesne ortamını yansıtan parlak gibi görünür. Önce sahneyi bir küp haritasına dönüştürüyoruz, ardından küp haritasını nesnelere uyguluyoruz.
Geometri Oluşturma
Bu örnekte, dönen bir merkez küp ve merkez küpün etrafında dönen altı küçük küp yaratıyoruz. Arka plan dünyasını işlemek için başka bir büyük küp yaratıyoruz. Arka plan ve yörüngedeki küpler orta küpte yansıtılacaktır. Merkez küp ve yörüngedeki küpler için aynı köşeleri kullanıyoruz.
Farklı doku koordinatları ve normalleri olan arka plan küpü için başka bir köşe kümesi oluşturuyoruz. Köşe arabelleğinde, her köşe için üç vektörümüz vardır (konum, doku koordinatları ve normal). Örneğin, ilk tepe noktası tanımlanır.
Küp Eşleme için Kaynak Oluşturma
Bir küp haritası, bir küpün iç yüzlerini temsil edecek şekilde düzenlenmiş altı adet 2B dokuya sahiptir. Ortamı bir küp haritasına dönüştürmek için altı görünüm matrisi oluşturmak için aşağıdaki kodu kullanıyoruz.
Bu altı görünüm matrisi, göz konumu sahne merkezinde olacak şekilde kamerayı pozitif ve negatif x yüzlerine, pozitif ve negatif y yüzlerine ve pozitif ve negatif z yüzlerine işaret eder.
Küp eşleme için, arka plan sahnesini bir küp eşleme dokusunun altı yüzüne dönüştürürüz. Direct3D 10’da, bir işleme hedefi görünümü, birden çok işleme hedefinin ve derinlik kalıbı dokusunun aynı anda aktif olmasına izin verir. Her biri küp haritasının bir yüzü için altı oluşturma hedef dokusuyla bir oluşturma hedef görünümü oluşturuyoruz. Ayrıca altı derinlik şablon dokusuna sahip bir derinlik şablon görünümü oluşturuyoruz.
Sahneyi Oluşturma
Küp haritası işleme için işleme hedefi görünümünü ve derinlik kalıp görünümünü ayarlamak için SetupCubeMapRendering() yöntemini çağırıyoruz. Ardından, ortamı altı yüzü olan küp haritasına dönüştürmek için RenderToCubeMap() öğesini çağırırız.
Bundan sonra, normal sahne işleme için oluşturma hedef görünümünü ve derinlik kalıp görünümünü ayarlamak için SetupSceneRendering() yöntemini çağırıyoruz. Ardından, aşağıdaki bölümlerde tartışıldığı gibi küp harita dokusunu kullanarak sahnedeki merkez küpü oluştururuz.
Gölgelendiricilerde Küp Haritasına İşleme
Example05.fx efekt dosyasında dört tekniğe sahibiz. İlk teknik olan RenderEnvBox, arka plan küpünü aydınlatma olmadan işlemek için kullanılır. İkinci teknik olan RenderCubeMap, arka plan küpünü ve yörüngedeki küpleri küp haritasına dönüştürmek için kullanılır.
Üçüncü teknik olan RenderScene, yörüngedeki küpleri aydınlatma ve doku eşleme ile işlemek için kullanılır. Son teknik olan RenderSceneCubeMapped, merkez küpü küp eşleme ile işlemek için kullanılır.
RenderCubeMap tekniğinde, arka plan küpünü ve yörüngedeki küpleri küp haritasına dönüştürmek için VS_CubeMap, GS_CubeMap ve PS_CubeMap gölgelendiricilerini kullanırız. Köşe gölgelendirici VS_CubeMap, arka plan küpünün ve yörüngedeki küplerin dünya uzay köşe konumlarını hesaplar ve ilişkili doku koordinatlarından geçer.
GEOMETRİK ŞEKİLLERLE YAPILAR
Geometrik şekillerle yapı oluşturma
Geometrik Cisimler
Geometrik Yapılar
Geometrik Şekiller
Geometrik Şekillerden Yapılar OLUŞTURMA
Geometrik şekillerle tasarımlar
Geometrik şekillerde iki kenarın birleştiği noktaya
Geometri gölgelendiricisi GS_CubeMap, VS_CubeMap’in işlediği ilkel başına bir kez çalışır. Örneğimizde, ilkelleri küp haritasının altı yüzüne dönüştürmek için kullanılır. Geometri gölgelendirici çıktısı, RenderTargetIndex adlı özel bir alana sahiptir. Alanın semantik tipi SV_RenderTargetArrayIndex’e sahiptir ve bu semantik, alanın ilkelin yayıldığı işleme hedefini seçmesini sağlar.
Geometri gölgelendirici, her küp yüzü için bir kez olmak üzere altı kez döngü yapar. Döngü içinde, RenderTargetIndex alanı, döngünün her yinelemesinde ilkel öğenin karşılık gelen bir oluşturma hedefine yayılmasını sağlamak için döngü kontrol değişkeni olarak ayarlanır. Başka bir for döngüsü (iç döngü), girdi üçgeni ilkelinin üç köşesini işlemek için yüz başına üç kez çalışır.
Girdi köşe konumunu görünüm ve izdüşüm matrisleriyle dönüştürüyoruz. Dış for-loop’un her yinelemesi, farklı bir görünüm dönüştürme matrisi kullanır ve köşeleri farklı bir oluşturma hedefine yayar. Bu, DrawIndexed() öğesini birden çok kez çağırmadan tek bir geçişte bir üçgeni altı oluşturma hedef dokusuna dönüştürür.
Gölgelendiricilerde Küp Eşleme
Merkez küpü küp eşleme ile işlemek için RenderSceneCubeMapped tekniğini kullanıyoruz. Köşe gölgelendirici VS_CubeMapped, merkez küpün köşe konumunu ve normalini dönüştürür.
Piksel gölgelendirici PS_CubeMapped’de, cubeMapMode global değişkeni 0’a eşit olduğunda küp eşleme yaparız. Önce küp eşleme yansıma ışınını hesaplarız. Küp eşlemenin sonucu, ortamın merkez küp üzerindeki yansımasıdır.
Kırılma ile Küp Eşleme
Bu örnekte, küp haritalamaya ek olarak kırılma efektini de uyguluyoruz. Nihai sonuç, yansıyan ve kırılan arka planın birleşimidir.
Gölgelendiricilerdeki kırılmayı modellemek için yerleşik içsel işlev olan refrakt()’ı kullanabiliriz. Giren bir ışın, bir yüzey normali ve bir kırılma indisi (farklı malzemeler içinde ışığın hızının ne kadar azaldığının bir ölçüsü) verildiğinde, kırılma fonksiyonu kırılan vektörü hesaplar. Daha sonra, saydam bir nesnenin yüzey rengini belirlemek üzere bir küp haritasına erişmek için kırılan vektörü kullanırız.
Gerçek dünyada, çoğu saydam nesne hem yansıma hem de kırılma etkisi gösterir. Bu, Fresnel etkisi olarak bilinir. Fresnel denklemleri, malzeme sınırlarında meydana gelen yansıma ve kırılmayı tanımlar.
Fresnel denklemleri, geliş açısını, ışığın polarizasyonunu ve dalga boyunu ve ilgili malzemelerin kırılma indekslerini içerir. Amacımız, doğru fiziksel simülasyon yerine yansıma ve kırılmayı simüle eden yeterince iyi sonuçlar sağlamak olduğundan, yansıyan ışık ile geliştirilen kırılan ışık arasındaki oran için bir yaklaşım kullanıyoruz.
Burada V görüş yönüdür, N yüzey normalidir ve f, görüş yönü ile yüzey normali arasındaki açı olduğunda malzemenin yansımasıdır.
Geometrik Cisimler Geometrik Şekiller Geometrik şekillerde iki kenarın birleştiği noktaya Geometrik Şekillerden Yapılar OLUŞTURMA Geometrik şekillerle tasarımlar GEOMETRİK ŞEKİLLERLE YAPILAR Geometrik şekillerle yapı oluşturma Geometrik Yapılar