beyond spectrum
play

Beyond Spectrum Music game project Team member: Class - PowerPoint PPT Presentation

Project Presentation Beyond Spectrum Music game project Team member: Class F1603020 Date 2017.06.01 01 Introduction 02 View CONTENTS Controller 03 Model


  1. Project Presentation Beyond Spectrum Music game project Team member: 韩宇杰、郭含熙、蔡凯帆、金超 Class : F1603020 Date : 2017.06.01

  2. 01 Introduction 韩宇杰 02 View 郭含熙 CONTENTS Controller 蔡凯帆 03 Model 金超 04

  3. INTRODUCTION Beyond Spectrum is a music game that enables you to play with your own songs.  Maps are generated according to the music file.  Every single play is different from each other though they uses the same song.  Variable colors form a spectrum-like interface.  Can be used as a music player. 0 2

  4. 01 Introduction 韩宇杰 02 View 郭含熙 CONTENTS Controller 蔡凯帆 03 Model 金超 04

  5. PART 02 View 03

  6. View textView ListView Button 04

  7. View Create the view Change the color of buttons 05

  8. View Create the view ( in .xml file ) Create 12 buttons 01 Six for user’s touch, Six for animation Create a progress Bar 02 To show the left time Create 3 textviews 03 Two for the score, one for the preparing stage 06

  9. View Change the color of buttons Use setButtonColor() function 1. Determine the range of the color. 2. Use Math.random() to create integer number 3. Transform this int number to hexadecimal String 4. Create hex code. btn.setBackgroundColor(Color.parseColor (“#”+ Integer.toHexSt ring(-random-plus[0]))) 5. Create another 5 random color. 6. Use setBackGroundColor() to set the color of buttons. 07

  10. 01 Introduction 韩宇杰 02 View 郭含熙 CONTENTS Controller 蔡凯帆 03 Model 金超 04

  11. PART 03 Controller 10

  12. Controller Create Animation Set OnClickListener Set Property of ProgressBar 11

  13. Controller Create Animation of the View Save the view as a variable 01 btn1 =(Button)findViewById(R.id. button ); Use ObjectAnimator to create Animation 02 ObjectAnimator heightAnimator=ObjectAnimator. ofFloat (btn, "y" ,100f,900f) .setDuration(3000); 12

  14. Controller Set OnClickListener of Button (set command when button is clicked) Command one: 01 Use animation to create cartoons of the button. Command two: 02 Count the score. Get the height of bar. Then calculate the score to show on the TextView. 13

  15. Controller Set property of the ProgressBar Show the progress of the song 01 Get the data of time. Then change it into the progress to show on the ProgressBar. if(pb.getVisibility()==View. GONE ) pb.setVisibility(View. VISIBLE ); pb.setProgress(newProgress); Give the end sign 02 When progress is 100, the game is over, then it will show the mark “game over” Return content 14

  16. 01 Introduction 韩宇杰 02 View 郭含熙 CONTENTS Controller 蔡凯帆 03 Model 金超 04

  17. PART 04 Model 15

  18. Model Structure Decode the Fetch the Find the file data beats 16

  19. Model Decode the file Use Audio Decoder jmp123 to decode the mp3 file. 17

  20. Model Fetch the data Create a two-dimensional array 01 float v[][] = new float[b.length/4/1000+1][1000]; Change byte data to float data and save them in the array 02 v[i][j] = Float.intBitsToFloat(getInt(b, index)); 18

  21. Model Find the beats Create a class which can save the time and 01 average volume of a beat public class Beat { public float time; public float average; } 02 Create a Beat array to save the beats Beat beats[] = new Beat[v.length]; 19

  22. Model Find the beats Use the library Minim to judge when beats occur 03 in the music and save them. for (i = 0; i < v.length; ++i) { beat.detect(v[i]); if (beat.isOnset()) { beats[k].time = i*1000/44100; sum = 0.0; for (j = 0; j < v[i].length; ++j) sum += v[i][j]; beats[k].average = sum/v[i].length; ++k; } } 20

  23. THANK YOU FOR YOUR LISTENING

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend