Click here to Skip to main content
12,546,064 members (55,050 online)
Click here to Skip to main content
Articles » Multimedia » OpenGL » General » Downloads


65 bookmarked

OpenGL MFC AppWizard

, 15 Jan 2009 GPL3
An article showing how to make a Custom AppWizard for OpenGL applictions in Visual Studio .NET 2008
//  OpenGLView.h
//	Copyright (C) Dave Kerr
//	Derive your View from OpenGL and you get full access to OpenGL.

#include "OpenGLSurface.h"

class COpenGLView : public CView


	//	Constructor / Descructor.
	COpenGLView() {}
	virtual ~COpenGLView() {}     

	virtual void OnDraw(CDC* pDC);      
	virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
	virtual void PostNcDestroy() {}		//	Without this we get a run time error in non doc/view apps.

	//	Debug functions.
#ifdef _DEBUG
	virtual void AssertValid() const;
	virtual void Dump(CDumpContext& dc) const;
	//	This is the main function you must override - do all OpenGL
	//	drawing in it.
	virtual void DoOpenGLDraw() {}

	//	Do all OpenGL resizing and projections etc in this function.
	virtual void DoOpenGLResize(int nWidth, int nHeight) {}


	//	This is the main part of the view - the OpenGL surface we actually draw to.
	COpenGLSurface m_openGLSurface;

	//	Generated message map functions.
	afx_msg BOOL OnEraseBkgnd(CDC* pDC);
	afx_msg void OnSize(UINT nType, int cx, int cy);
	afx_msg void OnDestroy();

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.


This article, along with any associated source code and files, is licensed under The GNU General Public License (GPLv3)


About the Author

Dave Kerr
Software Developer
United Kingdom United Kingdom
Follow my blog at and find out about my charity at

You may also be interested in...

| Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.161018.1 | Last Updated 15 Jan 2009
Article Copyright 2009 by Dave Kerr
Everything else Copyright © CodeProject, 1999-2016
Layout: fixed | fluid