Gönderen Konu: kaplama sorunu  (Okunma sayısı 6749 defa)

kaplama sorunu

« : 26.09.2010 16:31:21 »
Hızlı düğmeleri aç

paradox

İleti: 134

Çevrimdışı
  • ***
  • Full Member
    • Profili Görüntüle
slm..
Arkadaşlar küpten skybox yapıp kaplama veriyorum ama birleşimlerindeki çizgiler belli oluyo..cubemap kullanınca aynı sorun olmuyo fakat ben o şekilde istemiyorum..
farcry'da da gözüme çarpmıştı aynı hata..
bide resim attım oklarla gösterdim çizgileri..
« Son Düzenleme: 26.09.2010 16:33:47 Gönderen: paradox »

kaplama sorunu

« Yanıtla #1 : 26.09.2010 23:16:05 »
Hızlı düğmeleri aç

skate

İleti: 5.245

A Sinner Scener
Çevrimdışı
  • Administrator
  • *****
  • Hero Member
    • Profili Görüntüle
    • http://www.akaydin.com/
OpenGL? DirectX? DirectX'de ben bu sorunu yaşamamıştım. OpenGL'de GL_CLAMP ya da GL_CLAMP_TO_EDGE işini görecektir.

kaplama sorunu

« Yanıtla #2 : 27.09.2010 12:59:09 »
Hızlı düğmeleri aç

paradox

İleti: 134

Çevrimdışı
  • ***
  • Full Member
    • Profili Görüntüle
Alıntı yapılan: skate;24195
OpenGL? DirectX? DirectX'de ben bu sorunu yaşamamıştım. OpenGL'de GL_CLAMP ya da GL_CLAMP_TO_EDGE işini görecektir.

Directx 9 da oluyo bende..daha önceleride oluyodu bi şekilde düzeltmiştim gibi hatırlıyorum ama unuttum ne yaptısam..
« Son Düzenleme: 27.09.2010 13:10:03 Gönderen: paradox »

kaplama sorunu

« Yanıtla #3 : 27.09.2010 15:11:03 »
Hızlı düğmeleri aç

skate

İleti: 5.245

A Sinner Scener
Çevrimdışı
  • Administrator
  • *****
  • Hero Member
    • Profili Görüntüle
    • http://www.akaydin.com/
sanırım DirectX karşılığı da şu
 
pD3DDevice->SetSamplerState(0, D3DSAMP_ADDRESSU, D3DTADDRESS_CLAMP);
pD3DDevice->SetSamplerState(0, D3DSAMP_ADDRESSV, D3DTADDRESS_CLAMP);

U, V için ayrı ayrı set ediliyor.

kaplama sorunu

« Yanıtla #4 : 27.09.2010 16:54:16 »
Hızlı düğmeleri aç

paradox

İleti: 134

Çevrimdışı
  • ***
  • Full Member
    • Profili Görüntüle
teşekkürler..verdiğin kodları yazınca oldu..
bu yapılar tam olarak ne işe yarıyor peki?

kaplama sorunu

« Yanıtla #5 : 27.09.2010 17:10:25 »
Hızlı düğmeleri aç

skate

İleti: 5.245

A Sinner Scener
Çevrimdışı
  • Administrator
  • *****
  • Hero Member
    • Profili Görüntüle
    • http://www.akaydin.com/
normalde 32 bit işlemlerde sonuç 8, 16 bit'e göre çok daha iyi olsa da yine de bir polygon'un bittiği ve diğerinin başladığı yer üst üste binebilir. hatta bu genellikle kamerayı hareket ettirdiğinde belli açılarda ortaya çıkar. software 3d enginelerin bir kısmında polygonlar arada bir birbirlerinden koparak aradaki boşluktan arkasındaki poygonların / skybox'ın görünmesine neden olabilirler. bu clamping hadisesi bu sorunu çözüyor. texture'ı çizerken edgelerin üst üste binmemesi için özel hesaplar yapıyor. tahminimce biraz performans kaybına yol açıyordur ama sonuç olarak kenarlar mükemmel oturuyor. bu sorun özellikle alpha channel kullanıldığında daha net göze batıyor. transparent olan yerler üst üste binince alphalar toplanarak çok belirgin bir çizgi oluşturuyorlar.
 
bu konuda daha detaylı bir araştırmam olmadı. benim araştırıp sana anlatmam saçma olur, sen de aynen araştırabilirsin elbette ki. :)
 
edit: yazım hatası düzeltildi.
« Son Düzenleme: 27.09.2010 17:13:08 Gönderen: skate »

kaplama sorunu

« Yanıtla #6 : 27.09.2010 19:54:37 »
Hızlı düğmeleri aç

paradox

İleti: 134

Çevrimdışı
  • ***
  • Full Member
    • Profili Görüntüle
tamamdır teşekkür ettim..bende yüzeysel olarak merak etmiştim ne işe yarar diye zaten..