[ 3 / biz / cgl / ck / diy / fa / ic / jp / lit / sci / vr / vt ] [ index / top / reports ] [ become a patron ] [ status ]
2023-11: Warosu is now out of extended maintenance.

/vr/ - Retro Games


View post   

File: 925 KB, 935x628, TheDuke.png [View same] [iqdb] [saucenao] [google]
9151803 No.9151803 [Reply] [Original]

Why does a PS1 game from 1998 have a flawless mirror effect and new games tend to not bother or gloss over it.

Was this just a video hardware flex at the time and no one really gives a shit about how realistic mirrors are in vidya games?

>> No.9151816
File: 76 KB, 800x450, sh2.jpg [View same] [iqdb] [saucenao] [google]
9151816

obligatory SH2 mirror

>> No.9151823

>>9151803
Mirror effects of old were done with trickery that cannot work in later hardware. For example, a mirror is actually just an invisible wall that lets you see into another room, a reverse of the one you are in, populated with identical objects and characters that are programmed to move and act like the 'real' ones. Usually these mirror rooms are actually located in some remote area of the map.

Modern games software/hardware balks is like 'you want me to render TWO rooms and everything in it just so you can have a mirror? Fuck off!'

Games could do it as an occasional stunt but you can't have casual mirrors that you bareley notice any more. That's why most mirrors after a certain point would all be smashed or replaced with non-reflective steel plates; anything to get out of having to replicate build engine shenannigans with 'more' sophisitcated engines.

>> No.9151831

>>9151803
I think the way mirrors worked was different before the 3D accelerator age and the old tricks didn't work anymore. That's why mirrors slowly disappeared from action games that didn't need them for plot or gameplay reasons.

>> No.9151851

>>9151823
I don't believe that at all because most mirrors you even find in games are usually in small rooms like bathrooms anyway. These games can render huge open spaces with tons of details but they can't render a normal room twice? Even if it costs extra resources, you could just remove some props to help out.
Whatever the reason is, performance is not a good excuse.

>> No.9151962
File: 6 KB, 250x220, 1420165075255.jpg [View same] [iqdb] [saucenao] [google]
9151962

>>9151851
>Whatever the reason is, performance is not a good excuse.
It's all about performance. There are multiple ways to fake reflections but those don't work all that well in modern engines, and true reflections in physically based render engines are computationally expensive so they are limited to bathroom mirrors and with reduced precision.

>> No.9151981

>>9151962
How is it resource extensive rendering the same exact things twice? Aren't all the assets already loaded?

>> No.9151983

>>9151981
It probably isn't a default plugin in Unreal engine, so they can't be bothered.

>> No.9152002

>>9151983
>>9151981
Yeah, it involves effort. The assets are already loaded but they need to be excluded from the original lighting, excluded from the physics system, a mirrored player model is required, all sorts of problems can arise from fakery.
The tricks the Duke devs used worked fine in the graphically limited world of their time.

>> No.9152167

>>9151823
>For example, a mirror is actually just an invisible wall that lets you see into another room, a reverse of the one you are in, populated with identical objects and characters that are programmed to move and act like the 'real' ones.
That's what Shenmue did: https://www.youtube.com/watch?v=En8n_npgIEU

>> No.9152182

Because mirroring DYNAMIC BOUNCY WOUNCY RAYTRACING and whatnot is too hard

>> No.9152435

>>9151823
Why do you type like a faggot?

>> No.9152449
File: 2.73 MB, 954x720, 1657072837434.webm [View same] [iqdb] [saucenao] [google]
9152449

>>9151803
"muh mirrors" is nothing but cherrypicking

>> No.9152457

>>9151851
About half the graphical effects in modern 3d are screen space trickery, which wouldn't work with mirrors.
At least that's what I've heard, maybe it's bullshit.

But if you want to fake mirrors, imagine having an entire subsyatem in your engine dedicated to running the game world twice, but flipped, so you can have like 1 mirror. It is now no longer a graphical effect, but something that would have to deeply couple with the gameplay code.

It's just enough of a pain in the ass to not be worth it.

>> No.9152460

>>9152435
Why do you act like a faggot?

>> No.9152492

>>9152460
>Answering question with a question
Faggot confirmed.

>> No.9152525

lazyness/incompetence, proof is in this thread

>> No.9152739

>>9151803
It has nothing to do with technology and everything to do with dysfunctional game development.

Want a mirror here? Just follow the PBR workflow and add a metallic surface, the SSR ought to do the rest, and if it doesn't, we will just address it in the inevitable RTX remaster.

Mirrors are still possible with deferred shading. Besides, even many forward-rendered games skip on proper mirrors.

