【Hacker News搬运】高清光环2:将原版Xbox推向极限
-
Title: Halo 2 in HD: Pushing the Original Xbox to the Limit
高清光环2:将原版Xbox推向极限
Text:
Url: https://icode4.coffee/?p=738
该博客文章详细介绍了作者如何将《光环2》的原始Xbox版本支持高清分辨率。作者通过修改游戏,调整Xbox控制台的硬件,并编写性能基准测试工具,来探索Xbox和游戏的极限。 文章中,作者首先提到了朋友“doom”对Xbox硬件和软件的反向工程和研究,他通过替换CPU,超频CPU和GPU,以及编写自定义补丁来增强Xbox的性能。作者使用这些“上帝盒子”来测试和开发他的高清补丁。 接着,作者详细介绍了如何修改《光环2》的渲染引擎以支持更高的视频分辨率,包括调整D3D前端和后端缓冲区的大小,修改与视频模式相关的全局变量,以及设置额外的D3D呈现参数。 文章还讨论了Xbox的内存管理,包括统一内存架构,以及如何通过修改内存分配器来支持额外的64MB RAM。作者还介绍了一种方法,通过内存映射IO寄存器动态超频GPU。 最后,作者通过增加几何和纹理缓存的大小,以及提高HDD传输速度,来减少游戏的“突显”问题。他还分享了最终的内存使用情况,显示了超过75%的可用128MB RAM已被使用。 总的来说,这篇文章详细记录了作者如何通过修改游戏和硬件,将《光环2》的Xbox版本推向极限,实现了高清分辨率的渲染。
Post by: campuscodi
Comments:
Wowfunhappy: Other than "hacker spirit" (which is completely legitimate), is there a reason you'd want to play Halo 2 this way—going through the effort of modding your console to add memory and overclock the gpu—instead of playing the PC version?
Wowfunhappy: 除了“;黑客精神”;(这是完全合法的),有没有理由你;我想用这种方式玩《光环2》——通过改装主机来增加内存和超频gpu——而不是玩PC版?
seanf: Link to the video from the bottom of the article: <a href="https://www.youtube.com/watch?v=O_nk21389u8" rel="nofollow">https://www.youtube.com/watch?v=O_nk21389u8</a><p>The video includes side-by-side comparison between the original upscaled 480p and 720p. Around 7:00 you hear about what it takes to get 720p and maintain around 30fps gameplay. Not only a great article, but also a great video to summarize the changes needed get the higher resolution.
seanf: 从文章底部链接到视频:<a href=“https://;/;www.youtube.com/?watch?v=O_nk21389u8”rel=“nofollow”>https:///;www.youtube.com/;看v=O_nk21389u8</a><p>视频包括原始放大480p和720p之间的并排比较。大约在7:00左右,你会听到如何获得720p并保持30fps左右的游戏速度。不仅是一篇很棒的文章,而且是一段很棒的视频,可以总结所需的更改,从而获得更高的分辨率。
Lammy: > I often get comments saying “[720x480]’s not not a 16:9 resolution” or “that’s not real 480p”, but “480p” encapsulates a range of resolutions and aspect ratios and 720×480 is the resolution the Xbox considers to be 480p (so take it up with Microsoft, not me…).<p>Take it up with some ITU dudes in the 1970s actually: <a href="https://tech.ebu.ch/docs/techreview/trev_304-rec601_wood.pdf" rel="nofollow">https://tech.ebu.ch/docs/techreview/trev_304-rec601_wood.pdf</a><p>“The February 1980 note further suggested that the number of samples per active line period should be greater than 715.5 to accommodate all of the European standards active line periods. While the number of pixels per active line equal to 720 samples per line was not suggested until the next note, (720 is the number found in Rec. 601 and SMPTE 125), 720 is the first value that “works”. 716 is the first number greater than 715.5 that is divisible by 4 (716 = 4 x 179), but does not lend itself to standards conversion between 525-line component and composite colour systems or provide sufficiently small pixel groupings to facilitate special effects. Arguments in support of 720 were provided in additional notes prior to IBC in September 1980.<p>[…]<p>As noted above, Rec. 601 provided 720 samples per active line for the luminance channel and 360 samples for each of the colour-difference signals.<p>When the ITU defined HDTV, they stipulated: ‘the horizontal resolution for HDTV as being twice that of conventional television systems’ described in Rec. 601 and a picture aspect ratio of 16:9. A 16:9 picture ratio requires one-third more pixels than a 4:3 picture ratio. Starting with 720, doubling the resolution to 1440 and adjusting the count for a 16:9 aspect ratio leads to the 1920 sample per active line defined as the basis for HDTV [9].<p>Accommodating the Hollywood and computer communities’ request for ‘square-pixels’, meant that the number of lines should be 1920 x (9/16) = 1080.<p>Progressive scan systems at 1280 pixels per line and 720 lines per frame are also a member of the ‘720-pixel’ family. 720 pixels x 4/3 (resolution improvement) x 4/3 (16:9 aspect ratio adjustment) = 1280. Accommodating the Hollywood and computer communities’ request for ‘square-pixels’, meant that the number of lines should be 1280 x (9/16) = 720.<p>Therefore, most digital television systems, including digital video tape systems and DVD recordings are derived from the 4:2:2 basic standard format. The 720 pixel-per-active-line structure became the basis of a family of structures (the 720-pixel family) that was adopted for MPEG-based systems including both conventional television and HDTV systems.”
Lammy: >;我经常收到评论说“[720x480]不是16:9的分辨率”或“这不是真正的480p”,但“480p”封装了一系列分辨率和纵横比,720×480是Xbox认为的480p分辨率(所以请与微软讨论,而不是我…)<p> 事实上,与20世纪70年代的一些国际电联(ITU)大佬们讨论一下:<a href=“https://;/;tech.ebu.ch/!docs/,techreview/:trev_304-rec601_wood.pdf”rel=“nofollow”>https:///;techn.ebu.ch;docs/;technreview;trev_304-rec601_wood.pdf</a><p>“1980年2月的注释进一步建议,每个活动行周期的样本数应大于715.5,以适应所有欧洲标准的活动行周期。虽然直到下一个注释才建议每个活动行的像素数等于每行720个样本(720是Rec.601和SMPTE 125中的数字),但720是第一个“有效”的值。716是大于715.5的第一个数,可被4整除(716=4x179),但不适用于525线分量和复合色系之间的标准转换,也不提供足够小的像素分组以促进特殊效果。1980年9月IBC之前的附加注释中提供了支持720的论据。<p>[…]<p>如上所述,Rec.601为亮度通道提供了每个有效行720个样本,为每个色差信号提供了360个样本<p> 当国际电联定义高清晰度电视时,他们规定:“高清晰度电视的水平分辨率是Rec.601中描述的传统电视系统的两倍”,画面纵横比为16:9。16:9的图片比例需要比4:3的图片比例多三分之一的像素。从720开始,将分辨率提高一倍至1440,并调整计数以获得16:9的纵横比,从而得到每个活动行1920个样本,这被定义为HDTV的基础[9]<p> 满足好莱坞和计算机界对“方形像素”的要求,意味着行数应为1920 x(9/16)=1080。<p>每行1280像素和每帧720行的渐进扫描系统也是“720像素”家族的一员。720像素x4;3(分辨率提高)x4;3(16:9纵横比调整)=1280。满足好莱坞和计算机界对“方形像素”的要求,意味着行数应为1280 x(9/16)=720。<p>因此,大多数数字电视系统,包括数字录像带系统和DVD录制,都是从4:2:2的基本标准格式派生而来的。每个有效行720像素的结构成为一系列结构(720像素家族)的基础,这些结构被用于基于MPEG的系统,包括传统电视和HDTV系统。”
****:
****:
Agingcoder: That’s pretty sophisticated - kudos to the author. I love this.
Agingcoder: 这是相当复杂的——向作者致敬。我喜欢这个。