LensFlareyi efektif kullanma

  • Konuyu açan Konuyu açan hasanmacit
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 18
  • Gösterim Gösterim 388

hasanmacit

Geliştirici
Geliştirici
Yardımsever Üye
Emekli Üye
Usta Üye
Editör
Mesaj
5.791
Çözümler
240
Beğeni
7.060
Puan
3.850
Ticaret Puanı
7
ilgili mapın msenv dosyasında bu kısımdaki enablenin karşısında 1 yazmalıdır.
1767120911918.webp



Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.



sonuç
1230_215048.webp



örnek c1.msenv dosyası
Kod:
Genişlet Daralt Kopyala
ScriptType         EnvrionmentData
ScriptVersion      1.0000

Group DirectionalLight
{
    Direction     0.450000 0.720000 -0.150000

    Group Background
    {
        Enable        1
        Diffuse       1.000000 0.972549 0.972549 1.000000
        Ambient       0.000000 0.000000 0.000000 1.000000
    }

    Group Character
    {
        Enable        1
        Diffuse       1.000000 0.972549 0.972549 1.000000
        Ambient       0.150000 0.150000 0.150000 1.000000
    }
}
Group Material
{
    Diffuse       1.000000 1.000000 1.000000 1.000000
    Ambient       0.882353 0.854902 0.784314 1.000000
    Emissive      0.321569 0.321569 0.411765 1.000000
}

Group Fog
{
    Enable        1
    NearDistance  5000.000000
    FarDistance   20000.000000
    Color         0.690196 0.741176 0.839216 1.000000
}

Group Filter
{
    Enable        0
    Color         0.556863 0.329412 0.329412 0.000000
    AlphaSrc      1
    AlphaDest     2
}

Group SkyBox
{
    Scale                 3500.000000 3500.000000 3500.000000
    GradientLevelUpper    4
    GradientLevelLower    1

    CloudScale            200000.000000 200000.000000
    CloudHeight           30000.000000
    CloudTextureScale     4.000000 4.000000
    CloudSpeed            0.004000 0.004000
    CloudTextureFileName  "d:/ymir work/environment/clouds_zone01.tga"
    List CloudColor
    {
        0.000000 0.000000 0.000000 0.000000
        0.000000 0.000000 0.000000 0.000000
    }
    List Gradient
    {
        0.094118 0.286275 0.658824 0.000000
        0.231373 0.403922 0.729412 0.000000

        0.231373 0.403922 0.729412 0.000000
        0.376471 0.498039 0.729412 0.000000

        0.376471 0.498039 0.729412 0.000000
        0.568627 0.678431 0.882353 0.000000

        0.568627 0.678431 0.882353 0.000000
        0.850980 0.901961 1.000000 0.000000

        0.850980 0.901961 1.000000 0.000000
        0.533333 0.564706 0.623529 0.000000
    }
}

Group LensFlare
{
    Enable                     1
    BrightnessColor            1.000000 0.886275 0.886275 1.000000
    MaxBrightness              0.740000
    MainFlareEnable            1
    MainFlareTextureFileName   "D:\Ymir Work\environment\sunflare.dds"
    MainFlareSize              0.350000
}
 
Son düzenleme:
Hasan mucitin başlıklarına ve yorumlarına bayılıyorum
 
Sağol Hasan çalışıyor
1767127847256.webp


Ancak şu kısmı hiç yapmamak daha doğru, güneşe göre pozisyon alacak ışığı hard-coded bir pozisyona sabitliyor, güneş-gölge uyuşmazlıkları olur.

C++:
Genişlet Daralt Kopyala
    D3DXVECTOR3 v3SunDir(0.0f, -0.7f, -0.1f); //güneş pozisyonu buradan ayarlanıyor
    D3DXVec3Normalize(&v3SunDir, &v3SunDir);
    m_LensFlare.Compute(v3SunDir);
 
Biraz kod kurcalayarak oyunun gölgeleri hard-coded bir farazi güneş pozisyonuna göre yansıtmasını değiştirip, doğru olan directional light'a göre yapmasını sağladım. .msenv dosyasından güneş pozisyonunu akşamın 4-5ine tekabül edecek bir noktaya çektim. Gölgeler uzadı, lensflare da doğru directional liht pozisyonuna geldi. Yani bunun bir sonraki adımı gökyüzünde hareket eden bir güneş-ay döngüsü olabilir. Hayal gücünüze kalmış.

Benim ve seyisin gölgelerine dikkat edin, güneşin vuruş açısına göre uzamışlar.

1767141247146.webp
 
Hasanım sen neler diyor yav :D
Ulan bu ymir ekibi ne güzel şeyler düşünmüş, başka biri de at koşarken durma gibi bir şeyi geçmişte paylaşmıştı, upgrade efektleri vs de yapmışlar adamlar zamanında.

Yerden eğilip item alma, bağdaş kurup oturma vs de paylaşılmıştı oyun hissiyatına katkıda bulunan işler hep bunlar.
kaptan yosun un da dediği gibi döngüsellik gece gündüz mantığı eklenebilir yapmak isteyene.

World editörde mesela lensflare ayarlanabiliyordu sanırım oradan çektirtemez miyiz?
 
Hasanım sen neler diyor yav :D
Ulan bu ymir ekibi ne güzel şeyler düşünmüş, başka biri de at koşarken durma gibi bir şeyi geçmişte paylaşmıştı, upgrade efektleri vs de yapmışlar adamlar zamanında.

Yerden eğilip item alma, bağdaş kurup oturma vs de paylaşılmıştı oyun hissiyatına katkıda bulunan işler hep bunlar.
kaptan yosun un da dediği gibi döngüsellik gece gündüz mantığı eklenebilir yapmak isteyene.

World editörde mesela lensflare ayarlanabiliyordu sanırım oradan çektirtemez miyiz?
aynı şey zaten aslında
 
konuyu güncelledim. örnek msenv dosyası da bıraktım. bu şekilde daha sağlıklı kullanabilirsiniz ayrıca gölge yönünü de ışığa uyum sağlayacak şekilde güncelledim. msenv dosyalarındaki Direction kısmını ayarladığınız takdirde sıkıntısız güneşiniz yer değişecek gölgeler ona uyum sağlayacak ve güneşe baktığınızda da güneş parıldı efektleri çıkacaktır.​
 
Gölgeleri fazla uzatırsanız yani z konumu değiştirkçe kameranın bazı açılarında şöyle bir sorun cıkıyor.

 
Geri
Üst