如果你已经消耗了所有的视频 ram,SDL Texture 会自动使用普通 Ram 吗?
If you have consumed all the video ram, will an SDL Texture automatically use normal Ram?
我的问题是:如果您用完了所有可用的视频内存,并尝试创建新纹理 (SDL),是否会自动使用普通内存而不是视频内存?或者,您是否必须尝试使用使用普通 ram 的表面 (SDL)?如果您出于任何原因无法释放视频 ram 以供使用。
依赖于驱动程序,软件渲染器明显使用系统内存。基于 GL 的实现使用视频内存,当 OpenGL 内存不足时会发生什么取决于驱动程序,很可能它最终会进入系统内存。
从技术上讲,您无法保证甚至存在视频内存这样的东西,OpenGL 只是应该将其存储在 "most practical location" 中,其定义取决于硬件(想想混合内存,那里在那种情况下没有区别)。
TL;DR;是的,纹理将存储在有 space 的地方。
我的问题是:如果您用完了所有可用的视频内存,并尝试创建新纹理 (SDL),是否会自动使用普通内存而不是视频内存?或者,您是否必须尝试使用使用普通 ram 的表面 (SDL)?如果您出于任何原因无法释放视频 ram 以供使用。
依赖于驱动程序,软件渲染器明显使用系统内存。基于 GL 的实现使用视频内存,当 OpenGL 内存不足时会发生什么取决于驱动程序,很可能它最终会进入系统内存。
从技术上讲,您无法保证甚至存在视频内存这样的东西,OpenGL 只是应该将其存储在 "most practical location" 中,其定义取决于硬件(想想混合内存,那里在那种情况下没有区别)。
TL;DR;是的,纹理将存储在有 space 的地方。