Han*_*esh 3 opengl textures game-engine
我正在推出我的第一个游戏引擎:D.我现在正在处理纹理资源管理器,我想做得对.
以任何方式填充驱动程序支持的所有ActiveTexture单元是不是很糟糕?另一种方法是保存这些插槽,只在实际需要时设置纹理,代价是更多的glBindTexture调用.
你提出问题的方式我认为你在纹理对象(即纹理存储)和纹理单元(即多纹理背后的机器)之间存在误解.
OpenGL具有纹理对象和纹理单元.纹理对象保存数据,纹理单元将绑定到它们的纹理对象的数据映射到渲染过程.
通常会将场景所需的所有纹理上传到纹理对象中.对于使用常用材质设置的每个渲染批次,在渲染过程中将纹理绑定到正确的纹理单元.