Ana içeriğe atla

Web3D ile uğraşmak

Yüksek lisans çalışmalarımı tamamen Web3D üzerinde adadım desem doğrudur. YL başladığından beri hayatım X3D, Java3D projeleri yapmakla geçiyor. Benim için gerçekten çok faydalı bir deneyim oluyor. Bu dönem sonunda da X3D ile geliştirmekte olduğum tezi bitirebilirsem YL ile amacıma ulaşmış olacağım.

Daha geçenlerde bir gruba (java_tr) java 3d ile ilgili bir soru geldiği zaman, bu konudaki tecrübelerimi soran kişiye aktarmak benim için büyük bir gurur kaynağı olmuştu. Demek ki insanlar uğraştıkları konuyla ilgili sorularla karşılaştıkları zaman bu soruları cevapalayabilirlerse bundan zevk alıyorlarmış. Tüm bu YL,Doktora falan çalışmaları hep bir konuda uzmanlaşmak, o işi bilen olup cevaplayabilmek için yapılıyor zaten. Başka ne anlamı olabilir ki? Her yapılan proje, her üretilen makale, her cevaplanan soru bir mutluluk kaynağı oluyor. Gerçi bunları yapacağım diye insan'ın kendi yaşamından bazı fedakarlıklar yapması gerekiyor, ama nihai sonuç bu fedakarlığa değiyordur. Şimdi diyeceksiniz ki ya bu ne cevap verdi ki bu kadar övünüyor (övünmüyorum :) sadece izlenimlerimi anlatıyorum), bunu cevaplamak için ben soruyu ve cevabı buraya yazayım en iyisi, cevabın güzelliği (eğer böyle bir şey mümkünse) ve övünme konusundaki kararınızı soruyu ve cevabı okuduktan sonra verirsiniz. Bakarsınız bu soru ve cevap sayesinde Web3D konusuna ilgili bir kaç kişi için yönlendirme sağlamış oluruz. Bilgi güçtür o zaman tüm insanlar bu güçten faydalansın sloganımız da bir sonuca varmış olur :S

Soru şu:(Bağıda bu)
iyi günler

java3d ile uðraþmayý düþünüyorum, daha önceleri j3d
hakkýnda birþeyler okumuþtum ama okul yoðunluðundan
devam edemedim.

bu hususta bana tavsiye verebilecek var mý. ayrýca
elinde güzel döküman olan varsa, gönderebilirseniz sevinirim.

Cevaplar da bunlar: (Elbette benden başka cevap verenler de vardı :D )
(Maviler o cevap ile ilgili şu anki düşüncelerim :D )

Ahmet Işık tarafından:
j3d yerine opengl ve java binding'lerine bakmanizi tavsiye ederim.

Evet bu benim de tavsiye edeceğim birşeydir. Özellikle uygun konuya uygun API düşüncesine bağlı olarak
Mehmet Çabuk tarafından:
web için mi application için mi J3D öðrenmek istiyorsunuz?
Java için web / application pek farketmez tabi ama, w3 consortium web
3D VRML idi yanlýþ hatýrlamýyorsam. Bunu da bi araþtýrabilirsin.
Tabi hem web hem application istiyorsan J3D öðrenmen en mantýklýsý...

Az bilgiyle yanlış yönlendirme :S


Soruyu soran kişi aradığını bulamamış bu iki cevaptan sonra şu şekilde sorusunu genişletmiş:
vrml'e biraz baktým da, wrml için ayrý bir browser
gerekiyor ve okuduðum kadarýyla aðýr olduðu için
kullanýmý hemen hemen kalkmýþ.
yalnýz web3d consortium tarafýndan geliþtirilip xml
desteði getirilmiþ hali çýkmýþ ortaya x3d diye(Mehmet
abinin kastettiði bu heralde).
peki bu x3d hakkýnda malumatý olan var mý? bu iþ sanki
3d programlama yapmada deðil de elinde hali hazýrda 3d
modeller bulunup bunlarý internette kullanmak isteyen
kiþilere hitap ediyormuþ gibi geliyor.

