Ekranda bir Texture2D çizmek için SpriteBatch kullanıyorum ve görüntülerin opaklığını nasıl değiştirebileceğimi merak ediyordum? Bunu gerçekleştirmenin en iyi yolu bilen var mı?Texture2D nasıl% 50 şeffaf hale getirilir? XNA
cevap
XNA 4.0'ı premultiplied alpha ile kullandığınızı varsayarsak. Spritebatch.draw'inizde, rengi% 50'lik bir saydamlık için bir float, 0.5f ile çarpın ve normalde yaptığınız gibi çizin. Premultiplied alpha kullanmıyorsanız, performans gerekçelerinden ve alıştıkça daha sezgisel olmanızı öneririm.
Örnek:
_spriteBatch.Draw(texture, location, Color.White * 0.5f);
Düzenleme: Ayrıca BlendState.AlphaBlend veya alfa destekler ve NonPremultiplied olmayan başka harman durumuna harman durumunu ayarlamak emin olun.
Örnek:
_spriteBatch.Begin(SpriteSortMode.Immediate, BlendState.AlphaBlend);
sadece new Color(RGBA);
olarak renk kullanmak:
- R
- G Kırmızı Yeşil
- B
- bir
:
new Color(100, 100, 100, 100);
Bu kasıtlı olmayabilir, ancak bana sadece 'Renk' parametresinin enum lol olmadığını gösterdin! Kendi renklerini böyle oluşturabileceğinin hiçbir fikrim yoktu. – TheGateKeeper
- 1. Bileşeni tutarken nasıl şeffaf hale getirilir?
- 2. Matplotlib: Arka plan nasıl şeffaf hale getirilir?
- 3. xcode 7 hızlıca konteynır görünümünü nasıl şeffaf hale getirilir
- 4. RLMResults nasıl değişebilir hale getirilir?
- 5. Plesk Yönetici Paneli nasıl güvenli hale getirilir?
- 6. Koleksiyona farklı türler nasıl seri hale getirilir?
- 7. Javascript veya düğümde nasıl uyumsuz hale getirilir?
- 8. WCF dinlendirici servisi nasıl güvenli hale getirilir?
- 9. iPad - UItextview'de içerik nasıl güvenli hale getirilir?
- 10. Json ağacından nasıl seri hale getirilir?
- 11. UIiutton UIView içinde nasıl sürüklenebilir hale getirilir?
- 12. sqlite sorgusu nasıl daha verimli hale getirilir?
- 13. Delphi XE'de * _TLB.pas nasıl otomatik hale getirilir?
- 14. MATLAB arsa nasıl interaktif hale getirilir?
- 15. actionscript3: bir bitmapi nasıl pürüzsüz hale getirilir?
- 16. Capistrano Bundler: Nasıl ayrıntılı hale getirilir?
- 17. Akış oluşturucu kullanan içerik oluşturucuları nasıl eşzamansız hale getirilir?
- 18. 2D XNA oyunu fare tıklatılıyor
- 19. C# XNA Fare Konumu
- 20. WCSession.sendMessage çalışıyor 50/50
- 21. Jquery-datatables-rayları satır içi düzenlenebilir hale nasıl getirilir?
- 22. Web Deploy hizmeti aracılığıyla TeamCity dağıtımı nasıl güvenli hale getirilir?
- 23. Sayfadaki ikinci ziyarette javascript nasıl aktif hale getirilir?
- 24. mdl-rozeti veri rozeti içeriği nasıl dinamik hale getirilir
- 25. Visual Studio'da bir proje diğerine nasıl bağımlı hale getirilir?
- 26. Entity Framework 6 - bu satırı nasıl eşzamansız hale getirilir?
- 27. Ekran okuyucuları için özel GUI denetimleri nasıl görünür hale getirilir?
- 28. Emacs C kaynak dizini kalıcı hale nasıl getirilir?
- 29. KDB/Q web arabirimi nasıl güvenli hale getirilir
- 30. HornetQ 2.2.5 çekirdek istemcisinde nasıl bir sıra kalıcı hale getirilir?
'Color' bütün kanalları (RGBA) modüle ve çarpılmış harmanlama modlarını kullanırken sadece şeffaflık beklenen değişiklik sağlar üzerindeki çarpma operatörü kullanarak (örn:' AlphaBlend'). Diğer karışım durumlarının beklendiği gibi çalışabilmesi için (örn: 'Additive' ve' NonPremultiplied'), doğrudan rengin alfa değerini ayarlamalısınız (yalnızca RGB'yi bırakarak). –