Image.SourceCroppedBitmap 區域裁切Silverlight 僅支援方法一;WPF 推薦方法二但方法一入門更簡單。
0.png~7.png (8 幀跑步)Player 資料夾,存入標準化素材「工欲善其事,必先利其器」——素材品質直接決定遊戲視覺上限,批次標準化不可省略。
int count = 1;
Image Spirit;
public Window4()
{
InitializeComponent();
Spirit = new Image { Width = 150, Height = 150 };
Carrier.Children.Add(Spirit);
var dt = new DispatcherTimer();
dt.Tick += (s, e) => {
Spirit.Source = new BitmapImage(new Uri(@$"Player\{count}.png", UriKind.Relative));
count = count == 7 ? 0 : count + 1;
};
dt.Interval = TimeSpan.FromMilliseconds(150); // ~6.67 FPS
dt.Start();
}
count 循環 0→7→0,對應 8 幀跑步動畫。UriKind.Relative 解析相對專案輸出目錄路徑。
按 Ctrl+F5,角色在畫面左上角 (0,0) 原地播放跑步循環動畫。雖未移動,但「動起來」的關鍵一步已完成。
bin\Debug\Player\下一章介紹圖集裁切法:將 10 幀合成 1500×150 單一大圖,用 CroppedBitmap 瞬時裁切,大幅降低 IO 開銷,並示範施法動畫播放。