ПредишенСледващото

Каквото и да е в крайна сметка Ghost Recon: диви местности, едно нещо то определено е перфектно изпълнена: пейзажа. Характерно за стила за джунглата в играта се заменя със заснежените планински върхове, пустини и солени блата.

Ghost Recon: диви местности - най-голямата игра света на всичко, което някога е създаден Ubisoft. Действието се развива в Боливия, и пиеса версия на страната се състои от 11 напълно различни "биоми". Реки, езера и потоци, заемат 16 квадратни километра.

По същество това е естествен ландшафт с богата растителност - дървета, храсти и др. Общата дължина на пътищата - 600 км (с изключение на няколко пътеки).

В света на играта е най-ефективна железница и 200 места: лагери, специални съоръжения, предни постове и 58 напълно процедурно генерирани села.

Първият прототип

След Ghost Recon: Future Soldier, ние започнахме да експериментирате с по-широк пейзаж. Взехме недвижими топографски данни и "подкараха" ги в DEM-файл за нашия двигател.

След това (с помощта на Худини), които сме събрали от инструментите за следните цели:

1. Автоматизиране taylennyh LOD-мрежи.

2. привеждане в съответствие на точките за разпространение растителност при условията: наклонът, височина, плътност, разстоянието между дървета и така нататък.

3. Определяне splattinga маски за разпространение на материалите в съответствие с установените правила, в съответствие с наклон, височина, твърдост и други, както и на другите маски за генериране на машина на света на играта като flowmap.

Прототипът, създаден от няколко месеца четири дизайнери и графичен инженер, беше много интересно.

Ние го изтича на Йети, двигател Войник на бъдещето на. Резултатите бяха добри, но ние решихме, че до известна степен ограничава амбициите ни, а ние "качва" в наковалня на Крийд серия на Assassin.

Прототипът ни помогна да осъзнаем, две неща:

- Компенсира необходимостта от технологията на пейзажа, който в същото време би било лесно да се учи за дизайнери и ще доведе до добри резултати.

Худини е достатъчно гъвкава и изключително ефективна: технически дизайнери да създават инструменти, себе си, без участието на инженери.

Моделиране с помощта на GPU

по реалистичен и разнообразен свят. Тази снимка е взето преди няколко месеца одобрението на технологията, и на него могат да се видят около това, което искахме да постигнем.

Имахме нужда от едно невероятно ниво на детайлност отблизо, далечни хоризонти и незабележимо преход между тези две състояния. Сега, ако развийте настройките на графични до пълна плътност може да достигне десет texels на сантиметър, и триъгълници - по една за всеки два сантиметра.

Като играч в Великите Диви Земи да отидете навсякъде, нивото на детайлност, трябва да е същият навсякъде.

инструменти за редактиране повлияят картата на височина, и в края на краищата се оказва с плаваща запетая направи мишена, която игра шейдър може да се използва директно.

Играта е създадена в няколко цикъла, така че би трябвало да могат да тестват различни идеи относно играта на двигателя, така че те могат да бъдат бързо и безопасно отвали разработчиците. За да направят това, те използват слоеве.

Данните, генерирани чрез механизма за създаване на света на играта, има така наречения "основния слой", както и всяка промяна се пада на собственото си "макро слой." Така че, ако направените промени се считат за излишни, съдържанието на "макро-пласт" могат лесно да бъдат отстранени, за да се върне картата на височина в първоначалното му състояние.

Ето един малък демонстрация на моделиране инструмент кота, която използва четка "копие / паста" и "изтриване".

Всяка модификация направени в Худини стоеше отделен слой. Този процес ще бъде обсъдено по-подробно по-долу, но сега е достатъчно да се отбележи, че в резултат на технически дизайнери може да промени пейзажа, тъй като им е угодно, и техните промени се правят в същото време показва правилно.

В последния слой съдържа всички редакции ниво дизайн, който ще бъде невъзможно да се направи с помощта на Худини.

разпределение материали

Както вече споменахме, на първо място, разработчиците са искали да се създаде реалистичен свят с постоянно качество графики. С поглед към големината на този свят, те разбраха, че направи всичко на ръка не работи, а процесът ще са частично автоматизиран. По-специално, те са решили, че материалите ще бъдат разпределени процедурно.

