Texture cache of the N64 vs. that of Playstation

OoT engine was special in that it ran at 15 fps. So it could afford to do multipassing on for example the grass/mos texture in the main field, with a monochrome texture on top of the colour. Or the macro texturing on buildings in Majoras.
So it’s cheating in a way.
 
Last edited:
The latency of the memory isn’t comparatively that different from latency on PS2 or DDR 1 or 2 equipped machines.
Sure, the Playstations EDO might have a small advantage clock for clock for small, scattered data. But the speed and bandwidth on N64 Rambus is just so much better, that it wins it all back and then some even in pathological cases.

That the cache is loaded explicitly pretty much infers what you describe. Do you have a link to the discussion?

As I mentioned already, it would have been possible to match the geometry and texture coordinates exactly and then combine them to larger textures.
Of course this wouldn’t have been possible with dynamic geometry, like skinning which is not too common on that generation of games anyway.
It would have made a huge difference for ground and wall textures.

For a rare and sadly not very impressive example of this look at the Bowser puzzle in the volcano level of Mario 64. It’s seems they even used some kind of 4 bit CLUT chroma compression in a dual pass on this.
On ps2 the rasterizer can be using one area of the texture RAM to draw polygons, while textures are simultaneously being swapped in another area of same RAM for future geometry. That hides the latency. The same thing could not be done on N64.
As for using many small textures for different polys of a mesh, that is exactly what many N64 games did (and the mentioned "unhideable latency problem persists), but its only aplicable to highly tessellated geometry. N64 was also polygon starved. You don't wanna be using dozens of polys for a flat wall. You want 2 huge tris with a tiled texture repeating across it. In your SM64 example, for higher texture density, each puzzle piece there would've had to use 4 quads per face instead of just one. But many other surfaces on SM64 itself use what you describe to overcome the limitation on too. Mario himself: his eyes are one discrete texture, his muttonchops are another, and his mustache a third one. All paintings on peach Castles do it as well, for exemple. They use two discrete rectangular textures for the top and bottom part of each painting (64x32 I believe). Same thing is done with the Whomp's face. And they are all still too blurry even for 90's standards.
 
Last edited:

Check out 39:50, huge wall with a Banjo Kazooie picture. The whole picture goes way beyond the size you could fit at once on the cache. But it is tessellated enough to be able to break it apart into multiple smaller textures. Still looks blurry because they din't want to tessellate it that much more, nor use that much more ROM...
 
I think the reasons textures look worse on the N64 is "All of the above". The texture cache is probably the main culprit, but beyond that cart size was also a limiting factor. The idea that because PS1 games are close in size if you strip out all of the music and FMVs so cart size wasn't a factor would only make sense if the N64 didn't have music or anything to replace the missing FMVs. Rom size wasn't just a physical limitation, it was a financial one. Larger carts cost more money so developers were trimming bytes wherever they could to have their games fit on the smallest possible carts to keep production costs as low as possible. The opposite was true for games that used CDs. They were a fixed size and relativity cheap, so developers were cramming all sorts of extras on the discs to fill space. If you could lower your texture quality 20% and have your game fit on the next smaller cart size you were probably going to do it because of the cost savings.

I think the thing most people overlook when it comes to N64's textures is the insane amounts of filtering Nintendo required. Textures had to use linear filtering (and the implementation was pretty blurry) and you had the full screen AA adding an additional level of blur to the whole image. The point sampled textures of the PS1 are going to look sharper even if you have the same source artwork after you add the filters Nintendo forced devs to use.

That said, there are a few games that hold up nicely texture wise. Nightmare creatures comes to mind. Ther textures look pretty comparable between the PS1 and N64.
 
The idea that because PS1 games are close in size if you strip out all of the music and FMVs so cart size wasn't a factor would only make sense if the N64 didn't have music or anything to replace the missing FMVs.

The FMVs were usually replaced with half a dozen tiny slides and text. The redbook music from ps1 was replaced with MIDI on n64. So they were negligible.
But besides that, I agree with everything else you said. Devs could have had bigger texture here and there too if the cart size hadn't made the limitations quite convenient to adhere to anyway.
 
On ps2 the rasterizer can be using one area of the texture RAM to draw polygons, while textures are simultaneously being swapped in another area of same RAM for future geometry. That hides the latency. The same thing could not be done on N64.
As for using many small textures for different polys of a mesh, that is exactly what many N64 games did (and the mentioned "unhideable latency problem persists), but its only aplicable to highly tessellated geometry. N64 was also polygon starved. You don't wanna be using dozens of polys for a flat wall. You want 2 huge tris with a tiled texture repeating across it. In your SM64 example, for higher texture density, each puzzle piece there would've had to use 4 quads per face instead of just one. But many other surfaces on SM64 itself use what you describe to overcome the limitation on too. Mario himself: his eyes are one discrete texture, his muttonchops are another, and his mustache a third one. All paintings on peach Castles do it as well, for exemple. They use two discrete rectangular textures for the top and bottom part of each painting (64x32 I believe). Same thing is done with the Whomp's face. And they are all still too blurry even for 90's standards.

N64 was never geometry bottlenecked. Fillrate was more of a problem with the Z-buffer and extensive blending modes (remember it even has what could be described as a rudimentary pixelshader, in a register combiner on the VPU).

PS2 had somewhat the same problem with it's 8 Kb frame and texture buffer, but somewhat different in nature of course because of the huge VRAM buffer.

Texturing was never a task plagued by latency. It’s a very predictable, linear job, with nice big chunks of data.

Rendering multible polygons in a plane with the same inclination has less overhead than tesselating existing geometry.

Even on PlayStation though, it was necessary to keep polygons under a certain size to avoid too much texture distortion. So adaptive tesselation of world geometry was not something unknown to developers.

If it’s possible to change the CLUT quickly and change the UV coordinates, it would be possible to use dual pass 2 bit compression.
 
Last edited:
The FMVs were usually replaced with half a dozen tiny slides and text. The redbook music from ps1 was replaced with MIDI on n64. So they were negligible.
But besides that, I agree with everything else you said. Devs could have had bigger texture here and there too if the cart size hadn't made the limitations quite convenient to adhere to anyway.
Sometimes but not always. There are more than a few N64 games that use compressed audio tracks for background music or voiceovers during the slideshow that replaced the FMV.
 
I think the reasons textures look worse on the N64 is "All of the above". The texture cache is probably the main culprit, but beyond that cart size was also a limiting factor. The idea that because PS1 games are close in size if you strip out all of the music and FMVs so cart size wasn't a factor would only make sense if the N64 didn't have music or anything to replace the missing FMVs. Rom size wasn't just a physical limitation, it was a financial one. Larger carts cost more money so developers were trimming bytes wherever they could to have their games fit on the smallest possible carts to keep production costs as low as possible. The opposite was true for games that used CDs. They were a fixed size and relativity cheap, so developers were cramming all sorts of extras on the discs to fill space. If you could lower your texture quality 20% and have your game fit on the next smaller cart size you were probably going to do it because of the cost savings.

I think the thing most people overlook when it comes to N64's textures is the insane amounts of filtering Nintendo required. Textures had to use linear filtering (and the implementation was pretty blurry) and you had the full screen AA adding an additional level of blur to the whole image. The point sampled textures of the PS1 are going to look sharper even if you have the same source artwork after you add the filters Nintendo forced devs to use.

That said, there are a few games that hold up nicely texture wise. Nightmare creatures comes to mind. Ther textures look pretty comparable between the PS1 and N64.

If it was straightforward from the get go to have fewer, but higher resolution textures in a game, developers would surely have done that on N64.
Even a 256x256 texture is only 32 Kb after all.
The limitation is really what can fit in main ram for a certain area, not the slow mass storage size (N64 carts where actually quite slow, compared to the memory they had to fill). There is a reason game worlds with portals are so popular on the system).
There N64 has an advantage with regards to memory.
1 to 1.5 Mb more than PS depending on whether you want to count the 9th parity bit in (it could be used for AA too, for example).
 
One of the last games for the system, Indiana Jones and the Infernal Machine did in fact turn the z-buffer off to gain fillrate and must have used both tessellated textures and multipass textures to get the results visible in the link underneath.
While the resolution of the textures is still not homogeneous, it’s still far better than most other games on the system. Probably the best overall looking game in that regard.

http://www.ign.com/articles/2000/11/10/bringing-indy-to-n64

Also I found this.
https://en.m.wikipedia.org/wiki/Nintendo_64_programming_characteristics
Seems to have been partly compiled from stuff I’ve seen elsewhere, but also some I’ve never encountered.

I’d still really like to hear from actual developers and other people with unique insights.
 
I think the reasons textures look worse on the N64 is "All of the above". The texture cache is probably the main culprit, but beyond that cart size was also a limiting factor. The idea that because PS1 games are close in size if you strip out all of the music and FMVs so cart size wasn't a factor would only make sense if the N64 didn't have music or anything to replace the missing FMVs. Rom size wasn't just a physical limitation, it was a financial one. Larger carts cost more money so developers were trimming bytes wherever they could to have their games fit on the smallest possible carts to keep production costs as low as possible. The opposite was true for games that used CDs. They were a fixed size and relativity cheap, so developers were cramming all sorts of extras on the discs to fill space. If you could lower your texture quality 20% and have your game fit on the next smaller cart size you were probably going to do it because of the cost savings.

I think the thing most people overlook when it comes to N64's textures is the insane amounts of filtering Nintendo required. Textures had to use linear filtering (and the implementation was pretty blurry) and you had the full screen AA adding an additional level of blur to the whole image. The point sampled textures of the PS1 are going to look sharper even if you have the same source artwork after you add the filters Nintendo forced devs to use.

That said, there are a few games that hold up nicely texture wise. Nightmare creatures comes to mind. Ther textures look pretty comparable between the PS1 and N64.
Nightmare Creatures... that's a very fun game!

As for the memory thing and its price limiting the cartridges' size, I wonder which type of RAM N64 cartdriges used, but when I had my first computer, a Pentium 100 with a staggering amoung of 32MB of RAM (SD-RAM?), the price of 1 MB of RAM was 30€!! :oops::oops: That means that my current laptop would cost 480.000€ paying the RAM alone.
 
N64 was never geometry bottlenecked. Fillrate was more of a problem with the Z-buffer and extensive blending modes (remember it even has what could be described as a rudimentary pixelshader, in a register combiner on the VPU).

Geometry might not have been the biggest bottleneck, but they sure couldn't splurge on it willy nilly, otherwise games would not have looked as awful as they did. I refuse artist then used those horribly geometric models just because they though they were good enough.


Texturing was never a task plagued by latency. It’s a very predictable, linear job, with nice big chunks of data.

Look, you may be right, but that's not what I remember hearing from devs when the topic came up. Sure, the memory was relatively high bandwidth, but as I recall the problem was swapping, which you had to do all the time since it was small enough for a single texture, let alone a damn atlas.

Rendering multible polygons in a plane with the same inclination has less overhead than tesselating existing geometry.

I didn't mean tessellating geometry dynamically. N64 didn't need it since they had proper perspective correct mapping and z-buffering. I referred to simply creating their models with more segmentation. In fact it was often done. Zelda is a great example. Pay attention to its environments and you'll see they often segment surface edges to create more texture variety while using just small repeating patterns.


If it’s possible to change the CLUT quickly and change the UV coordinates, it would be possible to use dual pass 2 bit compression.

I'm curious here, what do you mean by that?
 
Geometry might not have been the biggest bottleneck, but they sure couldn't splurge on it willy nilly, otherwise games would not have looked as awful as they did. I refuse artist then used those horribly geometric models just because they though they were good enough.

Aweful compared to what? Same geometry complexity level or better than any of the competition. Also better precision on all fronts leading to a much smoother appearance.

Look, you may be right, but that's not what I remember hearing from devs when the topic came up. Sure, the memory was relatively high bandwidth, but as I recall the problem was swapping, which you had to do all the time since it was small enough for a single texture, let alone a damn atlas.

That’s how all caches or buffers work, you swap, nothing unusual there. Less swapping might even have taken place than other texture buffers if the developer has reconciled themselves to the 64x64 limit.

I didn't mean tessellating geometry dynamically. N64 didn't need it since they had proper perspective correct mapping and z-buffering. I referred to simply creating their models with more segmentation. In fact it was often done. Zelda is a great example. Pay attention to its environments and you'll see they often segment surface edges to create more texture variety while using just small repeating patterns.


If it’s done dynamically or is part of a LoD scheme is inconsequential in this case. Smaller triangles has lots of other advantages, like better lighting, being able to use vertex colouring more effectively, screenspace precision etc.
What you are describing sounds just like plain old seams between subparts of a model. While not entirely different is diffrent in intent. The intent being to have a big seamless texture over for example ground with, if appropriate, only texels defining the colour and contrast.

I'm curious here, what do you mean by that?

A 4 bit CLUT texture, where you leave some of the entries in the LUT as full alpha and then change the palette for the second pass.
It’s basically palette animation but with a static image to two passes.
 
Last edited:
This is a finished M2 game:
Not very impressive texture wise.

I agree it's not impressive in terms of textures, or much of anything. However I doubt it really shows what M2 could do, given it was developed by 3DO Studios and not a Japanese arcade developer like Sega, Namco or even Konami (who did produce some so-so M2 arcade games).

Given time, I'm sure M2 could've shown some impressive results compared to N64 and PS1.
 
I agree it's not impressive in terms of textures, or much of anything. However I doubt it really shows what M2 could do, given it was developed by 3DO Studios and not a Japanese arcade developer like Sega, Namco or even Konami (who did produce some so-so M2 arcade games).

Given time, I'm sure M2 could've shown some impressive results compared to N64 and PS1.
If you’re thinking about the Trip Hawkings demo where he is tripping over prerendered fantasies, then you’ve been duped by twenty year old propaganda.
All of the stuff I’ve seen is in N64 territory, or even incredibly, a bit below, by technical measures.
 
Last edited:
You've got to be a PlayStation fanboy to think it had better looking anything in its games compared to n64.

Any perception of sharper textures is down to a lack of filtering. If you like pixelation and geometry warping, then hey.

N64 was so far ahead that sony aped its design for the ps2. Risc, rambus, vector units etc.
 
You've got to be a PlayStation fanboy to think it had better looking anything in its games compared to n64.

Any perception of sharper textures is down to a lack of filtering. If you like pixelation and geometry warping, then hey.

N64 was so far ahead that sony aped its design for the ps2. Risc, rambus, vector units etc.

I find the proposition that there are PS1 games with better looking textures than N64 to be reasonable I also find it reasonable that there are those out there that may find they prefer the look of a plethora of PS1 games to those found on N64. Art design may have been a large influence into that.

There doesn't need to be a this or that scenario concerning graphics comparisons between consoles of the same generations. There will be many instances where title A does something graphically better than title B and the opposite.

The claim that someone is a fanboy because they may have a differing opinion is unwarranted.
 
I find the proposition that there are PS1 games with better looking textures than N64 to be reasonable I also find it reasonable that there are those out there that may find they prefer the look of a plethora of PS1 games to those found on N64. Art design may have been a large influence into that.

There doesn't need to be a this or that scenario concerning graphics comparisons between consoles of the same generations. There will be many instances where title A does something graphically better than title B and the opposite.

The claim that someone is a fanboy because they may have a differing opinion is unwarranted.
People can prefer whatever they want but in actually comparing the consoles and their games in a technical capacity the 64 stomps on PlayStation. Games were bigger with better draw distance, had more geometry, better particles, more advanced lighting and again actually filtered textures without warping.

Personally I don't consider PlayStation proper 3d and more like a half step from the 16 bit era.
 
Last edited:
N64 was certainly ahead of its competitors feature wise, but it came at the price of raw-grunt, to some extent. All consoles were barely able to make passable games back then. Every 3D game at the time looked horrendous on any platform even though we had no other frame of reference. N64 games surprinsingly polished to with reggards to rendering quality and stability, but ofyen also more simplistic and less performant. Saying who made the best choice is not so straight foward. Maybe the perfect console would have been something in the middle of the road between the two, who knows?
 
N64 was certainly ahead of its competitors feature wise, but it came at the price of raw-grunt, to some extent. All consoles were barely able to make passable games back then. Every 3D game at the time looked horrendous on any platform even though we had no other frame of reference. N64 games surprinsingly polished to with reggards to rendering quality and stability, but ofyen also more simplistic and less performant. Saying who made the best choice is not so straight foward. Maybe the perfect console would have been something in the middle of the road between the two, who knows?

More simplistic in what way? Besides some intelligent usage of simple shading rather than textures where it makes sense? How is almost 3x the clocks and way higher bandwidth a lack of grunt? Playing something like banjo tooie or conker makes me feel like the machines are of different generations. And Ps1 games ran just as choppy. In all those df retro vids on doom and quake ports you Always see 64 leading the pack.

All the thoughts people have about ps1 "having more polygons" or "better textures" are pure nonsense or generously speaking artistic preference. Well actually, some ps1 games HAD to use more polys such as in floors or walls, in order to minimize warping. But that yielded no visual benefit and N64 didn't need to waste as such.

I'm not saying ps1 has no nice looking games, but it's weird people try to give it a leg up compared to 64. Goes for the saturn as well, although that console did neat things with 2d elements.
 
Last edited:
Back
Top