没时间详细解释了,
附件是所有需要修改的代码,
参考这些对你的cocos2d-x源码进行修改,
然后就可以让cocos2d-x渲染到Windows窗体中的一个子窗体中。
用法:
首先,定义一个全局变量:
AppDelegate* g_Application = NULL;程序启动,执行:
cocos2d::CCEGLView::setParentHwnd(hwnd); // hwnd为需要显示cocos2d-x的子窗体的句柄
// create the application instance
g_Application = new AppDelegate();
CCEGLView* eglView = CCEGLView::sharedOpenGLView();
eglView->setFrameSize(w, h); // w:子窗体宽度,h:子窗体高度
CCApplication::sharedApplication()->runEx();另外,请另开一个线程或计时器,执行:
((CCApplication *)g_Application)->processMsg();程序退出,或停止cocos2d-x显示时执行:
cocos2d::CCDirector::sharedDirector()->end();
//cocos2d::CCEGLView::Destroy();
if (g_Application != NULL)
{
delete g_Application;
g_Application = NULL;
}讲的比较笼统,大家尽量理解,有问题可以留言,有错误也请指正,谢谢!
下载链接:http://pan.baidu.com/share/link?shareid=1810189630&uk=2013528980

本文介绍如何将Cocos2d-x的游戏画面渲染到Windows应用程序的一个子窗口中。通过定义全局变量AppDelegate并设置EGLView的父窗口句柄,可以实现Cocos2d-x在指定子窗口中的显示。此外,还需在一个单独的线程或计时器中调用processMsg()方法,并在退出时结束导演对象。
1226

被折叠的 条评论
为什么被折叠?