baþka bir soru da j3d ile ilgili. j3d'nin kýsýtlý
olduðu söyleniyor. (diðer arkadaþlar da)opengl veya
directx ile uðraþ diyorlar.
iyi de java3d zaten çalýþtýðý platforma göre altta
opengl ya da directx'i kullanmýyor mu?

j3d'nin dýþýnda direk olarak opengl kullanýlabiliyor
mu javada, öyle olursa j3d'deki(var olduðu söylenilen)
eksikliklerden kurtulabiliyor muyuz?

peki performans olarak j3d ve opengl karþýlaþtýrmasý
nasýl(ikisinin de javada kullanýmýný kastediyorum).


ayrýca baþka birþey daha; java binding nedir? bu
ibarenin türkçe baþka bir karþýlýðý mý var, türkçe
hiçbirþey çýkmýyor bu konuda. ingilizce de biliyorum
ama ingilizce okuduklarýmdan pek birþey çýkaramadým
birþeyler anlamadým.


Ve evet işte bu da benim cevabım, faydalı olmasını umduğum cevap :S

Merhaba,
VRML artik desteklenmiyor. Onun yerine Web3D konsorsiyumunun XML tabanli X3D
teknolojisini kullanmaniz gerekiyor. X3D sahnelerin tanimlandigi bir dosya
bicimi. Ayrica Xj3D (http://www.xj3d.org) vb. tarayici/API'ler yardimiyla
sahneler uzerinde Java kullanarak degisiklikler yapabilirsiniz. X3D ile 3B
programli diye kastettiginiz (ya da sizin soyleminizden benim anladigim) seyi
yapabilmeniz icin X3D'nin SAI altyapisini incelemeniz gerekli. (Ayrintili
malumata http://www.web3d.org adresinde ulasabilirsiniz)

Java3D konusuna gelirsek, java3d bir ust API gorevi gormektedir. Alt tarafinda
OpenGL veya DirectX kullanan (bir kac surum sonra JOGL'e gecmeyi dusunuyorlar)
bir ara katmandir. Yapacaginiz, yapmak istediginiz ise gore Java3D'mi yoksa
JOGL (Java OpenGL Binding)'mi kullanacaginiza karar vermeniz gerekiyor. (Su
sitede http://forum.java.sun.com/thread.jspa?threadID=510067&messageID=2431319
oyun motoru yazmak isteyen biri icin fikirler uretilmis ornegin)
Java3D OpenGL'e gore daha ust katman oldugu icin bazi seyleri yapmak ve anlamak
cok daha kolay. Ancak su ana kadar Java3D web3d ve akademik kullanimin disina
pek cikamadi. JOGL ve OpenGL/DirectX daha cok kullaniliyor (Belki de
populerliklerinden)

Benim soyleyebileceklerim bu kadar.

Onemli Bir Not: X3D'yi Xj3D kullanarak normal bir uygulamada da
kullanabilirsin. Sadece Web'de kullanman gerekmez.


Aslında tüm bu yazıda anlatmak istediğim bazı konularda gerçekten meraklı olabilirsiniz, ancak yeterli ve güvenilir kaynaklar olmadan işi iyi öğrenmek gerçekten zor olacaktır. Bu yüzden yabancı dil bilgisine ihtiyacınız oluyor. Ya da bu işe gönül vermiş insanların yabancı dildeki belgeleri anadile çevirip kullanmak isteyenlere bağışlaması gerekiyor.

Konuyla ilgili (Türkçe) bağlar:(Web3D ile ilgili makale çalışmaları)

Yorumlar

kürşat yurtsever dedi ki…
Merhaba uzun zamandır ben de web3d ile ilgileniyorum.Halihazırda bir denemem de oldu fakat program operatörlüğünden ileri geçmek biraz zor oluyor.Programlama konusunda hiç bir bilgim bulunmamamkta.Bir şekilde iletişime geçerseniz daha detaylı konuşmak isterim.örnek sitemi ve içeriği görmek isterseniz www.pegltd.com.tr adresini ziyaret edebilirsiniz.yurtseverkursat@gmail.com adresinden bana ulaşabilirsiniz.