Posted on 2017-01-25 21:59
劍孤寒 閱讀(1567)
評論(0) 編輯 收藏 引用 所屬分類:
Galaxy2D 游戲引擎發(fā)布
最近用了一下vs2015,感覺很不錯(cuò),于是把引擎的工程也升了一下級,
升級過程非常順利,只是有兩個(gè)小問題:
1.編譯出來的dll如果用upx壓縮,在win8/10系統(tǒng)下不會(huì)調(diào)靜態(tài)變量的構(gòu)造函數(shù),從而導(dǎo)致程序崩潰,猜測可能是新加的線程安全靜態(tài)變量初始化功能弄的,所以為了保證兼容性,以后的引擎將不再使用upx壓縮了
2.不知道為啥,vs2015總是執(zhí)著的在解決方案目錄下自動(dòng)生成一個(gè)空的"Debug"目錄,手動(dòng)刪除后過一段時(shí)間又會(huì)出現(xiàn),只好將這個(gè)目錄設(shè)成隱藏,眼不見為凈
升級到VS2015后發(fā)現(xiàn)Qt4.7編譯不過了,順便把QT也升級了一下,
不過升級QT就不那么順利了,遇到一些很蛋疼的問題,我差點(diǎn)以為我下載了假的QT...
1.使用configure配置QT時(shí),如果寫錯(cuò)了參數(shù),無法重新配置,也無法用nmake confclean清除配置,只能重新解壓源碼再來一次(為了加上對XP的支持,解壓了幾十遍源碼ORZ...)
2.盡管代碼可以支持XP,但新版QT并沒有XP的配置選項(xiàng),本來可以簡單的修改配置文件來支持XP,但是可能為了防止使用者修改配置在XP上運(yùn)行,會(huì)在另一個(gè)配置文件把修改后的支持XP的參數(shù)改回去,簡直太陰險(xiǎn)了
3.編完后發(fā)現(xiàn)尼瑪,居然沒有自動(dòng)編譯文檔(此處省略10086只草泥馬...)
4.除了文檔外,這個(gè)新版的QT也不會(huì)自動(dòng)生成VS工程了,這也就算了,關(guān)鍵那個(gè)qt.pro是有問題的,手動(dòng)轉(zhuǎn)成vs工程會(huì)有些配置錯(cuò)誤,可以用VS打開看代碼,但并不能編譯
5.把我最愛的QCleanlooksStyle刪掉了,新的Style難看得要死,還會(huì)把界面搞錯(cuò)位,害我把之前的界面全部重調(diào)了一遍(此處繼續(xù)省略10086只草泥馬...)
6.渲染上有個(gè)坑,需要加上setAttribute(Qt::WA_NativeWindow),否則收不到paintEvent(QPaintEvent * event)回調(diào),之前的版本是不需要的
7.QtDesigner還是原來的配方,該有的bug一個(gè)沒少,新功能一個(gè)沒多,難用的地方依然難用
8.在C++庫這塊新版QT并沒加啥新功能,跟之前版本相比最大的變化是編譯后大了好幾G,閑的蛋疼的調(diào)整了include目錄,將原來的一個(gè)lib拆分成n個(gè),然而除了給使用者帶來麻煩之外并沒有什么卵用