Ana Menü
· Ana Sayfa
· Dosyalar
· Dökümanlar
· Forum
· Günün Resmi
· Haber Arşivi
· WWW Linkleri
· Üye Listesi

     Forumlar

 strncpy ve strncpy_s
 Konu adi : Borland c++ Builder ile Amiral Batti
 Rady10 - YerliOyun
 Kabusta Kaybolmak
 Konsol da programı bekletmek
 Oyun programlama icin hangi programlama dilli ?
 flash! şanlıurfa bilgisayar oyununda(no rapid)
 Sevgilim Olur musun?
 Directx'e başlamak isteyenler bi bakın
 PSP programlama
 Flash tan php
 Bilgisyr oyunu yapmam için üniverstde hangi bölüme girmeliym
 www.arshiv.gen.ms
 Cimg.h ilgilenenler icin
 müttefik oyunu

Konu Disi
 Emraah
 Yeni sitemiz açıldı
 Kalp krizi durumunda ne yapılmalı?
 Oyun sektöründe hangi görevde çalışmak isterdiniz?
 Takım arkadaşı sorunu
 msn de renklı nıck
 pc hata veriyor ! YARDIM!!
 Gülmek isteyenler Buraya
 İnanılmaz hl 2 modu görüntüsü
 Computer Languages History

[ Forumlara Git ]


oyunyapimi.org: Forums

www.oyunyapimi.org :: Başlığı Görüntüle - Kelle, kol, bacak koparmak
 SSSSSS   AramaArama   Kullanıcı GruplarıKullanıcı Grupları   ProfilProfil   LoginLogin 

Kelle, kol, bacak koparmak
Sayfa 1, 2  Sonraki
 
Yeni Başlık Gönder   Cevap Gönder    www.oyunyapimi.org Forum Ana Sayfası -> Programlama Dilleri ve Algoritmalar
Önceki başlık :: Sonraki başlık  
Yazar Mesaj
Nomax



Kayıt: Jan 24, 2003
Mesajlar: 1134
Nereden: Bakırköyden.Yeni taşındık da...

MesajTarih: Sat Nov 05, 2005 10:38 pm    Mesaj konusu: Kelle, kol, bacak koparmak Alıntıyla Cevap Ver

Diyelim ki oyunumuzda kemik bazlı animasyon sistemi var ve bunlara bağlı olarak bölgelere göre hasar belirledik.Mesela kafaya atanmış kemiğe(bone) vurulunca headshot oluyor ve yüksek zarar veriliyor.Peki diyelim ki son vuruş belirli bir bölgeye yapıldı, örneğin kafa, nasıl kopması sağlanabilir?
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et MSN Messenger
vmeydaneri



Kayıt: Dec 08, 2004
Mesajlar: 583
Nereden: Ankara

MesajTarih: Sat Nov 05, 2005 10:46 pm    Mesaj konusu: Alıntıyla Cevap Ver

bunun icin soyle bisi yapabilirsin mesala o modelin 4 tane turu olur.

4. tane cizim yani
1.durum normal hareketler
2.Durum Kafasina ates edildiginde kafasi olmayan hali //ve dokulara kan efekti olan
3.Durum karnina ates edildiginde karni parcalanmis olan bir model tabiki yine farkli bir doku.
4.Durumda mesala sadece bir bacagi kopmus hali olabilir. //gene doku farkli


soyle olur

1. Durum hic bir saldiri yokken normal modeli ciz

saldiri oldu ve kafasina mermi geldigini saptadin ve kafasi kopmasi gerek
once 2. modeli yani kafasi olmayan modeli ekrana basicaksin ve kafasi olan modeli ekrandan kaldiracaksin ve sadece kafa modeli(kopan parca) olan halinide ekrana kafanin buldugu pozisyondan merminin hiz vektoru yonunde firlatacaksin..

Boyle yaparsan bu hissi verirsin..

