Age of Empires: 25 гадоў пошуку праблем з C++ [відэа]
\u003ch2\u003eAge of Empires: 25 гадоў пошуку праблем з C++ [відэа]\u003c/h2\u003e \u003cp\u003eГэты відэакантэнт забяспечвае перадачу візуальнай і слыхавой інфармацыі, прапаноўваючы цікавы спосаб вывучэння складаных тэм і канцэпцый.\u003c/p\u003e \u003ch3\u003eЗмест
Mewayz Team
Editorial Team
Эпоха імперый: 25 гадоў пошуку праблем з C++ [Відэа]
Age of Empires ужо больш за два дзесяцігоддзі змагаецца з адной з самых складаных задач вылічэнняў у рэжыме рэальнага часу: даставіць адзінкі з пункта А ў пункт Б, не выглядаючы зусім дурным. Пастаянная барацьба легендарнай франшызы RTS з алгарытмамі пошуку C++ раскрывае глыбокія ўрокі аб маштабаванасці, тэхнічнай запазычанасці і дызайне сістэмы, якія кожны сучасны распрацоўшчык праграмнага забеспячэння павінен засвоіць.
Нядаўна з'явілася падрабязнае відэа, якое паказвае эвалюцыю пошуку шляхоў у Age of Empires, ад арыгінальнага выпуску 1997 года да Age of Empires IV, паказваючы, як нават інжынерныя каманды сусветнага класа змагаюцца са складанасцю, калі сістэмы павінны маштабавацца. Для тых, хто стварае праграмнае забеспячэнне для бізнесу, кіруе аперацыямі або праектуе працоўныя працэсы, паралелі ўражваюць.
Чаму ў Age of Empires было так складана вырашыць задачу Pathfinding?
Знаходжанне шляху ў стратэгічнай гульні ў рэальным часе - гэта не тое ж самае, што пракладванне маршруту ў адным кірунку GPS. Age of Empires павінна разлічваць шляхі перамяшчэння для сотняў — часам тысяч — юнітаў адначасова па дынамічна зменлівай мясцовасці, пазбягаючы пры гэтым сутыкненняў з будынкамі, дрэвамі, іншымі юнітамі і адзін з адным. Усё гэта павінна адбывацца за мілісекунды для бесперабойнага гульнявога працэсу.
У арыгінальнай Age of Empires выкарыстоўваўся мадыфікаваны алгарытм A* (A-star), залаты стандарт для пошуку шляху на аснове сеткі. Але адзін толькі A* выгінаецца пад ціскам, калі вы перамяшчаецеся ад некалькіх адзінак да вялікіх армій, якія перамяшчаюцца па складаных картах. Кампанія Ensemble Studios, першапачатковы распрацоўшчык, выдаткавала гады на выпраўленне крайніх выпадкаў: блокі ходзяць па крузе, захрасаюць на сценах, утвараюць мудрагелістыя лініі конга праз вузкія праходы або проста адмаўляюцца рухацца ўвогуле.
Асноўнай праблемай з'яўляецца камбінаторны выбух. Кожная дадатковая адзінка на карце памнажае вылічальны кошт. Кожны размешчаны будынак змяняе графік навігацыі. Кожны кадр патрабуе пераразліку. C++ дае распрацоўшчыкам нізкаўзроўневы кантроль над памяццю і прадукцыйнасцю, але нават гэта перавага мае межы, калі фундаментальны алгарытмічны падыход не можа паспяваць за маштабам.
Якія алгарытмічныя падыходы спрабавалі распрацоўшчыкі за 25 гадоў?
Відэа апісвае захапляльную эвалюцыю стратэгій пошуку шляхоў па франшызе:
- Basic A* Search (1997): першапачатковая рэалізацыя дастаткова добра апрацоўвала невялікія групы, але хутка дэградавала з-за адбору ў армію, ствараючы сумнавядомую памылку "затрымаўся вясковец", якую гульцы памятаюць дагэтуль.
- Іерархічны пошук шляху: у пазнейшых ітэрацыях была ўведзена шматузроўневая навігацыйная сетка, якая разбівала карты на сектары, каб падраздзяленні маглі планаваць маршруты на высокім узроўні, перш чым лакальна ўдакладняць перамяшчэнне — значна зніжаючы вылічэнні на кадр.
- Палі плыні: замест вылічэння асобных шляхоў для кожнага блока, алгарытмы палёў плыні вылічваюць адзіную карту накіраванасці, якой могуць прытрымлівацца ўсе блокі ў групе, ператвараючы праблему O(n) у нешта бліжэйшае да O(1) на адзінку.
- Паводзіны рулявога кіравання і лакальнае пазбяганне: Гэтыя сістэмы, размешчаныя на вяршыні глабальнага пошуку шляху, апрацоўваюць пазбяганне сутыкненняў, каб адзінкі не заціскаліся адзін праз аднаго і не складаліся на адзінкавыя пліткі.
- Гібрыдныя сістэмы ў AoE IV: апошняя версія спалучае некалькі метадаў — навігацыйныя сеткі, палі патоку і лакальнае кіраванне — у шматслойную архітэктуру, якая дэлегуе розныя маштабы руху розным падсістэмам.
Кожнае пакаленне гульні па сутнасці аднаўляла сваю сістэму руху з нуля, працягваючы з цяжкасцю здабытыя ўрокі аб тым, што ламаецца ў маштабе.
Чаму могуць навучыцца каманды бізнес-праграмнага забеспячэння з Game Engine Pathfinding?
The Age of Empires pathfinding saga - гэта майстар-клас па праблеме, з якой сутыкаецца кожная расце кампанія: тое, што працуе ў малым маштабе, разбураецца ў буйным. Ручны працэс, які апрацоўвае 10 кліентаў у тыдзень, згортваецца на 500. Электронная табліца, якая адсочвае адзін праект, становіцца некіравальнай для 50. Рабочы працэс зацвярджэння, прызначаны для каманды з 5 чалавек, стварае вузкія месцы для 50 чалавек.
💡 DID YOU KNOW?
Mewayz replaces 8+ business tools in one platform
CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.
Start Free →"Самая небяспечная тэхнічная запазычанасць - гэта сістэма, якая працуе бездакорна - пакуль яна раптам не працуе. Пошук шляхоў Age of Empires працаваў бездакорна для 8 адзінак. Ён разваліўся для 80. Прадпрыемствы сутыкаюцца з дакладна такой жа абрывам кожны раз, калі яны пераадольваюць парог ручнога працэсу."
Рашэнне, да якога сышліся распрацоўшчыкі AoE, — шматслойныя модульныя сістэмы, у якіх розныя кампаненты вырашаюць розныя маштабы праблемы, — непасрэдна адпавядае таму, як павінны быць распрацаваны сучасныя бізнес-аперацыйныя сістэмы. Вам патрэбна стратэгічная маршрутызацыя высокага ўзроўню (кіраванне праектам, размеркаванне рэсурсаў) у спалучэнні з выкананнем на мясцовым узроўні (прызначэнне задач, штодзённыя працоўныя працэсы, аўтаматызаваныя ўзгадненні), якія працуюць узгоднена.
Як модульная канструкцыя сістэмы прадухіляе збоі ў маштабаванні?
Прарывам у пошуку шляху AoE IV не было ніводнага лепшага алгарытму. Гэта была архітэктура. Падзяліўшы задачы — глабальную навігацыю, групавое перамяшчэнне, індывідуальнае рулявое кіраванне, вырашэнне сутыкненняў — кожны ўзровень можна аптымізаваць незалежна, не дэстабілізуючы іншыя.
Менавіта таму прадпрыемствы, якія працуюць з адключанымі інструментамі (тут CRM, электронная табліца там, ланцужкі электроннай пошты паўсюль), сутыкнуліся з тымі самымі сценамі, якія ўразіла эпоха імперый у 1997 годзе. Калі ваш канвеер продажаў, кіраванне праектамі, працоўныя працэсы кадраў, выстаўленне рахункаў і зносіны з кліентамі - усё гэта жыве ў ізаляваных сістэмах, кожнае "падраздзяленне" ў вашым бізнэсе запускае ўласны пошук A*, не ведаючы пра іншых. У выніку атрымліваецца бізнес-эквівалент вяскоўцаў, якія ходзяць па крузе: дубляваныя намаганні, прапушчаныя перадачы і аперацыйны хаос.
Уніфікаваная бізнес-аперацыйная сістэма — такая, у якой модулі выкарыстоўваюць агульны ўзровень навігацыі — пазбаўляе ад гэтых сутыкненняў гэтак жа, як поле патоку пазбаўляе ад лішніх вылічэнняў на адзінку.
Часта задаюць пытанні
На якой мове праграмавання напісана Age of Empires?
Франшыза Age of Empires у асноўным створана на мове C++, якая забяспечвае нізкаўзроўневае кіраванне памяццю і вылічальную прадукцыйнасць, неабходную для вылічэнняў у рэальным часе ў тысячах адначасовых адзінак. C++ застаецца дамінуючай мовай для крытычна важных для прадукцыйнасці гульнявых сістэм.
Чаму гульнявыя блокі RTS па-ранейшаму маюць праблемы з пошукам шляху ў 2026 годзе?
Пошук шляху ў рэжыме рэальнага часу для вялікіх груп у дынамічных асяроддзях застаецца цяжкай вылічальнай праблемай. Прастора пошуку расце ў геаметрычнай прагрэсіі з павелічэннем колькасці адзінак, складанасці мясцовасці і памеру карты. Сучасныя рашэнні нашмат лепш, чым падыходы 1997 года, але крайнія выпадкі сутыкнення падраздзяленняў, вузкіх праходаў і перамяшчэння фармацыі па-ранейшаму кідаюць выклік нават самым сучасным рэалізацыям.
Як пошук шляху звязаны з аптымізацыяй бізнес-працэсаў?
Абодва дамены працуюць з агентамі маршрутызацыі (падраздзяленнямі або задачамі) праз складанае, зменлівае асяроддзе да дасягнення мэтаў, пазбягаючы пры гэтым канфліктаў. Дзейнічаюць тыя ж прынцыпы: наіўныя падыходы даюць няўдачу ў маштабе, модульныя архітэктуры пераўзыходзяць маналітныя, а шматслойныя сістэмы, якія аддзяляюць стратэгічнае планаванне ад тактычнага выканання, пастаянна даюць лепшыя вынікі, чым рашэнні з адным алгарытмам.
Ваш бізнес заслугоўвае такой жа архітэктурнай эвалюцыі, якую Age of Empires удасканальвала 25 гадоў. Mewayz аб'ядноўвае 207 інтэграваных модуляў — ад кіравання праектамі і CRM да кадраў і выстаўлення рахункаў — у адзіную аперацыйную сістэму, прызначаную для маштабавання разам з вамі, а не супраць вас. Перастаньце накіроўваць свае аперацыі праз адключаныя інструменты. Пачніце бясплатную пробную версію на app.mewayz.com і дайце вашаму бізнесу неабходнае абнаўленне.
Try Mewayz Free
All-in-one platform for CRM, invoicing, projects, HR & more. No credit card required.
Get more articles like this
Weekly business tips and product updates. Free forever.
You're subscribed!
Start managing your business smarter today
Join 30,000+ businesses. Free forever plan · No credit card required.
Ready to put this into practice?
Join 30,000+ businesses using Mewayz. Free forever plan — no credit card required.
Start Free Trial →Related articles
Hacker News
9 Mothers (YC P26) Is Hiring – Lead Robotics and More
Apr 7, 2026
Hacker News
NanoClaw's Architecture Is a Masterclass in Doing Less
Apr 7, 2026
Hacker News
Dropping Cloudflare for Bunny.net
Apr 7, 2026
Hacker News
Show HN: A cartographer's attempt to realistically map Tolkien's world
Apr 7, 2026
Hacker News
Show HN: Pion/handoff – Move WebRTC out of browser and into Go
Apr 7, 2026
Hacker News
AI may be making us think and write more alike
Apr 7, 2026
Ready to take action?
Start your free Mewayz trial today
All-in-one business platform. No credit card required.
Start Free →14-day free trial · No credit card · Cancel anytime