问题标签 [xbox360]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
testing - 在进行 XNA 开发时,有没有办法验证代码是否可以在 360 上运行?
我正在 XNA 上开发一款休闲游戏,打算部署到 Xbox 360。我将在几周内无法访问硬件,而且我的截止日期很紧,所以我想测试一下一些东西——Boo 和一些自定义库——将在 360 上正常工作。如果他们不这样做,我需要尽快解决它们,所以测试这一点非常重要。
有了这个解释,在实际部署到 360 之前,我是否可以进入某种“模拟器”在 .NET Compact Framework for 360 上运行代码?
matrix - Xbox 360 上的 GPU 编程
我正在寻找有关 Xbox 360 上 XNA 的一些见解,主要是是否可以在其 GPU 上运行基于矢量的浮点数学?
如果有办法,你能指出我正确的方向吗?
xna - 在 XBOX 360 上从 DVD 或 CD 运行 XNA 编译的游戏?
是否可以从 DVD 或 CD 运行为 XBOX 360 编译的 XNA 游戏,还是必须将其复制到 HD 上?
是否可以在 XBOX 360 项目中包含不属于 .net 紧凑框架的库?
xna - 如何为 Xbox 创建自定义 DVD 播放器?
我想创建一个在 XBox 360 上运行的应用程序(使用 XBox Live 下载),它将播放托盘中的 DVD 电影。我知道 XBox 已经具备这种能力,但我希望我的定制 DVD 播放器允许用户为他们真正喜欢的电影部分保存书签,然后在他们放回 DVD 时浏览他们的书签。这听起来可能很傻,但是这是为了我正在进行的一项商业冒险。
我的问题是:
1. 这可能吗?
2.我可以使用什么平台来制作这个?(XNA?)
3. 我应该去哪里学习如何做?
我是一位非常有经验的 .NET 开发人员,但我还不是媒体或游戏编程方面的专家。谢谢!
3d - XNA 中窗口系统的渲染策略(RenderTarget 性能)
我目前正在从头开始为 XNA 游戏创建一个窗口系统。我主要为 Windows 开发,但谁知道我将来可能支持哪些平台。如果您知道本机 Direct3D 的这一点,请随时回答,因为性能语义应该相似。如果可能,请考虑如果目标平台是 X-Box 360 会发生什么变化。
我取得了不错的进展,但现在我不确定如何准确地渲染窗口。我想出了四种方法:
只需将所有控件直接渲染到屏幕上。这就是我现在所做的。只要控件不是半透明的,就可以通过在状态之间混合来为控件设置动画。我没有找到在任意数量的状态之间制作动画的好方法(假设一个按钮当前正在从按钮向上到按钮向下以及从鼠标悬停到鼠标悬停动画,然后它被禁用。它应该从最后一个状态平滑地混合到新状态。使用这种方法,这仅在最后一个动画完成后播放一个动画时才有效,否则您将在动画中跳跃。
将每个顶级窗口和所有控件渲染到一个渲染目标中,然后使用它以半透明的方式将顶级窗口渲染到屏幕上。这使得顶层工作具有半透明性并且易于管理,但不会改变动画的内容。
将每个控件渲染到渲染目标中,该目标仅在控件变脏时更新(即必须设置动画或文本已更改)。这样,每个控件的半透明将起作用。
和前面一样,但除了解决动画问题之外,每个控件都有第二个渲染目标。每当动画开始时,交换渲染目标,这样我们就有了动画开始时的状态,并将其与目标状态混合到另一个渲染目标中。这不应该比以前的方法增加开销,我们只是有两倍多的渲染目标,在任何给定的帧中,只有一个会被渲染(最多)。但是问题来了:为了让它工作,我需要让“旧”渲染目标保留它的内容。这应该在 Windows 上具有良好的性能,但似乎对 X-Box 360 有严重的性能影响。另一方面,“保留”位仅在动画处于活动状态时才是必需的。
真正的问题来了。欢迎任何澄清的事情。关于性能问题,请记住,这只是游戏的窗口系统——后面的游戏可能会使用许多渲染目标并吸收性能,而且可能比窗口系统更多。假设在绝对最坏的情况下,我们可能有五个顶级窗口,每个屏幕上有 20-40 个控件。
- 如果有的话,您会推荐这些方法中的哪一种,为什么?当然,随意添加另一种方法。
- 假设只有 200 个或 400 个渲染目标可用,假设每个帧只有 20 个渲染目标,是否会对性能产生影响?
- PreserveContents 对 X-Box 360 的性能影响真的那么糟糕吗?在 Windows 上有多糟糕?
- 可以写入 RenderTarget2D.RenderTargetUsage 属性。在运行时切换它是一个好主意,仅在需要时启用 PreserveContents 吗?
- 您(作为玩家)是否介意控制动画在某些情况下会跳转,例如将鼠标悬停在按钮上,将鼠标移出然后再次移入,因此“正常->悬停”动画从头开始播放两次,因为它是比你慢?
networking - Difference between winsock and linux sockets
I'm developing an FTP-like program to download a large number of small files onto an Xbox 360 devkit (which uses Winsock), and porting it to Playstation3 (also a devkit, and uses linux AFAIK). The program uses BSD-style sockets (TCP). Both of the programs communicate with the same server, downloading the same data. The program iterates through all the files in a loop like this:
On the Xbox 360 implementation, the whole download takes 1:27, and the time between the last send and first receive takes about 14 seconds. This seems quite reasonable to me.
The Playstation3 implementation takes 4:01 for the same data. The bottleneck seems to be between the last send and first receive, which takes up 3:43 of that time. The network and disk times are both significantly less than the Xbox 360.
Both these devkits are on the same switch as my PC, which does the file serving, and there is no other traffic on said switch.
I've tried setting the TCP_NODELAY
flag, which didn't change things significantly. I've also tried setting the SO_SNDBUF
/SO_RCVBUF
to 625KB, which also didn't significantly affect the time.
I'm assuming that the difference lies between the TCP/IP stack implementations between Winsock and linux; is there some socket option that I could set to make the linux implementation behave more like Winsock? Is there something else I'm not accounting for?
The only solution looks to be to rewrite it so that it sends all the file requests together, then receives them all.
Unfortunately, Sony's implementation does not have the TCP_CORK option, so I cannot say if that is the difference.
graphics - 如何将线条动态投影到 3D 地形上?
我正在 XNA 中为 Xbox 360 开发游戏。该游戏具有 3D 地形,其中包含一组静态对象,这些对象通过链接图连接。我想将连接对象的链接绘制为投影到地形上的线。我还希望能够在玩家移动他们的选择时更改链接的颜色等,尽管我不需要移动链接。但是,我遇到了使这项工作正确有效的问题。
我的一些想法是:
1) 将四边形渲染到单独的渲染目标,并将纹理用作地形顶部的叠加层。我目前有这个工作,只为相机当前可见的区域生成纹理以最小化锯齿。但是,我仍然遇到混叠问题 - 线条看起来参差不齐,并且移动相机时游戏经常突突编辑:它一直突突,我只是在 Xbox 上没有帧速率计数器,所以我只注意到它当事情移动时。
2)提前将线条烘烤成纹理。这可以提高性能,但会使混叠问题变得更糟。此外,它不允许我在没有太多修改的情况下动态更改线条的属性。
3)通过在地形上镶嵌线四边形来制作与地形形状相匹配的几何图形。这个选项似乎有帮助,但我不确定是否应该花时间尝试一下,如果有更简单的方法。
有没有我没想到的神奇方法?如果正确完成,这些路径之一是最好的吗?
c# - 将我的 360 连接到应用程序
有没有办法(使用.net)将我写的应用程序连接到360?我想做的是编写一个自定义媒体共享应用程序,并将内容流式传输到 xbox。
我看到有一个名为Connect360的 mac 应用程序可以做到这一点,所以一定有办法,对吧?
web-services - 从 Xbox Live 和 PSN 获取游戏统计数据
是否可以从 XBox Live 和 PSN 上玩的游戏中获取游戏统计数据(谁在玩,谁赢等)?是否有任何额外的限制,例如:
- 游戏是否需要支持一些额外的 API?
- 我需要直接访问游戏服务器(控制台)吗?
如果 Microsoft 或 Sony 甚至游戏供应商自己提供 API,那就太好了。
facebook - 有人对 Xbox 360 控制台历史导出项目有更多详细信息吗?
最近,在 Charlotte 2009 Code Camp 上,有人告诉我一个项目/产品将导出 XBox 360 控制台的历史,然后为 XBox 创建某种日记或日志。
他并不真正了解细节,但他认为这需要 Xbox 控制台历史记录,然后将其转换为 Facebook 等社交网站之一。
所以它可能看起来像这样:
克里斯今天玩了 3 个小时的“光环战争”……更具体的细节,比如分数等。
我今天根本没有见到克里斯。希望他能尽快停下来。
克里斯今天玩了 2 个小时的“银河大战”……再次获得更多细节。
我不确定它是否会成为 Facebook 内容。它可能是博客、推特或其他任何东西。
我认为这是一个好主意,我想看看它,并希望它是开源的,因为那时我有一些自己的想法。
不管怎样,首先我需要找到它。到目前为止,我所有的搜索都是徒劳的。
如果您知道更多细节,请分享,因为我相信现在还有其他人很好奇。:D