Major Softwares

  INDEX PAGE

  1. 簡介
  2. Java, Android和LibGDX好書推介
  3. Java, Android和LibGDX要學的知識
  4. 用Windows寫Java程式
  5. 用Eclipse寫Java程式
  6. 用Eclipse寫Android程式
  7. 用Eclipse寫LibGDX程式
  8. Standard Java Naming Conventions
  9. System.out.println()的用法和意思
  10. Where is main() method in Android?

LibGDX - Splash & Menu Screen

  1. LibGDX: World, Texture, Background, Camera, Viewport, Screen & OpenGL
  2. LibGDX: Texture, TextureRegion, SpriteBatch & Sprite
  3. UML(Unified Modeling Language): Class Diagram
  4. Type Casting, Upcasting & Downcasting
  5. @Override的用法和意思
  6. LibGDX: Scene2d & Graphical User Interface(GUI)
  7. LibGDX: Splash Screen
  8. LibGDX: Texture Packer
  9. LibGDX: BitmapFonts, JSON & Skin
  10. Android: R.java File
  11. Android: onClick事件的5種實現方式
  12. LibGDX: Game Menu Screen
  13. LibGDX: Advanced Game Menu Screen (using Abstract Screen)
  14. LibGDX: Disposable Interface
  15. Java & LibGDX: super keyword
  16. LibGDX: Advanced Game Menu Screen (using AssetManager)
  17. Java: Array, Arrays, List, ArrayList & LibGDX: Array
  18. LibGDX: File I/O (Preferences)
  19. LibGDX: Game Level Selection Screen
  20. LibGDX: Advanced Game Level Selection Screen (using AssetManager)

LibGDX - Tiled 2D Platform Game

  1. LibGDX: Lifecylce (Render() Method)
  2. LibGDX: Delta Time
  3. LibGDX: Animation & Spritesheet
  4. LibGDX: Keyboard, Mouse & Touch Screen Control
  5. Input Control (Polling VS Event Driven Input)
  6. LibGDX: Tiled (Background and Foreground)
  7. LibGDX: Jumping Action
  8. LibGDX: Tiled (Collision Detection)
  9. LibGDX: Tiled (Bullet Class)
  10. LibGDX: Audio (Sound & Music)
  11. LibGDX: Tiled (Scrollable Background with Camera & HUD)
  12. LibGDX: WorldController & WorldRenderer Class

LibGDX/Java - Card Game No.1 - Blackjack

  1. LibGDX: Install & Setup Android Studio IDE
  2. LibGDX: Use Android Studio to Run Java Hello World
  3. LibGDX: Use Android Studio to Run LibGDX Hello World
  4. Adobe Illustrator: Basic Components Part 1
  5. Adobe Illustrator: Basic Components Part 2
  6. Adobe Illustrator: BlackJack Table & Cards
  7. LibGDX: Blackjack Animation
  8. LibGDX: Interpolation
  9. Java: toString() Method
  10. Java: Blackjack Shuffle Methods
  11. LibGDX: Blackjack Shuffle Method
  12. Java: Blackjack Card Game

LibGDX - Others

  1. Making and Displaying App Icon
  2. LibGDX: Displaying Traditional and Simplified Chinese Characters
  3. LibGDX: Handling Different Screen Resolutions

Unity Game Engine & C#

  1. Visual Studio: C# Hello World
  2. Unity: C# Hello World
  3. Unity: Handling Different Screen Resolutions
  4. Unity: Life Cycle
  5. Unity: StartCoroutine, StopCoroutine, IEnumerator & Yield
  6. Unity: Splash Screen
  7. Unity: Fonts, Traditional and Simplified Chinese Characters
  8. Unity: GameObject, Class Object, new & Instantiate
  9. Unity: Start Screen with Glowing Animated Button
  10. Unity: C# Get & Set Modifier
  11. Unity: Delegates & Events
  12. Unity: File I/O, Read & Write Text File & PlayerPrefs
  13. Unity: Game Level Selection Screen
  14. Unity: Game Menu Screen & ScreenManager
  15. Unity: Encrypt and Decrypt Text File
  16. Unity: Options Menu Screen
  17. Unity: Convert Numbers Image to Custom Font

Unity - Card Game No.1 - Blackjack

  1. Unity: Blackjack Card Game - Part 1 (Full Game)
  2. Unity: Blackjack Card Game - Part 2
  3. Unity: Blackjack Card Game - Part 3
  4. Unity: Blackjack Card Game - Part 4
  5. Unity: Blackjack Card Game - Part 5
  6. Unity: Blackjack Card Game - Part 6
  7. Unity: Blackjack Card Game - Part 7

以下是預告-Coming soon!


Secret Weapon No.1

  1. Unity: Card Game No.2

Advanced Programming

  1. Unity: GPS Programming
  2. Unity: User Login System
  3. Unity: Augmented Reality (AR)

Secret Weapon No.2

  1. Unity: GPS & AR Application

第71節 - Unity: Game Menu Screen & ScreenManager

