MFC中运行OSG


今天学了一下在mfc单文档下运行osg.
在osg源码中examples目录有个osgviewerMFC项目,
包括sdi和mdi的示例代码。
1.新建sdi单文档mfc项目:mfcOsg。
配置osg参考:
2.把examples目录中的MFC_OSG.h和MFC_OSG.cpp复制到项目目录中。
字符集修改为:使用多字节字符集
这时候编译通过。
3.在stdafx.h中添加#include <process.h>
在view头文件中引入#include "MFC_OSG.h"
同时加两个public变量。
cOSG *m_OSG;
HANDLE m_ThreadHandle;
4.响应OnCreate消息,重写OnInitialUpdate函数。
int CmfcOsgView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
     if (CView::OnCreate(lpCreateStruct) == - 1)
         return - 1;

     //  TODO:  在此添加您专用的创建代码
    m_OSG =  new cOSG(m_hWnd);
     return  0;
}

void CmfcOsgView::OnInitialUpdate()
{
    CView::OnInitialUpdate();

     //  TODO: 在此添加专用代码和/或调用基类
    m_OSG->InitOSG( " cessna.osg ");
    m_ThreadHandle = (HANDLE)_beginthread(&cOSG::Render, 0,m_OSG);
}
运行结果:


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM