คํานํา
ในการเขียนโปรแกรมบน
Windows เพื่อให้มันทำงานอะไรให้เราสักอย่าง แน่นอนเราจะนึกถึงเรื่องของ
GUI โดยใช้ Button, Combo Box, และใช้พวก List Box, Picture Box แต่ถ้าเป็นโปรแกรมในลักษณะที่จะต้องมีการหยิบเอาความ
สามารถด้านกราฟิกมาใช้ล่ะ โปรแกรมที่จะต้องโหลดภาพ JPG มาแสดง และให้มีการ
clip ตัดส่วนที่มันล้นหน้าจอออกไปอย่างโปรแกรมแสดงภาพ แผนที่แล้ว plot จุดลงไปในแผนที่เพื่อให้เกิดเป็นเส้นทางอย่างโปรแกรมพวก
GIS หรือ GPS ติดตามรถยนต์ หรือโปรแกรมจำหน่ายตั๋วรถ บขส. ที่มีรูปตัวรถขึ้นมา
เสมือนจริงให้ผู้ใช้เลือกเอาว่าจะนั่งตรงไหน โปรแกรมอย่างนี้จะต้องมีการโหลด
ภาพขึ้นมาซึ่งเป็นภาพตัวรถ หรือแม้แต่โปรแกรมจองตั๋วเครื่องบินหรือรถไฟ ฯลฯ
โปรแกรมที่ต้องใช้ความสามารถด้านกราฟิกอย่างเช่น การแสดงกราฟจากข้อมูลที่
ได้มาจาก database ก้อนหนึ่ง หรือโปรแกรมดูดวงที่จะต้องมีภาพเป็นวงๆ และมีไพ่
วางอยู่เป็นสำรับๆ หรือโปรแกรมเกม เกมจับคู่ เกมทายภาพ เกมตัวต่อ หรือแม้แต่
เกม 3D โปรแกรมเหล่านี้ ไม่จำเป็นต้องใช้ความสามารถของ GUI ของ Windows แต่เราจะต้องใช้การ
interface ที่เราออกแบบขึ้นมาเฉพาะทางเอง
อย่างถ้าเป็นโปรแกรมวาดรูปเราจะต้องเขียนให้มันแสดงเส้น
หรือโปรแกรม จำลองการประกอบวงจรไฟฟ้า เราก็จะต้องให้มีการเลือกอุปกรณ์ตัวต้านทาน
หรือตัวเก็บประจุ แล้วเอามาวางลงใน platform และก็กดปุ่ม start ซึ่งของพวกนี้
ถ้าเราดูให้ดีก็จะพบว่า มันไม่ได้ต้องการ GUI แบบเดิมๆ แต่มันต้องการความ
สามารถด้าน Graphic ดังนั้น จากตรงนี้ SDL คือคำตอบที่ดีคำตอบหนึ่ง
SDL (libsdl.org) เป็น Library ที่ได้รับความนิยมในการนำมาใช้สร้างโปรแกรม
Graphic หรือพวกเกมต่างๆ มันสามารถทำงานได้อย่างมีประสิทธิภาพ เพราะ มันรองรับทั้งบน
Linux และ Windows และระบบอื่นๆ ก็ด้วย มันสามารถรองรับ การแสดงผลไฟล์ JPG,
BMP และการเล่นเพลง MP3, OGG และ WAV และอีก หลายๆ ความสามารถ และที่สำคัญครับ....
มันคล่องตัวและไม่เทอะทะ ทำงานได้ อย่างโล่งใจเพราะโค้ดโปรแกรมไม่ซับซ้อน....ลองดูครับ
พบกันในเล่มนะครับ
นิรุธ อำนวยศิลป์
ชุดการสอนนี้ประกอบด้วยหนังสือ 1 เล่ม และ DVD 2 แผ่น ภายใน
DVD จะมีวีดีโอ "SDL in 4 days" บรรยายโดย อ.นิรุธ อํานวยศิลป์
ซึ่งจะแนะนํา SDL ตั้งแต่การติดตั้ง, ทบทวน C/C++ ไปจนถึงการใช้งาน SDL โดยวิธีการเรียนไปกับชุดการสอนนี้ก็คือ
ให้ท่านศึกษาจากหนังสือ และเปิดวีดีโอโดยดูหัวข้อของวีดีโอแต่ละเรื่องได้จากปกหลัง
DVD
สารบัญหนังสือมีดังนี้
บทที่ 1 ติดตั้งและปรับแต่ง SDL กับ Visual C++
- การปรับแต่ง Visual C++ และ SDL
- การสร้าง Project ด้วย SDL และ Visual C++
บทที่ 2 โปรแกรมทำงานอย่างไร....
- การเปลี่ยน Icon ของโปรแกรม
บทที่ 3 การโหลดภาพ sprite
- การโหลดภาพ
- การโหลดภาพตัวละครและการแสดงผล
- การเปลี่ยนตำแหน่งแบบ random
- การแสดงข้อความในโปรแกรม
บทที่
4 เรื่องของเส้น เส้น เส้น
- ค่าคงที่ของสีต่างๆ
- การลงจุด Point
- การสร้างเส้นตรง
- การสร้างเส้นที่เป็นลูกศร
- การตีตาราง
- การสร้างสี่เหลี่ยม
- ลากเมาส์แล้วลงจุดๆๆๆ
- Click เมาส์แล้วเกิดเส้นต่อๆ กัน
- Click เมาส์แล้วลากจะเกิดเส้นขึ้น
- การยกเลิกการสร้างเส้น
- การเปลี่ยนสีเส้น
- Click ลากเมาส์แล้วจะเกิดสี่เหลี่ยมโปร่งตามเมาส์มา
- การ save ภาพที่ได้ลงไฟล์และการ load คืน

บทที่ 5 สร้างกราฟง่ายๆ
- การสร้าง graph แท่งด้วยการเขียนโค้ดเอง
- มาสร้างกราฟเพิ่มอีกหน่อยสัก 2-3 อันซิ
- ลองจับใส่หน้ากากซิ
บทที่ 6 โปรแกรมแสดงแผนที่
- การเพิ่มภาพบ้านเข้าไปในแผนที่
บทที่ 7 สร้าง graphic โปรแกรมเฉพาะทางที่มี GUI เฉพาะตัว
บทที่ 8 สร้างหน้าต่างแบบ DRAG AND DROP
- การวาดลงบนเฉพาะ Surface ที่ต้องการ
- การทำ Icon แบบ Snap ให้ตรงตำแหน่งกัน
บทที่ 9 การเล่นเพลงและ effect
