6 ms·
That's one of the things I loved most about games in the 90s. Everything is a pile of hacks and tricks. I remember doing "reverse engineering" on a bunch of th
by Karawebnetwork 6y ago
That's one of the things I loved most about games in the 90s. Everything is a pile of hacks and tricks.
I remember doing "reverse engineering" on a bunch of those as a kid and I can definitely attribute my passion for software to those experiences.
I was actually feeling a bit disconnected from my career at the moment and reading this thread awakened some of the excitement that was sleeping inside me! The 90's are a huge source of nostalgia for me.
Edit: It reads better in a thread reader such as https://threadreaderapp.com/thread/1372766463556083715.html https://threadreaderapp.com/thread/1372766463556083715.html
- 0-_-0 6y ago> That's one of the things I loved most about games in the 90s. Everything is a pile of hacks and tricks. It still is, e.g. how shadows are done with shadow maps.
- Someone1234 6y agoI agree. But it does raise an interesting philosophical question: At what level of advancement does a hack stop being a hack. Like most would agree that Ray-Tracing is the "real deal" relative to shadow mapping, but with how far shadow mapping has come can it really be considered a "hack" still?
- _jal 6y agoThis starts drifting way off topic, but hacks are typically characterized by being "clever". Which is hard to define, but is usually surprising in some way. I think it stops being a hack when the surprise is gone - when you've explored the mechanism, understand the tradeoffs, where it does make sense and doesn't, etc.
- meheleventyone 6y agoI'd say a hack is a technique with caveats that let's you work around a limitation. Ray tracing is still too computationally expensive so the current raster pipeline is all a hack to work around that fact. It's also an incredibly well established and close to ground truth hack but there are lots of caveats where things go astray. Off the top of my head transparency is still largely problematic.
- seanwilson 6y ago> Like most would agree that Ray-Tracing is the "real deal" relative to shadow mapping, but with how far shadow mapping has come can it really be considered a "hack" still? Even ray tracing isn't the real deal and isn't trying to closely simulate reality. You need to use hacks in ray tracing for soft vs sharp shadows, for light patterns on glass objects like wine glasses (caustics), to get illuminated surfaces to spread their colour to other objects (colour bleeding) and more. Phonton mapping gets closer but is even more expensive: https://en.wikipedia.org/wiki/Photon_mapping https://en.wikipedia.org/wiki/Photon_mapping Phonton mapping is trying to model the path of all photons being emitted from light sources back to the camera vs ray tracing that works backwards by tracing rays out of the camera back to the light sources i.e. ray tracing is an optimisation.
- core-questions 6y agoIs anyone doing realtime photon mapping, maybe using some of that RTX stuff?
- mike_d 6y agohttps://www.youtube.com/watch?v=GckOkpeJ3BY https://www.youtube.com/watch?v=GckOkpeJ3BY
- gmueckl 6y agoThis post deserves a long reply. You seem to think that ray tracing as a very limited thing. I guess it stems from the fact that the nomenclature has become a bit murky in recent years. Ray tracing often is used to refer to the initial algorithm developed by Whitted. This has pretty much all these limitations you mention, but it is an obsolete method. What usually gets mixed in with ray tracing in marketing and non-expert discussions is also path tracing and its various variations. These methods are capable of solving the rendering equation exactly for a huge range of scenarios. Unfortunately, some variants deal with certain situations better than with others and there is no overall best algorithm. But you can most certainly trace absolutely perfect soft shadows or complex caustics with these methods. Color spills are a walk in the park even for simple unidirectional path tracing. The main limiting factor right now is that these are all Monte Carlo methods and need to draw high numbers of samples for each pixel to converge. This is why fast and accurate denoisers are such a huge deal at the moment. They are another hack, a last one that ideally fades away as the number of rays per second increases. Beyond that, it "just" comes down to modelling surfaces and materials accurately enough to get a photorealistic image. As you mention photon mapping: it has pretty severe limitations, notably around the handling of specular paths and the biased artifacts created by the filter kernel (loght leaks, certain SDS-type paths aren't covered). There are some improvements like (A)PPM which converge to unbiased solutions with infinite runtime. At that point, path tracing based methods become more attractive w.r.t. runtime, memory requirements and implementation complexity.
- dfxm12 6y agoAt what level of advancement does a hack stop being a hack. Maybe when it becomes documented or otherwise supported?
- tshaddox 6y agoI think when we talk about something being a hack, we have a context in mind and a goal in mind, and the "hack" is just the way we achieved this goal that wasn't immediately obvious within this context. Of course, once this non-obvious solution becomes well-known, it's incorporated into the context and thus is no longer thought of as a "hack."
- Frost1x 6y agoHere's where it gets tricky. I do a lot of modeling and simulation work that is often incorporated in interactive 3D environments and the conversation I have over and over where people fail to realize is that you're always taking shortcuts to simulate some aspect of reality. The point of games is to get as close to reality that people suspend disbelief and can immerse themselves into the virtual reality you've created. Sometimes enough realism and immersion can be had at cheaper computational costs so these hacks (gross simplifications) are the way to go. Sometimes though, you realize if you can better model aspects of reality more accurately, you can get even better immersion a d suspension of disbelief. In the world where more sophisticated computational models are utilized in these environments because the results are important, used beyond suspension of disbelief and actually need to map reality because the simulation is trying to accurately represent some aspect of reality for a real world decision to be made, you still have to take clever computational shortcuts. As far as we know that will always be true unless you build a simulation environment that can fully represent our reality which might never be possible from an engineering or even scientific standpoint. So the discussion I often have is: what deviations from reality are we willing to tuck into our models and simulations? We already can't do all of existing science and we can't do what's beyond existing science so what tradeoffs can we accept in the subset of science for our simulation. Even raytracing doesn't go far enough because it takes a lot of shortcuts with reality. Pretty much none of these engines take into account relativistic distortions of light (some work has been done) and they frankly don't need to for almost every application outside of visualizing gravitational lensing and black holes accurately. In sure some bright physicist reading this is aware of even more faults in light and photon models and simulation approaches I'm completely unaware of. The onion peels quite far. The most obvious missing aspect for all environments is that we always simplify the actual geometry of the space because we have to.
- gmueckl 6y agoWell, there is a very obvious limit to the fidelity of your simulation if presence is your goal: human perception. You don't need to crank up any details beyond what you can possibly perceive when using the simulation. Gravitational space distortions are the least worrisome effects in that regard. Light diffraction and polarization play a much larger role in our environment, although not often and if it happens, the untrained eye tends not to notice. I am talking about things like birefringent materials (quartz crystals) and diffraction effects like light reflected off of a CD or shining through a thin piece of cloth. You can repeat the same process with each kind of sensory input a human can perceive and get to pretty hard limits on the requirements to get "perfect" realism. Human perception hasn't been researched in enough detail yet to give accurate bounds in all cases, but this is actively being worked on. The known bounds are mostly really conservative ones.
- Shivetya 6y agooh I think it was far earlier, I remember disk doctor days and editors letting you change values if not finding hidden commands to give you more power. Heck even yanking a floppy out to avoid a death was not uncommon with some games.
- ceejayoz 6y ago> That's one of the things I loved most about games in the 90s. Everything is a pile of hacks and tricks. Command and Conquer: Red Alert had a rules.ini file you could tweak pretty much anything on. You could give an infantry unit rapid-firing cruiser artillery cannons that'd lay waste to anything within a couple screens in seconds. Much fun was had.
- walexander 6y agoYou could do a similar style of hacking in Dark Forces 2, which had "cog files" that were controlled client side and let you change the projectile of any weapon. At first it was fun to replace your pistol bullets with rockets, or have your rocket launcher shoot light sabers. Eventually we realized you could actually make structures like bridges and stairs shoot out of your weapon, so it created this minecraft/gary's mod meta game of building platforms and structures out of your weapons, a decade before those came out. Fun times and definitely helped me on my career towards software.
- teamonkey 6y agoMore than just config files, Cog was a powerful event-based scripting language https://www.gamasutra.com/view/feature/131641/adding_languages_to_game_engines.php https://www.gamasutra.com/view/feature/131641/adding_languag...
- allan-a 6y agoThis was my main gateway drug into programming. I would love disclose some of the best hacks that I came up with someday! This game was one of the best FPS games ever.
- skocznymroczny 6y agoDoom was configurable like that with a tool called Dehacked. I remember mod packs for the tool, doing things like "mine layer", which set the rocket speed to 0 and made it cloaked, so that you could lay a minefield and then make the monsters walk into it. Or make the rocket launcher shoot lost souls, make chaingunners fly and many many more.
- 6y ago
- GordonS 6y agoAh, I remember decompiling Quake mods, and learning about how the AI worked, A* search etc. At that time I was still on dialup, and there was a fraction of what's available now on the Internet available - it was really useful for learning, and game mods was a big part of keeping me interested in computing.
- globular-toast 6y ago> Everything is a pile of hacks and tricks. It still is. Everything is. If an individual or company is working at a level that feels comfortable then what they're doing is easy now and anyone can do it. Everyone has to work at the level where it all feels like a hack because if you don't, someone else will.
- gagege 6y agoI've been working on a game and I've realized it's still all just a bunch of tricks. I think any art where you're trying to recreate/honor something in the real world in some way is all tricks and techniques. Everything from brushstrokes on a painting to plots in novels to special effects in movies and acting in movies is all just a bunch of tricks to make something look real. The better the trick, the less suspension of disbelief is required.
- schnevets 6y agoThere is a possibility that software engineers 50 years from now will continue to appreciate "shrinkwrapped" products from the late 20th century. There are less hacks and tricks these days because codebases are perpetually changing. If a company releases a tomorrow, and one week later a player discovers an exploit, it will likely get patched, repaired, and redeployed. So which version is "gold": the day 1 sale, or patch 1.01a? Obviously, it's a classic thought experiment, but games are a form of art where such revisionism is so prevalent.
- arendtio 6y agoActually, I hate it: Once you have discovered the hacks, there is no way back and those carefully designed illusions are lost for you, forever ;-) But yeah, the ideas some people come up to make something work are pretty amazing.
- bschne 6y agoI figure to a certain kind of player the appreciation for how it was done is just as, if not more beautiful than the illusion ever was.
- elihu 6y agoOne of the things I miss about those days is that the graphics and physics was done in software. That meant that the features weren't determined by industry standard APIs and what sort of hardware accelerators your customer had, they were just something you make up as you go along. Resolution and/or framerate were usually abysmal, but on the other hand you might try out some new game and it would do something weird and surprising that you didn't even know was possible. There's something satisfying about knowing that someone could just start with a blank editor and create a whole world from first principles, and that's how a lot of games were made.
- tomaskafka 6y agoI still remember 1999's Outcast with its software-rendered voxel engine, and level of detail absolutely outclassing every other game of that era: https://www.youtube.com/watch?v=6QgVGBqsJMA https://www.youtube.com/watch?v=6QgVGBqsJMA