Rorschach mürekkep lekesi (aka Psikoloji test resimleri) gölgelendirici


12

resim açıklamasını buraya girin

resim açıklamasını buraya girin resim açıklamasını buraya girin
(kaynak: bonnefil.com )

Bu muhteşem desenin oyunumda olmasını istiyorum. Şimdiye kadar anladım ...

  1. Bir tarafı çizin, sonra iki kez sola ve sağa render edin.
  2. Bu kalıbı bir tarafta nasıl oluşturabilirim? hmm ...
  3. Yardıma ihtiyacım var.

Bunun için gölgelendirici yazmak konusunda biraz bilgiye ihtiyacım var.

Gölgelendirici montaj görevi olmadığını düşünüyorsanız, umarım alternatif bir çözümle bana bildirin!

Ancak bunu gpu olmadan başarmak için olası bir yaklaşım görmüyorum. (rorscach pic hazır fotoğraflar demet saklamak için önermezseniz)


Hangi motoru / dili / çerçeveyi kullanıyorsunuz?
akaltar

@akaltar Unity Shaderlab
Blue Bug

Yanıtlar:


15

Otantik mürekkepli görünümü elde etmek için, en iyi seçeneğiniz muhtemelen mürekkep uyarıları, çizgiler ve salyaların görüntülerini içeren bir kitaplık oluşturmaktır.

Ardından görüntünün yarısının üzerine rastgele bir şekilde konumlandırmak ve döndürmek için rastgele bir miktar seçebilirsiniz. (Dikiş kenarına doğru bir önyargı ile Rorschach testinin ortası en yoğun olur. Bu saçılımı yapmak için bir parçacık sistemi kullanabilirsiniz)

Bunu aynaya ayarlanmış sarma modu ile bir dokuya dönüştürün ve şimdi herhangi bir özel gölgelendirici olmadan görüntüleyebileceğiniz simetrik bir mürekkep lekeniz var.

İşte bu şekilde elde edebileceğiniz sonuçların bir örneği:

Uyarısı görüntüleri kitaplığından birleştirilmiş mürekkep lekesi

Bu imza mürekkep şekillerini umursamıyorsanız, bunu birbiri boyunca kayan iki gürültü paterniyle eşleştiren bir gölgelendirici ile de yapabilirsiniz. Bu, isterseniz zaman içinde sürekli olarak değiştirilebilen simetrik düzensiz bir şekil alır, ancak mürekkep gibi görünmez.

Dnk drone.vs.drones'un başka bir cevapta önerdiği yöntem budur ve buna benzer sonuçlar verebilir:

Gürültü ile eşleştirilmiş mürekkep lekesi

Düzenleme: Gürültüye dayalı yaklaşımın nasıl çalıştığının bir dökümü ...

Önce biraz gürültü ile başlayalım. 1 / f gürültü , genellikle türbülans olarak adlandırılır, oldukça iyi çalışır. Döşeme gürültüsünü bir dokuya fırlatabilir ve bundan sonra bir veya daha fazla örneği toplayabilir, aldığınız şekilleri değiştirmek için ofsetlerini / dönüşlerini değiştirebilirsiniz.

türbülans eşiklenir

Bunu doğrudan eşleştirirsek, sağdaki gibi bir görüntü elde ederiz. Şekiller hemen hemen doğrudur, ancak Rorschach testi gibi görünmek için, ortanın yakınında en yoğun olmalı ve kenarlara doğru inceltilmelidir.

Üstüne bir degrade ekleyerek bu işi yapabiliriz (netlik için burada abartılmış kontrast)

Kenar maskesi Maske gürültüye eklendi

Sonra alarak eşik (sum - blackLevel) * contrast

(Burada blackLevel, sonucun contrastne kadar keskin ve blobili olduğunu kontrol eden bir parametre - daha yüksek değerler daha koyu siyah anlamına gelir - ve kenarların ne kadar keskin olduğunu kontrol eder)

eşiklenir

Bu görüntüyü yansıtmak size yukarıdaki Rorschach örneğini verecektir.


Erkek arı yöntemleri ile başarmaya çalışıyorum. Bunun nasıl yapıldığını ayrıntılı bir şekilde açıklayabilir misiniz? Geleneksel perlin gürültü işlevini kullanıyorum, ancak benimki rastgele noktaların toplanması gibi görünüyor.
Blue Bug

@BlueBug, yukarıda adım adım bir arıza ekledim.
DMGregory

8

Perlin gürültüsünü (uygun bir siyah / beyaz gradyan kullanarak) deneyebilir ve ardından sağ / sol aynalamayı uygulayabilirsiniz

resim açıklamasını buraya girin


Bu perlin gürültüsü mü? Bu geleneksel perlin gürültüsünden oldukça farklı görünüyor. Vay canına, bu Watchmen filmindeki gibi "bulutlu mürekkep" gibi çarpıcı görünüyor.
Blue Bug

2
Her şey parazit değerinden -> piksel değerinden aktarım işlevinize bağlıdır. Burada oldukça küçük bir pencere seviyesi var gibi görünüyor, bu da siyah ve beyaz arasında az miktarda yumuşak kenarlarla keskin kontrastla sonuçlanıyor
MistaGiggles

Evet sadece gri bir yerde bir yüksek geçiş filtresi yapın ve sonra yüksekleri havaya uçurun (yani çok sayıda ile çarpın ve 255'te veya maksimum piksel değeri ne olursa olsun üstünü
derleyin
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.