使用 16 位纹理
WP7 设备所属的 Reach-Profile 支持 WP7 纹理。 但是 XNA 在将我的所有资源添加到项目中时将它们转换为 RGBA8,这太疯狂了, WP7设备的显示是16位的!
信息: WP7 SDK 7.1 (XNA 4)、Visual Studio 2010
问题第 1 部分: 如何将 RGB565 纹理添加到 XNA 项目以及正确的加载方式是什么他们在游戏中?
问题第 2 部分:是否有合理的 16 位纹理格式(在 Reach 范围内)支持大于 1 位的 alpha?
问题第 3 部分: 正常的渲染目标(我认为这就是屏幕缓冲区?)已经是 16 位了吗?
WP7 textures are supported in the Reach-Profile that WP7 devices falls into.
But XNA converts all my ressources upon adding them to a project to RGBA8, that's insane,
the displays of WP7 devices are 16 Bit!
Information: WP7 SDK 7.1 (XNA 4), Visual Studio 2010
Question part 1: How can I add a RGB565 texture to a XNA project and what is the correct way to load them inside a game?
Question part 2: Is there a reasonable 16 Bit texture format (within Reach) that supports alpha with MORE than 1Bit?
Question part 3: Is the normal rendertarget (I think that's what the screenbuffer is?) already 16 bit?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
第 1 部分:
更改表面格式,例如
graphics.PreferredBackBufferFormat = SurfaceFormat.Color;
(XNA) 或(在 Silverlight/XNA 项目中)
SharedGraphicsDeviceManager.Current.PreferredBackBufferFormat = SurfaceFormat.Color; //支持 32 位 ARGB 每种颜色 8 位
第 2 部分:
PNG 应该可以工作...它支持 8 位(256)和 16 位 alpha 通道(65.536 种可能性)
Part 1:
change surfaceformat like
graphics.PreferredBackBufferFormat = SurfaceFormat.Color;
(XNA) OR (in Silverlight/XNA Project)
SharedGraphicsDeviceManager.Current.PreferredBackBufferFormat = SurfaceFormat.Color; //supports 32bit ARGB each color 8bit
Part 2:
PNG should work... it supports 8bit (256) and 16Bit alpha channel(65.536 possibilities)