Söze Başlamadan Önce
Eğer güncel bir fonksiyonel bölüm deniyor
iseniz, bu günlük gelişmelere göre değisecektir. Bu demek pluyor ki eğer
siz bunu deneyecek olursanız güncel parçalar güncellemelere göre değişebilir.Oynanacak
güzel oyuncaklar yaratmaktan çok iyi bir dizayn yapısına önem vermekteyiz.
Minds
Eye Nedir?
Şu andan itibaren, modelleme ve resimleme
pazari pahalı yazılımlar tarafından ele geçirılmiştir. MindsEye bu
soruna bedava bir çözüm olacak, ticari sürümlerinin tamamlanmış şeklidir.
MindEye geliştirmekte oldugu bazi yeni tekniklerle tum üç boyutlu
grafik proglamlarının üzerinde bir platform olmaya çalısmaktadır.
Tarihçe
Yaklaşik iki yil önce, linux daha hala
korsanların işletim sistemi iken, linux icin bir animasyon modelleme ve
resimleme programı düşüncesi ortaya atildi. yıllar boyu çeşitli dizayn
düsünceleri ortaya attık. Başlarda olaylar son derece yanlış gelişmekteydi.
Dayha sonraları insanların ilgisini ölçmek amacıyla haber öbekleri yapıldı.
Bir çok haber ve mesajlar alındı ve böylelikle projenin başlamasında hiç
bir problem kalmamıştı.. Artık ismi Fee-D olmuştu.Daha sonra ise ismi MindsEye
olarak değiştirildi çünkü ismi Free3D kütüphane projesiyle karıştırılabılırdi.
Yavaş yavaş proje ilerledi. Haber öbeğimize yönelen düşünceler ve konular
sayesinde program daha da gelişme imkanı buldu. Kodları yazmak ise bir
yıldan fazla vakit gerektirdi.
Dizayn
MindsEye in en ilgi çeken
yani dizaynidir. en ufak elemandan en buyugune kadar modelleyici
gibi moduldurler.Programin kalbi MidsEye cekirdegi(kernel) dir. Bu yazilimin
bir parcas olmakla beraber yalniz basina herhangi bir grafiksel islem yapamamaktadir.
Onun yerine tum modul ve de plug in leri duzenler. Ayni sekilde tum veri
tipleri de burada saklanmaktadir. bir modul ve de plug in MindEye da farkli
anlamlara gelir. Modul, cekirdegin farkinda oldugu dinamik kodlardir. Moduller
cekirdek tarafindan yuklenir va da kaldirilir. "Farkinda" demekle cekirdegin
moduller hakkinda bilgisi oldugunu belirtmek istiyoruz. Örnegin ağ modülü
(network modül) birçok çekirdeğe bağlantı sağlayan bir aracıdır. Şimdiden
bazı temel modülleri tanımladık, ve de bunlar:
Ağ(Network)
ModellemeYazıcısı
Animasyon Yazıcısı
Cisim Yazıcısı
IO Module(giriş-çıkış modülü)
Bu kurulum güncel programda nasıl gözükecektir?Aşağıdaki
şekilde:
Modüllerimiz animasyon modülleridir ve üç boyutlu uc boyutlu animasyon
icin ozellestirilmis bir yazici(editor) temel alinmistir.Ki bu yazici da
bizim goruntumuzu genel gir koda cevirmektedir. tum kodlarimiz modullerden
olusmakta ve de programin diger bölümlerinde de kullanilabilmektedir.Ornegin,ekran
patlamasinda dort görüntü çıkışlı kaba surumunu gormektesiniz .
3 boyutlu bir çıkış için OpenGL
kullanıyoruz.Yapım dosyaları(makefıles) eğer linux altında çalşyor iseniz
MesaGL kullandığınızı gösterir. Kullanılan GUI paketi TroolTech in
QT paketidir. ( http://www.troll.no ).
Biz bu toolkit paketi seçtik çünkü ihtiyacımız olan elemantarı içermekteydi
ve diğer hiç bir toolkit yeterli olmamaktaydı.Biz başladığımız zamanlarda
Gtk kullanabilmemiz için daha güvenli bir seviyeye erişememişti.
Diğer tüm bölümler gibi bu modülün kodunda da başka bir kod temel alınmıştır.Örneğin
maddeleri gösteren görüntü çıkışları ışık kaynağı diyalog kutucukları ile
aynı olacaktır. OpenGL küresini gösteren ve birçok özelliği olan OpenGL
temel kodundan türetilmiştir. Görüş kapıları tüm özellikler karşısında
nasıl davranacağını bilmektedirler. Madde yazıcısı bundan sonra sadece
tüm maddeleri ve verileri düzenleyerek dağıtacaktır. Programın diğer tüm
bölümleri gibi, felsefe şudur: tüm bölümleri mümkün olduğunca temel hale
getirinceye dek böl, parçala. Temel olarak Unix'in çizdiği yolu takibetmek
şimdi gerçekleşiyor.
Resimleme çıkışı ...SIPP cihazı gibi bazi cihazlar içten kullanılacaktır..Bazı
cihazlar ise dış programlarda kullanılacaktır. Bu, resimleme sisteminin
yapısına ve de karmaşasına bağlıdır.Eğer çıkış cihazı içten ise,bir
plug-ın olarak yüklenecektir. Resimleme modülü bununla
nasıl ilgileneceğini bilecek,ve bir veri yapısına çevirecek,ve bazı paremetrelerle
bir veri yapısına ve de oluşan resimleri ara bölgeye bazı parametrelerle
depolayamaya yardım edecektir Şu andan itibaren SIPP, POVRay ve Renderman'a
resimleyici açısından yönelmiş durumdayız fakat geliştiricilerimiz beğendikleri
diğer tüm programlarla da ilgilenmektedirler.
Gelecek Teknolojiler
MindsEye yazılım mimarisi açısından açısından sağlam bir program olmayı
hedeflemiştir. Birçok yeni teknoloji tanımlanmıştır.Program yeni resimleme
ve modelleme tekniklerinde çok iyi fonksiyonlar içermektedir. İlave etmey,
kaynaştırmayı duşündüğümüz diğer gelişmeler ise:
Dünya için RCS
Gelecekte sahneler daha büyük ve de karmaşık olacak- MindsEyebirden
fazla modeler yardımıyla sahneler üzerindeki işleri kolaylaştırmak amacındadır.
. Bir modelleyici büyük bir sahnede az bir veri ile çalışabilir.Bu veri
bu modelleyici tarafından kilitlenir.Diğer insanlar verinin diğer
parçaları diğer modelleyicilerin kilitlemiş oldukları modellere dokunmadan
çalışabilirler.
LEGO® yol proglamlama
Her MindsEye çekirdeği bir kaynaker düzenleyicisidir.Eğer modüllerden
birine ihtiyaç duyuyor iseniz o zaman çekirdeğe de ihtiyacınız var demektir.Çekirdeği
temel alan sistemlerinbir avantajı da paketleri LEGO © gibi daha iyi çalıştırıyor
olması.Bu olay grerçek hayatta nasıl işliyor? Paxir isimli bir animasyon
şirketiniz var diyelim ve yeni bir film yapmaya karar verdiniz, MindsEye'ı
da ana platform için uygun gördünüz.The Firma cesittli modelleyiciler
obegi ile calismaya alisiktir ve bir resimleme kaynagi vardir. Bu
tarz bir sistemi MinsEye ile kurmak kolay olacaktır.Her makinede hangi
platform olursa olsun, bir bare MinsEye sistem yerleştirilmiltir.Makinenin
rolune bağlı olarak modülle ilave edilir.Sonra da modüllerden bir öbeğin
çekirdeği ve modelleme modülü bir resimleme modülü ve ön izleme plug-ın
ı ıle beraber olacaktır Resimleme ana yapıya, çekirdek ve ağ modülüne
favori resimleme plug-ın ıyle beraber ihtiyaç duyulur. Her
çekirdek kendi rolünü bilir ve de ona göre hareket eder.
Şeffaf Ağ Resimlemesi
Bir önceki bölümde de anlatıldığı gibi, ağ resimlemesi MindEye'da daha
esnek olmalı . Her çekirdek kendi seçeneklerinden sorumludurresimleme
modülü ve resimleme plug-ın ı aktüel(güncel) bir çalışmadır. Programın
tam dizayn ve araçsal çalışmasının yanında modüler yükleme (setup) hafızada
kalmaktadır.. Birçok düşünce ve işlem bu projeyi programlarken hafızada
kalmaktadır. Ağ desteği sadece ufak bir bölüm fakat gördüğünüz gibi bu
MindEye'ın kalbini oluşturmaktadır.
Kullanımı
Şu an MindsEye program geliştiricilerinin
gözüyle çok enteresan bir programdır; Fakat genel kullanicilar icin ise
o kadar da kullanışlı sayılmaz. Programın çekirdeğinin çok iyi olabilmesi
için çok çalışılmakta. Şu anki güncel modelleyiciden bir ekranpatlaması
görülebilr.Bu bır Enlightment
masa üzerinde MındsEye-0.5.19 görünümüdür. Modelleyicide sahne rings5.nff
ismiyle yükleniyor. MindsEye birçok sahneyi yükleyebilmektedir.Fakat daha
henüz tüm dosya türleri program tarafından kullanılamamaktadır. Protokoller
dinamik olarak dosya tiplerini ilave etmektedir.
Referanslar ve İlgili
Linkler
Mindseye:
http://mindseye.luna.net
http://yukon.genie.uottawa.ca/info/soft/nurbs
(Libs needed)
http://www.troll.no (Libs needed)
Haberleşme obeği:
http://mailarchive.luna.nl/mindseye/
Dosya Biçimleri:
http://www.mediatel.lu/workshop/graphic/3D_fileformat/h_format.html
http://www.dcs.ed.ac.uk/%7Emxr/gfx/3d-hi.html
http://www.cgrg.ohio-state.edu/~smay/RManNotes/rmannotes.html
http://www.europa.com/~keithr/
http://www.sdsc.edu/vrml/
http://ourworld.compuserve.com/homepages/thbaier/
Mesa(OGL):
http://ssec.ssec.wisc.edu/~brianp/Mesa.html
http://www.sgi.com/Technology/openGL/
ftp://iris.ssec.wisc.edu/pub/Mesa/
Işın izleyiciler:
Pov: http://www.povray.org/
http://www.geocities.com/SiliconValley/Lakes/1434/
http://www.europa.com/~keithr/
BMRT: http://www.seas.gwu.edu/student/gritz/bmrt.html
Diğer modeler lar:
http://www.cs.ubc.ca/nest/imager/contributions/forsey/dragon/top.html
http://www.comp.lancs.ac.uk/computing/users/andy/ac3d.html
http://http.cs.berkeley.edu/~schenney/sced/sced.html
http://users.aimnet.com/~clifton/spatch/spatch.html
http://www.seas.gwu.edu/student/gritz/rmanlinks.html
QT:
http://www.troll.no
Nurbs:
http://yukon.genie.uottawa.ca/info/soft/nurbs
http://www.cs.ubc.ca/nest/imager/contributions/forsey/dragon/top.html
Benzer Çalişmalar:
http://www.fpa-engineers.com/OD/
http://www.cybersociety.com/moonlight
http://www.geocities.com/SiliconValley/Lakes/7705/Virtuoso.html
Başka değişik siteler:
http://www.ics.uci.edu/~eppstein/gina/csg.html
http://www.cgrg.ohio-state.edu/~smay/AL/
http://www.XCF.Berkeley.EDU/~gimp/gimp.html
http://www.cs.umn.edu/~amundson/gtk/
http://arch.hku.hk/people/matchy/Tcl.html
http://metallica.prakinf.tu-ilmenau.de/Generic/Generic.html
http://www.mdstud.chalmers.se/~md3msns/rayeng.html
http://cg.cs.tu-berlin.de/~ki/engines.html
http://www.cs.rpi.edu/~martink/
http://www.coolfun.com
http://www.grimmware.com/CrystalSpace/
http://www.cs.technion.ac.il/~gershon/irit/
ftp://ftp.eecs.umich.edu/.0/people/aprakash/collaboration/papers/CSE-TR-156-14.ps.gz |