Инструмент за редактиране на терен, и така направи възможно да се промени картата на височина, в зависимост от посоката на нормалните да се създаде ясна облекчение. Това беше почти достатъчно до върха на планината от разстояние изглеждаше убедителен, но разработчиците са решили да развиват идеята.

Вместо да показва цвят игра показва, играчът пълнофункционален материал, но само ако са изпълнени определени условия, на базата на топологията, наличието на шум или прости реда код, който може да се справи пикселни шейдъри в реално време.

Според снимката по-горе се вижда, че във всяка настройка диви местности се състои от "стека" условия, чието спазване се оценяват последователно, от дъното към върха. Играчът вижда материала, съответстващ на последното правило в "стека".

Сега Ubisoft дизайнерите могат бързо да създават сцени, но с течение на преходите между тях все още са необходими много работа, която е била проблематична. това реши проблема, като се ръководи от една и съща философия на "условия".

В резултат на разпространението на материали, съхранявани в две текстури. Първият се нарича "splattingovoy" - то съдържа материали индекси за всяка позиция в картата на височина. Второ - "далновидна" външен вид прилича на снимки от Google Maps. Когато рендиране изтрит от играч на ландшафта, "перспектива", се използва като текстура карта на албедото.

Това ще бъде възможно да се раздели на ландшафта на по-малки фрагменти уникални за изолиране на тази зона, но след това играта ще отнеме твърде много пространство. Ние решен проблемът, както следва: Тези фрагменти се генерират от компютърната шейдър, веднага след като зрителното поле.

Така че ние успяхме да направи процеса по-малко взискателни на компютърни ресурси. Сега около 80% на ландшафта 4 използван материал вместо 12.

След това нов проблем с пътната мрежа. Генериране на тях, както и фрагменти от пейзажа, беше много скъпи от техническата страна, сякаш за да го съхранявате на диск, а след това играта може да не се кача на блу-рей.

В резултат на това беше решено да се поставите на пътя в пейзажа, а не да го създадете от обичайните геометрични обекти, но поради това че има нови предизвикателства, като например необходимостта да се създаде ефективен преход между материалите и детайлите на пътя става малко.

Първоначално ваденки място на екрана изглеждаше обещаващо, но скоро става ясно, че те са взискателни - твърде много ограничения. В допълнение, те не влияят на топологията на деформираните мрежите.

Виртуална текстура

За диви местности виртуална текстура е чудесна възможност за оптимизиране на графика - те смесване материали и всички прожекции стикери ще бъдат измамени, а по-рано. Плюс това, виртуални текстури много пъти вече използвани в други игри, така че всеки да знае как да се работи с тях.

Както при всяка друга технология представяне във виртуална текстуриране има своите недостатъци. За щастие, разработчиците на Ubisoft са успели да я подобрим.

Обикновено, каква част от виртуалната текстурата е необходимо, се определя, както следва: на сцената се разбива на парчета, а материалът се проектира върху повърхността на играча невидими за процесора.

Тази операция е трудно, особено ако върви играта на 4k-дисплей. Освен това, при създаването на диви местности терен теселация се използва, и се показват много малки триъгълници - ако използвате по-ниска резолюция odnobufernuyu рисунка, да започне да накуцва подробности.

Така че разработчиците са добавили допълнителна стъпка 3D-текстура обработка чрез Gbuffer. Докато пейзажа се изобразява с UV-сканиране, а броят на МИЦ като изходни променливи, демонстрира виртуален играч текстура зона може да се променя директно.

След това, в изчислителни шейдъри обработват съдържанието на текстура и изглежда липсващи части. Резултатите от обработка (само няколко байта) след това се предават на процесора.

За връзка: най-високите настройки графични плътност на пикселите във виртуалния текстури достига десет texels на сантиметър. Ако всичко беше предварително излъгани и кратко, че ще отнеме две петабайта дисково пространство.

Следователно, съдържанието се генерира по време на движение на играчите материали и стикери "смеси" невидимата му върху повърхностите, и веднага след това сгъстен чрез асинхронни изчисление.

