Şu bağlantıdan UNESCO'nun Özgür ve Açık Kaynak Yazılım portalına ulaşabilirsiniz. Bu portaldan FLOSS hareketiyle ilgili belgelere ve sitelere ulaşım sağlayabilirsiniz. Ayrıca Özgür Yazılım ile ilgili kaynaklara bir geçit görevi görüyor. Özgür yazılım anlamak isteyenler için etkileşimli bir erişim noktası görevi görerek kalıcı bilgiler barındırıyor.
Poni Hoax - She sells anger
Bilgisayar alanından hareketle yaşamla ilgili her şeyi paylaşmaya çalışan arkadaşların oluşturduğu kollektif bir günlüktür.
Kısa kısa
1. Aşkın diyalektiği konusunu aratırken (ne alaka demeyin merak ettim arattım :) ) Ulus Baker'in Spinoza ve Aşkın Diyalektiği ile karşılaştım. Ulus Baker ismiyle tanışmış oldum. Varolan yazılarını okumaya çalışacağım. Bir kaç aydır etkin olarak felsefe, özellikle Türkçe felsefeciler ararken karşıma çıkan bu isim oldukça iyi oldu (Ahmet İnam'ı okuyordum mesela).
2. Avatar - Son Hava Bükücü çizgi filmine sardım. İlk sezonunu bitirdim, ikinci sezonun yarısındayım. Amerikan Nickelodeon kanalı tarafından yapılan Amerikan kaynaklı bir animasyon. Miyazaki'den ve Japon Anime kültüründen oldukça etkilenmiş bir yapım. Başarılı olduğunu söyleyebilirim.
3. 13. İzmir Kitap Fuarı 19-27 Nisan arası ve ben almak için kaydettiğim kitap listesine baktım 23 tane kitap yazmışım. Bir de fuarda gezerken bu listeye eklenecek kitapları düşününce bütçemin iyice sarsılacağı kesin :) 23 Nisan Çarşamba günü resmi tatil olur ve okula gitmem gerekmezse sanırım o günü fuara ayıracağım :)
2. Avatar - Son Hava Bükücü çizgi filmine sardım. İlk sezonunu bitirdim, ikinci sezonun yarısındayım. Amerikan Nickelodeon kanalı tarafından yapılan Amerikan kaynaklı bir animasyon. Miyazaki'den ve Japon Anime kültüründen oldukça etkilenmiş bir yapım. Başarılı olduğunu söyleyebilirim.
3. 13. İzmir Kitap Fuarı 19-27 Nisan arası ve ben almak için kaydettiğim kitap listesine baktım 23 tane kitap yazmışım. Bir de fuarda gezerken bu listeye eklenecek kitapları düşününce bütçemin iyice sarsılacağı kesin :) 23 Nisan Çarşamba günü resmi tatil olur ve okula gitmem gerekmezse sanırım o günü fuara ayıracağım :)
2008 Blog Ödülleri
Bu sene bir ilk gerçekleşiyor ve Türkçe bloglar arasında bir oylama düzenleniyor. Kod ve us günlüğü Teknoloji kategorisinde oylamaya giriyor. Daha önce rastlamadığımız başarılı günlüklerle karşılaşma ortamını oluşturması bu oylamanın en büyük avantajıdır. Şimdi değerli okuyucularımızdan bu blog ödülleri içerisindeki oylanan günlükleri incelemek için zaman ayırmalarını rica ediyorum. Böylece ilginizi çekebilecek başarılı günlüklerle tanışma şansına ulaşabilirsiniz. Bu arada hafif bir manipülasyon yaparak başarılı olduğunu düşündüğüm adaylarımı yazayım :)
Kültür-Sanat Kategorisi'nde Goddess Artemis' Blog
Haber Gündem Kategorisi'nde Çağatayca
Henüz diğer kategorileri ayrıntılı incelemeye fırsatım olmadı. Yukarıda yazdığım adaylar benim sürekli takip etmeye çalıştığım beğendiğim bloglar.
Kültür-Sanat Kategorisi'nde Goddess Artemis' Blog
Haber Gündem Kategorisi'nde Çağatayca
Henüz diğer kategorileri ayrıntılı incelemeye fırsatım olmadı. Yukarıda yazdığım adaylar benim sürekli takip etmeye çalıştığım beğendiğim bloglar.
JOGL Ne ola ki?
JOGL adı üstünde Java OpenGL kütüphanesidir. Bu kütüphane Bilgisayar Grafiği programlayanların Java'yı ve dolayısıyla nesne yönelimli yaklaşımı kullanmasını sağlar.
Kullanmadan önce nasıl kuracağımızı görelim
1. JOGL sitesinden kullandığımız işletim sistemine uygun dağıtımı indirelim.
2. Eclipse içerisinde açtığımız lib isimli bir klasör içerisine bu sıkıştırılmış dosyadan ortama göre dll veya so dosyalarını ve ek olarak içerisindeki jar dosyalarını (sıkıştırılmış dosya içerisinde lib klasöründeki tüm dosyalar oluyor bu durumda) açalım.
3. Projeye sağ tıklayıp "Properties" seçeneğiyle (ayrıca proje seçiliyken Alt+Enter tuş birleşimi de açar) özellikler penceresini açıyoruz. Bu pencerede sol taraftan "Java Build Path" menüsünü seçiyoruz. Sağ tarafta açılan pencereden "Libraries" sekmesine geçiyoruz.


