OpenGLES 在WinCE6.0上写字

根据这个http://yarin.blog.51cto.com/blog/1130898/381955 修改的。

 

原理是: 在内存DC上写字符串,然后获取DC像素数据,判断数据不为0的,就是写字的像素,获取像素所在位置。

在OpenGLES根据位置画点。

 

开始直接搬那个函数不知道怎么显示不了,就乱改一通,估计那个设置不对吧。

对GLES不懂,几天没看,函数都忘光光。

 

 

不管怎么做,终于写上字了,貌似速度挺慢的。

我的屏幕800*480的,直接写死了,字体名字也改的写死了

 

原来博主的顶点坐标都是用GL_SHORT型的,我都改成float的了

画点也改成了glDrawArrays,

设置投影矩阵的时候也用浮点型函数glOrthof

指定顶点数组也就用了浮点型,glVertexPointer(2,GL_FLOAT,0,points);

 

单纯画点之前把,纹理矩阵、颜色矩阵、ALPHA、BLEND都禁止掉,不然可能看不见。

 

貌似投影矩阵指定的时候用的函数类型与顶点不一样会画不上去

所以设置模型的时候用浮点型函数,画图的时候最好也用浮点的坐标

,要用x型的都用x型,原因不知,但还是先不较真了。

glFrustumf对应GL_FLOAT

glFrustumx对应GL_FIX

 

用的时候

直接调用

gl.glTextShow(25,NULL,0,480,L"OpenGL编程指南");

就可以显示

这一个函数就会刷整个屏幕,具体使用,还得修改。估计就改成原来博主那种写法了。。。。

 

 

 

 

好久没看,竟然对以前看的东西又怀疑了,最后又发现以前是对的。。。

 

投影矩阵函数设置一个投影矩阵

 

在模型视图矩阵中画东西的时候,glLoadIdentity();之后,模型视图矩阵默认的z原点在屏幕上

要看见画的物体,要将模型视图矩阵移动到投影矩阵中。

通过函数:glTranslatef(x,y,-0.010001f);移动。

 

再学到更多之前,投影矩阵设置用f型函数,都用浮点型

顶点也用浮点型的数据表示  

设置投影矩阵的时候,就设置成屏幕大小的,方便坐标使用。

glOrthof(0, (800.0f),0, (480.0f), -1.0f, 1.0f);   平行投影

glFrustumf(-0.0f, 800.0f, -0.0f, 480.0f, 0.01f,1000.0f); 透视投影

 

 

单纯画点之前把,纹理矩阵、颜色矩阵、ALPHA、BLEND都禁止掉,不然可能看不见。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值