AR + Swift Playground

AR + Swift Playground

IT Standard 12 10 hrs Coding / Algorithm Mobile Application Development VR / AR Swift

本課程結合 Swift 編程與 Apple 裝置上的擴增實境開發。學生首先在 Swift Playgrounds 中,將重複的指令組合成具名函數,使用 for 迴圈重複特定模式,並以 if / else if / else 條件處理不同情況,從而解決解謎世界的關卡。隨後,他們從解謎過渡至實際的應用程式開發,在 Swift Playgrounds 中建立首個 SwiftUI 應用程式,運用文字視圖、堆疊、按鈕及狀態變數,使介面能對使用者的點擊作出回應。最後部分介紹擴增實境:學生將比較 AR 與 VR,在 iPad 上的 Reality Composer 中利用資源庫、錨點及點擊行為建立 3D 場景,匯出該場景,並將其載入至提供的 RealityKit 範例程式碼中,使場景透過裝置相機顯示。在整個課程中,學生需要在編寫程式碼前識別問題中的重複模式,藉此培養大型應用程式專案所需的解構與邏輯思維能力。

課程查詢

學習目標

  • 編寫 Swift 函數、for 迴圈及條件陳述式,透過在編寫程式碼前識別重複模式,解決 Swift Playgrounds 解謎關卡。
  • 運用堆疊、按鈕及狀態變數建立首個 SwiftUI 應用程式,使介面能對使用者互動作出回應。
  • 在 Reality Composer 中運用錨點與點擊行為建立 AR 場景,然後將其匯出並載入至在 iPad 上運行的 RealityKit 應用程式中。

課程大綱

函數 | 了解如何將多段程式碼封裝成具名函數並呼叫執行 | 實作:i) 透過定義 func turnRight() 解決 Composing a New Behavior 及 Creating a New Function ii) 在 Collect, Toggle, Repeat 及 Across the Board 中識別重複模式 iii) 運用解構方法為 Nesting Patterns、Slotted Stairways 及 Treasure Hunt 編寫 turnAround()、solveStair()、solveRow()、moveThenToggle() 及 moveClockwise()
For 迴圈 | 了解如何使用 for i in 1 ... number 重複執行單一或一組動作指定次數 | 實作:i) 在 Using Loops 及 Looping All the Sides 中識別模式及重複次數 ii) 透過循環執行切換並返回模式解決 To the Edge and Back 及 Loop Jumper iii) 結合 for 及 func,在 Branch Out、Gem Farm 及 Four Stash Sweep 中封裝重複動作
If 陳述式 | 了解如何配合布林條件使用 if / else if / else,以引導程式處理不同情況 | 實作:i) 使用 isOnClosedSwitch 解決 Check Switch ii) 在 Else If and Loop 中,將 isOnGem 及 isOnClosedSwitch 結合於 if / else if 區塊內 iii) 為 A Smart Function、Box 及 Decision Tree,將條件區塊封裝入 collectOrToggle()、solveRightSide() 及 solveLeftSide()
我的首個應用程式 | 了解 SwiftUI 應用程式的結構,包括 App 協定、body 屬性及 @main 進入點 | 實作:i) 在 Swift Playgrounds 中建立新的 App playground,並更改 Text 內容、.font 及 .foregroundStyle ii) 使用 HStack、VStack 及 ZStack 組合視圖,並加入具備 .buttonStyle 的 Button iii) 宣告 @State 變數 bgColor、myTxt 及 isFlash,以便在點擊時更改文字及全螢幕背景顏色 iv) 擴充應用程式,從顏色清單中隨機選取顏色
AR 簡介 | 了解擴增實境與虛擬實境的分別,以及 Reality Composer 如何在毋須編寫程式碼的情況下建立 AR 場景 | 實作:i) 在 iPad 上建立 Reality Composer 專案,沿 x、y 及 z 軸移動和旋轉物件,並從資源庫加入物件 ii) 設定水平及垂直錨點,並使用 AR 按鈕預覽場景 iii) 加入 Tap & Flip 行為,選擇觸發物件並擴展動作序列 iv) 匯出場景,在 RealityKit 範例程式碼中設定 modelFileName,並將應用程式構建至裝置

先修課程

  • Swift Playgrounds 指令課堂 (L1) 或同等的積木編程經驗

硬體需求

  • iPad
  • Mac

軟體需求

  • Swift Playgrounds
  • Reality Composer (iPad)
  • Xcode

其他要求