青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

戰(zhàn)魂小筑

討論群:309800774 知乎關(guān)注:http://zhihu.com/people/sunicdavy 開源項(xiàng)目:https://github.com/davyxu

   :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
  257 隨筆 :: 0 文章 :: 506 評(píng)論 :: 0 Trackbacks

Cocos2dx的作者王哲來到公司給大家做了一場技術(shù)答疑會(huì)

以下是我及我們項(xiàng)目組的一些Q&A

1. Cocos2dx 3.0版本在引擎退出時(shí), 會(huì)有內(nèi)存泄露

我:本來以為這個(gè)在rc1版本中發(fā)現(xiàn)的問題會(huì)在final版本中解決, 但實(shí)際上還是沒有解決. 本人使用的是Windows下的VLD的內(nèi)存泄露檢測, 多年來這東西一直沒有誤報(bào)過, 雖然這個(gè)泄露不是很大, 但會(huì)干擾在這引擎上開發(fā)的邏輯的內(nèi)存泄露查找

王哲:Cocos2dx的內(nèi)存泄露測試是在XCode下進(jìn)行的, 借助mac平臺(tái)的工具來做的, 他說, 雖然操作系統(tǒng)會(huì)在進(jìn)程結(jié)束時(shí)會(huì)自動(dòng)回收, 但還是會(huì)在patch版本解決這個(gè)問題.

2. Cocos2dx 3.0 中的getInstance設(shè)計(jì)問題

我:3.0中的singleton是使用自動(dòng)new的方式來實(shí)現(xiàn)的, 對象都是分配在堆上, 而不是棧上. 這種方式的特點(diǎn)就是在singleton為空時(shí), 自動(dòng)new出來, 從而讓上層保證使用簡單. 但是弊端就是前一個(gè)問題說過的, 如果處理不當(dāng)?shù)脑? 會(huì)導(dǎo)致內(nèi)存泄露.

3.0中的Director在析構(gòu)時(shí), 會(huì)先刪除Configurator的一個(gè)配置類, 但是, Renderer在析構(gòu)時(shí), 又會(huì)使用到這個(gè)配置類, 調(diào)用配置類的單件, 從而導(dǎo)致配置類重新實(shí)例化. 之后, 就沒有管理配置類的析構(gòu), 所以發(fā)生內(nèi)存泄露. 我嘗試修復(fù)這個(gè)問題. 但是因?yàn)間etInstance本身的設(shè)計(jì)弊端,導(dǎo)致拆東墻補(bǔ)西墻, 東墻又倒掉的問題.

王哲: 已經(jīng)發(fā)現(xiàn)這個(gè)問題, 會(huì)在未來版本加以修正

3. 為什么不自帶更新系統(tǒng)

王哲: Cocos2dx引擎一開始設(shè)計(jì)是偏重于渲染器, 所以包括網(wǎng)絡(luò)及其他部分都是屬于附屬. 現(xiàn)在開發(fā)團(tuán)隊(duì)只有10個(gè)人, 所以精力也是有限的

另外, 每個(gè)公司和個(gè)人對更新系統(tǒng)的需求都不是一樣的. 不過引擎會(huì)在以后版本中的ResourceManager提供一些類似的功能

4. 幀率控制器

我: 游戲一般分為固定幀率和可變幀率兩種更新方式. 前者在早期的日本游戲中常見, 后者是3D游戲及后期的游戲中用的比較多. 在U3D中分別使用FixedUpdate和Update兩種方法來實(shí)現(xiàn)類似的功能. 但是在Cocos2dx中沒有實(shí)現(xiàn)類似的功能.

王哲: Cocos2dx里因?yàn)橐幚硪恍?fù)雜的情況, 比如接聽電話之類的, 所以這里仍然使用可變幀率來做.

我: 虛幻里有一套更新算法, 在幀率足時(shí), 擊中處理一些垃圾回收, 內(nèi)存釋放等耗時(shí)操作. 但是超過預(yù)設(shè)的閥值后, 停止占用幀更新時(shí)間, 留給邏輯足夠的更新時(shí)間. 但是沒看到Cocos2dx內(nèi)使用這種算法

(其實(shí)王哲應(yīng)該沒聽懂我說的意思)

王哲: 我嘗試在3.0的渲染器中支持多線程, 但是在某些情況會(huì)出現(xiàn)crash, 而且這種技術(shù)的加入會(huì)提高引擎的門檻, 所以未來會(huì)根據(jù)實(shí)際需要加入.

