the scene > demoscene

pc demolari

<< < (5/17) > >>

skate:
Belirli özelliklerdeki objeleri parçalamak kolay. Örneğin bir cube, torus ya da cylinder objesinden türeme bir objeyi (eğilmiş, bükülmüş, yamulmuş, kıvrılmış felan) verin bana parçaliim, sorun değil. Ama random bir yöntemle modellenmiş bir .x'i verin bana, döt gibi kaliim :) Nightlord da bu ikinci ihtimalden bahsediyor olsa gerek.

nightlord:

--- Alıntı yapılan: ghost;14136 ---ben tam aksini dusunuyorum. procedurel olarak uretilmis objleri parcalamak, elle yapilmis .x objesini parcalamaktan daha kolaydir. cunku prosedurel olarak urettigin modeli parcalanabilir olarak yaratabilirsin (atiyorum kup/kure bloklarin bilesimi olarak). yani obje yaratimi bittiginde zaten parcalanmaya hazir halde olacaktir. oyle demo esnasinda hesaplanmasi gerekmez, demo baslamadan once yaratilir komple o sekilde.

--- Alıntı sonu ---


Ben iki problemin temelde ayni oldugunu (ya da en azindan ayni zorlukta oldugunu) dusunuyorum. yani hedefledigin sekil arbitrary bir sekilken (3D text, vs gibi), onu kuplerden olusturacak procedurel algoritmayi bulma problemi ile, elde olan arbitrary bir obje modelinin 3d olarak parcalara bolme probleminin yakin problemler oldugunu dusunuyorum.


Buna ilaveten tam olarak parcalanma ani ile ilgili olarak vertex shader'in nasil yonetildigine dair ciddi sekonder problemler var. Modellerin parcalanmadan once zaten kuplere bolunmus fakat her kupun yerinde oldugu sekilde render edildiklerini sanmiyorum. Oyle olsaydi, z buffer ordering problemlerinden dolayi kamera hareket ettikce seam'ler goruyor olurduk. Mesela opengl veya directxte sirt sirta dayali ayni buyuklukte iki kup render edip kamerayi oynatirsaniz birlesim yerinde izler gorursunuz pekcok ekran kartinda.

Ya seam'leri saklamanin cok guzel bi yolunu buldular pixel shader'da. ya da parcalari tam kopma anindan itibaren ic yuzeyleriyle beraber render ediyorlar. (kopmadan once ic yuzeyleri render etmiyorlar)

ghost:

--- Alıntı yapılan: nightlord;14139 ---...
... ya da parcalari tam kopma anindan itibaren ic yuzeyleriyle beraber render ediyorlar. (kopmadan once ic yuzeyleri render etmiyorlar)
--- Alıntı sonu ---


benim tahminim de bu yonde oldu.

bilmiyorum, buyuk bir objeyi kucuk parcalardan uretmek, tek bir objeyi kucuk parcalara ayirmaktan daha kolaymis gibi geliyor bana.

anesthetic:
benim izleyeceğim yöntem şu olurdu: t0 anında explosion p0 noktasında başlasın ve yayılma hızı v olsun.

objeyi çizerken p0 merkezli ve (t-t0)*v yarıçaplı küre patlamanın tamamen gerçekleştiği hacim olacak. yani p0 merkezli ve giderek yarıçapı büyüyen bir küre.

vertex shader ile küçük poligonlara bölünmüş objede bu kürenin içinde olan her vertexi kürenin yüzeyindeki en yakın noktaya gönderirim.

bu sayede parçalanmanın yarısı, yani parçalanan büyük objenin parçalanmış kısmının görünmeme olayı halledilmiş oldu. geri kalan kısmı, yani parçalanma bölgesinde dağılan edevatlar göstermeyi de büyük objenin küçülmesinden bağımsız bir şekilde, etrafa rasgele (giderek açılan tabi) prizmalar dağıtarak hallederim.

burada tek sorun büyük objenin giderek büyümesinin önüne geçmek için p0 noktasını objenin dışında bir yerde alma gerekliliği (her primitive, noktanın aynı yamacına maplenecek).

debris'teki bütün parçalanmaların mükemmel küresel şekilde olması bana onların da öyle yaptıklarını düşündürüyor.



aslında aynı şeyi tam ters yoldan nested'ta kullanmıştım. objenin küre içinde değil de küre dışında kalan kısmını saklamak için.

anesthetic:
etrafa dağılan küçük parçaların, tam dağılmaya başlama anında büyük objenin yüzeyi ile align etmesi gerektiği için, nightlordun bahsettiği seamler oluşacak. ama zaten hem anlık olduğu hem de biz orayı parçalanıyor olarak gördüğümüz için göze batmayacak.

Navigasyon

[0] Mesajlar

[#] Sonraki Sayfa

[*] Önceki Sayfa

Tam sürüme git