Quake3 de Tek tek modelleri birlestiriyorlardi MD3 de fakat MD2 de benim dedigim bu yontemi kulaniyorlar...
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et MSN Messenger
Nomax



Kayıt: Jan 24, 2003
Mesajlar: 1134
Nereden: Bakırköyden.Yeni taşındık da...

MesajTarih: Sat Nov 05, 2005 11:45 pm    Mesaj konusu: Alıntıyla Cevap Ver

Peki profosyonel oyunlarda nasıl hallediliyor bu olay? Mesela soldier of fortune veya Blade of darkness'da?
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et MSN Messenger
son1431



Kayıt: Jan 15, 2003
Mesajlar: 82
Nereden: Balıkesir

MesajTarih: Sun Nov 06, 2005 12:49 am    Mesaj konusu: Alıntıyla Cevap Ver

Ben kendi oyunumda karakterin her bir uzulunu kafa,kol,bacak, gövde hatta gövdeyide kendi içerisinde 4 kısımda oyunuma import ediyorum ve merminin nereye geldiğini bilmek zaten bu işlemden sonra kolay. Ama sen karakteri tek seferde çizdiriyorsan şöyle yapabilirsin karakter import edildiğinde herbir poligon için bir gllist ve glloadname ile import edersin ve "Z" değerine göre karakterin canının daha fazla azalmasını sağlayabilirsin. Yani "Z" değeri arttıkça (karakterin kafa kısmına yaklaştıkça) darbeler daha fazla enerji götürür. Tabi programlama dili kullanıyorsan. Hazır oyun motorlarında nasıl olur bilemem. Çalışmalarında başarılar.
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et MSN Messenger
Nomax



Kayıt: Jan 24, 2003
Mesajlar: 1134
Nereden: Bakırköyden.Yeni taşındık da...

MesajTarih: Sun Nov 06, 2005 1:12 am    Mesaj konusu: Alıntıyla Cevap Ver

Bölgeye göre güç azalması değil benim yapamadığım.Kılıç savrulduğunda kafanın kopup vücuttan ayrı bir parça olarak gitmesi.
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et MSN Messenger
madprogrammer



Kayıt: Jun 10, 2004
Mesajlar: 290
Nereden: İstanbul // Üsküdar

MesajTarih: Sun Nov 06, 2005 12:11 pm    Mesaj konusu: Alıntıyla Cevap Ver

bak şimdi her objeyi (kafa, kol, bacak, ...) tek dosyada toplarsın fakat bunlar ayrı ayrı submesh'ler olur yani birbirinden bağımsız objeler ve sen bunlara normal haldeyken kemik matrislerini bağlarsın yani kemik matrislerine göre hareket ederler ilişkili olduğu kemiğin matrislerine göre ardından kafadan vurulunca bu model, kafayı bağlı olduğu kemikten koparırsın ve uygulanacak değerleri yer çekimi kurşun hızı gibi değerlerle değiştirirsin bu durumda kafa hem gerçekçi hareket eder hem de ayrı ayrı her durumu saklamaktan az yer kaplar hem ram'de hem de hdd'de ve üstelik ondan da daha gerçekçi olur.
Başa dön
Kullanıcı profilini gör
son1431



Kayıt: Jan 15, 2003
Mesajlar: 82
Nereden: Balıkesir

MesajTarih: Sun Nov 06, 2005 1:18 pm    Mesaj konusu: Alıntıyla Cevap Ver

Anlatamadım herhalde. Şimdi "Z" değeri kafa bölgsinde (boyundan sonra) 15 birim civarında olsun. Yani darbe "Z" değeri 15 ve yukarısında bir yere yapılmış ise kafaya yapılmış bir darbedir. Kafanın kopması olayıda bundan sonra basit. Çizim yaptırılırken "Z" değeri 15birimden fazla olanların çizimi bir daha yapılmaz. böylece kafa kopmuş izlenimi verirsin. Eğer darbe 10birim - 15 birim arasında olursa karnı deşilir vs.. vs.. Tabi sen yinede kolay olması açısından ilk bahsettiğim gibi yapabilirsin yani her uzulu ayrı ayrı çizdirirsin. Kafaya alınan bir darbede kafa parçalanır ve çizimi yapılmaz böylece kafa dağılmış izlenimi verebilirsin. Darbe anında birde güzel efekt verirsen mükemmel olur sanırım. Çalışmalarında başarılar.
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et MSN Messenger
stroma



