第一次看到unreal的編輯器時(shí)覺(jué)得有四個(gè)視圖很神奇,后來(lái)看到Delta3D的編輯器Stage也有

今天看了下其源碼
class MainWindow里面定義了四個(gè)成員變量:
PerspectiveViewport *perspView;
OrthoViewport *topView;
OrthoViewport *sideView;
OrthoViewport *frontView;
看其類繼承圖
用Windows的畫圖畫的

starUML畫的(開源軟件)

看到了沒(méi)?每個(gè)Viewport就是一個(gè)QGLWidget,這個(gè)QGLWidget是Qt里面的!沒(méi)啥神奇的,源碼之前,了無(wú)秘密!
我也仿照寫一個(gè),從QD3DWidget繼承,這個(gè)QD3Dwidget要自己寫,沒(méi)現(xiàn)成的。
Render Loop沒(méi)有用QTimer,用的是paintEvent,臟了才畫,就是windows的WM_PAINT消息

renderFrame里面畫場(chǎng)景
/**
* Renders the scene as is viewed from the viewport's currently assigned
* camera.
*/
virtual void renderFrame();
posted on 2008-12-01 16:18
七星重劍 閱讀(2120)
評(píng)論(5) 編輯 收藏 引用 所屬分類:
Game Graphics 、
C++ lib -- Qt