OSG+MFC 实例 ( dd 制作)
1. 所需材料:openSceneGraph 安装目录下面的 example 中的 osg_mfc.h 和 osg_mfc.cpp 文件夹。
2. 新建项目->MFC 应用程序->一直往下->在高级功能中去掉 Activex 控件前的勾,此时,生成
四个类:View,App,Doc,Frame
3. 将 osg_mfc.h 和 osg_mfc.cpp 添加进工程。
4. 在 stdafx.h 文件中首行,添加#include
5. 在 osgmfcView.h 首行添加#include “MFC_OSG.h”,在//操作 public: 添加
cOSG *mOSG;
HANDLE mThreadHandle;
6. 点 osgmfcView 类,再点他的属性,选择消息 OnCreate,会弹出一段新的代码。
7. 照此,点 osgmfcView 类,点重写,选择 OnInitialUpdate();也会弹出一段新的代码。
8. 补充代码:
消息处理程序
Int CosgmfcView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
If(Cview::OnCreate(lpCreateStruct)==-1)
Return -1;
mOSG=new cOSG(m_hWnd);
return 0;
}
Void CosgmfcView::OnInitialUpdate()
{
Cview::OnInitialUpdate();
mOSG->InitOSG(“glider”);
mThreadHandle=(HANDLE)_beginthread(&cOSG::Render,0,mOSG);
}
在工程中添加相应的.lib
若调试不能过,试着把 MFC_OSG.cpp 中的 afxMessageBox( “ exit
释掉
rending thread”) 注
2012.2.27
dd