Kayıt: Mar 31, 2003
Mesajlar: 169

MesajTarih: Sun Nov 06, 2005 2:30 pm    Mesaj konusu: Alıntıyla Cevap Ver

of of off.. Very Happy biraz düşünüp de cevap verin. biraz da okuyarak bakın sorunun başında ne yazıyor:
Alıntı:
Diyelim ki oyunumuzda kemik bazlı animasyon sistemi var
yani kemik kullanın diyor ne o öyle ayrı submesh veya xyz ler..
vmeydaneri ninkiler hariç söylenenler gereksiz ve eksik işlemlerle dolu. cevap yazarken "heralde böyle olursa, böyle olur o zaman şöyle olur" diye cevap veriyorsunuz ama uygulamada ortaya çıkacak pek çok hatayı atlıyorsunuz.
neyse... sanırım anlaşıldım.
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder MSN Messenger
DG



Kayıt: Mar 06, 2004
Mesajlar: 351
Nereden: Eskişehir

MesajTarih: Sun Nov 06, 2005 3:11 pm    Mesaj konusu: Alıntıyla Cevap Ver

Model formatına bağlı submesh, xyz vs.. vs.. olmaz diye bir şey yok. Yalnız eğer submesh yapıp buna hiyerarşi eklersen, bu sefer model normal halindeyken vertex blending yapmak zor olur. Büyük ihtimal gövde, kol, bacak ayrı ayrı kapalı submeshler yapılıp köklerinin olduğu yerde bir kemik (baş kökü için; boyun kemiği) varmış gibi hareket etmek gerekir. Varmış gibi hareketten kastım vertexler için kemik ağırlıklarının hiyerarşik olarak kestirilmesi.

Yok eğer kemik yapısında ise: örneğin bacak koptu, o zaman ağaçta bacağın başladığı dalı bulup, onu ağaçtan koparıp o dalı yeni bir ağaç olarak tanımlamalısın. Uygulamada Allah kolaylık versin Smile

Bence vertex blending pek derdin değil ise hiyerarşik submesh kullan. Q3 modelleri -birbirlerine taglarla tutturulmuş- üç tane parçadan oluşuyor mesela ve gerekli düzenlemelerle rahatlıkla kopartılabilinir.

Anlattığım yöntemlerin ikisi de hemen hemen aynı kapıya çıkıyor gibi.
Kolay gelsin
Başa dön
Kullanıcı profilini gör Kullanıcının web sitesini ziyaret et
son1431



Kayıt: Jan 15, 2003
Mesajlar: 82
Nereden: Balıkesir

MesajTarih: Sun Nov 06, 2005 5:58 pm    Mesaj konusu: Alıntıyla Cevap Ver

stroma demiş ki:
of of off.. Very Happy biraz düşünüp de cevap verin. biraz da okuyarak bakın sorunun başında ne yazıyor:
Alıntı:
Diyelim ki oyunumuzda kemik bazlı animasyon sistemi var
yani kemik kullanın diyor ne o öyle ayrı submesh veya xyz ler..
vmeydaneri ninkiler hariç söylenenler gereksiz ve eksik işlemlerle dolu. cevap yazarken "heralde böyle olursa, böyle olur o zaman şöyle olur" diye cevap veriyorsunuz ama uygulamada ortaya çıkacak pek çok hatayı atlıyorsunuz.
neyse... sanırım anlaşıldım.


