Scratch
- 1. 1คู่มือโปรแกรม scratch
สารบัญ
ทำไมต้องเป็น Scratch ?.............................................................................................................................2
แหล่งควำมรู้ในกำรใช้โปรแกรมScratchเพิ่มเติมจำกคู่มือเล่มนี้......................................................................2
กำรดำวน์โหลดโปรแกรม Scratch................................................................................................................2
ข้อมูลเบื้องต้น.............................................................................................................................................5
กำรเข้ำโปรแกรมScratch.............................................................................................................................5
กำรสร้ำง หรือ เปิดชิ้นงำน...........................................................................................................................6
กำรบันทึกชิ้นงำน........................................................................................................................................6
กำรแลกเปลี่ยนชิ้นงำนในเว็บไซต์ ................................................................................................................7
เวทีกำรแสดงชิ้นงำน(stage)........................................................................................................................8
จุดเริ่มต้นของกำรสร้ำงชิ้นงำน ( A Scratch Project )...................................................................................8
กำรสร้ำงตัวแสดง(sprites)...........................................................................................................................8
วิธีกำรปรับแต่ง sprites................................................................................................................................8
กำรปรับแต่ง scripts ( กำรควบคุมกิริยำท่ำทำง และกำรเคลื่อนไหวของตัวแสดง ).........................................9
กำรปรับแต่ง costumes และกำรเพิ่ม costumes ( รูปลักษณ์ของตัวแสดง ).................................................10
ปรับแต่ง Sound (เสียง).............................................................................................................................11
สร้ำงพื้นหลัง (background) และปรับแต่งเวที (stage) ................................................................................12
ตัวอย่ำง กำรทำให้ภำพเคลื่อนไหว ( กำรทำให้คนเดิน พร้อมกับ เสียงดนตรี ) .............................................13
กำรเตรียมไฟล์ข้อมูล...........................................................................................................................13
ขั้นตอนกำรสร้ำงฉำกหลัง....................................................................................................................16
ขั้นกำรนำเสนอเสียงเพลงประกอบ.......................................................................................................17
ขั้นตอนกำรนำเสนอ Preview ..............................................................................................................19
ตัวอย่ำง กำรทำให้ภำพเคลื่อนไหว ( กำรทำค้ำงคำวบิน )............................................................................20
กำรทำงำนของโปรแกรม .....................................................................................................................20
กำรนำภำพพื้นมำเป็นพื้นหลัง..............................................................................................................22
กำรแทรกเสียง....................................................................................................................................23
กำรบันทึก ..........................................................................................................................................23
กำรเผยแพร่งำน..................................................................................................................................24
ตัวอย่ำง และแนวทำงกำรสร้ำงชิ้นงำนจำกโปรแกรม Scratch......................................................................26
ตัวอย่ำงกำรเขียนโปรแกรมใน Scratch......................................................................................................32
- 2. 2คู่มือโปรแกรม scratch
ทาไมต้องเป็น Scratch ?
Scratch เป็นโปรแกรม free ware ที่สำมำรถดำวโหลดได้ฟรี โปรแกรมออกแบบให้ใช้งำนง่ำย
สำมำรถสร้ำงสรรค์ชิ้นงำนได้หลำกหลำย เช่น สร้ำงภำพเคลื่อนไหว สร้ำงเกม และสร้ำงเรื่องรำว เป็นต้น
เป็นเครื่องมือที่เหมำะในกำรสร้ำงชิ้นงำน
จำกคุณสมบัติที่หลำกหลำยของโปรแกรม จึงส่งผลให้ Scratch เป็นโปรแกรมที่เหมำะสำหรับกำร
นำมำใช้เป็นเครื่องมือช่วยจุดประกำยควำมคิด และจินตนำกำรของนักเรียนในกำรสร้ำงสรรค์ชิ้นงำน โดย
ถ่ำยทอดควำมคิดผ่ำนโปรแกรมซึ่งเป็นเครื่องมือไอซีทีอีกรูปแบบหนึ่ง และสำมำรถนำชิ้นงำนที่สร้ำงขึ้นไป
แลกเปลี่ยนผ่ำนทำงเว็บไซต์ได้ต่อไป
แหล่งความรู้ในการใช้โปรแกรมScratchเพิ่มเติมจากคู่มือเล่มนี้
หำกท่ำนต้องกำรศึกษำข้อมูลกำรใช้เพิ่มเติมนอกเหนือจำกคู่มือเล่มนี้ ท่ำนสำมำรถเปิดวิธีกำร และ
แนวทำงกำรใช้โปรแกรมได้ที่สัญลักษณ์ what help ? ซึ่งอยู่ทำงด้ำนบนของโปรแกรม
การดาวน์โหลดโปรแกรม Scratch
โดยกำรเข้ำไปที่ Web site :: http://scratch.mit.edu/ เพื่อไปทำกำร Download
- 8. 8คู่มือโปรแกรม scratch
เวทีการแสดงชิ้นงาน(stage)
เวทีที่ Sprites ใช้เป็นพื้นที่ในกำรแสดงจะมีพื้นด้ำน 480 ยูนิต และพื้นที่ทำงด้ำนยำว 360 ยูนิต โดย
โปรแกรมจะกำหนดตำแหน่งของเวทีด้วยค่ำ x (ด้ำนกว้ำง) และค่ำ y (ด้ำนยำว)
ซึ่งตำแหน่งตรงกลำงเวทีจะอยู่ที่ตำแหน่งค่ำ x : 0 และค่ำ y : 0
ปุ่มแสดงชิ้นงำนแบบภำพเต็มจอ
จุดเริ่มต้นของการสร้างชิ้นงาน ( A Scratch Project )
การสร้างตัวแสดง(sprites)
ผู้สร้ำงสำมำรถสร้ำงสรรค์ sprites ได้จำกเครื่องมือทำงด้ำนล่ำงของ stage ดังภำพ
วิธีการปรับแต่ง sprites
- 9. 9คู่มือโปรแกรม scratch
ผู้สร้ำงสำมำรถปรับแต่ง sprites ได้ตำมจินตนำกำรที่ตนต้องกำร ดังนี้
๑) คลิกที่ตัว sprites ที่ต้องกำรปรับแต่ง ตัวsprites จะนูนขึ้นมำ(active) และปรำกฎภำพ sprites ที่
ตำแหน่งลูกศรชี้
๒) คลิกที่ Tabs (scripts ,costumes ,sounds) เพื่อเลือกปรับแต่ง sprites ได้ตำมที่ผู้สร้ำง
ต้องกำร ดังนี้
scripts ( กำรควบคุมกิริยำท่ำทำง และกำรเคลื่อนไหวของตัวแสดง )
costumes ( รูปลักษณ์ของตัวแสดง )
sounds ( เสียง )
การปรับแต่ง scripts ( การควบคุมกิริยาท่าทาง และการเคลื่อนไหวของตัวแสดง )
๑) คลิกที่ scripts
๒) คลิกที่กลุ่มคำสั่ง scripts
๓) ลำกเมำส์และนำคำสั่ง scripts ไปวำงบนพื้นที่ scripts
หมายเหตุ : สามารถศึกษารายละเอียดของคาสั่ง scripts เพิ่มเติมได้ที่ภาคผนวกด้านหลัง
หรือที่ Help Screens
- 10. 10คู่มือโปรแกรม scratch
การปรับแต่ง costumes และการเพิ่ม costumes ( รูปลักษณ์ของตัวแสดง )
การปรับแต่ง costumes
โดยกำรคลิกที่ costumes และเลือกคำสั่ง scripts
การเพิ่ม costumes
๑) คลิกที่ Edit
๒) คลิกที่ Import เลือกไฟล์ costumes ที่จะนำเข้ำ หรือ คลิกที่ Paint เลือกภำพวำด
costumes
- 12. 12คู่มือโปรแกรม scratch
สร้างพื้นหลัง (background) และปรับแต่งเวที (stage)
ผู้สร้ำงสำมำรถสร้ำงสรรค์ background ของเวที (stage) ได้ดังขั้นตอนต่อไปนี้
๑) คลิกที่สัญลักษณ์ stage
๒) คลิกที่ Tabs (scripts ,background ,sound) เพื่อเลือกปรับแต่ง stage ได้ตำม
ที่ผู้สร้ำงต้องกำร
scripts (ควบคุมกำรเปลี่ยนแปลงของ background)
background (พื้นหลัง)
sound (เสียง)
๓) ปรับแต่ง stage ได้ตำมต้องกำร (วิธีกำรคล้ำยคลึงกับกำรปรับแต่ง sprites)
- 14. 14คู่มือโปรแกรม scratch
๓) คลิกที่ปุ่ม Look จำกนั้นเลือกคลิก Icon next costume แล้วลำกมำปล่อยไว้ในพื้นที่ Script ภำยใน Icon
forever เพื่อต้องกำรนำเสนอภำพภำยใน Costume ตำมลำดับ จนครบ ดังภำพข้ำงล่ำงนี้
- 15. 15คู่มือโปรแกรม scratch
๔) คลิกที่ปุ่ม Control จำกนั้นเลือกคลิก Icon wait แล้วลำกมำปล่อยไว้ในพื้นที่ Script ภำยใน Icon forever
ภำยใต้ Icon next costume แล้วกำหนดเวลำหยุดเป็น 0.2 วินำที เพื่อหยุดกำรนำเสนอชั่วขณะของแต่ละ
ภำพภำยใน Costume ตำมลำดับ จนครบ ที่ต้องหยุดชั่วขณะเพื่อให้ภำพต่อเนื่องโดยกำรชลอกำรนำเสนอ
(จำกนั้นจะนำเสนอซ้ำๆ ตำมคำสั่งของ Icon forever) ดังภำพข้ำงล่ำงนี้
- 22. 22คู่มือโปรแกรม scratch
๕) เลือกปุ่ม ควบคุม
๖) เลือกปุ่ม กำรเคลื่อนที่ แล้วกำหนดกำรเคลื่อนที่ตัวละคร ( กำหนดเวลำตำมต้องกำร )
๗) ไปที่ปุ่มควบคุมเลือกชุดคำสั่ง รอ
๘) เลือกชุดคำสั่ง วนซ้ำตลอดเพื่อให้ตัวแสดงตลอดเวลำ
การนาภาพพื้นมาเป็นพื้นหลัง
๑) เลือกฉำก
๒) จำกชุดจะกลำยเป็นพื้นหลัง
๓) เลือกนำเข้ำ
๔) เลือกฉำกตำมใจชอบ
๕) กดตกลง
- 32. 32คู่มือโปรแกรม scratch
ตัวอย่างการเขียนโปรแกรมใน Scratch
ในกำรเขียนโปรแกรม งำน(ใหญ่)ควรแบ่งเป็นงำนย่อยๆ แต่ไม่ควรย่อยเกินไปเนื่องจำก
คอมพิวเตอร์มิได้ฉลำดสำมำรถคิดขั้นตอนกำรทำงำนได้เอง อีกทั้งงำนเดียวกันยังอำจทำได้หลำยวิธี
แตกต่ำงกัน ด้งนั้นเป็นหน้ำที่ของโปรแกรมเมอร์ที่ต้องออกแบบกำรทำงำน แบ่งงำน และลำดับขั้นตอนกำร
ทำงำนให้กับคอมพิวเตอร์
ยกตัวอย่ำงเช่นในโปรเจก Aquarium เรำต้องกำรให้ปลำว่ำยน้ำไปมำดูเป็นธรรมชำติอยู่ในตู้ปลำซึ่ง
ก็คือกรอบของฉำก เวทีนั้นเอง เรำสำมำรถแบ่งเป็นงำนย่อยได้ คือ กำรเคลื่อนที่ของปลำไปเรื่อยๆ กำร
สะท้อนกลับทิศเมื่อเจอผนังตู้ปลำ กำรเปลี่ยนทิศเองในแต่ละช่วงขณะหนึ่งเพื่อให้ดูเป็นธรรมชำติ
ตัวอย่ำงนี้ค่อนข้ำงง่ำย แต่เต็มไปด้วยหลักกำรในกำรเขียนโปรแกรม นั่นคือ
กำรทำงำนถูกแบ่งเป็นขั้นตอนหรือชุดคำสั่ง (sequence) เช่น
ชุดคำสั่งที่ ๑. เคลื่อนที่ไปข้ำงหน้ำ ๑ หน่วย
ชุดคำสั่งที่ ๒. ตรวจสอบดูว่ำชนผนังหรือไม่ ถ้ำชนให้สะท้อนกลับ
กำรที่ปลำต้องเคลื่อนที่ไปเรื่อยๆ พร้อมทั้งตรวจสอบดูว่ำชนผนังหรือไม่ เป็นหลักกำรทำงำนแบบ
ซ้ำๆหรือวนซ้ำ (iteration, looping) ของชุดคำสั่งชุดหนึ่ง
ในชุดคำสั่งนี้ยังมีกำรตรวจสอบข้อเท็จจริง (conditional statement) ด้วยว่ำปลำชนผนังตู้หรือไม่
ซึ่งอำศัยตรรกะ (logic) ถ้ำจริง (true) ก็อำจจะทำงำนอย่ำงหนึ่ง ถ้ำเท็จ(false) ก็อำจจะทำงำนอีก
อย่ำงหนึ่ง
กำรเกิดเหตุกำรณ์หนึ่ง ทำให้ต้องทำงำนอย่ำงหนึ่ง ในตัวอย่ำงนี้ จะเห็นว่ำในช่วงขณะหนึ่ง ปลำมี
โอกำศที่จะเปลี่ยนทิศทำง นั้นก็คือเหตุกำรณ์ที่ถูกกำหนดจำกเวลำ (time event) คือทุกๆ 1 วินำที
ปลำจะสุ่มโอกำสว่ำควรจะเปลี่ยนทิศหรือไม่ นั้นคือกำรตอบสนองต่อเหตุกำรณ์
- 33. 33คู่มือโปรแกรม scratch
กำรเคลื่อนที่ของปลำไปเรื่อยๆ และกำรเปลี่ยนทิศของปลำทุกๆ 1 วินำทีนั้นทำงำนแยกจำกกันแต่
เกิดขึ้นพร้อมกัน ซึ่งก็คือหลักกำรทำงำนคู่ขนำน (parallel execution, threading) ที่ให้โปรแกรม
สคริปต์ทำงำนพร้อมๆกันหลำยๆสคริปต์
ตัวอย่ำงกำรเล่ำเรื่องใน MadLibs ก็มีหลักกำรเขียนโปรแกรมที่สำคัญดังนี้
กำรโต้ตอบแบบทันที (real-time interaction) เป็นกำรโต้ตอบระหว่ำง ผู้ใช้กับโปรแกรมผ่ำน
กำรรับรู้ได้หลำยทำงเช่น เมำส์ คีย์บอร์ด เสียง เป็นต้น ในโปรเจกนี้ผู้ดำเนินเรื่องมีกำรถำม
และให้ผู้ใช้งำนตอบผ่ำนคีย์บอร์ด
ตัวแปร (variables) มีหน้ำที่เก็บค่ำที่ต้องกำรนำมำใช้ใหม่ผ่ำนกำรเรียกชื่อของตัวแปร เช่นโป
รเจกนี้สร้ำงตัวแปรมำเก็บค่ำของคำตอบที่ได้จำกผู้ใช้งำน และนำกลับมำใช้ใหม่ขณะเล่ำเรื่อง
ตัวแปรยังระบุตอนสร้ำงได้ว่ำเป็นตัวแปรส่วนตัว (private variables) ใช้ได้กับตัวละครที่สร้ำง
มันขึ้นมำเท่ำนั้น หรือ ตัวแปรส่วนรวม (global variables) สำมำรถใช้ได้กับทุกตัวละคร เป็น
กำรแชร์ข้อมูลระหว่ำงกัน ตัวแปรที่ใช้เก็บคำตอบนั้นเป็นตัวแปรส่วนรวมซึ่งวำฬสองตัวเอำไป
ใช้ได้ขณะเล่ำเรื่อง
กำรส่งต่อกำรทำงำน (synchronization) ระหว่ำงตัวละคร ใช้วิธีกำรส่งรหัสสัญญำณออกไป
(broadcast) โดยอำศัยชื่อของรหัส (event) ที่ แตกต่ำงเป็นตัวส่งไม้ให้ระหว่ำงกัน ตัวละครหรือ
ฉำกเวทีที่รอฟังรหัสที่ มันสนใจ (event listening) ก็จะรู้ว่ำมันควรจะเริ่มทำงำนต่อหรือยัง เช่น
โปรเจกนี้ ผู้ดำเนินเรื่องได้ถำมตอบกับผู้ใช้เสร็จแล้ว ก็ส่งสัญญำณให้เริ่มเล่ำเรื่องได้ (“start
story”) วำฬสองตัวพร้อมทั้งฉำกเวทีสนใจในรหัสนี้ก็ต่ำงเริ่มต้นทำงำนของตนเอง จำกนั้นเป็น
กำรเล่ำเรื่องระหว่ำงวำฬสองตัว วำฬทั้งสองตัวจึงผลัดกันรับส่งรหัสเพื่อให้กำรเล่ำเรื่อง
ต่อเนื่องกันอย่ำงรำบรื่นนั้นเอง