WPF/Silverlight 遊戲開發教程 (11):地圖遮罩層實作 — 半透明遮擋物與畫家演算法 ZIndex 動態管理
遮罩層設計目標 表現層中高大的樹木、建築頂層會遮擋角色。傳統做法將遮擋物作為獨立圖層疊加在角色上方,並設定半透明度(如 0.7),角色進入遮擋區域時若隱若現,極
WPF/Silverlight 遊戲開發教程 (12):神奇的副本地圖 — 拾色法構建障礙物、傳送點與 A* 混合導航
地圖三層架構總覽 層級內容用途 表現層完整美術圖 (800×600)視覺呈現 遮罩層半透明遮擋物 (樹木、建築上層)角色穿越時若隱若現 底層/副本圖純色功能圖
WPF/Silverlight 遊戲開發教程 (13):牽引式地圖移動模式 — 雙重實作與虛擬攝影機原理
核心概念:遊戲視窗即虛擬攝影機 2D 俯視角遊戲(RTS、SLG、ARPG)中,地圖遠大於螢幕。遊戲視窗如同固定支架上的攝影機鏡頭,只能看見鏡頭範圍內的地圖區域
WPF/Silverlight 遊戲開發教程 (14):打造專屬精靈控件 — XAML 結構、BorderText 描邊文字與視覺樹層級
為何需要自訂精靈控件? 遊戲物件(主角、NPC、怪物、坐騎、障礙物)屬性繁多:座標、名稱、門派、家族、血條、藍條、屬性、裝備、狀態、線程參數等。若全塞進 Tag
WPF/Silverlight 遊戲開發教程 (15):精靈控件核心實作 — 依賴屬性、專屬執行緒與地圖跟隨邏輯
精靈控件架構總覽 本章完成 QXSpirit 用戶控件的後台邏輯,核心包含三大支柱: 依賴屬性:X、Y 支援 Storyboard 動畫、Binding、樣式
WPF/Silverlight 遊戲開發教程 (16):牽引式地圖移動模式 — A* 尋路整合與座標系轉換
背景回顧:牽引式地圖移動核心公式 上一章建立精靈控件的 X、Y 依賴屬性,並在 UI 執行緒中以: Canvas.SetLeft(Spirit, Spirit.
WPF/Silverlight 遊戲開發教程 (17):打造八方向五動作完美精靈 — 素材整合與合成圖集
系列教程回顧與本章目標 前幾章已建立基礎精靈控件,但角色僅支援單一方向與單一動作。實戰遊戲中,角色需要八個方向(北、東北、東、東南、南、西南、西、西北,對應時鐘
Visual C# 實作資料庫記錄瀏覽器:DataBinding 與 BindingManagerBase 完整教學
前言:從 Delphi/VB 到 C# 的資料導航遷移 在 Delphi 或 Visual Basic 時代,「資料導航器」是內建元件,拖拉即可實現資料庫記錄的
C# 實作 SMTP 郵件發送完整類別庫
前言 在 .NET 應用程式開發中,郵件發送功能幾乎是標準配備。雖然 .NET Framework 內建 System.Net.Mail.SmtpClient
用 C# (ASP.NET) 寫出登入驗證碼
驗證碼生成器完整代碼 繼承 System.Web.UI.Page,Page_Load 生成圖片: public class ValidateCode : Sy
用 C# 讀取 GPS 資料的基類(適用於 Windows CE 作業系統)
GPS 基類架構 針對 Windows CE 平台,透過 P/Invoke 呼叫 coredll.dll 實現序列埠通訊與 NMEA 協議解析。 核心結構體與
用 C# 獲取 CPU 編號、硬碟編號等系統環境屬性
概述 整理 C# 獲取系統環境與屬性的常用方法,提供參考。需定義結構體供 DllImport 回傳參數。 結構體定義 CpuInfo.cs [StructL
C# 開發 WPF/Silverlight 動畫與遊戲系列教程(二十):第一部分拓展小結篇
前言 二十節不間斷更新,暫作小結整理思緒,為第二部分更精彩內容鋪路:跟隨式地圖移動、NPC/怪物互動、AI、攻擊魔法、傷害計算、完美 RPG 界面等。 一、改
C# 開發 WPF/Silverlight 動畫與遊戲系列教程(二十一):主位式地圖移動模式
何謂主位式地圖移動模式? 以主角為中心,其移動帶動地圖、物件、其他玩家、怪物等所有物件相對移動。典型例證:MMORPG 中角色永處視窗正中心(八角落除外)。
C# 開發 WPF/Silverlight 動畫與遊戲系列教程(二十二):重構 — 讓代碼插上翅膀自由飛翔
重構動機 隨著開發深入,代碼日益鬆散、結構稀疏,維護成本激增。代碼發出求救信號,是時候進行第一次親密重構。 一、統一代碼格式,極致可讀性 以 InitMapS
C# 開發 WPF/Silverlight 動畫與遊戲系列教程(二十三):自適應視窗化與全螢幕切換(僅限 WPF)
架構擴展性的試金石 視窗化與全螢幕自適應完美切換,是檢驗遊戲架構合理性的嚴肅考驗。兩種切換模式: 模式一:可視範圍縮放(不縮放物件尺寸) 記錄全螢幕與視窗尺寸