我正在尝试使用opengl es来编写一个可以扫描非常大的图像的视图。 所以我需要在单个视图上附加许多小的影像。我试图单独绘制每个瓷砖,但行为非常糟糕。屏幕闪烁,因为我在绘制新帧之前清除所有位缓冲区,然后逐个添加磁贴。 我搜索发现我可能需要使用纹理图集,但考虑到我的瓷砖不是那么小,所以将它们连接在一起可能需要很多时间。我检查了一些opengl es书,只告诉我单一的纹理用法。我不知道因为我有vertex和indeces数组如何告诉他们单独使用不同的纹理并调用draw方法一次。 如果有人有相同的经验并解决了问题,请与我分享您的经验。
答案 0 :(得分:0)
使用glTexStorage2D / 3D设置纹理大小&格式化,然后使用glTexSubImage2D / 3D上传每个小片,当你调用draw时,所有片段最终可能同时传输到视频内存。但是你需要以这种方式修改vertex texcoord属性。