วันนี้ผมมีเรียนเรื่อง Computer Graphic ครับ อาจจะคิด(ทีแรกผมก็คิดว่า)คงเรียนพวกการปั้น 3D model การทำ effect หรือ animation อะไรทำนองนั้น
แต่จริงๆ ที่ได้เรียน คือทฤษฎีพื้นฐานการสร้างภาพวัตถุ polygon ด้วย GLUT ครับ ก็มีทั้งที่เป็นการเลื่อน การย่อ ขยาย และหมุนวัตถุครับ
ใครที่อยากลองทำ Download lab sheet ไปทำดูครับ
สิ่งที่ยาก ไม่ใช่ขั้นตอนการทำหรอกครับ เพราะมันมีขั้นตอนที่แน่นอนอยู่แล้ว แต่จะยากตรงที่ปัญหาการใช้และเขียนบน C หรือ C++ มากกว่า เพราะอย่างที่หลายๆ ท่านคงทราบในภาษา C การจะทำงานที่เป็นอาเรย์อะไรก็ตามก็ต้องมีการสร้าง array เสร็จ รับค่ามาก็ต้องเอามาเข้าสมการเพื่อหาจุดศูนย์กลางหรือ centroid เอาไว้อ้างอิง เวลาจะหมุน ก็ต้องแปลงค่าจากองศาเป็นเรเดียนแถมแปลงจาก CCW หรือทวนเข็มนาฬิกา (นึกถึงวงกลมหนึ่งหน่วยดูครับ เวลาเพิ่มขนาดมุมก็จะหมุนไปทางซ้าย) ให้เป็นตามเข็มนาฬิกาหรือ CW โดยการคูณ -1 ไปในขนาดมุม พอหาค่า sin กับ cos เสร็จ ก็ต้องเลื่อนจุดไปที่ 0,0 หรือจุดกำเนิดเพื่อหมุน แล้วเวลาหมุนแกน Y ก็ต้องเอาค่าแกน X ก่อนหมุนมาใช้ และปัญหาอีกร้อยแปดที่ผมคาดว่าบ่นทั้งวันก็คงไม่หมดแน่ 🙁
ถึงแม้ว่าเรื่องที่เรียนวันนี้จะทำให้หลายคนแทบเป็นบ้า (มีคนหนึ่งเป็นไข้นอนฟุบไปวันหนึ่งเลย) แต่ก็ทำให้เข้าใจอย่างแจ่มแจ้งเลยทีเดียวล่ะครับ เรียกได้ว่าถ้าถาม (ตอนนี้ [11/01/2014] นะครับ) คงอธิบายได้เป็นฉากๆ 😀
ปล. ถ้าอยากดูว่าเราเรียน (ภาคบังคับ) ยังไง ก็ ลอง ดู คลิป สอน ครับ 😮