Bu sekmede sağ tarafta "Add JARs" düğmesiyle JAR seçim penceresini açıyoruz. Bu açılan pencerede workspace içerisinde projemizin lib klasörüne açtığımız gluegen-rt.jar ve jogl.jar dosyalarını seçip projeye ekliyoruz.

4. JARları ekledikten sonra native kütüphane ayarlamasını yapmak için "Libraries" jogl.jar'ı sol taraftaki ok uçlarından açıp içerisindeki "Native Library Location" bilgisini yine sıkıştırılmış dosyayı açmış olduğumuz "ProjeIsmi/lib" şeklinde seçiyoruz.


5. Bu işlemler bittikten sonra ilgili projemiz JOGL kullanabilir hale gelmiş oluyor.
Daha sonra JOGL kullanacağımız projeyi kodlamaya başlayabiliriz. Kurulumu test etmek için şu kodu deneyebilirsiniz:
Eğer kod hatasız derlenip, hatasız çalışır ve aşağıdaki resimdeki gibi ekranda gri arkaplan üzerinde yeşil bir üçgen çizilirse kurulum başarılıdır. Şimdi OpenGL/JOGL öğrenmeye başlayabilirsiniz.
Kaynak: https://www.cs.umd.edu/%7Emeesh/kmconroy/JOGLTutorial/
Ayrıca şurada farklı sitelere linkler bulabilirsiniz : http://yzgrafik.ege.edu.tr/%7Eugur/05_06_Spring/BG_05_06.htm
http://yzgrafik.ege.edu.tr/%7Eugur/06_07_Spring/COURSES_06_07_Spring.htm
Güncelleme: JOGL kodu güncel JOGL sürümüne göre değiştirildi.
Güncelleme 2: Eclipse projelerinde kullanım eklendi.
Kullanmadan önce nasıl kuracağımızı görelim
- JOGL sitesinden windows için gereken dağıtımı indirelim. Ayrıca eğer JOGL belgesini indirirsek geliştirmede çok faydalı olabilir.
- Daha sonra geliştirme ortamımızın kullandığı Java SDK/JRE dizinini tespit edelim.
- Zip dosyası içerisindeki dll dosyaları yukarıda tespit ettiğimiz dizin içerisindeki bin altına kopyalayalım.
- jar dosyalarını ise lib/ext dizini altına kopyalayalım. (Bende Eclipse E:\jdk\jre konumunu kullanıyordu, bu yüzden dll dosyalarını E:\jdk\jre\bin, jar dosyalarını ise E:\jdk\jre\lib\ext dizinine kopyaladım.)
1. JOGL sitesinden kullandığımız işletim sistemine uygun dağıtımı indirelim.
2. Eclipse içerisinde açtığımız lib isimli bir klasör içerisine bu sıkıştırılmış dosyadan ortama göre dll veya so dosyalarını ve ek olarak içerisindeki jar dosyalarını (sıkıştırılmış dosya içerisinde lib klasöründeki tüm dosyalar oluyor bu durumda) açalım.
3. Projeye sağ tıklayıp "Properties" seçeneğiyle (ayrıca proje seçiliyken Alt+Enter tuş birleşimi de açar) özellikler penceresini açıyoruz. Bu pencerede sol taraftan "Java Build Path" menüsünü seçiyoruz. Sağ tarafta açılan pencereden "Libraries" sekmesine geçiyoruz.


Bu sekmede sağ tarafta "Add JARs" düğmesiyle JAR seçim penceresini açıyoruz. Bu açılan pencerede workspace içerisinde projemizin lib klasörüne açtığımız gluegen-rt.jar ve jogl.jar dosyalarını seçip projeye ekliyoruz.

4. JARları ekledikten sonra native kütüphane ayarlamasını yapmak için "Libraries" jogl.jar'ı sol taraftaki ok uçlarından açıp içerisindeki "Native Library Location" bilgisini yine sıkıştırılmış dosyayı açmış olduğumuz "ProjeIsmi/lib" şeklinde seçiyoruz.


