Suphot Sawattiwong tohpus@hotmail.com Sound On Game Suphot Sawattiwong tohpus@hotmail.com.

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
C# เบื้องต้น ก่อนการเขียนเกมด้วย XNA
Advertisements

Suphot Sawattiwong Function ใน C# Suphot Sawattiwong
Lab Part Nattee Niparnan
XNA Basic.
Introduction to C Introduction to C.
รายวิชา ง40102 หลักการแก้ปัญหาและการโปรแกรม
XNA Basic.
ผู้จัดทำโครงการ นายณัฐพงษ์ ทุมมาลา นายทินกร เหมหงษ์
LAB 1 ให้นักศึกษาเขียน Flowchart โดยใช้โปรแกรม Microsoft Word วาดรูป Flowchart ส่ง Flowchart ที่วาดเสร็จแล้วในชั่วโมง และ print ใส่กระดาษ ส่งในครั้งหน้า.
HTML Language ภาษา HTML คืออะไร ? HTML (Hyper Text Markup Language) เป็นภาษาที่ใช้ในการพัฒนา web page เพื่อให้โปรแกรม web brower ต่างๆ (Internet Explorer,
Lecture No. 3 ทบทวนทฤษฎีและแบบฝึกหัด
ชนิดของข้อมูลและตัวดำเนินการ
Microsoft Excel 2007.
บทที่ 3 พื้นฐานการเขียนโปรแกรม Visual Basic
Visual Basic 6 By Samaporn Yendee VB6.
Visual Basic 6 By Samaporn Yendee VB6.
โครงสร้างภาษาซี.
การแทรกรูปภาพ การนํารูปภาพจากแฟมขอมูลอื่น
การพิมพ์เอกสารออกทาง เครื่องพิมพ์. การตรวจเอกสารก่อนพิมพ์ด้วย Print Preview เราสามารถตรวจสอบความถูกต้องของ เอกสารก่อนสั่งพิมพ์โดยใช้คำสั่ง Print Preview.
การสร้างบทเรียน CAI ด้วย Flash
การประกาศตัวแปร “ตัวแปร” คือสิ่งที่เราสร้างขึ้นมาเพื่อใช้เก็บค่าต่างๆและอ้างอิงใช้งานภายในโปรแกรม ตามที่เรากำหนดขึ้น การสร้างตัวแปรขึ้นมาเราเรียกว่า.
Atlas.ti Date 24/03/10.
การใช้งาน Microsoft Excel
SCC : Suthida Chaichomchuen
การสร้างภาพเคลื่อนไหว
คู่มือการใช้งานโปรแกรม EndNote. ตั้งชื่อไฟล์ที่จะใช้งาน.
การเขียนโปรแกรมเชิงวัตถุ ด้วยภาษาจาวา
โปรแกรม Microsoft Access
การเขียนโปรแกรมคอมพิวเตอร์และอัลกอริธึม
การใช้งานเบื้องต้นของเครื่องคิดเลขทางการเงิน
การสร้าง Digital Video ด้วย Window Movie Maker
การใช้งาน Microsoft Windows XP
Lab 7: เกมไพ่จับคู่ (อีกรอบ)
สุพจน์ สวัตติวงศ์ gamepad.pigcanfly.com
Suphot Sawattiwong Sprite Suphot Sawattiwong
Suphot Sawattiwong Lab IV: Array Suphot Sawattiwong
Chapter 6 Decision Statement
การเปลี่ยนแปลงเกี่ยวกับตัวแปร
รายงาน เรื่อง -ส่วนประกอบที่สำคัญของ microsoft excel -การพิมพ์ข้อมูลและการสร้างสูตรเบื้องต้น จัดทำโดย.
รายงาน เรื่อง พื้นฐาน Microsoft Excel จัดทำโดย
การใช้คำสั่งเงื่อนไขใน exel
การประยุกต์ใช้ ง การเขียนโปรแกรมบนระบบไร้ สาย.
เรียนรู้การสร้างเกมจากตัวอย่าง 1
การ Generate ตารางข้อมูลให้เป็นแผนที่โดยใช้ ArcView
การใช้ Word เพื่อการคำนวณ
เครื่องหมายและการดำเนินการ ในภาษา C
Java Desktop Application #4
การเขียนโปรแกรมภาษาคอมพิวเตอร์ 1
เขียนโปรแกรมเพื่อแสดงข้อมูลพนักงาน ด้วย ADO.NET vs. DataReader
Extra_08_Test_Modular_Calculator
เสรี ชิโนดม ฟังก์ชัน เสรี ชิโนดม
บทที่ 3 การทำงานกับฟอร์ม (Form)
โปรแกรม Microsoft Access
บทที่ 3 การทำงานกับฟอร์ม (Form)
วิทยา กรระสี (วท.บ. วิทยาการคอมพิวเตอร์)
วิชา COSC2202 โครงสร้างข้อมูล (Data Structure)
ที่เมนู Start - All Programs - TURBO C++ V4.5 และ TURBO C++
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
ตัวดำเนินการ และนิพจน์คณิตศาสตร์
หลักการสร้างสรรค์ชุดคำสั่ง ๓
ความรู้พื้นฐานเกี่ยวกับ Microsoft Visual C#
การเพิ่มลูกเล่นให้กับเว็บเพจ
กลวิธีการสอนคณิตศาสตร์ระดับประถมศึกษา
Lesson01 แมวเหมียว การแสดงภาพและเสียง. 1. คลิก New Project.
หลักการเขียนโปรแกรม ( )
Nero Burning Rom น. ส. ธัชรินทร์ เลิศกิจจา คณะศิลปกรศาสตร์ เอก ออกแบบทัศนศิลป์ - ศิลปเครื่องประดับ รหัสประจำตัวนิสิต section B05.
การสร้างสื่ออิเล็กทรอนิกส์ด้วยโปรแกรม CONTERT AUTHORING
ตัวแปร และชนิดข้อมูล.
เทคนิคการใช้ โปรแกรมเพาเวอร์พอยต์
1. ทำการคลิกที่ audiostudio80a-trial 2. เมื่อคลิกจะปรากฏหน้าจอดังรูป 3. ทำการเลือกที่ติดตั่งไฟล์ Setup 4. คลิก Next เฟื่อดำเนิการต่อ.
ใบสำเนางานนำเสนอ:

Suphot Sawattiwong tohpus@hotmail.com Sound On Game Suphot Sawattiwong tohpus@hotmail.com

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

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

การใช้งาน 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

การใช้งาน 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

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

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

การเขียนโปรแกรมเสียงโดยใช้ 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 เป็นตัวที่ใช้ในการเล่นเสียงในเกม }

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

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

การเล่น 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<SoundEffect>(@"gameloop"); // โหลด Content soundEffect.Play(); // เล่นเพลง }

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

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

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

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

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