Тогава там е нов проблем, започна да страда за свързване кадъра поради огромния брой на обработени процент плочки кадър по време на каране на камион може сериозно да падне. Ето защо, за актуализиране на виртуални текстури се разделят на няколко блока, а разработчиците са прекарали много време се опитва да намери среден път между добра честота на опресняване и ниска латентност преди появата на напълно изчислява текстура.

В края на краищата те са в състояние да замени шейдър преден план сцена виртуална текстуриране. За щастие, това решение е било взето в ранните етапи на развитие, така че доставката на необходимата памет могат бързо да бъдат коригирани. Както се вижда на снимката по-горе, с разделителна способност от 1080p текстура заемат 200 мегабайта или един гигабайт, ако решението за увеличаване на 4K.

Статистическите данни за ефективността на Xbox One

На снимката - средните стойности силно зависят от характера на сцената, но можем да кажем с увереност, че лечението е поставен в 8 милисекунди в повечето случаи. BC-компресия върви успоредно.

процесуални инструменти

Изисквания към инструментите беше много. Те трябва да се приложи в действие мащабен и по-плитко - ние постоянно казваше, че трябва да се контролира всичко - от най-малкия до най-големия камъчето скалата.

Също така от спецификата на инструменти повлиян, че на едно ниво, има огромни два отбора от Париж и Будапеща. В същото време те трябва да бъдат в състояние да промени решението си да експериментират.

Инструменти са станали на данните: те се създават и съхраняват по същия начин, както всички други елементи от света на играта. Инструментът - един вид мета-игра лице, което създава по същество по-малък.

И най-важното, с помощта на тези инструменти, за да го, необходими за извършване на дневната подкрепата на световната игра.

На първо място, инструменти за развитие се основават на условията на диви местности. Потребители промените настройките и да се променят условията, които създават съдържание. На второ място, те се определят: ако същите условия, винаги ще получи същия резултат. Освен това, с помощта на тези инструменти, всички създадени само по време на разработката на играта, а не по време на игра на сесията.

Всички инструменти са създадени с помощта на Худини.

Каква е Худини? Това е приложение за създаване на цифрово съдържание от SideFX. Той често се използва за създаване на специални ефекти, но това не е така - ние сме с помощта Худини създаде работна среда.

Какво е това? На първо място за създаване на прототипи - чрез Худини е много удобно бързо тестване на идеи. На второ място, както вече бе споменато, чрез него да се създадат инструменти. И дори Худини бързо previzualiziruet и оптимизира данните и дава удобни статистики.

Защо Худини, а не инструменти за C ++ / GPU? Това е по-бързо. На компилация не е нужно да прекарват времето си с всички инструменти - това е HDA (Digital Асет Худини, Худини цифрови активи), така че те лесно промени, а след това модифицирана версия на инструмента, след като е налице и на целия екип. Да, специално предназначени инструменти биха могли да бъдат по-бързо, но Худини е толкова гъвкав, че тя компенсира някои загуба в представянето си.

Пейзажът в Великите Диви Земи - основа за всичко останало, така че първото нещо е необходимо да се създаде обвивка за достъп до пейзажа на данните. В изображението по-горе - един пример на терена (500 метра), се мести в Худини. За него вече е на разположение няколко ощипвам, но това е само на долен слой.

Същото, само с всички материали. След това има ръчно отлята слоеве, и генерира (като пътища).

Различните части на света на играта, трябва да попълните съдържание, както и за това, също са били създадени специални инструменти. Геометрия не да се генерира директно през тях - само на дизайнерите са разработили удобен начин за разпространение на съществуващия актив.

В резултат на това около 80% от данните, е създаден, или преработени с помощта на Худини. Тъй като всички инструменти се основават на едни и същи условия, качеството на съдържанието е останала непроменена.

И дизайнери, за да спестят време и да се съсредоточат върху задачите, с по-висока стойност, които използват автоматизирани инструменти за решаване, че е невъзможно. Например, за да даде смисъл на света на играта, или създаване на сцени от елементите на играта среда.

Фондация за всички

Сега повече подробности за това как пейзажа наслагват други слоеве.