5. Bu işlemler bittikten sonra ilgili projemiz JOGL kullanabilir hale gelmiş oluyor.
Daha sonra JOGL kullanacağımız projeyi kodlamaya başlayabiliriz. Kurulumu test etmek için şu kodu deneyebilirsiniz:
import java.awt.Color;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.media.opengl.GL;
import javax.media.opengl.GLAutoDrawable;
import javax.media.opengl.GLCanvas;
import javax.media.opengl.GLEventListener;
import javax.media.opengl.glu.GLU;
import javax.swing.JFrame;
public class JOGLDeneme extends JFrame implements GLEventListener {
private GLCanvas canvas;
private static GLU glu;
public JOGLDeneme() {
init();
}
private void init() {
this.setTitle("Merhaba Dünya!");
canvas = new GLCanvas();
canvas.addGLEventListener(this);
this.add(canvas);
this.setSize(300, 300);
this.setBackground(Color.WHITE);
this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
dinleyicileriAyarla();
sahneyiOlustur();
this.setVisible(true);
}
private void dinleyicileriAyarla() {
// Bu metodta canvas uzerinde eylemleri yakaliyoruz
canvas.addGLEventListener(this);
}
private void sahneyiOlustur() {
// Burada basit sahneyi canvas uzerinde olusturalim
}
/**
* Ekrani temizler
*
* @param Temizlenecek
* GLDrawable
*/
public void clearScreen(GLAutoDrawable glDrawable) {
final GL gl = glDrawable.getGL();
// ekrani temizle
gl.glClearColor(0.5f, 0.5f, 0.5f, 1.0f); // arkaplani gri yapiyoruz
gl.glClear(GL.GL_COLOR_BUFFER_BIT); // pencereyi temizle
}
private void ucgenCiz(final GL gl) {
// rengi yesil renk olarak ayarlayalim
gl.glColor3fv(new float[] { 0.0f, 1.0f, 0.0f },0);
float x = 0.0f;
float y = 0.0f;
float length = 1.0f;
float half_length = 0.5f * length;
// bir kenarin uzunlugu veriliyor ve orta noktayi biliyoruz
// bitis noktalarini hesaplayip her koseden kenarlari ciziyoruz
float hypotenus = ((float) (half_length / (Math.sin(Math.toRadians(60)))));
float adjacent = ((float) (half_length / (Math.tan(Math.toRadians(60)))));
// Ucgeni ciz
gl.glBegin(GL.GL_POLYGON); // cizelim
// Sag ust
gl.glVertex2f(x, hypotenus);
// sol ust
gl.glVertex2f(x - half_length, y - adjacent);
// sol alt
gl.glVertex2f(x + half_length, y - adjacent);
gl.glEnd();
}
/**
* Program basladigi zaman grafik islemleri icin gereken ayarlamalar yapilir
*/
public void init(GLAutoDrawable glDrawable) {
final GL gl = glDrawable.getGL();
glu = new GLU();
gl.glMatrixMode(GL.GL_PROJECTION);
gl.glLoadIdentity();
glu.gluOrtho2D(-1.0f, 1.0f, -1.0f, 1.0f);
gl.glMatrixMode(GL.GL_MODELVIEW);
gl.glLoadIdentity();
}
/**
* Bu metod java.awt.Component.paint() metoduna benzer Canvas her yeniden
* cizileceginde cagrilir
*
*/
public void display(GLAutoDrawable glDrawable) {
// ekrani temizle
clearScreen(glDrawable);
ucgenCiz(glDrawable.getGL());
}
/**
* Ekrani yeniden boyutlandirmak icin kullanilir
*/
public void reshape(GLAutoDrawable gLDrawable, int x, int y, int width,
int height) {
final GL gl = gLDrawable.getGL();
gl.glViewport(0, 0, width, height); // viewportu guncelliyoruz
}
/**
* Program calisirken display modu degisirse
*/
@Override
public void displayChanged(GLAutoDrawable arg0, boolean arg1, boolean arg2) {
// birsey yapma
}
public static void main(String[] args) {
new JOGLDeneme();
}
}
Eğer kod hatasız derlenip, hatasız çalışır ve aşağıdaki resimdeki gibi ekranda gri arkaplan üzerinde yeşil bir üçgen çizilirse kurulum başarılıdır. Şimdi OpenGL/JOGL öğrenmeye başlayabilirsiniz.

