The South Korea-based Very Good Tour agency, which organized the trip, said the boat — a 70-year-old vessel built in the former Soviet Union — had been on its way back after an hour-long night tour on Wednesday when the accident happened.
Nineteen South Koreans and two Hungarian crew members — the captain and his assistant — are missing. The tour party had consisted of 30 tourists, two guides and a photographer on a package tour of Europe.
The sunken boat was located early Thursday near the Margit Bridge, not far from the neo-Gothic Parliament building on the riverbank.
Video shown by Hungarian police showed the sightseeing boat, identified as the Hableany (Mermaid), traveling closely side by side and in the same direction as a German-built Viking cruise ship as they approached the bridge Wednesday night.
The Hableany then appeared to steer slightly to its left, into the path of the 135-meter (443-feet) long cruise ship, which continued to sail on at the same speed. The two collided and the sightseeing boat was then seen tipping on its side between the bridge's two supports.
"As the Viking comes into contact with (the Hableany), it overturns it and in about seven seconds, as it turn on its side, it sinks," Police Col. Adrian Pal said.
Pal said it's unclear what caused the Hableany to steer into the path of the Viking. He said several people aboard the Hableany fell into the water after the collision. The South Korean government said none of those on board was wearing a life jacket.
Police said rescue operations were hampered by the rain and the fast flow of the rising Danube. The search for the 21 missing extended far downstream, even into Serbia, where the Danube goes after leaving Hungary.
The river, which is 450 meters (500 yards) wide at the point of the accident, was fast-flowing and rising as heavy rain continued in the city. Water temperatures were about 10 to 12 degrees Celsius (50-53 Fahrenheit).
Hajoregiszter.hu, a local ship-tracking website, lists the Hableany as having been built in 1949 in the former Soviet Union.
CCTV footage recorded on Wednesday night showed that the river was busy with boats of different sizes traveling in both directions.
Budapest has enjoyed a boom in overseas tourism in recent years. Long-haul flights from as far away as Dubai and Beijing increasingly fly visitors from Asia and the Middle East to the Hungarian capital, a relatively affordable but history-rich European destination.
Earlier, the news website Index.hu said one of those rescued was found near the Petofi Bridge, which is about 3 kilometers (2 miles) south of Parliament.
Police have questioned the Ukrainian captain of the Viking ship, but no details have been released. Authorities said both vessels' captains are experienced, with many years of service with their companies. South Korean officials said the tourists were not wearing life jackets.
Relatives and a team of 25 official rescue workers were on their way from South Korea to Budapest Thursday. The team of fire, navy and coast guard workers includes some who had been involved in rescue operations for the 2014 South Korean ferry disaster that killed more than 300 people — one of the country's worst maritime accidents.
Seoul's presidential Blue House said President Moon Jae-in has called Hungarian Prime Minister Viktor Orban to discuss rescue operations. Moon thanked Orban for the Hungarian government's rescue efforts, and requested further support for efforts to find the missing, treat the survivors and recover bodies.
The Blue House said Orban told Moon that more than 200 divers and medical staff are involved in the rescue efforts and that officials are planning to locate and hoist the ship.
Employees from the South Korean Embassy in Budapest were assisting Hungarian officials in identifying those rescued and the deceased.
Budapest's Disaster Management Office Chief Col Zsolt Gabor Palotai said the Hungarian army is setting up a pontoon near the capsized ship's wreck and divers will go into the Danube from there.
The Very Good Tour agency said the tourists left South Korea on May 25 and were supposed to return June 1.
Most of them were family groups, and they included a 6-year-old girl. Her status wasn't immediately clear but she didn't appear on a list of survivors provided by the tour agency.
Senior agency official Lee Sang-moo disclosed the identities of the seven rescued South Koreans — six women and one man, aged between 31 and 66. The company is arranging for family members of the tourists to travel to Hungary as soon as possible.
The Hableany is described on the sightseeing company's website as "one of the smallest members of the fleet." It has two decks and a capacity for 60 people, or 45 for sightseeing cruises.
Mihaly Toth, a spokesman for the Panorama Deck boating company, said the Hableany was on a "routine city sightseeing trip" when the accident happened. He told state television that he had no information about any technical problems with the boat, which he said was serviced regularly.
The Margit Bridge connects the two halves of the city, Buda and Pest, with a large recreational island in the middle of the Danube. It is the bridge just north of the famous Chain Bridge, a suspension bridge originally built in the 19th century that, like the Parliament, is a major tourist draw in the heart of the city.
The river flows south, meaning that survivors were likely to be swept through the well-populated, historic part of the city.
Index.hu reported that other riverboats shined spotlights into the water to aid with the search, and that a film crew operating on the Liberty Bridge farther down the river directed its lighting equipment toward the Danube to assist. In recent years, Budapest has emerged as a popular destination for film, television and other commercial video production.
Hyung-jin Kim reported from Seoul, South Korea. Associated Press writers Adam Schreck in Bangkok and Kim Tong-hyung in Seoul, South Korea, contributed to this report.