Is it good to use SDL_PIXELFORMAT_UNKNOWN?
Is it good to use SDL_PIXELFORMAT_UNKNOWN?
我正在阅读SDL_CreateTexture函数,我对为"Uint32格式"参数选择哪个参数感到非常困惑。 有很多枚举值,我不知道选择哪一个以及为什么。 我不知道为什么SDL_PIXELFORMAT_UNKNOWN似乎是个好主意。是吗?
好的,所以你的问题没有提供足够的上下文来真正告诉你在这里做什么。
- 你想实现什么?
- 你已经尝试过什么?
- 它会抛出错误吗?
我会试着给你一些一般的提示: 纹理只是一个大数组,所有像素一个接一个地保存,一行又一行,从左到右,从上到下读取(至少通常(。 此数组的长度为:length_in_bytes = w * h * nBytesOfPixel;
因此,要为纹理正确分配内存,并将字节正确解释为像素颜色,需要像素中的字节数(或本例中的位(。 要告知SDL_CreateTexture
这一点,您必须提供这些像素格式值之一。如有疑问,请使用SDL_PIXELFORMAT_RGBA8888
它应该覆盖您的所有基础一段时间,并从其他任何地方轻松翻译。顾名思义,它将每个像素保存为 4 个字节,每种颜色 1 个字节,顺序为:Red、Green、Blue、Alpha。阿尔法用于透明度。
如果您将其与其他一些候选者进行比较,您可能会看到它们的属性是什么。
- 例如,
SDL_PIXELFORMAT_BGR888
交换了B和R通道,没有 alpha 通道。
相关文章:
- "unknown ca"自生成的 CA、证书和客户端/服务器
- 无法使用 aarch64-unknown-nto-qnx7.0.0-g++-5.4.0 编译器交叉编译 QNX 平台的
- 为什么此代码中显示"*** stack smashing detected ***: <unknown> terminated Aborted (core dumped) "错误?
- C++生成器 10.2 基于函数的优化状态"unknown attribute 'optimize' ignored"
- 堆栈粉碎中止<unknown>(核心转储)错误
- 错误 C2893 无法专门化函数模板'unknown-type std::invoke(_Callable &&,_Types &&...)'
- 无法专用化函数模板'unknown-type std::invoke(_Callable &&,_Types &&...) noexcept(<expr>)'
- 如何在使用CreateRemoteThread API时修复"LPVOID: unknown size"错误?
- Microsoft 编辑默认工具栏时的 Visual Studio 'Unknown Bitmap Format'
- OPENCV从Yuyv Pixelformat视频框架创建YUV420或灰度垫子对象
- 虚幻:按照教程"Unknown type name UTextRenderComponent"编译错误
- 如何在C++中重命名具有"unknown"名称的文件?
- 如何修复'Size of list( a class) is unknown or zero error'和"声明语法错误"?
- Z3 C++ API 产生"unknown",而序列化输出上的二进制生成"unsat"
- Visual Studio - 升级后"Unknown Compiler version"
- 叮叮当当 警告:"warning: unknown warning option '-Wno-maybe-uninitialized'"
- 为什么此程序以"unknown signal"终止?
- llvm 异常 - 提高异常 "?:Unknown signal"
- C++ 为什么包含类标头时会"Unknown Type"?
- Using g++ on OSX Lion, ld: unknown option: -no_compact_unwin