Kaynak: https://www.cs.umd.edu/%7Emeesh/kmconroy/JOGLTutorial/
Ayrıca şurada farklı sitelere linkler bulabilirsiniz : http://yzgrafik.ege.edu.tr/%7Eugur/05_06_Spring/BG_05_06.htm
http://yzgrafik.ege.edu.tr/%7Eugur/06_07_Spring/COURSES_06_07_Spring.htm
Güncelleme: JOGL kodu güncel JOGL sürümüne göre değiştirildi.
Güncelleme 2: Eclipse projelerinde kullanım eklendi.
ODTÜ Açık Ders Malzemeleri Projesi
ODTÜ Açık Ders Malzemeleri Projesi 16 Nisan günü resmen çalışmaya başlayacak. Mustafa Akgül tarafında listelere gönderilen ilgili bilgilendirme postasını ilgilenenler için paylaşıyorum:
"ODTU Acik Ders Malzemeleri Projesi Acilisi
Amerika Birlesik Devletleri'nde 2000 yilinda "Massachusetts Institute
of Technology (MIT)" onculugunde baslatilan, daha sonra 19 farkli
ulkeden cok sayida universitelerin de katilimi ile yayginlasan Acik
Ders Malzemeleri Projesinin (Open CourseWare Project) benzerini
ulkemizde de hayata gecirmek icin Turkiye Bilimler Akademisi
onculugunde bir Ulusal Acik Ders Kaynaklari Projesi, 50’ye yakin
universite, Yuksekogretim Kurumu ve Turkiye Bilimsel ve Teknolojik
Arastirma Kurumu katkisi ile 2007 yili icinde baslatilmis ve bu amacla
bir konsorsiyum kurulmustur.
Ulusal Acik Ders Malzemeleri Konsorsiyumu uyelerinden olan Orta Dogu
Teknik Universitesi (ODTU), bu konudaki test calismalarini tamamlamis
ve kendisine ait ilk grup acik ders kaynaklarini hazirlayarak, genel
kullanima hazir hale getirmistir. ODTU tarafindan acilan ders
malzemeleri, http://ocw.metu.edu.tr/ adresi uzerinden, diger
universiteler ve hayat boyu ogrenme amaci ile kaynak ihtiyaci duyan
kisilerce de serbestce kullanilabilecektir. Ulusal Acik Ders
Malzemeleri Konsorsiyumu, ayni zamanda uluslararasi konsorsiyumun da
bir parcasi oldugu icin paylasima acilan ders malzemelerine tum
dunyadan ulasilabilecektir. Bu sayede, ders malzemelerini paylasima
acan ogretim uyeleri otomatikman uluslararasi toplulugun da bir
parcasi olacaklardir.
ODTU Acik Ders Malzemeleri Projesi’nin resmi acilisi 16 Nisan 2008,
Carsamba gunu saat 14:00’da ODTU Kultur ve Kongre Merkezi (KKM) C
Salonu’nda yapilacaktir.
Kursat Cagiltay
kursat@metu.edu.tr"
"ODTU Acik Ders Malzemeleri Projesi Acilisi
Amerika Birlesik Devletleri'nde 2000 yilinda "Massachusetts Institute
of Technology (MIT)" onculugunde baslatilan, daha sonra 19 farkli
ulkeden cok sayida universitelerin de katilimi ile yayginlasan Acik
Ders Malzemeleri Projesinin (Open CourseWare Project) benzerini
ulkemizde de hayata gecirmek icin Turkiye Bilimler Akademisi
onculugunde bir Ulusal Acik Ders Kaynaklari Projesi, 50’ye yakin
universite, Yuksekogretim Kurumu ve Turkiye Bilimsel ve Teknolojik
Arastirma Kurumu katkisi ile 2007 yili icinde baslatilmis ve bu amacla
bir konsorsiyum kurulmustur.
Ulusal Acik Ders Malzemeleri Konsorsiyumu uyelerinden olan Orta Dogu
Teknik Universitesi (ODTU), bu konudaki test calismalarini tamamlamis
ve kendisine ait ilk grup acik ders kaynaklarini hazirlayarak, genel
kullanima hazir hale getirmistir. ODTU tarafindan acilan ders
malzemeleri, http://ocw.metu.edu.tr/ adresi uzerinden, diger
universiteler ve hayat boyu ogrenme amaci ile kaynak ihtiyaci duyan
kisilerce de serbestce kullanilabilecektir. Ulusal Acik Ders
Malzemeleri Konsorsiyumu, ayni zamanda uluslararasi konsorsiyumun da
bir parcasi oldugu icin paylasima acilan ders malzemelerine tum
dunyadan ulasilabilecektir. Bu sayede, ders malzemelerini paylasima
acan ogretim uyeleri otomatikman uluslararasi toplulugun da bir
parcasi olacaklardir.
ODTU Acik Ders Malzemeleri Projesi’nin resmi acilisi 16 Nisan 2008,
Carsamba gunu saat 14:00’da ODTU Kultur ve Kongre Merkezi (KKM) C
Salonu’nda yapilacaktir.
Kursat Cagiltay
kursat@metu.edu.tr"
Kaydol:
Kayıtlar (Atom)