Kardeşim benim söylemek istediğim yöntemini değiştirebilirsin ve yazdıklarım size 2 yöntem önerisidir. Bunu anlamakda senin için bukadar zor olmamalı bence. Bir işi illaki tek bir yöntemle yaparız diye bir kanun yok. Nomax bu işi böyle yaparken bunlarıda yapabilirsin anlamına geliyor. İnşallah bukadar açıklama yeterli gelir. Yazımın başında okursan "ben kendi oyunumda..." diye başlamışım. Nomaxın oyununda şöyle yapılmalıdır diye başlamamışım. Polemik yaratmak heveslisi olmayın. Burada bilgilerimizi paylaşıyoruz. Eğer seninde bir fikrin varsa ama yanlış ama doğru söyle. Bundanda birşeyler öğrenebiliriz. Çalışmalarınızda başarılar.
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et MSN Messenger
stroma



Kayıt: Mar 31, 2003
Mesajlar: 169

MesajTarih: Sun Nov 06, 2005 10:58 pm    Mesaj konusu: Alıntıyla Cevap Ver

bahsettiğin yöntemi anlamıyor değilim hatta kullandım da. ama pek çok eksiği var ve kafa koparmak için yetersiz. bunu görebilmelisin.Polemik yaratmak heveslisi değilim. sadece verilen cevaplar biraz eksik ve hataları var dedim. ve diyelim ki elimde vertex var ben Z konumuna bakacam peki kelle kopartırken adamın eli-ayağı havadaysa ne yapacaksın eldeki-koldaki vertexleri de mi sileceksin? hadi sildin nasıl kapatacaksın a.çık uçları? ve yeni kaplama koordinatı oluşturman gerekecekse(damaged kaplama ayrı ise) ne yapacaksın??
kısacası dediğin yöntem başlıktaki sorunun cevabı değil ve kemikli değil vertex anim li modellerde kullanılıyor, md2 gibi.. kopartmak için değil damage hesapları için kullanılıyor. (o tarz formatlarda zaten kopartmak için tek mantıklı yol ayrı modeller oluşturmak) zaten kemikli sistemde yerden uzaklık almaya gerek yok, kemiklerde uzaklık alıp daha doğru bir damage sistemi geliştirilir..zaten başıl sahibi de belirtmiş:
Alıntı:
Bölgeye göre güç azalması değil benim yapamadığım.Kılıç savrulduğunda kafanın kopup vücuttan ayrı bir parça olarak gitmesi.
--------
diğer yani med in dediğini ise kæle bile almayacağım her kemiği submesh yapmış demor.. Razz
--------
polemik yaratmamak için ( ??? ) bu konuya başka cevap da yazmayacağımı şimdiden söyliim. çünkü anlaşılan cevap alınmış...
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder MSN Messenger
DG



Kayıt: Mar 06, 2004
Mesajlar: 351
Nereden: Eskişehir

MesajTarih: Sun Nov 06, 2005 11:31 pm    Mesaj konusu: Alıntıyla Cevap Ver

Günümüz oyunlarında çok ilginç örnekler var bu konularda:

BloodRayne 2 - Karakterin kafasını uçurabildiğimiz gibi karakteri diklemesine ortadan ikiye de ayırabiliyoruz.

Half Life 2 - Zombilerin yarılışını görmüşsünüzdür. Testere bıçağı nereden fırlatılmışsa oradan yarılıyorlar. Çok güzel bir hiyerarşi var.

-------------------------

Meydaneri'nin söylediği metodu doğru anlamışsam, çok çok kısıtlayıcı. Mesela modelin kafası, kolları, bacakları ayrı ayrı kopabilsin ve model simetrik olmasın. Kombinatif olarak artıyor model sayısı

Modeller:
* sağ kol
* sol kol
* sağ bacak
* sol bacak
* kafa
* sağlam model
* kafası olmayan model
* kafası ve sağ kolu olmayan model
* ....
* sağ kolu olmayan model
* ....