Пейзажът - това е нещо повече от просто по височина и текстура да се размажат. Разработчиците са екстраполирани това е много важна информация, която след това може да се използва повторно в други инструменти. Например, от данните за височина може да се извлече информация за твърдостта на материала и формата на горната част на предмета, тъй като те са полезни при определяне на положението на камъните и растителност.

Процесът беше малко по-автоматизирано. Така че, всеки път, когато потребителят промени топологията на терена, Худини се извършва изцяло от зависимите променливи. Файлове с актуализирани данни, изпратени към сървъра, така че те могат да използват веднага в други инструменти Худини.

Тъй като всичко се актуализира в движение, което премахва необходимостта за създаване и проверка на различни версии. Разработчиците отказа изобщо да се създаде версии и архиви и бяха много доволни от резултата.

Както можете да видите на пътя и техните околности процедурно генерирани. Както пътеки, растителност, скали. Последните два големи камъка поставени на ръка, а останалата част - без да се включва завоя на реката, окото вектор на водния поток. Дори селото - и тези, които се генерират.

Това е и жп линията с тунели и мостове.

Всичко това работи на по-глобален мащаб - пътищата са свързани, растителност и села, разпределени на картата, и така нататък.

Пътищата са прокарани, както следва: определени точка на картата, които след това процедурно свързват магистрали, въз основа на предварително определени условия. Първите резултати не са лоши, но все още не е достатъчно качество.

След прочитане на научна работа. посветени на пътища процедурни поколение, разработчиците започнаха да експериментират със създаването на анизотропна претеглена алгоритъм на най-краткия път между две точки. Резултатът отговаря на всички очаквания - това е необходимо да се работи не само с четирите посоки, както и с много, и с различни разстояния за всяка посока.

Достатъчно, за да се поставят върху няколко ключови точки на ландшафта и ...

Оказва мрежа от пътища и пътеки. Всичко се генерира по-рано, тъй като обработката на данни, свързани с пътищата, не е нужно много време.

Тези пътища се състои от следните елементи:

1. траекториите, които могат да се използват в най-различни други неща, като контрол на трафика AI.

2. тераформиране. Texture, височина карта, която след това се наслагва над пейзажа.

3. да се размажат. Там се получава текстурата маска за актуализиране на ландшафта материали.

4. мостове. Road г. алгоритъм може да ги накара да пресече реката, ако това е най-ефективният начин.

Разработчиците имат инструменти за ръчно създаване на стикери, електропроводи и огради около пътищата, но със създаването на автоматизираните системи за маршрутизация пътна мрежа, те разбраха, че те биха могли да се интегрират в нея всички елементи, които обграждат пътя, така че те също са били поставени процедурно.

Железници почти същото, но с няколко други основни условия. Наклонът те имат по-малко завои - гладка, по мостове и тунели.

Също така, железниците са били да се намесва в обикновените пътища, строго под ъгъл от 90 градуса, така че да не създават проблеми с трафика.

16 квадратни километра игра света е покрита с вода. Всичко това - дълго мрежа, разделена на парцели на квадратен километър. Реките и езерата могат да бъдат създадени с помощта на инструмент за редактиране на терен. Но малки потоци, но интересното е, че те са генерирани от алгоритъм проправят пътища - ключови моменти са запечатани планини и вливането на реката.

Водните обекти са на отделен слой, така че те продължи под пътища - Streams разработчици "отведоха" в тръбата, и пресичане на реки с пътищата предпочитат да организира мостовете. Тъй като потоците на траекторията (а в някои случаи и реки) се генерират от процедурна, тази информация може да се използва за определяне на картата на вектор.

Уреждане строител - един от най-сложните инструменти. За проектиране, за да създадете селото тя е трябвало да бъде достатъчно да се посочи център за уреждане, определи набор от сгради и техните настройки. Създаването на такъв инструмент, отдели време, но в крайна сметка те успяват. И тя успя достатъчно рано, така че дизайнерите могат да добавят по-късно, генерирани села индивидуалност.

Демонстрация на строител Населено място:

Полета и камъни

Подкрепете проекта - споделете линка, благодаря!