Buckle your seatbelt, secure your tray table, and open your window shade. Now you can simulate flying anywhere in the world as a commercial passenger, from takeoff to touchdown. Terrain, weather, and realtime sun position included. Don't worry, the latest release now features legs, so you can get up and go to the bathroom on longer flights. Enjoy!
This really made my day! I was a flight simulator engineer for 20 years and it brings back fond memories of a project I worked on.
Simulating the passenger cabin is important for crew evacuation trainers. Those are large, lifelike fuselage sections that you put on a hydraulic motion platform and run flight/crash/evac training scenarios.
To get a realistic out-the-window view, the trainers I worked on had a PC monitor behind each window opening. We used FlightGear in a master-slave setup: the master node simulates physics and feeds accelerations to the hydraulic platform, and the slave nodes generate out-the-window visuals for each window.
So if I wanted to create something that could reliably jostle and move in response to a master physics node, like a racetrack simulator, cabin simulator etc. What kind of distributed controller scheme we looking at? Master node with strong compute, hydraulics with microcontrollers type set up?
Hardware-wise, the industry has moved from hydraulic to electric motion jacks. It's great if you can avoid pumping high pressure hydraulic fluid. You want to think about capacity to handle the mass you'll put on top. Also, number of degrees of freedom and dynamic response (can it give you twitchy movements, can it also give you large accelerations by massively tilting the platform).
You have a layer that translates the desired accelerations from a physics model (say at 60 Hz) into filtered motion jack length commands (say 400 Hz or more). You don't need massive compute, just keep the latency down and ensure a steady stream of commands to the jacks.
The experience you get from the simulator comes from multiple systems hitting your senses at the same time. You yank a joystick and expect to feel a motion cue and see something in the visual system. For flight sims used in pilot training, you need a response within 150 msec and you want the motion and visual to be in sync to avoid motion sickness.
A car simulator would be a lot more twitchy than passenger aircraft, 150 msec may be too slow.
Please add the ability to sit in a window seat. It'd be awesome to also be able to pick a seat.
Also, the login UI is annoying, it'd be nice if it was hidden by default.
Another thing that might be fun to add is to see if you can get a data feed of filed routes used by airliners for the chosen route and fly that route instead of simply flying direct.
You know what? I had fear of flying. I did a training with a pilot in a simulator, but it was in the cockpit. I don't have fear of flying in a simulator or in the cockpit. I have fear of flying as a passenger, I'm sit in a chair. That's what I would have liked during my training. I told that to Air France and they did not understand but this might seriously be useful.
Also useful for people who want to ride along with someone currently on a plane. "Honey, you are over Kansas right now!"
Useless things tend to be deeply useful to a select few.
I am loving this "re-weirding" of the internet. For the younglings, this is very much the sort of pet project that would bubble up in early internet days. No startup raising money, no pain point necessarily being solved, just one person's idea lovingly rendered to life.
I should have known he had views like this. I've heard similar things expressed and I believe this sentiment personally, but I'm happy to know I can add his name and the original quotation to my archives.
UAL used to let you listen into the cockpit to ATC chatter: https://news.ycombinator.com/item?id=17656352 — I understand this was really helpful for calming some passengers' nerves during flying.
Had a pilot last week who told us exactly how the queues work at O'Hare, and explained that we were getting moved because another pilot saw that parts of another plane's brake system were laying on the ground in the middle of the runway.
He quickly corrected himself to say "debris" instead of "brake parts" which really makes me wonder if there's a mandate to not say anything that might suggest that a plane malfunctioned.
BA (and presumably other airlines) run fear-of-flying courses where you have some ground sessions with flight crew explaining what happens during takeoff/landing, what noises you might hear, etc. Then you go up for a short flight as a passenger to sort of re-enforce what you learned earlier.
Interesting, thanks for the idea. Would be pretty cool if this app did have some real-world applications, beyond being a bit of a meme app. Thanks for the comment!
I don't think you can completely eliminate this as people naturally don't like giving up their agency which is usually going to produce at least a low level of anxiety.
Agency and information in a way. I actually feel safer in a tiny 4 seater plane than a jet, even though objectively that's probably backwards. Being able to look at all the parts of the plane, how the movements derive from the pilot's actions, actually see out the front, it is more reassuring. More similar to being a passenger in someone's car. It probably doesn't hurt that it is easier for my mind to imagine a Cessna gliding gently to earth than a passenger jet.
I’m not at ease in an airplane. I rarely fly but i actually like it, but I’m really anxious.
What helps me is always taking a seat near the wings. First that’s where the plane moves the less. And moreover, it’s pretty reassuring watching them supporting the plane in their great stability, they always move way slower than the cabin.
Plus you can alert the crew if something's off before take off (eg. loose/missing screws/panels). A forner colleague of mine did that, and got to see the entire maintenance crew come out for an impromptu RCA and incident response.
The rule on liquids is 100ml and I don't think it applies to semen. I object to the naked scanners, especially if kids have to be scanned. That'd be mass producing CSAM. Is TSA above the laws on producing CSAM?
It's missing a few elements for realism:
- Passengers on either side of you taking both your armrests
- Continually crying baby seated just in front of you
- Person behind you coughing without covering mouth every 2 minutes
- Kids fighting for control of a tablet across the aisle from you
- Tiny cans of Coke
This immediately came to mind for me as well. The game straddles "game" and "performance art", and the totally straight-faced delivery really makes it stand out.
That one predates vibe coding by quite a few years though: a lot of hard work went into Goat Simulator, and there were no doubt other more obvious choices for how the developers spent their time, but they still chose to make Goat Simulator.
Also it's a geninue game with goals to complete, mainly cribbing from games like the Tony Hawk's series.
Two separate categories: Meme games[*] don't have to be vibecoded, not all vibecoded things become meme games.
[*] A "meme game" being a game which is tries to be ridiculous and is predominantly popular because of social media exposure. I would include games like Goat Simulator, Horse Magnifier, Squirrel with a Gun, QWOP, Untitled Goose Game, Trollface Quest...
From what I remember it was a project for Coffee Stain (the studio) to train up/onboard new hires, having started as a modding team with Sanctum for UT3 and later a full standalone release. Then they ran with it for a while after it struck a chord with people willing to give them money.
Every once in a while I would put Flight Simulator 2020 on my desktop and work on my laptop. I found that watching the digital world pass by while working put me in a slightly different headspace. Not sure it increased productivity but working while sitting in an actual plane does provide me a bit of focus.
Train ride videos on YouTube scratch some of the same itch.
Nonwithstanding the human fascination with simulation and simulacra, Airplanes and Air Travel represent a fascinating cultural touchpoint with much insight and depth to plumb depending on what aspects you simulate.
For example, think of a history class charting flight from the Wright Brothers, through the Golden Age of Aviation, right to the present day. Even showing the drastic differences pre and post 9/11 by reference to the processes and experiences of commercial airline travel would represent a worthy pedagogical endeavour. We do a lot more to achieve a lot less in terms of making 'history come alive' currently.
A game where you're narcoleptic and keep falling asleep at random unannounced times. While taking a flight from A to B, you wake up at different times entirely, on the same (or an equivalent) flight, seeing whatever was going on back then. Sometimes it's a flight with the Wright Brothers, sometimes you're flying during WWII, and sometimes you might just be on the plane heading towards the twin towers (right as you wake up back on your own original flight). Maybe even some mini-games where you might have the chance to foil a hijacking in progress, or maybe you need to be "the doctor on the plane", or maybe you wake up as the guy that's carrying the crying baby. You never know when, where, or who you'll wake up as.
well, I'm the kind of person who stares out the window for the entire flight, so to me this sounded fun to make and recreate that experience. but really, no point at all to this haha
well, actually I had tested in iphone and did some things to but back on mesh size & also streaming terrain so that I'm not overrendering textures. I have not tested on all devices as I only have one mobile device. The tradeoff is render quality - maybe I'll make a lower triangle or 2K texture mode?
Hahaha this is awesome. I can teach what it's like to be on an airplane to my friend who has never flown before.
Currently playing on my usual route, ICN -> HKG. The flight path is too ideal. Due to airspace restrictions in china, almost every flight has to divert over taiwan in real life, but this one cuts thru mainland china.
Wow, this is so unbelievably unoptimized. The sound of my computer fans makes it so immersive.
The shadow map is being rendered twice with 300+ draw calls and 1M+ triangles. Full resolution GTAO is probably even more expensive with a lot of fetches per texel. I'm sure there are a ton of low hanging optimization fruits and I'm confident claude et. al can fix all those issues, but if you don't know where to look and never profile the app then you get a vibe coded unoptimized mess.
It's a work in progress. I have cut down on the original mesh size by quite a bit but continue to do that. I also fade out the resolution of the map tiles as you approach the horizon so you aren't loading ihgher res satellite images than you need. I've run entire flights on my 2022 mac pro with no issue, but as this is a side project it remains not as optimal as it could be. Any suggestions for order of operations / what should be fixed next are welcome :-)
awesome, I will look at each of these, one at a time. my bigger issue today was that I was not expecting so many people to try the app and have unoptimized bandwidth costs. bringing those down first and then will be looking into optimizations like you have listed. I honestly just built this thing for fun & it was running fine for me. now that others are using it it's time to start thinking about performance more. Appreciate the thoughts.
One thing that really kills this for me is it just takes a straight line flight. It really needs to take flight data and pick a track that performed that flight so that turns occur.
Did the product manager look at this before it was released? We have a lot of work to do here! We need to create a sprint for optimizing it, otherwise no one will like it. Be sure to put the texel fetches in a user story. This should be top priority. Lots of users are very angry.
Kindly simulate two hours of queuing at the Schengen border, a coin toss minigame over whether security is “laptops in” or “laptops out”, bonus if your belt pings, lounge access roulette, wailing infant(s), guy two rows back with the worst most productive cough you ever heard (still got that old N95?), retaining status planning spreadsheets, baggage systems failure at Denver, people using the loos in their socks, unstaffed rentals counter, tired neighbour using your shoulder as a pillow, Franz Kafka’s “The SSSS Boarding Pass”, guy who won’t close the damn window shade, creepily accurate PRC face recognition systems, shuttle bus orienteering challenge, Emerald ass-kissing, lost at Doha, cabin uncomfortably warm mid-flight, world’s most disappointing beef, go-around three times at Queenstown and diverted to Christchurch again, passport reader unresponsive, 7.1kg carryon rule nazi, 30 minutes of taxiing, US domestic “lounge” with no facilities at all and nowhere to sit, drunk British lady, gigantic American guy, bassinet accident, Tight Connection Sprint, can’t quite name the minor TV celeb in 1A, Hong Kong Monsoon Warning, crew yelling “sit down sir the seatbelt sign is still on”, toilet scrum during long final after breakfast on the redeye, and (my favourite) the consequences of sitting in an exit row and when they give you the briefing and ask if you’re willing to follow these instructions in an emergency, saying brightly “Looking forward to it!”
It needs a Health HUD with indicators for boredom, thirst, hunger, bladder distention, etc. Also cabin indicators for noise, temperature and humidity, CO2, methane, smells, etc.
you missed (not a complete list): the TSA travelling over to your country to give to their "was it as good for you as it was for me" inspection on your home soil, the non stop 16h conversation between two strangers right behind you, 45min of bus ride following the 30min of taxi, followed by catching an uber between the international and domestic terminals, carry-on luggage overhead tetris, people somehow coming on the plane with 4 or 5 large pieces of carry-on, the "can you swap seats with me and my middle seat because my partner/child is next to you" tap on the shoulder, the "Missed The Tight Connection" walk of shame, the overnight in a cheap hotel miles out of town because it was the airlines fault, the body odour buddy, the snorer, the last minute departure gate change, the 2h on the tarmac at ATL due to thunder storms, and the ironic applause when a nervous pilot puts you all down rather bumpily.
This is so cool! For someone unfamiliar with modern game design but interested in building something similar, how did you get the assets such as the seats for the game? Are they open source, vibe-coded or made by hand? Would also be curious what the underlying game engine is, or any other details you wouldn't mind providing. Thanks!
Impressive. I'm imagining the simulator being useful for emergency training. Like they have run out of the salmon in First Class and only have chicken left. Or the kid sitting between you and their parent has just thrown up--on you. But it needs security screening, baggage checkin, delayed flights, drunk passengers. Ah the joys of airline flight. Maybe all that could be added and Zoom could sponsor the game :-)
Waiting eagerly for the "crying baby" extension pack. The "get to your seat" MMO. And the "I want to pee, but the guy next to me is sleeping" campaign.
Also, inflightsimulator: 1980, with ashtrays and lethal weapon playing on dropdown TV sets
Or the passenger who is friendly and wants your window seat, but doesn't want to straight out say it. Then turns deranged when they find out they are in the middle seat for the whole flight.
What a great idea! How about, a kid behind kicking your chair, the person in front of you abruptly putting his seat back all the way, and a person of size next to you spilling into your seat.
Wow, at first, I thought "this is wonderfully silly" but within about 45 seconds of playing with it, I instantly wanted the window seat and thought, wow... I could see what it's like to fly over so many cities from above, just like with a window seat.
This is fun. I would love if it used real flights, and filled the cabin with the avatars of anyone else "on" that flight.
Slight bug report - might just be HN hug-of-death related - on Arc browser, mostly without it as the active tab, I seem to have been stuck over Slough for some time (an ignoble fate).
I believe Arc reduces resources allocated to background tabs, and I don't think it likes being a background tab.
I'd love to be able to click on the progress bar to jump ahead or back in the flight path. Perhaps the display on the back of the seats could show the actual flight path imposed on a map, and we could click anywhere on that flight path to move the plane there.
When selecting departing and arrival airports at the beginning, it would be nice to be able to click on the map to select the airport, useful if you don't know the airport code or the name.
Thanks for the suggestion. I could actually consider doing this - the flight itself is procedurally generated, so it's entirely possible.
As for the second suggestion, it actually is possible now! but maybe it's not obvious and I should change the style or something to make that more clear.
The rules of the simulation and the rules of the flight crew are different things. The simulation should let me do anything I could do on a real flight. Including the consequences for breaking a rule.
The comments asking for more misery are hilarious. Armrest thieves, crying babies, the guy coughing without covering his mouth, tiny cans of Coke. But honestly, the most realistic thing would be the seatback map being wrong and the flight path not matching the real world. That's the true passenger experience
Absolutely love it and the details speak loads about the hard work that you've put in. I love the part where we can actually get up and experience the complete airplane -- felt like I was actually in a flight from Boston to Seattle!
I don't know if Google Maps/Earth expose the layout via external APIs, but if you could find a way to get the outer world to match the real view - that makes it 100/100.
I had looked a bit into doing the realtime views and actually had it working. I could get the real aircraft heading and orientation. I was able to get it for free with community ADS-B aggregators (though data was incomplete), but doing long-haul flights was difficult because there's no ground coverage. Even sites like flightaware I believe estimate a lot of things when over oceans. But, Maybe I will look back into it!
I really appreciate your comment.. thank you for playing!
This is awesome. You know, you should turn this into a game where you play one of the flight attendants and you have to deal with all the crazy shit that happens with passengers on a plane - like people fighting, being too drunk, etc.
This is brilliant. Future enhancements can match the inner design of the plane to the actual plane used for that route by that airline, and the ability to choose economy, premium plus, busines class, etc...
I like how much work you've put into just being a passenger :) I'm building a little world in the browser myself, so I like finding projects like this.
Nice concept but It would've been better if you don't force people to sign in with the auth box always shown I had to delete it from the node tree using chrome devtools. also why not enable WASD keys or even arrow keys to move?
Sitting all alone in the plane I'm reminded of the movie Knight and Day (Tom Cruise, Cameron Diaz) where they are nearly the only passengers (with some adversaries).
I was hoping for a very detailed menu with more flight avionics in the in flight entertainment screen but I guess the speed and altitude in the HUD is all I get. I want to know the exact plane T am flying in
This cannot be a true passenger simulation unless it also contains full airport experience, complete with TSA cavity search and CBP detaining you or denying entry for the pettiest reasons imaginable (in case of the US).
This is truly horrible, no misery left unimplemented; you're not even in a window seat. Well done. (I think the young people say, "thanks, I hate it.")
That said your seatback map is better than anything on any airliner I've ever been on.
Next up: Airport Simulator! Enjoy security, customs, and the inevitable panic of missing your gate across more than 50 international airports around the world!
It's lovely, but its flight physics model could use some updates. For example, there's no SkyMall, no Biscoff cookies, and no flight attendant (or on-screen video) giving a humorous, memeable explanation of the plane's rules and safety features.
Simulating the passenger cabin is important for crew evacuation trainers. Those are large, lifelike fuselage sections that you put on a hydraulic motion platform and run flight/crash/evac training scenarios.
To get a realistic out-the-window view, the trainers I worked on had a PC monitor behind each window opening. We used FlightGear in a master-slave setup: the master node simulates physics and feeds accelerations to the hydraulic platform, and the slave nodes generate out-the-window visuals for each window.
reply