OpenGLES---初始化OpenGL-ES环境

{
	1:获取 Display
	2:初始化 egl
	3:选择 Config
	4:创建 Surface
	5:创建上下文对象
	6:查看 Display Surface Context 是否创建成功
	7:绘制
	8:销毁 OpenGLES
}


#include <EGL/egl.h>
#include <gles2/gl2.h>
#include "freeImage/FreeImage.h"

class WinApp {
public:
	WinApp(HINSTANCE hInstance);
	virtual~WinApp(void);
	virtual LRESULT onEvent(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
	static LRESULT CALLBACK wndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
	int main(int wWidth,int wHegith);


	bool configurationInit();
	void draw();//画
	void destroy();//销毁
private:
	HINSTANCE   _hInstance;	//实例句柄
	HWND _hWnd;//窗口句柄
protected;

	int _width; // 视口宽度
	int _height;// 视口高度

	EGLDisplay _display;
	EGLContext _context;
	EGLSurface _surface;
	EGLConfig  _config;
};


#include "WinApp.h"  
  
bool WinApp::configurationInit(){  
    //1:获取 Display  
    _display = eglGetDisplay(EGL_DEFAULT_DISPLAY);  
      
    //2:初始化 egl  
        EGLint  major;//返回主版本号  
        EGLint  minor;//返回次版本号  
        eglInitialize(_display, &major, &minor);  
      
  
    //3:选择 Config  
    const EGLint attribs[] ={  
      //属性是一对一的初始化(类似与key->value)  
      EGL_SURFACE_TYPE, EGL_WINDOW_BIT,//把数据画到窗口上  
      EGL_BLUE_SIZE, 8,//R 占8个比特位  
      EGL_GREEN_SIZE, 8,//G 占8个比特位  
      EGL_RED_SIZE, 8, //B 占8个比特位  
      EGL_DEPTH_SIZE,24,//深度值 占24个比特位  画图的深度值 (前后顺序的层)  
      EGL_NONE  //这个机构结束了  
    };  
    EGLint  format(0);  
    EGLint  numConfigs(0);  
      
    //
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值