5. 為什么不統(tǒng)一setResourceRootPath/setResourceDirectory 的接口?

這是我們項(xiàng)目的一個(gè)兄弟做下載更新時(shí), 碰到的2.0中的一個(gè)問題. 王哲表示3.0已經(jīng)做了1年半, 2.0的東西都忘記了, 但是在3.0中是統(tǒng)一的接口.

6. 如何看待云風(fēng)噴cocos2dx?

這是我們項(xiàng)目的一知乎粉提的問題. 王哲說, 云風(fēng)對C++很反感, 所以自己的代碼及項(xiàng)目大部分都是C. 因此對cocos2dx這種C++引擎肯定會(huì)有些反感. 但是cocos2dx的使用率很高, 不能因?yàn)橐粌蓚€(gè)大佬的意見而改變cocos2dx本身的一些優(yōu)勢

7. SpriteFrame和紋理的釋放問題, 為什么不使用智能指針?

王哲: 我做過一個(gè)測試, 智能指針在移動(dòng)設(shè)備上跑的速度肯定是要慢于retain/release這種手動(dòng)方式, 所以依然在3.0中采用retain/release方式.

我: 我們有某些資源需要常駐內(nèi)存, 但是全局方式的SpriteFrameCache和TextureCache會(huì)導(dǎo)致這個(gè)問題很難解決. 能否提供分組資源管理概念

王哲: 這個(gè)修改其實(shí)沒什么難度, 論壇里也有很多建議, 我們會(huì)考慮在新版本支持這些功能

8. Scene的接口不統(tǒng)一, 用錯(cuò)還會(huì)crash

王哲: 這個(gè)問題確實(shí)存在, 我們會(huì)加以修正

9. 為什么要對STL進(jìn)行一些包裝, 而不是直接使用?

王哲: 因?yàn)橐m用于retain/release模式( 此時(shí), 我終于發(fā)現(xiàn)我們?yōu)槭裁磿?huì)出現(xiàn)第七個(gè)問題了)

10. string為什么需要一種垃圾回收機(jī)制來進(jìn)行回收, 而不是直接用string?

王哲: 這是一個(gè)歷史遺留問題, 為了兼容objc版本的移植及風(fēng)格

 

其他的一些信息

CocoStudio是使用WPF寫的, 底層使用P/Invoke與C++引擎層進(jìn)行交互. 有人提出這個(gè)編輯器要開源么, 作者表示后期會(huì)考慮的, 但是因?yàn)榇a很亂, 所以一開始沒有考慮開源

本人感受, 微軟的一切開發(fā)工具及代碼的東西都是按商業(yè)模式做的, 根本不考慮開發(fā)者的利益. DX7到DX11, 說好的COM兼容, 最后改的一塌糊涂. MFC那么老掉牙的東西, 到VS2013都還在更新, 這不是禍害群主么. XNA退不起來, Silverlight干不過Flash. 更別說亂的一塌糊涂的WP, WindowsRT, WinPhone. 對于VisualStudio來說, 這是地球上做的最好的編輯器, 保留這個(gè)足矣, 但是也別太依賴即可. 擁抱開源, 珍惜生命, 遠(yuǎn)離微軟

WP版的Cocos2dx支持是微軟設(shè)在西雅圖的一個(gè)叫OpenTech的公司來做的, 并非王哲團(tuán)隊(duì)做的. 而且DirectX現(xiàn)在變成小眾API, 因此這公司采用AngleProject來用OpenGL模擬DirectX的接口, 當(dāng)然性能上肯定有很大的損失

最后附上王哲團(tuán)隊(duì)的照片以鑒真?zhèn)?/p>

image

posted on 2014-04-25 18:35 戰(zhàn)魂小筑 閱讀(6759) 評(píng)論(5)  編輯 收藏 引用 所屬分類: 游戲產(chǎn)業(yè)隨感

評(píng)論

# re: 與Cocos2dx作者王哲及其團(tuán)隊(duì)技術(shù)討論會(huì)的一些筆記 2014-04-26 09:45 楊世玲
真的.哈哈哈哈啊哈哈啊  回復(fù)  更多評(píng)論
  

# re: 與Cocos2dx作者王哲及其團(tuán)隊(duì)技術(shù)討論會(huì)的一些筆記 2014-06-04 10:07 DelphiBoy2003
為什么說DirectX現(xiàn)在是小眾API?因?yàn)榇蠹叶奸_始使用跨平臺(tái)的引擎開發(fā)游戲?并且主流開發(fā)者都轉(zhuǎn)移到web和手游上?PC端的已經(jīng)沒落?  回復(fù)  更多評(píng)論
  