這一節我會介紹Unity: Game Menu Screen & ScreenManager,我在第22節 - LibGDX: Game Menu Screen介紹過LibGDX的Menu Screen,與LibGDX相比,運用Unity製作Menu Screen比較簡單,主要用拖放(Drag & Drop)就可以完成大部分的Menu Screen,程式部分只有一個簡單的Unity ScreenManager類別,本節的Menu Screen如下:

Unity: Game Menu Screen & ScreenManager

1) Result (執行結果):

以下是本節第71節 - Unity: Game Menu Screen & ScreenManager的執行結果:

2) Step By Step Tutorial

首先,我會用第22節 - LibGDX: Game Menu Screen介紹過的Texture Packer軟件製作合併圖片,如圖片太大,Texture Packer軟件會自動產生幾個.png檔案,例如:mainmenu.png,mainmenu2.png和mainmenu3.png。

Unity: Game Menu Screen & ScreenManager
  1. 選擇Main Camera。

  2. 把這三張圖片拖放到Assets區域內。

  3. 選擇Main Camera,設定Orthographic Size = 700/2 = 350。

Unity: Game Menu Screen & ScreenManager
  1. 選擇mainmenu圖片。

  2. 選擇Multiple。

  3. 設定Pixels Per Unit = 1。

  4. 選擇Sprite Editor。

Unity: Game Menu Screen & ScreenManager
  1. 設定每一張圖片的位置(X,Y)和大小(W,H)。

  2. 選擇Apply。

Unity: Game Menu Screen & ScreenManager
  1. 設定每一張圖片的位置(X,Y)和大小(W,H)。

  2. 選擇Apply。

Unity: Game Menu Screen & ScreenManager
  1. 設定每一張圖片的位置(X,Y)和大小(W,H)。

  2. 選擇Apply。

Unity: Game Menu Screen & ScreenManager
  1. 每一張圖片就會獨立產生。

Unity: Game Menu Screen & ScreenManager
  1. 建立一個Empty GameObject - Controller。

  2. 建立一個C# Script - MyScript1,再把MyScript1拖放到Controller內。

Unity: Game Menu Screen & ScreenManager
  1. 建立一個SceneManager.LoadScene()方法。

Unity: Game Menu Screen & ScreenManager
  1. 建立一個Canvas。

  2. 選擇Main Camera,把Main Camera拖放到Render Camera內。

  3. 設定Canvas的不同值。

Unity: Game Menu Screen & ScreenManager
  1. 建立一個Canvas - Image - BgImage。

  2. 設定Canvas的不同值。

  3. 選擇BgImage,把以上圖片拖放到Source Image內。

Unity: Game Menu Screen & ScreenManager
  1. 建立一個Canvas - Button - StartButton。

  2. 設定Canvas的不同值。

  3. 選擇StartButton,把以上圖片拖放到Source Image內。

  4. 再把Controller GameObject拖放到OnClick()方法內,選擇MyScript1.MySwitchScene()方法,最後輸入下一頁名稱 - startscene。

Unity: Game Menu Screen & ScreenManager
  1. 建立一個Canvas - Button - OptionsButton。

  2. 設定Canvas的不同值。

  3. 選擇OptionsButton,把以上圖片拖放到Source Image內。

  4. 再把Controller GameObject拖放到OnClick()方法內,選擇MyScript1.MySwitchScene()方法,最後輸入下一頁名稱 - optionsscene。

Unity: Game Menu Screen & ScreenManager
  1. 建立一個Canvas - Button - OptionsButton。

  2. 設定Canvas的不同值。

  3. 選擇OptionsButton,把以上圖片拖放到Source Image內。

  4. 再把Controller GameObject拖放到OnClick()方法內,選擇MyScript1.MySwitchScene()方法,最後輸入下一頁名稱 - optionsscene。

Unity: Game Menu Screen & ScreenManager
  1. 建立一個Canvas - Button - CreditsButton。

  2. 設定Canvas的不同值。

  3. 選擇CreditsButton,把以上圖片拖放到Source Image內。

  4. 再把Controller GameObject拖放到OnClick()方法內,選擇MyScript1.MySwitchScene()方法,最後輸入下一頁名稱 - creditsscene。

Unity: Game Menu Screen & ScreenManager
  1. mainscene場景的結果,如上。

Unity: Game Menu Screen & ScreenManager
  1. 建立一個新場景startscene。

  2. 建立一個Canvas - Image - Image。

  3. 選擇Image,把以上圖片拖放到Source Image內。

Unity: Game Menu Screen & ScreenManager
  1. 建立一個Canvas - Button - Button。

  2. 設定Canvas的不同值。

  3. 選擇Button,把以上圖片拖放到Source Image內。

  4. 再把Controller GameObject拖放到OnClick()方法內,選擇MyScript1.MySwitchScene()方法,最後輸入下一頁名稱 - mainscene。

Unity: Game Menu Screen & ScreenManager
  1. startscene場景的結果,如上。


Unity: Game Menu Screen & ScreenManager
  1. 用相同方法建立optionsscene、creditsscene和平facebookscene場景,如上。

Unity: Game Menu Screen & ScreenManager
  1. 選舉File>Build Settings,把所有場景拖放到Sences In Build區域,如上。

  2. 選擇Close。

執行結果

Unity: Game Menu Screen & ScreenManager
  1. 執行結果,如上。

Download above code and sample pictures here!