新人请教一个openGL的问题。

zzxctk 2011-02-10 08:28:55
我不知道这个问题应该在网上怎么搜索,找了一晚上没找到答案,所以只好来论坛里描述一下给大家听听,帮我解决一下。
例如我有一张PNG图片,是100*20的,我想用openGL读取的时候,把这张PNG分解成5小张20*20的纹理图,应该怎么做?
用什么函数,不好意思,我是新手,不太清楚,现在读取图片是会了,但这个搞不定。
还有一个问题,openGL怎样绘制文字,我看到网上有例子,可以调用Windows的字体库,但是我的程序开发好后,要移植到WinCE,用网上的例子可以通用吗?
...全文
139 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
nand库路泽 2011-05-01
  • 打赏
  • 举报
回复
混个分!!
序员 2011-04-26
  • 打赏
  • 举报
回复
最简单的纹理坐标嘛。。
zxy1492 2011-04-26
  • 打赏
  • 举报
回复
先看看关于纹理坐标的东西,改个例子试试。



nand库路泽 2011-04-26
  • 打赏
  • 举报
回复
学习本身就是一种痛苦的经历!!
Sou2012 2011-04-25
  • 打赏
  • 举报
回复
把图片缩放一下。
雅诺1 2011-04-25
  • 打赏
  • 举报
回复
整张图的纹理坐标 是 0 --- 1 之间
你想 切割的话 就根据 图片的大小 和 区域的大小 转换成 0 - 1 之间的坐标就可以了
比如:
图片的 大小 64 * 64 假设这张图片有4 的 32 * 32 的小图片组成
第一个位置的 纹理坐标就 是 按照顺时针渲染
(0, 0)
(32 / 64, 0)
(32 / 64, 32 / 64)
(0, 32 / 64)
这个就是第一张小图片四个点的纹理坐标
Spiritring 2011-02-12
  • 打赏
  • 举报
回复
opengl可没有那么多功能分图哦...如果是真要分png 方法就是自己算了.你肯定已经把png给解了.opengl吃argb 也就是8888 看你的图多大.可以算出来每一个块的像素.之后 申请够数的纹理 就ok了.

实际上没必要这么麻烦.直接在绘制的时候通过调整 图的uv来实现. uv的范围是 0-1的.你看怎么分都可以哇.
gamemagic 2011-02-10
  • 打赏
  • 举报
回复
我不是书,怎么给你例子?
zzxctk 2011-02-10
  • 打赏
  • 举报
回复
呵呵,回楼上哥们,正是,我手头上正好没有opengl的书籍,所以全部学习资料,都是在网上搜索,搞了一个星期了,了解一些基本的渲染知识,请问可以给一个简单的例子看看吗?你这样说我明白了,但是改写在哪个函数里,还是不懂。
gamemagic 2011-02-10
  • 打赏
  • 举报
回复
你的问题之所以不好搜,是因为哥们你没看书
gamemagic 2011-02-10
  • 打赏
  • 举报
回复
纹理坐标就像BitBlt的src rect,可以用这个坐标取图片的某块区域

你可能要走一段漫长的路了…
ga6840 2011-02-10
  • 打赏
  • 举报
回复
为什么要分解成小的纹理图?是不是因为openGL glTexImage2D()对纹理大小为2^n 的限制??
如果这样,缩放就行了
libra101015 2011-02-10
  • 打赏
  • 举报
回复
纠结
比如纹理坐标0 - 1, 你设置点的纹理为0 - 0.2就行了

8,304

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