irpg Community
Ren'Py พื้นฐาน | บทที่ 6 เสียงประกอบเกม - Printable Version

+- irpg Community (https://irpg.in.th)
+-- Forum: irpg Sugar School of Ren'Py (https://irpg.in.th/forum-38.html)
+--- Forum: Ren'Py Engine School (https://irpg.in.th/forum-39.html)
+--- Thread: Ren'Py พื้นฐาน | บทที่ 6 เสียงประกอบเกม (/thread-3401.html)



Ren'Py พื้นฐาน | บทที่ 6 เสียงประกอบเกม - Mikichan - 08-14-2019

ติดตามเราได้ที่ Facebook ชื่อเพจ Planila Game Developer


5 บทก่อนหน้าเราได้เรียนการสร้างเกมแนว Visual Novel ด้วยโปรแกรม Ren'Py ได้เรียนพื้นฐานมาครบถ้วนแล้ว? ใช่ เกมที่สร้างในบทก่อนหน้าก็ดูดีแล้ว แต่รู้สึกว่าขาดอะไรไปบางอย่างหรือเปล่า? เรายังไม่ได้ใส่เสียงในเกมเลย บทนี้จะมาเรียนกันเรื่องการใส่เสียงกัน



ประเภทเสียง

ไฟล์เสียงที่โปรแกรม Ren'Py รองรับได้แก่ .opus, .ogg, .mp3, และ .wav ไฟล์เสียงต้องอยู่ในโฟลเดอร์โปรเจ็กต์เกม (ชื่อโปรเจ็กต์\game)

เสียงในโปรแกรม Ren'Py แบ่งเป็น 3 ประเภทได้แก่ Music, Sound, และ Voice เสียงทั้ง 3 ประเภทแบ่งตามการวนซ้ำและการเริ่มต้นดังตารางข้างล่าง ไม่จำเป็นต้องเป็นเสียงตามประเภทจริง ๆ ก็ได้ เช่น ถ้าต้องการเปิดเพลงครั้งเดียวจบ ไม่วนซ้ำ สามารถเปิดเพลงนั้นด้วยคำสั่งเปิดเสียงเอฟเฟกต์ได้ โปรแกรม Ren'Py สามารถเปิดหลายเสียงพร้อมกันได้ แต่ต้องไม่ใช่เสียงประเภทเดียวกัน (เปิดได้ประเภทละ 1 เสียง รวมเป็นเปิดได้พร้อมกัน 3 เสียง)

ความแตกต่างของประเภทเสียง

ประเภทเสียง
วนซ้ำ
เริ่มต้น
ระยะเวลาเปิดสียง
Music (เสียงเพลง)เริ่มทันทีไม่สิ้นสุดจนกว่าจะมีคำสั่งหยุดหรือเปลี่ยนเสียง
Sound (เสียงประกอบ)เริ่มทันทีเปิดจนจบครั้งเดียว
Voice (เสียงพูด)เริ่มพร้อมกล่องข้อความต่อไปเปิดจนจบครั้งเดียวหรือเปิดจนกว่าเปลี่ยนกล่องข้อความ (ถ้ายังไม่จบ)


นอกจากนี้โปรแกรม Ren'Py ยังมีเสียงประเภทพิเศษคือ Audio จุดเด่นของเสียงประเภทนี้คือสามารถเปิดหลายเสียงพร้อมกันได้ แม้ว่ากำลังเปิดเสียง Audio อื่นอยู่ก็ตาม แต่ Audio ค่อนข้างมีข้อจำกัดมากกว่าเสียง 3 ประเภทข้างต้น เช่น ไม่สามารถต่อคิวเสียงได้ ไม่สามารถหยุดเสียงได้ ถ้าไม่จำเป็นจริง ๆ ผู้เขียนไม่แนะนำให้ใช้เสียง Audio



Play: เปิดเสียง

play คือคำสั่งที่เปิดเสียง ถ้ามีเสียงในประเภทเดียวกันกำลังเปิดอยู่ จะหยุดเสียงเดิมและเปิดเสียงใหม่แทน (ยกเว้นเสียง Audio) รูปแบบของคำสั่ง play คือ

Code:
play ประเภท "ชื่อไฟล์พร้อมนามสกุล"


นอกจากนี้ยังสามารถเปิดเสียงโดยค่อย ๆ เพิ่มความดังเสียงได้ ท้ายบรรทัด play ให้ใส่ส่วนขยาย fadein ตามด้วยเวลาที่เพิ่มเสียง หน่วยเป็นวินาที เช่น ต่อท้ายด้วย fadein 2.5 หมายถึงค่อย ๆ เพิ่มเสียงเป็นเวลา 2.5 วินาที หลังจากนั้นเปิดเสียงต่อตามปกติ

ตัวอย่างการใช้คำสั่ง play เช่น

Code:
play music "theme1.ogg"
play music "theme2.ogg"   # หยุดเสียง Music เดิม (theme1.ogg) และเปิดเสียง theme2.ogg

play music "theme3.ogg" fadein 2.0   # เปิดเสียง theme3.ogg โดยค่อย ๆ เพิ่มความดังเป็นเวลา 2.0 วินาที

play sound "open.ogg"
play sound "broken.ogg"   # ถ้าเสียง Sound เดิม (open.ogg) ยังไม่จบ จะหยุดเสียงเดิม

# เสียง Audio เดิมจะไม่หยุดเมื่อเปิดเสียง Audio ใหม่
play audio "sfx1.mp3"
play audio "sfx2.mp3"



สำหรับการใช้คำสั่ง play กับเสียง Voice จะเป็นการเปิดเสียงทันที และจะหยุดเสียงเมื่อแสดงหรือเปลี่ยนกล่องข้อความ ซึ่งอาจเปิดและปิดเร็วมากจนฟังไม่ทัน และไม่เหมาะกับการใช้งานเท่าไร การเปิดเสียง Voice ผู้เขียนแนะนำให้ใช้คำสั่ง voice



Stop: หยุดเสียง


......

นี่เพิ่งแค่ 49% ของบทความนี้เท่านั้น บทความฉบับเต็มมีเยอะกว่านี้อีก!


เนื่องจากติดปัญหาเรื่องนโยบายการเผยแพร่บทความ ทำให้เราไม่สามารถเผยแพร่บทความฉบับเต็มลงในเว็บนี้ได้ อ่านฉบับเต็มได้ที่บทความต้นฉบับ (ไม่มีค่าใช้จ่าย)

บทความต้นฉบับ https://planila.blogspot.com/2019/08/renpy-chapter06.html

[Image: %25E0%25B8%259A%25E0%25B8%2597%25E0%25B8...9%2588.png]



RE: Ren'Py พื้นฐาน | บทที่ 6 เสียงประกอบเกม - dreamknight - 08-15-2019

;3

ท่านมิกิทำช่องยูทูปสอนด้วยเลยครับ