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