# re: 與Cocos2dx作者王哲及其團(tuán)隊(duì)技術(shù)討論會(huì)的一些筆記 2015-04-16 13:08 avi9111
2年cocos2dx皮毛,最近在搜王哲,才搜到你這里的
對于最后幾句不是很認(rèn)同
微軟沒考慮開發(fā)者利益?那是你公司沒交保護(hù)費(fèi)而已,如果你買正版,技術(shù)支持那是多到你不信
相對于微軟,蘋果,開源更是沒考慮開發(fā)者利益,連個(gè)文檔都沒有,根本連請人寫文檔的資源都沒有,人性是懶惰的。

補(bǔ)充消息,
1)有很多東西不是你自己寫的爽,然后出來的產(chǎn)品就是好的,也不是你寫的爽,別人就寫的和你一樣爽的

2)我也是支持cocos2dx的,云風(fēng)說過,他根本都不會(huì)用2dx,因?yàn)樗?個(gè)星期就能寫出一個(gè)一模一樣的引擎,或者是對的,但是現(xiàn)在整個(gè)開源的社區(qū),現(xiàn)在的開發(fā)環(huán)境,現(xiàn)在的商業(yè)環(huán)境,云風(fēng)老頭的說法是不是有點(diǎn)過時(shí)  回復(fù)  更多評(píng)論
  

# re: 與Cocos2dx作者王哲及其團(tuán)隊(duì)技術(shù)討論會(huì)的一些筆記 2015-04-16 13:26 戰(zhàn)魂小筑
@avi9111
那是很多年前寫的東西了, 現(xiàn)在看來, 由于鮑爾默是一個(gè)商人, 無法將微軟這個(gè)技術(shù)公司做的更好.
納德拉上任后的開源,就是討好開發(fā)者的一步
微軟的正版服務(wù)是耳聞的, 確實(shí)不錯(cuò)

云風(fēng)的能力沒必要用cocos2dx, 所以有了ejoy2d. 但cocos2dx能做到普及, 也是借cocos2d的東風(fēng).
cocos2dx在2d的地位毋容置疑, 最近3.x版本的很多問題改進(jìn)的還可以. 但是從整體架構(gòu)設(shè)計(jì), 戰(zhàn)略規(guī)劃上就限制這個(gè)引擎的發(fā)展  回復(fù)  更多評(píng)論
  

# re: 與Cocos2dx作者王哲及其團(tuán)隊(duì)技術(shù)討論會(huì)的一些筆記 2015-07-09 20:19 mirchd
最新版cocos2dx還是有內(nèi)存泄漏,pool內(nèi)存管理這里寫的有問題,  回復(fù)  更多評(píng)論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久久之久亚州精品露出| 欧美中在线观看| 红桃视频国产精品| 国产欧美日韩不卡| 国产精品拍天天在线| 欧美日韩一区二区三区| 欧美不卡视频| 久久亚洲精品欧美| 亚洲一区二区欧美| 亚洲精品综合| 亚洲精品综合精品自拍| 亚洲高清一区二| 欧美激情区在线播放| 欧美福利视频| 免费观看日韩av| 久久免费国产精品| 中文av字幕一区| 中日韩高清电影网| av成人激情| 亚洲天堂成人| 国产精品99久久久久久宅男| 亚洲视频精选在线| 亚洲午夜av在线| 亚洲国产经典视频| 亚洲人成人99网站| 亚洲人成免费| 99热精品在线| 亚洲宅男天堂在线观看无病毒| 亚洲永久免费视频| 欧美一级夜夜爽| 久久福利电影| 亚洲一区二区三区欧美| 狠狠色香婷婷久久亚洲精品| 国产精品视频导航| 欧美国产第二页| 亚洲天堂网站在线观看视频| 欧美日韩免费观看一区| 亚洲影视在线| 另类天堂av| 久久久精品国产免费观看同学| 一本到高清视频免费精品| 久久琪琪电影院| 久久岛国电影| 久久久久久网址| 久久人人爽人人| 欧美激情视频在线播放| 欧美激情导航| 欧美日韩成人网| 欧美日韩亚洲高清| 国产日韩欧美一区二区| 国产午夜精品视频| 亚洲第一区色| 一区二区激情视频| 久久av资源网| 嫩草影视亚洲| 亚洲精品国产精品乱码不99按摩| 亚洲少妇一区| 亚洲人成网站999久久久综合| 亚洲素人一区二区| 久久久久久久久久久成人| 欧美激情a∨在线视频播放| 国产精品一卡| 亚洲人妖在线| 久久激情五月激情| 欧美国产一区在线| 亚洲综合视频网| 欧美暴力喷水在线| 国产午夜精品久久久久久久| 亚洲国产精品日韩| 欧美资源在线| 亚洲人成在线观看网站高清| 欧美一区二区精品久久911| 欧美精品三级日韩久久| 国产女精品视频网站免费| 亚洲精品乱码久久久久久| 久久精品国产免费观看| 亚洲精品社区| 久久综合激情| 国产婷婷色一区二区三区在线 | 亚洲福利一区| 中日韩高清电影网| 男男成人高潮片免费网站| 一区二区三区久久久| 老司机精品视频网站| 国产日韩精品一区二区浪潮av| 99视频国产精品免费观看| 免费成人性网站| 午夜一区二区三区不卡视频| 欧美午夜不卡视频| 亚洲毛片在线看| 欧美国产激情二区三区| 久久精品视频在线看| 国产精品综合不卡av| 99精品热6080yy久久| 欧美肥婆在线| 久久综合九色综合欧美就去吻 | 免费观看成人鲁鲁鲁鲁鲁视频| 亚洲图片欧洲图片日韩av| 欧美日韩播放| 夜色激情一区二区| 亚洲国产人成综合网站| 午夜一区在线| 国产精品videosex极品| 一区二区三区欧美| 亚洲激情二区| 久久一区二区三区av| 狠久久av成人天堂| 久久久之久亚州精品露出| 欧美一区免费视频| 国产精品一级| 亚洲精品孕妇| 久久久夜精品| 久久精品成人欧美大片古装| 国产三级欧美三级日产三级99| 校园激情久久| 亚洲欧美日韩精品| 国产精品一区二区女厕厕| 欧美亚洲色图校园春色| 亚洲男同1069视频| 国产真实乱偷精品视频免| 久久久www成人免费无遮挡大片| 午夜精品久久久久久久白皮肤| 国产欧美精品日韩精品| 久久www成人_看片免费不卡| 欧美一区2区视频在线观看| 国产精品久久久久9999| 亚洲欧美日韩国产中文在线| 亚洲一区二区三区三| 国产日韩亚洲欧美| 看片网站欧美日韩| 乱码第一页成人| 亚洲丰满在线| 亚洲人成网站精品片在线观看| 欧美日韩精品三区| 亚洲欧美视频一区| 欧美影院视频| 亚洲人成久久| 99精品国产在热久久下载| 国产精品视频免费| 老色批av在线精品| 欧美激情黄色片| av成人免费在线观看| 亚洲一区在线播放| 一区视频在线| 亚洲精品日日夜夜| 国产精品女人毛片| 久久成人精品无人区| 久久亚洲春色中文字幕久久久| 在线精品一区二区| 亚洲国产专区校园欧美| 国产精品久久77777| 久久久亚洲午夜电影| 久久永久免费| 一区二区欧美亚洲| 午夜精品视频在线观看一区二区| 伊人一区二区三区久久精品| 91久久中文| 国产午夜精品麻豆| 亚洲黄色视屏| 国产精品自拍一区| 亚洲电影下载| 国产精品一区二区久激情瑜伽| 米奇777超碰欧美日韩亚洲| 欧美日韩免费区域视频在线观看| 久久av一区二区三区| 欧美高清免费| 久久九九电影| 欧美日本在线一区| 午夜一级久久| 欧美大片在线看| 午夜精品久久久99热福利| 欧美一区免费| 亚洲一级网站| 久久精品成人一区二区三区| 亚洲特级毛片| 蜜臀久久久99精品久久久久久| 亚洲欧美国产三级| 欧美电影免费网站| 久久久91精品| 欧美三区在线视频| 蜜桃av综合| 国产日韩1区| 日韩视频一区二区三区| 韩国免费一区| 一区二区免费看| 亚洲精品免费网站| 久久激情视频| 欧美中文字幕在线| 欧美午夜电影在线| 亚洲国产精品欧美一二99| 国产在线精品二区| 中文欧美字幕免费| 亚洲韩国青草视频| 亚洲精品综合| 亚洲激情国产精品| 久久久亚洲高清| 久久手机免费观看| 国产一区二区三区久久久| 一区二区高清视频在线观看| 亚洲精品一区久久久久久|