>> No.9152757
File: 187 KB, 469x600, SSR.jpg [View same] [iqdb] [saucenao] [google]
9152757

>>9152739
>the SSR ought to do the rest
With SSR you get pic related.

>> No.9152940

>>9152757
No, that's what you get when you use a dynamic probe. SSR would give you the correct perspective, but with massive gaps.

>> No.9152949
File: 514 KB, 1920x1920, mirrors.jpg [View same] [iqdb] [saucenao] [google]
9152949

>> No.9152979

>>9151823
What are you even babbling about. You can easily make mirrors by rendering a second viewpoint or just use ray tracing like a cultured man.

>> No.9152985

>>9152449
what game is this?

>> No.9153000

>>9151823
>Modern games software/hardware balks is like 'you want me to render TWO rooms and everything in it just so you can have a mirror? Fuck off!'

It's because they stopped using BSP trees. A reflection used to be a case of 'can you see this line? Ok, well, just reverse your path along the BSP tree and render that here!

There is no BSP tree any more, so you have to either have camera rendering to a texture, which will give you inaccurate angles, or a shader that raytraces for that specific surface, and while half of us are still not on RTX cards, that means garbage sample sizes and resolutions will be used.

Nothing actually stops the devs from filling an area with inverted copies of everything, other than laziness, and game devs have been lazy shits for 20 years at this point.

>> No.9153025

>>9151823
the new sony spider-man game has tons of reflective surfaces

>> No.9153028

>>9152985
uncharted 4

>> No.9153049
File: 187 KB, 1280x1600, FV4q_sdWYAIjynh.jpg [View same] [iqdb] [saucenao] [google]
9153049

>>9153000
Most editors are using prefabs so all they would need to do is select the room they want to mirror, make sure all objects in it are grouped, copy/paste, rotate 180. Lastly comes in the actor model reflection but if sh3s mirror room can do that and so much more any modern engine should be able to. Really a cheap mirror like that should be doable in two minutes tops.

>> No.9153054

>>9152492
You're confirming like a faggot.

>> No.9153148

>>9151823
Lol it's not that modern engines couldn't do such a simple trick it's that devs don't bother with it because people aren't that easily impressed anymore and there's really no gameplay reason for it.
RTX made mirrors and other reflection effects trivial but it will still take some time for it to be widely adopted.

>> No.9153181

>>9152449
The perspective on that is all wrong. The size has too much of a difference for the distance, from that angle you wouldn't see that in the mirror and when the character / camera strafes the reflection doesn't change angle accordingly, it also strafes which is not what would happen, the angle seen in the mirror would change.
I remember playing with the mirror in MGS2 as a kid and the business was exposed when I did the 'stand on your tippy toes' or lean left and right controls and the mirror didn't pick it up.

>> No.9153192

>>9153181
The different distances reflected also don't move in unison, they move seperately in some kind of generated morph the same as game environments morph or cheaper digital cameras 'jelly' and bend when you spin them or strafe quickly.

>> No.9153371

>>9153000
There are more PVS algorithms than just BSP, you know.

>> No.9153424

>>9151803
>>9151823
Here's a great example of this.
https://www.youtube.com/watch?v=SnzSrmMC7kA

>> No.9153462

I would guess first person games don't do it anymore, because it breaks the illusion to see your character model awkwardly fumbling around, and probably barely animated.
It's that old problem where the better graphics get, the more realism people expect. Duke was just a sprite with a couple of frames of movement, and people were happy to have that sprite, but you can't do that now.

>> No.9153606

But games devs are stupid lazy niggers. Next question.

>> No.9153786

>>9151823
>or example, a mirror is actually just an invisible wall that lets you see into another room
Name one game aside from Super Mario 64.

I don't know anything else that does this, but I know plenty that don't.

>> No.9153815

>>9153786
Duke Nukem 3D.

>> No.9155094

>>9153815
That game doesn't even have Euclidean space, so that's kind of hard to define.

>> No.9155209
File: 167 KB, 1440x900, e1L1MIRROR.png [View same] [iqdb] [saucenao] [google]
9155209

Duke Nukem 3D does NOT have an "identical room on the other side of the mirror manually built by the level designer". That's just bullshit misconception made up by people who've never opened Build in their life. The mirror is handled by game code, all the level designer needs is to add one empty sector behind the mirror. It's one of the common misconceptions about Duke and Build that is very often heard, like people who claim it's "raytracing" or people who have no idea what portals are.
Pic related, E1L1 mirror and empty sector on the other side. Not that requiring such a huge sector behind the mirror was only true in version 1.3, in Atomic Edition even that is not required anymore.

Only one of the console ports of the game used the "identical room manually built" thing, I can't remember if it was the PSX or the N64 version.