งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Sound On Game Suphot Sawattiwong 1.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Sound On Game Suphot Sawattiwong 1."— ใบสำเนางานนำเสนอ:

1 Sound On Game Suphot Sawattiwong 1

2 เสียงใน XNA ใน XNA 3.0 นั้นสามารถ ใช้.wav,.mp3 ได้ โดยตรงใน Content Project ได้เลย และ สามารถในเครื่องมือ ที่ชื่อ Microsoft Cross- Platform Audio Creation Tool หรือ XACT สิ่งหนึ่งที่ต้องจำไว้ว่า XACT ไม่ใช่โปรแกรม ประเภท Sound Editor หากจะต้องการแก้ หรือ ตัดต่อเสียงควรทำให้เรียบร้อยจากโปรแกรม อื่นๆ ก่อน 2

3 มารู้จักกับ Wave, Wave Bank, Sound Bank, Cue Wave เป็นไฟล์ที่เก็บ Audio Data เพื่อใช้ได้ อย่างอิสระ หรือ เพื่อเกมเสียงที่ใช้ประกอบ effect ในเกม Wave Bank เป็นไฟล์ที่เก็บ wave file หลายๆ อันไว้ด้วยกันเป็นกลุ่มอยู่ในไฟล์เดียว Sound Bank เป็นกลุ่มของหลายๆ wave bank และ cue Cue เป็นไฟล์ที่ยอมให้ Programmer เล่นเสียง โดยประกอบด้วย เสียงอย่างน้อย 1 เสียง และ อ้างอิงกับ sound bank 3

4 การใช้งาน XACT Click ปุ่ม Start เมนู และเลือก All Programs. Click Folder Microsoft XNA Game Studio 3.0 เลือก Tools และ click Microsoft Cross-Platform Audio Creation Tool (XACT) จากนั้นให้ทำการ New Project ขึ้นมาโดยต้องนำไฟล์ นามสกุล xap ไปใส่ไว้ใน Folder ที่ต้องการ ควรสร้างแยกจาก Project XNA ที่เป็น Visual Studio เลือก Create Wave Bank ทำการ ลาก Sound หรือทำการ insert wave file โดยการ Click ขวา ใน Wave Bank ก่อนทดสอบการ Play ให้ไปเปิด โปรแกรมชื่อ XACT Audition Utility ก่อน หาได้จาก Start> All Program>Microsoft XNA Game Studio 3.0>Tools> XACT Audition Utility 4

5 การใช้งาน XACT แล้วทำการ Create Sound Bank ทำการลาก file จาก wave bank มา sound bank แล้วทำการลาก ไฟล์จาก sound bank ลงไปที่ cue เสร็จแล้วให้ทำการ Build Sound Project ให้ทำการ save จากนั้นให้กลับไปที่ Microsoft Visual C# 2008 Express เปิด Project ที่ต้องการใส่เสียง ทำการ add exist item เลือก.xap ที่ทำการ save ไว้ จากนั้นให้ทำการ copy ไฟล์นามสกุล xgs, xsb, xwb ไปไว้ที่เดียวกันกับ.xap ซึ่งในที่นี้คือ Folder Content 5

6 การเขียนโปรแกรมเสียงโดยใช้ XACT Method ที่ใช้ทำการโหลด เสียงที่ดีที่สุดคงไม่ พ้น LoadContent ซึ่งจะสร้าง Audio Engine, wave และ sound bank ในนี้ โดยประกาศตัว แปร AudioEngine, WaveBank และ SoundBank เป็น static ใน Class Game1 โดย AudioEngine เป็นตัวแปรที่เก็บค่า XACT Game Setting ไว้ ส่วน WaveBank และ SoundBank เป็นการบอก AudioEngine ว่าไฟล์ไหนถูกเรียกใช้งาน 6

7 การเขียนโปรแกรมเสียงโดยใช้ XACT ดูใน Ex16_SoundTest ใน Class Game1 ให้ใส่ตัวแปรดังนี้ ใน Method LoadContent ให้ใส่ดังต่อไปนี้ static AudioEngine audio; // ตัวแปรเนี้เก็บค่า XACT game setting static SoundBank soundBank; static WaveBank waveBank; Cue gameloopCue; // ตัวแปรเก็บ SoundCue 7

