
Analog Dream Dev
@AnalogDreamDev • 5,097 subscribers
Tech Artist • Indie Dev • Building custom game engine 🎮 #indiedev #retrogaming Discord: https://t.co/z82Zt2rqIw
Shorts
Videos

Everything far away in a game engine can feel small, flat, and washed out. That is correct perspective, but it can make for some poor scenery sometimes. Two features I've added to my engine try to fight against that: Spatial Recession magnifies the distance. After a vertex is projected I push its screen position outward from center. Near geometry is untouched. It only moves x and y, never depth, so nothing sorts differently and nothing z-fights. The result is a long lens bolted onto the far half of a wide one: the tower and the ridgeline loom instead of receding, while I keep the wide field of view I actually play in (FOV is identical in both of these examples). Dimensional Falloff is four distance ramps on the surface itself. Lighting contrast flattens so distant hills stop having a hard lit side and a hard dark side, which is what haze does in real life. Color then desaturates toward its own brightness to fake more distance. Then that desaturated color is pushed, and that is the one doing most of the visible work here. Last is texture detail, with a custom MIP value based on distances. All of it keys off real radial distance from the camera rather than depth This is so it stays put when you turn your head. Performance cost is next to nothing. The recession is two lines in the vertex shader. The falloff is a few lerps at the end of the pixel shader, which was already computing that distance for the mip bias anyway. Quite happy with the results, what do you think? #gamedev
Analog Dream Dev81,033 görüntüleme • 2 gün önce

Most of the time I question my work. Rarely, I made something I'm really proud of. I'm proud of this. Months of coding my own game engine, & now I can make scenes like this. Every aspect here is of my own making which is a really cool feeling. Would you play a game like this?
Analog Dream Dev43,211 görüntüleme • 13 gün önce

Retro Game Engine Update 🔥 Exploring a Spatial Compression system in my game engine. Instead of changing object scale, the renderer subtly compresses distant depth in the vertex shader before projection. The goal is to make far-away spaces feel more scenic and theatrical, like a matte painting or miniature set,while keeping nearby space physically grounded and navigable. Same exact scene with this on/off for comparison. What do you think?
Analog Dream Dev102,013 görüntüleme • 4 ay önce

Only 250 days ago I decided I was going to try and write my own custom game engine from scratch. Might not look impressive, but I created everything here, have learned so much, & am finally about to start making my first solo-dev game. What do you think? #gamedev #indiedev
Analog Dream Dev41,318 görüntüleme • 2 ay önce

Let me explain what I'm doing here for those who are interested. I've been building a retro-style D3D12 game engine from scratch, and recently implemented a "Spatial Compression" effect. Essentially its a technique that makes distant geometry appear larger than standard perspective projection would, giving scenes a telephoto compression feel without changing the camera FOV globally (to keep things "normal" when close to the camera). The goal: foreground geometry completely unchanged, objects beyond a configurable start distance progressively scaled up, with a smooth power-curve falloff. The solution: Once the full view-projection transform has been applied, I'm holding 2D screen coordinates. Camera orientation is already resolved at that point, so it's done its job. Scaling those coordinates outward from screen center is a pure 2D operation with no dependency on where the camera is pointing. The scale factor itself is derived from Euclidean world-space distance between the camera and the vertex (not a view-space value, which would rotate with the camera). Combined with the 2D application, both ingredients are fully rotation-invariant. Critically, only the XY screen coordinates are modified. Depth values are left completely untouched, so the depth buffer and any shadow calculations remain correct. I then tried inverting the effect for the opposite in interiors, leading to "Spatial Expansion".
Analog Dream Dev47,130 görüntüleme • 2 ay önce

120 days ago... I decided to make my own custom game engine. I'm just a technical artist, never done anything like it, just wanted to learn new things. Its been one of the most exciting things I've worked on in game dev. Can't wait to see what's next! What do you think?
Analog Dream Dev67,984 görüntüleme • 6 ay önce

100 Days... since I decided to try and make my own game engine. Not an engineer. Just a tech artist who wanted to learn & make something new. 100 days of excitement, despair, frustration, giddiness, sweat, & tears. Its been miserable. I've loved every minute of it. Its not amazing, I still have much to learn...but I made everything here and I'm proud of it. #gamedev #indiedev
Analog Dream Dev37,742 görüntüleme • 7 ay önce

I want TIME to be a first-class system in my custom game engine. I'm exploring fully deterministic tick-driven architecture that is replayable. No frame-driven/delta time dependencies. I easily scrub backwards in time w/ the click of a key, then let the sim continue onwards.
Analog Dream Dev32,344 görüntüleme • 6 ay önce

A mere 180 days ago I decided I was going to try and write my own custom game engine from scratch. Inspired by retro games and the warm glow of CRTs, Retro Game Engine was born. Might not look like much but I made everything here and I think its really starting to come along!
Analog Dream Dev20,528 görüntüleme • 4 ay önce
Daha fazla içerik yok.