9 ms·
Playstation 2 Architecture
- monkpit 4y ago(2020)
- Narishma 4y agoPrevious discussion: https://news.ycombinator.com/item?id=26243964 https://news.ycombinator.com/item?id=26243964
- tommica 4y agoDo appreciate people linking previous discussions, always useful to see what people talked.
- speps 4y agoThe 'past' link under the headline does the same.
- latchkey 4y agoEven better, install the Refined HackerNews browser extension and it puts all the previous links at the bottom of the page. 'show-similar-submissions' https://github.com/plibither8/refined-hacker-news/ https://github.com/plibither8/refined-hacker-news/
- gumby 4y agoA correction: the “emotion engine” referred to (at least before launch — perhaps they changed it) the GPU itself, which was the only Sony-designed silicon in the original PS/2. The TMPR and other silicon were designed and supplied by Toshiba. Also notable: Original Playstation (AKA PS/1) compatibility was provided by simply putting a whole PS/1 on the board — I think it might even have been by then a single chip; if so likely Sony designed. That was an insane project by an amazing team. I see a comment by me is top of the previous discussion, if you want some more snippets.
- amiga-workbench 4y agoYep, the playstation 2's I/O processor was just a playstation 1 CPU, I believe the emotion engine still handled the graphics though.
- smoldesu 4y agoFor me, this is what I'll always associate with the Emotion Engine: https://youtu.be/SpRCSU0lXZ0 https://youtu.be/SpRCSU0lXZ0 There used to be a great video on YouTube of the E3 crowd reacting to the first Metal Gear Solid 2 footage, but I can't seem to find it. Rest assured though, it was Melee '01-levels of disbelief in the audience.
- frou_dh 4y agoIs this that video? https://www.youtube.com/watch?v=Mr6RngfAeMY https://www.youtube.com/watch?v=Mr6RngfAeMY I remember obsessing over how great the MGS2 graphics were back in the day. Particularly the detail in the indoor scenes.
- smoldesu 4y agoI found that too, but I remember seeing some uncut footage from the back of the crowd a few years ago... oh well. But yes, MGS2 was a real wake-up call for Western studios that didn't focus on strong direction and writing. Even though the finished product was notoriously panned at release, you can tell that Kojima's influence was being felt across the industry. Wish I wasn't playing stupid-ass Splinter Cell back then...
- AdmiralAsshat 4y agoMy association with the Emotion Engine will always be Soul Reaver 2 over MGS2: https://www.youtube.com/watch?v=t7SQ2Wu6PvI https://www.youtube.com/watch?v=t7SQ2Wu6PvI I remember magazines at the time (Next-Generation, maybe?) talking at length about the Emotion Engine and how it would allow, among other things, for more detailed facial expressions. I almost wonder if Sony specifically instructed Crystal Dynamics to try to use it in SR2 as much as possible for promotional materials, because the degree of lip movement and detail of facial movement on that game is way more expressive than almost anything else on the platform, despite being an early title.
- dtx1 4y agoI've heard that the original PS2 Architecture was similar to program for as modern vulkan based rendering. Any truth to that? (I have 0 experience in game/3D programming)
- kmeisthax 4y agoThere are some vague similarities; like VU1 can be used akin to a mesh shader to generate procedural geometry. But the overall architecture is very different and simplified. There's no pixel/fragment shaders, for example; you just get Gouraud shaded triangles and nothing else. Modern GPU APIs are about as similar to programming the PS2 as OpenGL 1.x is similar to an Nvidia RTX 3080.
- aappleby 4y agoNo, not anywhere remotely similar except that some of the terminology like display lists (that predated PS2) are still used.
- snvzz 4y ago>display lists (that predated PS2) Amiga (copperlist). 8-bit Atari before that. Probably even earlier.
- aappleby 4y agoRandom trivia - the PS2 processed pixels in 8x2 blocks (no texture) or 8x1 blocks (texture) - this made rasterization VERY FAST for large untextured triangles (16 pixels/clock, potentially 4x Game Cube fill rate), but slow for tiny textured triangles (anything smaller than 8 pixels wide wastes pixel pipes).
- aappleby 4y agoGame Cube worked in 2x2 blocks of pixels and could also run primitive "shaders" by cycling a pixel block through the pipeline multiple times with different settings. Made for some nice bump mapping demos but I'm not sure how much it was used in practice.
- mikepurvis 4y agoI've always been kind of fascinated by the state of GPUs immediately prior to fully-programmable shaders becoming the norm. It particularly comes up in the world of emulation, where often those weird fixed-function pipelines were abused in interesting ways to produce particular effects, and now someone has to figure out how to write a shader for a modern GPU that can perfectly replicate what that old pipeline block used to do, including all the edge-cases around overflow, saturation, and so on. Unfortunately the inline demos seem to now be broken, but I found this article a fascinating treatise on how Gamecube and Wii games do things like render water: https://blog.mecheye.net/2018/03/deconstructing-the-water-effect-in-super-mario-sunshine/ https://blog.mecheye.net/2018/03/deconstructing-the-water-ef...
- radicaldreamer 4y agoA really interesting and nice architecture which was difficult to program for (maybe outdone only by the notorious CELL architecture of the PS3). The PS2 Linux Kit was brilliant and was what got me into Linux in the first place.[1] Nowadays consoles are designed to be similar to PCs and easy to develop for, but I feel like we've lost a little something when we went from mostly custom developed chips and archs to commodity PCs with some custom subsystems. [1]: https://en.wikipedia.org/wiki/Linux_for_PlayStation_2 https://en.wikipedia.org/wiki/Linux_for_PlayStation_2
- pjmlp 4y agoAnother PS2Linux user! I hardly used my kit due to the issue with having to find monitors with separate signal cables.
- thakoppno 4y agoPS3 otheros linux user who ran Yellow Dog Linux on it and remember running opencv on it. It was novel but really not performant. What was the ps2 linux experience like?
- pjmlp 4y agoMuch better, because Sony was still coming from Yaroze experience so PS2Linux had relatively good support for game development, and although it did not expose the low level APIs, it was a kind of XNA for PS2. Unfortunately most people seemed to only care to use it to run Linux proper and emulators, which was most likely the reason why PS3 OtherOS was so limited. I lost interest on the PS after that.
- nsxwolf 4y agoI haven't heard anyone talk about this, but the PS2 was the first time I recall seeing a blue LED in a consumer product. I remember being really wowed by it, as just a few years prior I saw 5mm blue LEDs being sold in an electronics hobby catalog for $95 each.
- Wolfbeta 4y agoA DVD player was a major selling point for some people when they bought the PS2. For others, myself included, it was the blue LED.
- timcederman 4y agoI've mused about this a few times over the years (e.g. https://twitter.com/cederman/status/641507163639148544 https://twitter.com/cederman/status/641507163639148544), and it is interesting how big a deal it was at the time on gaming forums.
- samlittlewood 4y agoVUniverse: 16K VU1 demo by Mike Day (2003): https://www.youtube.com/watch?v=ZwD7-bs9hss https://www.youtube.com/watch?v=ZwD7-bs9hss
- kaveh808 4y agoWhile leading the software R&D team at Square USA (we made the "Final Fantasy: The Spirits Within" movie and one of the "Animatrix" shorts) our team got to develop some cool software both for the PS2 and the little known GSCube experimental machine. The GSCube was 16 GS processors in a box, and could be configured to access the frame buffer as a 4x4 tile format or as 16 layers composited in real time. For Siggraph 2000, we showed a demo of a shot from the movie running in real time, allowing the user to interactively change the surface materials of the character. The scene was Aki floating in zero gravity, and included individual hair strands. My own memorable piece of geekery involved implementing Perlin Noise entirely on the VU1, and demoing a field of tall grass blowing in the wind. Fun stuff.
- carabiner 4y agoWow. What are you working on now? What is life like?
- bangonkeyboard 4y agoThe Square USA team, along with contemporaneous Naughty Dog, are famous for having used Lisp/Scheme in game/graphics production of that time. Would you attribute this decision to your shared MIT heritage?
- kaveh808 4y agoWe had a serendipitous confluence of Lisp/Scheme fans at the company. My boss had worked at Symbolics Japan: https://www.youtube.com/watch?v=-DTjrY1LXrk https://www.youtube.com/watch?v=-DTjrY1LXrk I was a Lisp fan from my days of hacking on Symbolics at the Media Lab: https://kaveh808.medium.com/late-night-lisp-machine-hacking-d22a0e2d83fa https://kaveh808.medium.com/late-night-lisp-machine-hacking-... And one of our developers was a Lisp programmer who had implemented his own version of Scheme: http://practical-scheme.net/gauche/ http://practical-scheme.net/gauche/
- erwincoumans 4y agoThe PS2 architecture is implemented in the open source PCSX2 and plays "over 98% of the official PS2 library is considered playable or perfect". Amazing feat and well worth trying out: https://github.com/PCSX2/pcsx2 https://github.com/PCSX2/pcsx2 and check the Wiki documentation https://wiki.pcsx2.net/PCSX2_Documentation https://wiki.pcsx2.net/PCSX2_Documentation
- aledalgrande 4y agoCool and also crazy how much more memory it requires compared to what the original PS2 had.
- Waterluvian 4y agoWhere’s the PS1? I went skimming the diagrams for PS1 chips. Was it emulated? Or did the PS2 somehow handle PS1 games natively as well?
- sniglom 4y agoIt's the IOP chip. https://en.wikipedia.org/wiki/PlayStation_2_technical_specifications#I/O_processor_(IOP) https://en.wikipedia.org/wiki/PlayStation_2_technical_specif...
- djmips 4y agoThis is an overview of how to do what the hardware wants you to do rather than trying to force your ideas onto the hardware. This is some great engineering showcasing how to get maximum performance from the VU / PS2 Another great video from Coding Secrets / Gamehut Impossible Particles - 17,000,000 triangles a second on the PS2 https://www.youtube.com/watch?v=iEQLbbyToxw https://www.youtube.com/watch?v=iEQLbbyToxw