This doc and one other I can't find were the basis of a full-screen post processing system I worked on that worked out very well. That doc...
Let's talk a bit about the GS. The weakness of the GS is that it can only read 1 texture and it has a very limited blend equation. So, you can...
Through a private channel I have been asked for advice by someone currently working on their own, new PlayStation 2 game engine. If I'm going to...
The PS1 has hardware support for quads. I bet the devs were handed textures that were designed for rectangular sprites on the SNES. So, they did...
Segment tracing for faster implicit surface rendering [MEDIA]
GPU-Based Run-Time Procedural Placement in Horizon: Zero Dawn is also amazing. [MEDIA]
The Hellblade (1) Dev Diary series was really great. BTW: If you like stuff like that, check out https://www.reddit.com/r/TheMakingOfGames/ I...
Ray Guiding for Production Lightmap Baking https://research.activision.com/publications/2020-01/ray-guiding-for-production-lightmap-baking
With the Dreamcast (and most other systems) the CPU does not need to do poly-by-poly work to send geo to the GPU. The CPU just points the GPU at...
That would be difficult. The PS2 could handle more raw, basic, simple polygons than the Xbox, but only after a whole lot of work and constraints...
The VU1 was set up to do all of the geometry and animation work to prepare triangles for the rasterizer. I'm not sure what the plan was for the...
There are 5 processors involved in PS2 graphics: The EE (CPU) which does normal CPU things. In this case it's job is to do high-level culling of...
https://www.gamedevs.org/ "a list of the papers and articles that I have collected over the years on various topics relating to game development."
It's far more important for developers that the performance be consistent rather than occasionally better. No doubts. No arguments. Don't wave...
Here's an excellent article on sources of latency on PC as compared to classic (SNES era) consoles: https://articles.byuu.org/latency
Oooh! Oooh! I know this one! The Turbo button found lots of uses over the years, but the original purpose was actually a...
Mortal Kombat 11: High Fidelity Cached Sims in RealTime [MEDIA] via [MEDIA]
https://gpuopen.com/gdc-2019-presentation-links/
Unreal Engine GDC 2019 playlist [MEDIA]
Video of the talk [MEDIA]
GDC 2019 presentation links https://interplayoflight.wordpress.com/2019/03/21/game-developers-conference-2019-links/
An unofficial, errata-corrected PDF has been released http://www.realtimerendering.com/raytracinggems/
[MEDIA] In response, people in that Twitter thread organized uploading their saved copies of most of the presentations to archive.org...
Continuous level of detail meshes. It's not worth any amount of PCI bandwidth to edit an index buffer on the GPU. Forsyth's sliding window...
http://www.polyphony.co.jp/publications/ via https://www.gtplanet.net/polyphony-digital-reveals-gt-sports-iris-ray-tracing-system-at-cedec-2018/
Start with a full-detail normal map and palettize that like a regular rgb texture. Instead of a uniform sampling of directions, you get the 256...
Probably some variation of https://docs.microsoft.com/en-us/windows/desktop/direct3d9/spherical-environment-mapping
That is definitely the same technique.
There are some people on this board who thought it might have been. But, I don't recall anything like that being mentioned. The normal mapping...
Fun fact about The Conduit: It was the subject of the Has Anyone Really Been Far Even as Decided to Use Even Go Want to do Look More Like? meme.
Some friends of mine ported BGDA from PS2->GC. Technically, the game a extremely impressive. A few fun facts: 1) The level content was tightly...
https://www.ea.com/seed/publications
You can do it that way. But, a smarter way would be to take advantage of the fact that the GS can change textures and blend modes in a few...
It's all high-level commands. The only time you'll be touching individual objects in C# is putting lights in constant buffers. You can see an...
It was less like a bus and more like a small hole in a wall between the VUs. Not sure. But, I don't think it shipped. "When the micro-program...
I think there was a way to copy from some specific register in the VU0 to some register in the VU1. Not sure what that was useful for. But, it...
First you would set the size and location of the frontbuffer and z buffer. Then, you would make sure the textures are in EDRAM before you use...
Yep. You only need the Z buffer while you are drawing 3D stuff. Outside of that time, you can reuse that space for whatever. Exophase answered...
The front buffer, back buffer and Z buffer would all be 640x448x4bytes = about 1 meg each. You need the front buffer to sit in EDRAM until the...
Hellblade: Senua's Sacrifice stereo 360 captures Source:...
You get a few modes describing how to use vertex colors: ignore, tex * vert, and something like tex * vert.rgb + vert.a? I forget how that one...
Yep. The VU creates a little buffer full of GIF commands and triggers the GIF. The GIF then executes the commands that say "Stuff this value in...
Yep. You would probably draw a 1000 poly model by breaking it down into chunks of a few dozen polys that can all fit in VU1 mem. Send one chunk...
Rasterization and texturing happen at the same time, 1 poly at a time. The GS is fast because it is a really simple, dumb device. It draws a...
The EDRAM is just a 2D block of memory that you can pack with framebuffers, textures and palletes in any arrangement you want. There isn't any...
I'm not clear what you are asking. But, common uses of the word "pass" include: Draw an object. Draw the same object again in the same place...
Ah, that's just saying "If you draw over the same pixels 4 times, it's gonna cost you 4 times as much as a single pass". 1 x 4 = 4. That's all.
Where's that info from? It doesn't match my understanding. Maybe it's referring to some other feature.
It's really not as complicated as you are making it out to be. You can draw a triangle using 3 verts, a texture and a blend mode. If you try to,...
Yes. When I said "splats" I was just being clear about the triangles being pixels in the framebuffer --as opposed to being verts and indices. I...