Bu çok kısıtlayıcı. Modelleme açısından değil bellek gereksinimleri açısından.

Halbuki hepsi aynı model...
Başa dön
Kullanıcı profilini gör Kullanıcının web sitesini ziyaret et
vmeydaneri



Kayıt: Dec 08, 2004
Mesajlar: 583
Nereden: Ankara

MesajTarih: Sun Nov 06, 2005 11:43 pm    Mesaj konusu: Alıntıyla Cevap Ver

Bu soyledigim benim uydurdugum bisi degil Quake 2 de bu uygulaniyor ...

ve bu olayda 2-3 model felan oluyor yani cok asiri bir parcalanma efekti olmuyor ..

Tabi bunu gunumuz teklonojisi ile kiyaslarsak daha fazlasini , daha rahat bir bicimde yapabilirsin(yani fazla model kulanmadan tek modelde haledebilirsin) fakat bu seferde ileri derece matematik isin icine girer ....

arkadasimiz ilk soruda nasil yapabilirim demis bende quake 2 deki mantigi anlattim ..

ileri sevye seyler yapilabilir sonucta yontem cok hatta kendin bile gelistirebilirsin...
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et MSN Messenger
MD-C



Kayıt: Feb 26, 2003
Mesajlar: 1258
Nereden: Dünya.Türkiye(54)

MesajTarih: Sun Nov 06, 2005 11:47 pm    Mesaj konusu: Alıntıyla Cevap Ver

Olay basit, madem Kemik Sistemin zaten var... Senin yapman gereken; alınan darbe sonrası, kafayı kontol eden kemiği gerçek olarak düşürmek, bunuda iki şekilde yaparsın: Ya bir fizik motoru kullanıp real-time kelleyi uçurursun yada önceden animasyonlanmış birşeyi oynatırsın...
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et
Nomax



Kayıt: Jan 24, 2003
Mesajlar: 1134
Nereden: Bakırköyden.Yeni taşındık da...

MesajTarih: Mon Nov 07, 2005 12:02 am    Mesaj konusu: Alıntıyla Cevap Ver

MD-C demiş ki:
Olay basit, madem Kemik Sistemin zaten var... Senin yapman gereken; alınan darbe sonrası, kafayı kontol eden kemiği gerçek olarak düşürmek, bunuda iki şekilde yaparsın: Ya bir fizik motoru kullanıp real-time kelleyi uçurursun yada önceden animasyonlanmış birşeyi oynatırsın...


Kafayı kontrol eden kemiği gerçek olarak düşürmek diyorsun fakat bu sefer de vertexler bağlı kalacak ve kafa uçtuğunda boyun uzicak peşinden gidecek, yani kopmayacak, öyle değil mi?
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et MSN Messenger
Mesajları göster:   
Yeni Başlık Gönder   Cevap Gönder    www.oyunyapimi.org Forum Ana Sayfası -> Programlama Dilleri ve Algoritmalar Tüm saatler GMT +2 Saat
Sayfa 1, 2  Sonraki
1. sayfa (Toplam 2 sayfa)

 
Forum Seçin:  
Bu forumda yeni konular açamazsınız
Bu forumdaki mesajlara cevap veremezsiniz
Bu forumdaki mesajlarınızı değiştiremezsiniz
Bu forumdaki mesajlarınızı silemezsiniz
Bu forumdaki anketlerde oy kullanamazsınız


Powered by phpBB 2.x.x © 200x phpBB Group
Türkçe Çeviri : Onur Turgay & Erdem Çorapçıoğlu
Türkçe Düzenleme: Alexis Canver
Version 2.x.x of PHP-Nuke Port by Tom Nitzschner © 200x www.toms-home.com




Web site powered by PHP-Nuke
Web site engine\'s code is Copyright © 2002 by PHP-Nuke. All Rights Reserved. PHP-Nuke is Free Software released under the GNU/GPL license.
Sayfa Üretimi: 0.127 Saniye