8 การเขียนโปรแกรมเสียงโดยใช้ XACT ใน Method LoadContent ให้ใส่ดังต่อไปนี้ protected override void LoadContent() { spriteBatch = new SpriteBatch(GraphicsDevice); audio = new AudioEngine("Content\\sound.xgs"); // XACT game setting File soundBank = new SoundBank(audio, "Content\\Sound Bank.xsb"); // XACT Sound Bank file waveBank = new WaveBank(audio, "Content\\Wave Bank.xwb"); // XACT Wave Bank File gameloopCue = soundBank.GetCue("gameloop"); // Cue เป็นตัวที่ใช้ในการเล่นเสียงในเกม } 8

9 คำสั่งในการสั่งให้ Play Sound ใน Class Cue มีคำสั่งที่น่าสนใจอยู่หลายคำสั่งที่ ใช้ประจำดังนี้ และยังมี status ที่น่าสนใจไว้ใช้ประโยชน์อีก ดังนี้ Method คำอธิบาย Play() เล่นเพลง Stop() หยุดเพลง Resume() เล่นเพลงต่อ Pause() หยุดเพลงชั่วคราว Method คำอธิบาย IsPlaying ถ้าเป็น true แสดงว่า เพลงกำลัง เล่นอยู่ IsPaused ถ้าเป็น true แสดงว่าทำการหยุด เพลงชั่วคราว 9

10 ตัวอย่าง Code ของการเล่นเพลง โดยใช้ XACT protected override void Update(GameTime gameTime) { if (!gameloopCue.IsPlaying) // ถ้า gameloopCue ไม่ทำการเล่นอยู่จะเป็นจริง { gameloopCue.Play(); } base.Update(gameTime); } ดูได้ใน Project ชื่อว่า SoundTest 10

11 การเล่น Sound ง่ายๆ ผ่าน Class SoundEffect ทำการ Add New Item นำเพลงเข้ามาใน project ใน Folder Content เหมือนกับการโหลด ภาพ จากนั้นให้ประกาศตัวแปรใน Class Game1 ใน Method LoadContent ให้ทำตามดังนี้ SoundEffect soundEffect ; // ตัวแปร soundEffect protected override void LoadContent() { spriteBatch = new SpriteBatch(GraphicsDevice); soundEffect = Content.Load // โหลด Content soundEffect.Play(); // เล่นเพลง } 11

12 ตัวอย่าง Sound Manager ดูใน Ex17_TestSoundManager 12

13 Lab 9: เกมบวกลบคูณหารให้ได้ 10 สุพจน์ สวัตติวงศ์ อ. สุภัทรชัย พลศักดิ์ อ. เอกนรินทร์ คำคูณ 13

14 เงื่อนไขเกม ให้ทำการบวก ลบ คูณ หาร ตัวเลข ระหว่าง 0-9 เพื่อให้ได้ 10 หากได้คะแนน 10 ให้คะแนนบวก เพิ่มขึ้นไป 100 คะแนน หากกดปุ่ม pass ก็ลบ 50 คะแนน 14

15 วิธีคิด 1. ให้ทำการ random ตัวเลข ระหว่าง 0-9 มา 4 ตัว 2. นำตัวเลขลากไปวางโดยใช้ mouse ลงในช่อง ที่ต้องการ และ Click เครื่องหมายที่ต้องการใช้ และนำตัวเลขไปใส่ในอีก 1 ช่อง 3. ให้ทำการคำนวณผลลัพธ์ แล้วให้ทำการลาก ผลลัพธ์ไปอยู่กับตัวเลขที่เหลือ 4. ทำจนกว่าตัวเลขตัวเดียว และหากตัวเลขนั้นมี ค่า = 10 ให้ทำการเพิ่มคะแนน 100 คะแนน หากไม่ให้ -50 คะแนน รวมถึงหากกดปุ่ม pass ให้ -50 คะแนนเช่นกัน 15

16 ตัวอย่างเกมลักษณะนี้ ไม่จำเป็นต้องมี เวลา กับ undo 16


ดาวน์โหลด ppt Sound On Game Suphot Sawattiwong 1.

งานนำเสนอที่คล้ายกัน


Ads by Google