
หลังจากที่ไม่ค่อยได้ติดตามอะไรอย่างจริงจังมาสักพักใหญ่ ช่วงหลังนี้รู้สึกว่าโลกแห่งเทคโนโลยีมันหมุนไปเร็วมาก เร็วจนรู้สึกว่าเราชักเริ่มจะเอ๊าท์เกินไปละ
เลยอยากจะเคาะสนิมตัวเองเสียหน่อย ช่วงนี้หันมาศึกษาการพัฒนาโปรแกรมบนมือถือระบบ Android และอยากจะเน้นไปทางด้านการเขียนโปรแกรมประเภท interactive graphic และ animation เพราะสายนี้อาศัยเทคนิคต่าง ๆ เยอะดี และดูตื่นตาตื่นใจดีด้วยเหมาะกับการเคาะสนิมเป็นอย่างยิ่ง
รู้สึกทึ่งนิด ๆ กับศักยภาพของ Hardware ของอุปกรณ์พกพาขนาดเล็กแบบนี้
โปรเจคของวันแรกนี้จะเป็นการจำลอง Starfield แบบง่าย ๆ ขึ้นมาดูครับ

สิ่งที่ทำไปในวันแรกนี้ก็จะเป็นการเรียนรู้ระบบ Opengl ES กับการเขียนภาษา Java และ Environment ของการพัฒนา Software บนระบบ Android
ทำไปก็ทึ่งไปกับความเร็วของ GPU และ CPU บนมือถือสมัยนี้
หลังจากลองทำดูเล่น ๆ ก็รู้สึกว่าจินตนาการโลดแล่นสมองโปร่งดีครับ เหมาะกับการแก้เบื่อเป็นอย่างยิ่ง
ใน Opengl Es ไม่มี Display list แล้ว ปัจจุบันหันมาใช้ Vertex buffer object กันแทน (แต่ผมชอบ Display List มากกว่า
)
การใช้ point sprite ก็ยุ่งยาก เลยใช้ vertex สำหรับ เรนเดอร์ starfield แทนครับ
//การใช้ VBO
private float vertices[] = {
-1.0f, -1.0f, 1.0f, //v0
1.0f, -1.0f, 1.0f, //v1
-1.0f, 1.0f, 1.0f, //v2
1.0f, 1.0f, 1.0f, //v3
};
private float normals[] = {
// Normals
0.0f, 0.0f, 1.0f,
0.0f, 0.0f, -1.0f,
0.0f, 1.0f, 0.0f,
0.0f, -1.0f, 0.0f,
};
private float texture[] = {
0.0f, 0.0f,
0.0f, 1.0f,
1.0f, 0.0f,
1.0f, 1.0f,
};
private byte indices[] = {
// Faces definition
0, 1, 3, 0, 3, 2,
};
download link (53KB)
http://uploadmirrors.com/download/1KBRTX1I/Shooting_256_r.apk