導航:首頁 > 源碼編譯 > qt怎麼clear後重新編譯

qt怎麼clear後重新編譯

發布時間:2025-04-10 07:05:44

㈠ 基於Qt的Live2D示例(幾乎都是官方給的代碼就是啦!)

長久未更新,計劃在疫情期間整理某段遺忘代碼,卻意外發現了Live2D的趣味性。由此,我萌生了將Live2D模型投射到屏幕上的想法。Live2D在C++的桌面引擎中支持DirectX、OpenGL、Cocos2d-x,我選擇使用OpenGL的Cubism SDK。由於Qt也支持OpenGL,我利用Qt資源簡化了開發過程。首先下載Cubism SDK並編譯Demo,遇到錯誤後修改CMakeLists.txt以兼容最新版本的msvc編譯器,同時加入glew和glfw,項目順利編譯。接下來分析代碼文件,移除無用部分並用Qt的QOpenGLWidget替代LAppView。為了兼容OpenGL函數,修改Framework,使QOpenGLWidget支持glClearDepthf。調整窗口屬性以實現「透明」效果,包括設置窗口屬性和響應WM_MOUSEACTIVATE消息。盡管窗口看起來透明,但模型仍然遮擋屏幕,這與項目中遇到的類似問題相關。嘗試使用WS_EX_LAYERED解決,但失敗後我採用了一種新的方法:通過LAppModel的HitTest介面判斷滑鼠是否在模型上,進而動態調整窗口屬性實現透明。處理坐標變換以確保模型正確顯示。通過LAppModel和LAppDelegate整合LAppLive2DManager類,移除模型切換代碼,實現模型固定位置顯示。利用矩陣調整模型位置,允許通過滑鼠拖動模型。實現了一個可拖動的模型,並在接下來探討Windows Toast Notification的集成。對於UWP應用相對簡單,但Win32程序涉及COM介面的復雜性。通過定義AppUserModelID和CLSID,復制組件,實現Toast Notification的生成。Toast可以區分用戶點擊的具體消息,並在程序初始化時進行配置。檢測Toast激活參數後,避免載入圖形界面,僅在Toast激活時執行函數。最後,解決了插件系統相關的線程問題、數據拉取的cookies存儲、libzip的文件管理等復雜性,確保了程序的正常運行。此外,還實現了一些有趣的功能,如音樂播放、查詢未提交作業、文件壓縮等插件。整個項目涉及多種技術挑戰,最終完成了從代碼到功能的完整實現。分享鏈接,將release版本發布。

閱讀全文

與qt怎麼clear後重新編譯相關的資料

熱點內容
程序員放棄後會怎樣 瀏覽:162
河北模具編程 瀏覽:179
adb查找命令 瀏覽:309
安卓手機視頻文件夾怎麼打開 瀏覽:303
平板加密手機後怎麼關閉 瀏覽:557
流媒體伺服器應該注意什麼 瀏覽:529
d8命令編譯 瀏覽:943
壓縮包解壓需要多少空間 瀏覽:139
如何查找app屬性 瀏覽:381
android人臉識別技術 瀏覽:305
pc104編程 瀏覽:329
二維碼反編譯破解推廣 瀏覽:674
修改伺服器的mac地址 瀏覽:522
好玩的編程軟體 瀏覽:892
編程語言創始人有錢嗎 瀏覽:797
短視頻app怎麼獲客 瀏覽:8
查看雲伺服器的應用 瀏覽:428
javadump工具 瀏覽:558
程序員16g 瀏覽:421
程序員沒有辦法成為top怎麼辦 瀏覽:197