ในบทความก่อนๆผมได้แนะนำการเข้าไปใช้และเขียนโค้ดแบบง่ายๆกันไปแล้วนะครับ คราวนี้เรามาเจาะเนื้อหาให้ลึกไปอีกนิด เป็นการใช้คำสั่งหลายๆย่าง เช่น การตั้งค่าหน้าจอ การสร้าง Object รูปทรงเรขาคณิต แล้วก็การหมุนครับ เอ้าเริ่มกันเลย
ก่อนพิมพ์ก็ลองศึกษาโค้ดแบบง่ายๆกันก่อนเลยครับ
sync on
sync rate 60
2 บรรทัดนี้จะป็นการกำหนดอัตราการ Refresh หน้าจอไว้ที่ 60fps ครับเท่าที่ศึกษาข้อมูลมา ทุกโปรแกรมควรจะมี 2 บรรทัดนี่ก่อนเลย
**หมายเหตุ บางครั้ง 2 บรรทัดนี้อาจทำให้ไม่เกิดการแสดงผลที่หน้าจอ หากหน้าจอเป็นสีดำนานๆก็ให้ลบโค้ด 2 บรรทัดนี้ออกแล้ว run อีกรอบหากลบแล้วมีภาพ ก็ไม่ต้องพิมพ์ใส่อีก ส่วนเหตุผล..อันนี้ไม่รู้ครับ แหะๆๆ
set display mode 1024,768,32
บรรทัดนี้ก็เป็นการกำหนดให้หน้าจอมีขนาด 1024 x 768 ที่ความละเอียด 32 บิต
Make object Sphere 1,100
บรรทัดนี้เป็นการสร้าง object แบบ sphere(ทรงกลม) เลข 1 ก็คือชื่ออ้างอิงจะเปลี่ยนเป้น cat dog wow อะไรก็ได้ตามใจแต่ควรเป้นชื่อที่สื่อความหมายด้วยนะครับ ส่วนเลข 100 เป็นการกำหนดขนาดหรืออาจจะเป็นรัศมีของทรงกลมที่เราสร้างครับ
การสร้างรูปทรงเรขาคณิตยังมีอีกหลายแบบครับ
MAKE OBJECT CUBE Object Number, Size Value
MAKE OBJECT BOX Object Number, Width, Height, Depth
MAKE OBJECT CYLINDER Object Number, Size Value
MAKE OBJECT CONE Object Number, Size Value
MAKE OBJECT PLAIN Object Number, Width Value, Height Value
MAKE OBJECT TRIANGLE Object Number, X1, Y1, Z1, X2, Y2, Z2, X3, Y3, Z3
การใช้ก็มีหลักเหมือนกับตัวอย่างละครับ คือ
Object Number คือ ชื่อที่ใช้อ้างอิง อย่างที่ว่าไปอล้วควรเป้นชื่อที่สื่อความหมายหน่อย จะเป็นตัวเลขหรือตัวอักษรก็ได้
Size Value คือ ขนาดของวัตถุที่สร้าง ใส่เป้นตัวเลขครับ เช่น 50 ,100
Width, Height, Depth คือ ความกว้าง,ยาว,ลึก เป็นของ BOX ครับ
Width Value, Height Value คือ ความกว้าง,ยาว ใช้กับ PLAIN
ส่วน Triangle เนี่ยคงต้องลองกันเองครับ ผมยังงอยู่เลย
มาถึงตรงนี้เราก็สามารถสร้างวัตถุแบบเราคณิตได้ละ แต่ถ้าเอาโค้ดข้างบนไป run ดูผลที่ได้คือ เราจะไม่เห็นภาพครับ เพราะฉะนั้น เราก็ต้องมีโค้ดเพื่อให้การแสดงผลสมบูรณ์ โดยผมจะแยกออกเป็น 2 อย่างนะครับ คือ แบบแสดงผลนิ่งๆ กับแบบวัตถุหมุน
- แบบแสดงผลนิ่งๆ
Do
Sync
Loop
Do..Loop เป็นคำสั่งวนรอบแบบไม่สิ้นสุด คำสั่งอะไรที่อยู่ภายในจะถูกทำไปเรื่อยๆจนกว่าจะออกจากโปรแกรม
Sync เท่าที่แปลจาก Eng น่าจะได้ความหมายว่า เป็นการทำให้ภาพที่แสดงคงอยู่ไว้ตลอด
- แบบหมุนๆ
do
yrotate object 1,object angle y(1)+0.1
loop
Do…Loop ก็เป็นคำสั่งการวนรอบไม่รู้จบเช่นเดิม
YROTATE Object 1 เป็นการบอกว่าให้หมุน Object ที่ชื่อว่า 1 ก็คือ ชื่อของทรงกลมที่เราสร้างไว้ตอน Make Object
object angle y(1)+0.1 คือ กำหนดให้มีการหมุนในแนวแกน Y (แกนตั้งฉากกับพื้นโลก) เลข 1 ก็เป็นชื่อของทรงกลมที่เราตั้งไว้ +0.1 ก็เป็นการเพิ่มระยะการหมุนให้หมุนไปทีละนิด
เมื่อมาอยู่ภายใน Do…Loop ก็หมายความว่า จะทำการเพอ่มค่า0.1 ไปเรื่อยๆตามแกน Y ทำให้วัตถุหมุนไปเรื่องๆเหมือนโลกหมุนรอบตัวเอง
จากนั้นก็ save แล้วกด F5 ครับ
*หมายเหตุ ขั้นตอนและโค้ดที่ผมนำมาลงทั้งหมด ได้มาจากการค้นคว้าทางอินเตอร์เน็ตและก็เจอที่เป็นภาษาอังกฤษเป็นส่วนใหญ่ ซึ่งบางที่แปลออกมาความหมายไม่ถูกต้องก็ต้องขออภัยไว้ ณ ที่นี้ด้วยครับ
มือใหม่หัดเขียนครับ
No comments: