Създаване на игри на изходния двигател. История на технологиите - Source Engine

Entwickler: Valve Betriebssystem: Microsoft Windows … Deutsch Wikipedia

Entwickler Valve Betriebssystem Microsoft Windows, Apple Mac OS X ... Deutsch Wikipedia

Това е двигател на играта, създадена от дружеството Valve Software за създанията на играта Half Life 2 (HL²). Основно, Source енджинът е преобразуван от двигателя на Quake. C est un motor complet qui gère graphisme, son et взаимодействия физика. Ces ... ... Wikipedia en Francais

Логото на Source и екранни снимки от Team Fortress 2 и Half Life 2: Episode Two ... Wikipedia

Source engine Source engine е двигател на играта, създадена от дружеството Valve Software за създанията на играта Half Life 2 (HL²). Основно, Source енджинът е преобразуван от двигателя на Quake. C est un motor complet qui gère graphisme, son et… … Wikipédia en Français

Source Engine Лого на Source и екранни снимки от Team Fortress 2 и Half Life 2: Episode Two ... Wikipedia

Това е избран списък с модификации (модификации) на Source engine. Този списък е разделен на модификации за един играч и мултиплейър. Съдържание 1 Модификации за един играч 2 Модификации за мултиплейър 3 Вижте също 4 … Wikipedia

Изходен двигател Wikipedia

Двигател ... Уикипедия

Книги

  • Задвижване на самолета, Саид Фароки. Новото издание на успешния учебник е актуализирано, за да включва нови материали за БПЛА, насоки за проектиране на системите на компонентите на авиационни двигатели и допълнителни проблеми в края на главата Самолет… Купете за 7717,99 RUB електронна книга
  • Символна математика за химици. Ръководство за потребителите на Maxima, Фред Сенесе. Основно ръководство за използване на Maxima, популярна машина за символна математика с отворен код за решаване на проблеми, изграждане на модели, анализиране на данни и изследване на концепции, фундаментални символна математика за...

лого на клапана

Разработчик: Valve Corporation

Серия двигатели:изходен двигател

Дата на обявяване: 2004 г

Написано на език: C++

Разрешително:Собствен софтуер (Source Engine е собственост на Valve)

Последна версия:Изходен двигател 2

Енджинът Source, излязъл от сянката на гигант като Valve, далеч надмина очакванията и проправи своя собствен път към славата. Източник, разработен от Valve Software, двигател, базиран на Qake Engine, сложи край на старите технологии и насърчи общността да създаде нова ера от двигатели. Първото изявление на Gabe Newel след придобиването на двигателя „Когато седнахме и видяхме двигателя, разбрахме, че за да създадете страхотен шутър от първо лице, не е нужно да правите иновативни разработки в тази област, което вече е направено от Carmack.“

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

В първите версии на двигателя дори беше въведена поддръжка за динамично осветление, но по-късно, поради недостатъчната мощност на компютрите от онова време, беше решено тази технология да бъде премахната. Графичният двигател е силно преработен, така че Half-Life да не изглежда като прекия си конкурент Quake. Half-Life трябваше не само да изглежда по-добре от Quake, но и технически да бъде по-добър от Quake. Поради този проблем пускането на Half-Life беше отложено с почти година. Half-Life беше първата игра, в която NPC героите бяха разделени на съюзници и врагове. Скелетната анимация и изражението на лицето също бяха добавени към двигателя - това е наистина брилянтна иновация, тази технология вече се използва във всички физически модели.


Като дават на моделите скелет, програмистите могат да създават анимация на герои много по-лесно и по-добре, което също направи възможно създаването на различни сцени в игрите по-бързо и по-красиво. Нововъведението засегна и изражението на лицето - ако по-рано героите, като правило, вентрилоквизираха с гласа си, сега лицата им намериха собствен живот. Този двигател по-късно беше редовно преработван и усъвършенстван, както от Valve, така и от трети страни. Самите Valve го актуализираха с помощта на системата Steam. Gearbox пусна няколко игри на него, от които Half-Life: Blue Shift и Half-Life: Opposing Force заслужават внимание. Модификациите на Gearbox добавиха текстури с по-висока разделителна способност, антиалиасинг и подобрени изражения на лицето.


За пускането на Counter Strike: Condition Zero, нова версия на двигателя беше разработена съвместно от Valve, Gearbox и TurtleRock, която добави възможността за използване на много детайлни текстури. Текстурите бяха насложени върху други и създадоха усещане за грапавост на равнината, като пукнатини, пукнатини и т.н. Добавени са и алфа текстури, такива текстури могат да бъдат зададени на степен на прозрачност, която се използва в редица сцени.

История на Source Engine

Малко история на разработката: всичко започна през 1998 г., когато разработчиците, завършвайки работата по първата си игра от поредицата Half-Life, осъзнаха, че по време на процеса на разработка се появиха много разработки и подробности, които биха искали да въведат в двигател, а защото играта вече беше почти готова, не смееха да въведат нови решения. В следващите оди разработчиците използват термините за името на двигателя директно като "GoldSource" и "Source". GoldSource е разработен от изходния код на версията за освобождаване на двигателя, докато Src остава експериментална версия и е свързана с бъдеща версия на двигателя.


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


Първата игра на двигателя на Source беше мултиплейър стрелецът Counter-Strike: Source, пуснат през октомври 2004 г., стана един вид демонстрация на двигателя, поради което името на технологията е вписано в името му, като пресъздадена версия на класическия Counter-Strike стрелец с най-новата графика за онова време.


Малко по-късно беше пуснато продължението на Half-Life, Half-Life 2, научно-фантастичен шутър с сюжет, който спечели много награди и беше отбелязан като графика, която е сред най-прогресивните за времето си. Half-Life 2 използва интензивно физически двигател, базиран на Havok, лицензиран от Valve. Многобройни пъзели, базирани на игра с физическите закони, са изградени с помощта на Havok Engine. В бъдеще темата за пъзелите със законите на физиката беше интересно разработена в друг проект на Valve - Portal, издаден през 2007 г., основната идея на играта е да се движите с помощта на телепорти. В допълнение към усъвършенствания физически модел, Half-Life 2 включваше някои от най-модерните технологии за лицева анимация за времето си. Графичният двигател, използващ DirectX версия 9, също беше силно оптимизиран и можеше да работи на по-стари видеокарти, понижавайки качеството на графиката си и преминавайки към по-ранни версии на DirectX до версия 6.


В бъдеще Source, чиято структура е описана от разработчиците като изключително гъвкава и модулна, се използва в повечето от игрите на компанията, като постоянно се подлага на подобрения и подобрения. Добавени са много съвременни ефекти, както и различни функции на двигателя са разширени, включително, например, работа с големи местоположения, нови платформи са добавени към списъка с поддържани. Първоначално Source беше достъпен за Windows, по-късно бяха добавени Xbox, Xbox 360, PlayStation 3, от 2010 г. - Mac. От 2012 г. беше добавена поддръжка на Linux, първата игра, пренесена от Valve, беше Team Fortress 2.

Спецификации

Source е игрален двигател, следователно се състои от различни компоненти, включително: физически двигател, графичен двигател, аудио двигател и т.н.


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


Физическият двигател е базиран на Havok. Позволява ви да изчислявате много физически обекти, като твърди тела, еластични тела, въжета, повърхности и др. Възможно е да създавате реалистични превозни средства, от коли до кораби на въздушна възглавница и хеликоптери. За да се изчисли поведението на превозното средство на пътя или във въздуха, се използват много параметри, например сцеплението на колелата с пътя, масата на автомобила. За да се придаде реалистично движение на тялото, се използва физиката на ragdoll; предварително създадената анимация може да се смесва с физика в реално време.


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


SDK инструменти

Source SDK е набор от помощни програми за създаване на модификации на Source енджин, достъпни безплатно чрез Steam за играчи. Комплектът включва: редактор на карти - Valve Hammer Editor, помощна програма за създаване на лицева анимация на модели - Faceposer, програма за преглед на модели във формат .MDL - Model Viewer.


В допълнение към трите основни помощни програми, комплектът включва помощна програма за разопаковане на базовите файлове при създаване на нов мод, както и файлове с изходен код за библиотеките на някои игри на Valve, което ви позволява ръчно да създавате игри с модифицирани характеристики без декомпилиране двигателят. Компилирането на нови файлове обаче изисква познаване на езика C++ и компилатора.


По-долу са различните вътрешни версии на Source двигателя със списък от игри, които използват определена версия на двигателя:

Ранни версии (2003) - ранна версия на двигателя беше използвана в бета версията на Half-Life 2, изтекла в мрежата през 2003 г., играта беше визуално подобна на Half-Life в GoldSource и не съдържаше много технологии. На друга версия на двигателя, вече близка до тази, която дебютира с Half-Life 2, е създадена играта Vampire: The Masquerade - Bloodlines.


VTMB

Source Engine 2004 (Source Engine 6) - първата версия на двигателя, използвана за първи път в Half-Life 2. Поддържа естествено мащабиране, възможност за актуализиране, изобразяване на шейдъри, лицева анимация и динамично осветление. До 2005 г. се използва в: Half-Life 2, Counter-Strike: Source, Half-Life 2: Deathmatch, Half-Life: Source. Актуализиран до Source Engine 7.


Source Engine 2005 (Source Engine 7) - актуализирана версия. В сравнение с предшественика си, той поддържа High Dynamic Range Rendering, за да демонстрира нови технологии за осветление, разработчиците пуснаха Half-Life 2: Lost Coast, по същество тази игра е ниво, което не е достигнало до финалната версия на Half-Life 2. Двигателят се счита за остарял, използва се в: Half-Life 2: Lost Coast; използван в: Half-Life 2: Deathmatch, Counter-Strike: Source, Half-Life Deathmatch: Source, Day of Defeat: Source до 2006 г.; до 2010 г. в Half-Life 2; до 2014 г. - в Half-Life: Source.


Source Engine 2006 (Source Engine 7: Base Source Engine 2) с комплект за разработка: Source SDK Base 2006 е третата версия на двигателя, на която са пуснати няколко игри. Той също така захранва редица мултиплейър игри на Valve до 2010 г. Той е актуализиран, за да поддържа актуализирана лицева анимация, многоядрено изобразяване и актуализиран HDR. Голям брой модификации бяха пуснати за тази версия на двигателя, освен това модовете, пуснати за по-ранни версии, са съвместими с тази версия, които не работят на по-късни версии, така че все още се използва от авторите на модове. Използва се в Half-Life Deathmatch: Source, SiN Episodes: Emergence, Dark Messiah of Might and Magic; използван в Day of Defeat: Източник до 2009 г.; до 2010 г. в Half-Life 2: Episode One, Half-Life 2: Deathmatch, Counter-Strike: Source, Garry's Mod.


Source Engine 2007 (Source Engine 14); с комплект за разработка: Source SDK Base 2007 - четвъртата версия на двигателя, силно модифицирана и актуализирана, използвана за първи път в игрите на Valve от колекцията The Orange Box. Рендирането на шейдъри е актуализирано, динамичното осветление и засенчване са значително подобрени, въведена е и система с меки частици и е добавена кинематографична физика, функция, която значително разширява използването на физическия двигател. Двигателят съдържа значителни промени от Source Engine 7, така че модификациите на играта, пуснати за по-ранни версии, не са съвместими с тази и по-късните версии. Използва се в Black Mesa; до 2010 г. в Half-Life 2: Episode Two, Portal, Team Fortress 2, Day of Defeat: Source.


Source Engine 2008 (Source Engine 14: Base Source 3) - следващата версия на двигателя с подобрена кинематографична физика и някои визуални ефекти (например дълбочина на полето); използван в Left 4 Dead.


Source Engine 2009 (Source Engine 15) - шестата, силно модифицирана версия на двигателя. Всички функции са актуализирани, системата от частици, лицевата анимация, мащабирането и възможността за актуализации са значително подобрени. Издадени с Left 4 Dead 2, по-ранните игри на Valve бяха актуализирани до тази версия. Използва се от: Left 4 Dead 2, Zeno Clash, Postal III, от септември 2010 г. игрите преминаха към тази серия: Counter-Strike: Source, Half-Life 2, Half-Life 2: Deathmatch, Half-Life 2: Episode One, Half -Life 2: Епизод две, Портал, Team Fortress 2.


Source Engine 2010 (Source Engine 17) е седмата версия на двигателя. Използва се в: Day of Defeat: Source, Bloody Good Time.


Source Engine 2011 - използван в Portal 2, Dota 2, Counter-Strike: Global Offensive, The Stanley Parable.


Source Engine Multiplayer (Source Engine 19) - вариант на двигателя, адаптиран за нуждите на мултиплейър игри; до 2010 г. използвани: Counter-Strike: Source, Team Fortress 2, Day of Defeat: Source, Half-Life 2: Deathmatch, Garry's Mod.


Source Engine Multiplayer (Source Engine 21) - до 2012 г. използвани: Counter-Strike: Source, Team Fortress 2, Day of Defeat: Source, Half-Life 2: Deathmatch, Garry's Mod.


Source Engine Multiplayer (Source Engine 23) - подобрена работа с Big Picture Mode в Steam; до 2013 г. използван в: Counter-Strike: Source, Team Fortress 2, Day of Defeat: Source, Half-Life 2: Deathmatch, Garry's Mod.


Source Engine 2013 (Source Engine 24); с Source SDK Base 2013 е една от най-новите версии на двигателя, към който Valve мигрира повечето от своите игри. Сред промените: за да се оптимизира използването на дисковото пространство, беше решено да се откаже от използването на обемисти .GCF файлове (архиви с ресурси на играта) в полза на файлова система с кодово име SteamPipe. Игрите на новия двигател вече се инсталират в директорията Steam\SteamApps\Common, а файловете на играта се съхраняват в .VPK файлове. Създадена е удобна система за добавяне на персонализирано съдържание (модове) за Counter-Strike: Source, Team Fortress 2 и Half-Life 2: Deathmatch: има персонализирана папка, в която се създава папка с произволно име и класически към него вече са добавени папки с материали за модификация (материали, модели и т.н.). Добавена е съвместимост с Linux. От 2013 г. се използва в: Half-Life 2, Half-Life 2: Deathmatch, Half-Life 2: Lost Coast, Half-Life 2: Episode One, Half-Life 2: Episode Two, Counter-Strike: Source, Day of Defeat : Source, Portal, Team Fortress 2, Dota 2, Garry's Mod, Tactical Intervention, Alien Swarm.


Източник 2 двигател

Valve официално обяви Source 2 на конференцията за разработчици на игри GDC 2015 в Сан Франциско на 3 март. Според Valve, Source 2 ще бъде „достъпен безплатно за всички разработчици на съдържание“. Подобно изявление направи наскоро Epic Games, чийто двигател Unreal Engine 4 вече не изисква месечен абонамент, за да го използвате.


„С Source 2 искаме да увеличим производителността на креативните хора“, каза водещият програмист на Valve Джей Стели в прессъобщение. - С нарастващото значение на съдържанието, генерирано от потребителите, Source 2 не е само за професионални разработчици. Тя позволява на самите играчи да участват в създаването и развитието на любимите си проекти.


Моделът на разпространение от Valve изглежда много по-интересен в сравнение с конкурентите, двигателят е безплатен за всички, но ако искате да направите игра на Source 2, моля, бъдете така любезни да я продадете през нашата платформа Steam. Source 2 е мощен инструмент, който може да задоволи нуждите на всеки разработчик, подробни спецификации на двигателя все още не са обявени, както и датата на анонса, но се споменават версии с поддръжка на Vulkan API - нова разработка от групата Khronos, която ще позволи на създателите на игри да извлекат максимума от най-модерния компютърен хардуер. Все още не са обявени проекти за Source 2, но в мрежата се разпространява видео, в което на затворена презентация на разработчиците е показана игра Dota 2, стартирана с помощта на Source 2. Сега всеки потребител с Steam акаунт има възможност да стартира Dota 2 на Source engine 2.


Valve положиха големи усилия да бъдат различни от всички, в резултат получиха уникална технология, която изпревари времето си. Въпреки доста дългия период на съществуване на Source двигателя, игрите не изглеждат много зле и не попречиха на разработчиците в реализацията на техните идеи. Всичко това благодарение на постоянните актуализации не само на игрите, но и на самия двигател, както се вижда от много версии на Build на Source. Игрите, създадени на Source, са не само легендарните серии, за които всеки геймър на Half Life, Portal, Left 4 dead е чувал, но и игри, превърнали се в Counter Strike: Global offensive, електронни спортове дисциплини Dota 2. В момента Valve са организатори на шампионата с най-голям награден фонд ($13 000 000) и той продължава да расте. Сега, с обявяването на Source 2, въпросът е дали това ще бъде пробив и нова ера за игрите или друга технология, която в момента има доста. Най-малкото монетизацията на енджина е много впечатляваща, а Steam Machines конзола, контролер, Steam Link, Steam Lighthouse (устройство за шлем за виртуална реалност) говорят за намерението на Valve да навлезе във всички области, свързани с компютърните игри. Е, можем само да изчакаме, докато се насладим на резултатите от работата на Valve и напълно да изживеем следващия ген на компютърната развлекателна индустрия.

Създаване на ваша собствена RPG на Source двигателя

Ако искате да научите как да разработвате игри, модифицирането на съществуващи игри е страхотно място да започнете да изучавате дизайн и създаване на прототипи, без да се налага да преоткривате колелото. В тази статия ще използваме Source Engine на Valve (който е двигателът, на който са базирани Portal, Left 4 Dead, Half-Life и Team Fortress 2), за да създаваме куестове, подобни на RPG, в Half-Life 2: Episode 2 .

Моля, имайте предвид, че тази статия предполага, че имате основни познания за Source SDK Hammer Editor и Face Poser, така че това не е проект за начинаещи, а по-скоро за средно напреднали програмисти.

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

За да овладеете този материал, трябва да знаете как да създавате и компилирате карти, да поставяте обекти и да настройвате тригери, преди да повторите стъпките, описани тук. Ако искате да добавите свои собствени диалози, трябва също да знаете как да създавате и запазвате сцени във Face Poser. Всичко е наред, ако никога преди не сте работили с Source SDK - интернет е пълен със статии, описващи как да го използвате. Започнете с Valve Developer Wiki, където има много полезни статии по темата, след това вижте design3 (между другото аз съм един от сътрудниците) за видеоклипове стъпка по стъпка на Source Engine. Минималните системни изисквания за използване на инструментите, описани по-горе, са същите като за стартиране на Half Life 2: Episode 2: 1,7 GHz процесор, 512 MB RAM, DirectX 8.1 и Windows XP или по-нова версия. Ще ви трябва и микрофон.

обучение

Преди да започнем, уверете се, че имате всичко необходимо. Първо, имате нужда от инсталирано копие на Half-Life 2: Episode 2. Ще използваме тази игра, защото това е най-новата игра за един играч на Source engine, която може да бъде модифицирана. Ако нямате втория епизод, изтеглете го от тогава обикновен Half-Life 2 също трябва да работи.

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

Фигура 1 - нашето ниво в Hammer Editor

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

Създаване на структура на мисии

В тази статия ще се съсредоточим върху получаването и изпълнението на задачи, изграждането на система за развитие на характер с точки за опит е тема за отделна статия. На нашето ниво ще има три неиграещи персонажа (NPC), всеки ще ни даде две задачи. Можем също да ги използваме, за да предоставим информация на играча, да го атакуваме или просто да добавим малко живот към нивото.

За да поддържаме нивата организирани, нека използваме следната конвенция за именуване:

Фигура 2 - конвенцията за именуване, която ще използваме

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

Преди да започнем да правим куестове, трябва да ги разделим на по-малки компоненти, а именно:

  • Задействайте Старт: започва работата;
  • Спрайт: показва къде може да започне търсенето;
  • дарител: NPC, който дава тази задача;
  • начало на сцената: диалогов прозорец, описващ задачата;
  • звуков старт: звук, който уведомява играча, че мисията е получена;
  • Начало на текста: текст, описващ задачата;
  • релейно съдържание: слой, който стартира процесите, необходими за мисията (например NPC хвърлящ хайвер);
  • : <основное содержимое квеста - после выполнения оно должно запустить Relay Complete>;
  • релето е завършено: слой, който настройва нивото за следващата задача;
  • Край на текста: текст, който описва как да изпълните задачата;
  • Спрайт: появява се отново, за да посочи с кой NPC да говорите;
  • Край на тригера: тригер, който инициира края на задачата;
  • край на сцената: финален диалог;
  • здрав край: звук, който отбелязва края на задачата;
  • : <если есть следующее задание, оно активируется здесь>.

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

Създайте шаблон за работа

Ще използваме шаблони (instancing) - страхотен инструмент на Hammer Editor. Това ще позволи нашата основна карта да бъде препращана от други. Ще създадем екземпляр на задачата, който по-късно ще използваме като шаблон. След като го завършим, можем просто да го извлечем и да редактираме малко настройките на копията, така че всяка задача да е уникална. По този начин не се налага да вършим една и съща досадна работа отново и отново. За съжаление, Епизод 2 не поддържа напълно тази технология, така че ще трябва да конвертираме екземпляри в нива преди компилиране (ще се спрем на това по-късно).

За да персонализираме нашия шаблон за работа, имаме нужда от нов файл с карта. В Hammer изберете File, след това New, запазете картата като "quest_instance" в папката "instances" на същото място като основната ви карта.

Най-добре е да поставите обектите възможно най-близо до координатите (0,0,0). Също така си струва да ги поставите над равнината XY, за да не ги загубите по време на прехвърлянето. За правилно разположение можете да използвате инструмента за избор. Нашият шаблон автоматично ще добави избрания от нас префикс към всички обекти в него. Тригерите и задаването на някои стойности ще бъдат описани по-късно, така че не се притеснявайте, ако смятате, че сме пропуснали нещо.

Ще ни трябват всички субекти, споменати в списъка по-горе. Нека започнем с добавяне на NPC. Изберете Entity Tool, намерете npc_citizen в падащия списък и го поставете в началото. Този човек ще ни даде задача. Натиснете Alt+Enter, за да отворите настройките му и го наименувайте „giver“. Задайте Предотвратяване на вземане на оръжия? до да. Приложете настройките, като щракнете върху Приложи и отидете на панела с флагове. Задайте флага Not Commandable, в противен случай нашият работодател ще следва играча навсякъде по картата. Настройте повече Не изпускайте оръжия и Игнорирайте бутането на играча (така че той да не дава път на играча).

Сега имаме нужда от тригер, който ще следи дали играчът се е приближил... Нека го наречем Гриша, защото "този човек" или "куест даващ" не звучи много добре. И така, за да следите дали играчът се е приближил до Гриша, създайте четка със следните размери: 64 единици височина, 32 единици ширина, 4 единици дължина - и поставете обекта точно пред Гриша. Дайте на този обект nodraw текстура, така че да не се изобразява. За да промените текстурата, изберете обекта, превключете на Превключване на текстура, натиснете бутона Преглед, използвайте филтъра nodraw, щракнете два пъти, за да го изберете и приложете настройките (бутон Приложи). След това задайте тригер на този обект, като натиснете Ctrl+T и изберете func_button от списъка. Наречете го "trigger_start" и променете скоростта на нула. Запазете промените отново.

Сега нека добавим спрайт, който ще уведоми играча, че този NPC има задача. Поставете обекта env_sprite върху главата на Гриша и отворете прозореца Object Propeties, като натиснете Alt+Enter. Наречете го Sprite. Сега трябва да променим режима на изобразяване, така че спрайтът да се показва правилно в играта. В същия прозорец намерете опцията Render Mode и изберете World Space Glow от падащото меню. Можете да промените текстурата на този спрайт, като използвате това меню, ако желаете. Уверете се, че разделът Започнете от е отметнат в раздела Флагове.

Да водим диалог. Намерете logic_choreographed_scene в списъка с обекти и я поставете зад Grisha. Ще ни трябват поне две от тях на мисия - една за началния диалог, една за последния диалог - така че го копирайте и поставете втория върху първия. Наименувайте ги съответно "scene_start" и "scene_end". Ще обмислим добавянето на действителния диалог малко по-късно.

В допълнение към всичко това се нуждаем и от звукови известия, че играчът е получил задачата и че я е изпълнил. Създайте два ambient_generic обекта, поставете ги до NPC и ги наименувайте „sound_start“ и „sound_end“. Ако нямате свои собствени подходящи звуци, използвайте plats\elevbell1.wav (трябва да въведете в полето Име на звука). В раздела с флагове и трите опции трябва да бъдат отметнати.

След това трябва да добавим текст, който ще описва задачата. Създайте два обекта game_text и ги наименувайте „text_start“ и „text_end“. Задайте и двете на достатъчно високо време на задържане (около 99999), така че текстът да не изчезне, докато не го унищожим сами. Искаме текстът да е отстрани на екрана и да не пречи на играча, така че задайте X и Y полетата на двата обекта на 0,1.

Ще ни трябват няколко слоя, за да организираме задействания. Релето е обект, който, когато се активира, стартира други обекти. Един слой обикновено стартира действия, които трябва да се изпълняват по едно и също време и на едно и също място, за да бъдат по-удобни за управление. Създайте два обекта logic_relay и ги поставете до Гриша. Наименувайте ги "relay_content" и "relay_complete". Тези два слоя ще изпълняват всички обекти в заданието. Помислете сами за спецификата на конкретна задача - трябва да поставите цел на играча като "съберете толкова много такива и такива предмети" или "стигате до такова и такова място". Можете да използвате обекти като math_counter или площни обекти като trigger_once, за да тествате за тези условия. Когато тези обекти установят, че задачата е преминала, те ще трябва да изпълнят "relay_complete", което от своя страна ще изпълни всичко необходимо, за да отбележи края на задачата.

Да добавим още един тригер пред Гриша. Той ще бъде почти идентичен със стартовия тригер, така че просто копирайте "trigger_start" и го преименувайте на "trigger_end". Уверете се, че флагът Starts locked е включен. Уверете се, че тези обекти не се припокриват и че началният тригер е пред кутията за удари на NPC (в противен случай играта ще се обърка, независимо дали изберете тригера или „бутона“), като използвате изглед отгоре и отстрани. За да намерите hitbox, изберете Grisha - около него ще се появи жълта рамка.

Сега нека настроим тригерите, както е показано на Фигура 5. Все още не е нужно да се притеснявате за тригерите в скоби, ще ги добавим по-късно. Изберете изброените обекти, отворете техните свойства на обекта, отидете в раздела Изходи и конфигурирайте всичко според таблицата по-долу. Уверете се, че сте запазили всички промени (бутон Прилагане)!

Фигура 5 - настройка на тригери.
Заглавки: Избран обект \ Активиране от… \ Активиран обект \ Какво да активирате на обект

Поставяме шаблони

Нашият шаблон е готов, сега можем да поставим такива шаблони около картата и да ги персонализираме по-подробно. Поставете "func_instance", където желаете, отворете неговите свойства на обекта и под VMF Filename намерете вашия файл "quest_instance". Моля, имайте предвид, че търсенето е малко бъгово, така че може да се наложи да въведете пътя до файла ръчно. Сега можете да копирате този шаблон около картата: създайте толкова задачи, колкото искате.

Изберете първата задача и я оставете да импортира всички необходими обекти (натиснете Instancing, Collapse, Selection). Hammer ще даде на всички обекти префикс "AutoInstance-" по подразбиране. Всичко импортирано ще бъде избрано, само ще трябва да ги добавим към една група чрез VisGroups. Отворете Object Properties и изберете раздела VisGroups там. Ще видите нещо подобно:

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

Тук можете да създадете нови групи, които ще използвате по-късно. Щракнете върху „Нова група“ и ще видите новия елемент в списъка. Преименувайте го на "Quest_n", където n е номерът на мисията. След като приключите с това, щракнете върху „Затвори“, ще видите вашата група в основния списък. Поставете отметки в квадратчетата, за да добавите обекти към групата, щракнете върху „Прилагане“, след което отново върху „Затваряне“. Вече можете да скривате или преглеждате групи с помощта на контролния панел VisGroup, както е показано по-долу. Направете това с всяка ваша задача.

Добавяне на ваши собствени звукови файлове

Нашата RPG би била изключително скучна без диалог за разказване на истории, така че ще я запишем чрез Audacity. Първо трябва да имате микрофон. Поради начина, по който работи Face Poser, трябва да пишете едно изречение наведнъж. С Audacity е лесно – настройте микрофона си, натиснете червения бутон, кажете нещо, спрете записа и запазете файла като .wav файл. Ако имате проблеми, можете спокойно да използвате вградената помощ, много добре е направена. Когато сте готови, създайте папка "RPG" и поставете всички файлове в нея. Преместете тази папка в C:/Program Files/Steam/steamapps/half-life episode two/ep2/sounds/ . Запазването на всички файлове в папка едно ниво над „звуци“ е от съществено значение - в противен случай двигателят просто няма да ги види.

Продължа напред. Създайте файл "sound_script", така че двигателят да може да свърже нашите звуци в редактора с играта. Стартирайте GCFScape, отидете на File->Open, навигирайте до вашата папка "steamapps" и отворете файла "episode two content.gcf". След като GCFScape го зареди, ще трябва да намерите файла "game_sounds_manifest.txt", който се намира в "/steamapps/ep2/scripts". Щракнете с десния бутон върху него и изберете „Извличане“ и поставете този манифест в „/steamapps/half-life 2 episode two/ep2/scripts“. Приключихме с GCFScape, можете да го затворите.

Сега отидете в папката със скриптове и отворете „game_sounds_manifest.txt“, който току-що извлякохме. Този файл съдържа всички звукови скриптове, които играта ще използва, и ние също трябва да добавим нашите записи там. Под последния ред на кода, в последните скоби, напишете точно следното:

Файлът на манифеста вече може да бъде затворен. Нека създадем файла "rpg_sounds.txt", към който препращаме, и напишем следното в него:

Първият ред е името на звука, който ще се показва във Face Poser: "rpg_sounds" е префиксът, а втората част е самото име. Можете да ги промените както желаете. Следващите четири реда казват на двигателя какво да прави с тези звуци, просто ги приемете за даденост. Последният ред е. wav файл, който ще бъде зареден и относителен път от папката "/steamapps/half-life 2 episode two/ep2/sound/". Всичко, което трябва да направите, е да поставите всичките си звукови файлове в тази папка и да се уверите, че имената и разширенията им съвпадат с посочените във файла на скрипта.

Ако използвате Windows Vista или Windows 7, ще трябва да помогнем малко на Face Poser. Както беше посочено по-горе, за това ще ви трябва корекцията Phoneme Extractor. Тук си струва да се спомене, че Source SDK се актуализира всеки път, когато го стартирате, така че трябва да го кръпвате всеки път, когато отворите Source SDK. Да, досадно е, но е най-лесният начин, повярвайте ми.

С отворен Face Poser ще започнем да създаваме нова сцена. В менюто Хореография щракнете върху Ново. Препоръчвам ви да го запазите веднага. Изберете името сами и папката за запазване е "/steamapps/half-life episode two/ep2/Scenes/RPG_MOD/". Ще бъде много по-лесно да го намерите по-късно, ако му дадете някакъв вид префикс, например "RPG_". Сега Face Poser ще ви помоли да назовете главния герой (актьор). Наречете го "!_targetN", където N е число от 1 до 8, защото ще имаме до осем NPC във всяка сцена. Hammer ще използва посочения от вас NPC. Засега имаме само Гриша, така че нека наречем актьора "!_target1". Щракнете с десния бутон върху името на героя, което се появи в менюто "Хореография", след което отидете на полето Нов->Канал->Създаване на канал. Наименувайте този канал „Аудио“. Сега създайте друг канал и го наречете "Anim" (за анимация).

Сега трябва да сортираме нашите аудио записи. В списъка с раздели в долната част на екрана Face Poser докоснете двукратно „Phoneme Editor“. В прозореца, който се отваря, щракнете върху „Зареждане“ и изберете .wav файла, който искате да добавите. След това щракнете върху „Re-extract“ и Face Poser ще ви подкани да напишете съдържанието на аудио файла като текст. Въведете го. Сега, ако натиснете бутона за възпроизвеждане, ще ви бъде показано лицето на героя, чиито устни ще се движат. Можете да запазите всичко и да затворите този прозорец. Тези стъпки трябва да се повторят за всеки звуков файл.

Ако искате да добавите жестове, изражения на лицето или други анимации, трябва да го направите сега. Няма да описвам как да го направя в тази статия, можете да прочетете за това другаде. След това запазете вашата сцена (Хореография->Запазване). Сега остава да приложим тази сцена към нашия NPC.

Добавяне на аудио на трети страни към NPC

Сега трябва да настроим диалога. Трябва да добавим сцените, които създадохме, към "scene_start" и "scene_end", които създадохме по-рано. За да направите това, натиснете Alt+Enter, за да отворите свойствата на обекта, намерете там опцията „Файл на сцената“. Присвоете новосъздадената сцена към нея и запазете промените. Направете същото за "scene_end".

Активиране на събитието

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

Играчът трябва да убие петима врагове. Всеки път, когато враг умре, math_counter се увеличава с единица. Когато броячът достигне пет, math_counter извиква logic_relay. На свой ред logic_relay спира хвърлянето на хайвера на тълпи, активира NPC и „relay_complete“.

Настройване на автоматично запазване

Никой не обича, когато един случаен срив убива резултата от много часове игра. Следователно трябва да добавите обект logic_autosave и да го извиквате всеки път, когато задачата бъде изпълнена (вече знаете как да направите това).

Край на играта

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

Заключение

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

Source е най-популярният двигател за игри: в момента, в който четете тази статия, игри, написани на него, могат да се играят от повече от милион души:

И това не е изненадващо: двигателят е разработен от Valve, който притежава най-големия магазин за игри - Steam, и неговите игри постоянно са на върха на върха на игрите.

Но, разбира се, пътят към върха на славата беше дълъг: историята на развитието на двигателя Source започва през 1998 г., когато разработчиците на Valve, завършвайки работата по Half-Life 1, осъзнават, че имат много разработки, които Бих искал да използвам някъде. И тогава се появи разделението на два двигателя: GoldSrc, на който работеше текущата версия на играта, и Source, който принадлежеше към бъдещата версия на играта и имаше нови, все още недовършени технологии. И така на E3, когато Valve показаха бета версията на Half-Life 2, беше казано, че играта работи на Source двигателя. Това име остана и в бъдеще GoldSrc напълно изчезна.

Source Engine 2004 (Source Engine 6)

Първата публична версия на двигателя беше пусната през 2004 г., заедно с много обичания шутър Counter Strike, който беше наречен Source в чест на двигателя. Имаше доста промени от оригиналната версия: по-остри текстури (512 × 512 пиксела срещу 128 × 128 в оригинала) и подробни 3D модели. Функциите на двигателя, свързани с огледалните отражения, се използват широко - за оръжия, оборудвани с оптичен мерник, можете да видите околната среда (но не и модели на други играчи) зад играча върху лещата на мерника, когато не е увеличена.

Звуковите ефекти вече съответстват на акустичните условия, въведена е поддръжка за високоговорители 5.1 и 7.1. Новите функции на двигателя помогнаха картите да станат по-подробни: на земята имаше бутилки и пакети. Физическият двигател, базиран на Havok, подобри физиката на полета на гранатата, експлозиите, както и ефектите от тяхното унищожение към по-голям реализъм.

Малко по-късно през същата година беше пуснат Half-Life 2, който добави към горните функции: изобразяване на шейдъри (Half-Life 2 беше една от първите игри, които използваха шейдърна вода) и лицева анимация (с поддръжка за прецизна синхронизация на реч на актьорите с анимация), а с помощта на Havok се получи ефект на „парцалена кукла“:




Тази версия на двигателя се използва до 2005 г. и в момента е остаряла - всички игри, написани на SE 6, са прехвърлени на по-нови двигатели.

Source Engine 2005 (Source Engine 7)

Актуализирана версия на двигателя, пусната през 2005 г. Основното допълнение е поддръжката за High Dynamic Range Rendering, за да демонстрират това, което разработчиците пуснаха Half-Life 2: Lost Coast: по същество тази игра е ниво, което не е достигнало до финалната версия на Half-Life 2. HDR Rendering в Lost Coast включва няколко компонента:

  • HDR Skybox е резултат от наслагване на множество експозиции на небето, за да се постигне ефект на промяна на експозицията в реално време. Над 16 различни HDR Skyboxes са създадени за Half-Life 2: Lost Coast.
  • HDR Refraction Effect - HDR светлината преминава през пречупващи материали и придобива свойствата на тези материали (например, когато лъч светлина преминава през цветните витражи в манастира в Half-Life 2: Lost Coast, цветните отражения са хвърлен на пода).
  • HDR светлинни карти - светлинни карти, генерирани с помощта на ефекта на излъчване (светлината не само се отразява от обекти и удря окото на наблюдателя, но също така удря други обекти, отразявайки се от тях). Можете да видите например вътрешността на манастира в Half-Life 2: Lost Coast, по слънчевите петна по стените срещу прозорците.
Подобно на SE 6, версия 7 също е остаряла в момента - през 2014 г. последната игра на нея, CS: Source, беше прехвърлена на Source Engine 24.

Source Engine 2006 (Source Engine 7: Base Source Engine 2)

Първата версия на двигателя, която има комплект за разработчици, достъпен за всички - Source SDK Base 2006, който позволи на много хора да създават свои собствени модификации на игрите на Valve. Двигателят е малко подобрен - поддържа актуализирана лицева анимация, многоядрено рендиране и актуализиран HDR.

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

Source Engine 2007 (Source Engine 14)

Глобална версия, използвана за първи път в колекцията от игри на Valve - The Orange Box (включва: Half-Life 2, Half-Life 2: Episode One, Half-Life 2: Episode Two, Portal и Team Fortress 2). В тази версия изобразяването на шейдъри беше актуализирано, динамичното осветление и засенчване бяха значително подобрени, появи се система от меки частици (която значително подобри качеството на ефекти като дъжд и огън), беше добавена кинематографична физика, както и нова лицева анимация (нейната хардуерното ускорение се поддържаше на графични карти) и подобрена поддръжка за многоядрени процесори.

SE 14 беше първата версия на двигателя, която поддържаше конзоли - The Orange Box беше пуснат не само за компютър, но и за PlayStation 3 и Xbox 360.

Точно както при SE 7, модификациите, създадени в SDK за 14-та версия, не работят на по-новите, така че тази версия на двигателя все още се използва.

Source Engine 2008 (Source Engine 14: Base Source 3)

Версия на двигателя, създаден за играта Left 4 Dead:

Той подобри кинематографичната физика, като добави:

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

Source Engine 2009 (Source Engine 15)

Версията, пусната с Left 4 Dead 2, по-късно беше актуализирана до тази версия от всички игри на Valve от онова време. В тази версия всички функции са актуализирани, системата от частици, анимацията на лицето, мащабирането и възможността за актуализиране са значително подобрени.

Source Engine 2010 (Source Engine 17)

Първата версия на двигателя, пренесена към macOS. Първоначално пакетът с игри The Orange Box беше пренесен към операционната система на Apple, а по-късно всички нови игри на Valve започнаха да се пускат както за Mac, така и за Windows.

Source Engine Групова игра (Source Engine 19, 21 и 23)

Версии на двигателя, пригодени за мултиплейър игри като Dota 2 и CS: GO. Също през 2012 г. се появи поддръжка за Linux: Team Fortress 2 беше пренесен под него, а по-късно и други игри на Valve.

Source Engine 2013 (Source Engine 24)

Текущата версия на двигателя, към който Valve са мигрирали повечето от своите игри. Сред промените: за да се оптимизира използването на дисковото пространство, беше решено да се откаже от използването на обемисти .GCF файлове (архиви с ресурси на играта) в полза на файлова система с кодово име SteamPipe. Игрите на новия двигател вече се инсталират в директорията Steam\SteamApps\Common, а файловете на играта се съхраняват в .VPK файлове. Създадена е удобна система за добавяне на персонализирано съдържание (модове) за Counter-Strike: Source, Team Fortress 2 и Half-Life 2: Deathmatch: има персонализирана папка, в която се създава папка с произволно име и класически към него вече са добавени папки с материали за модификация (материали, модели и т.н.).

Съвместимостта с Linux също беше подобрена и през май 2014 г. Nvidia пренесе Portal и Half-life 2 към Android за своята конзола Nvidia Shield (занаятчиите обаче успяха да стартират тези игри на други устройства с Android, но производителността беше лоша).

Източник 2

Принципно нова версия на двигателя, пусната през 2015 г. от Valve заедно с пускането на актуализираната игра Dota 2 - Reborn. Уви, нямаше техническа презентация, известно е само, че двигателят все още работи на OpenGL API (може би Vulkan API ще бъде добавен в бъдеще) и също така знае как да използва колкото се може повече процесорни ядра. Valve също така обеща, че двигателят ще работи по-добре на по-стари компютри (намалена консумация на RAM), но Dota 2 Reborn се оказа по-тежка от Dota 2 на Source Engine 24. Друго важно допълнение беше поддръжката на VR и първата демо игра The Lab за HTC Vive:

Бъдещето на двигателя

Valve мълчи за по-нататъшното развитие на двигателя и това не е новина за геймърите (те все още чакат слухове за Half-Life 3 и Portal 3, нали?) Засега втората версия на двигателя е доста сурова и трябва да се подобри и, очевидно, корекцията на Valve поправя грешки и само Гейб Нюел знае за бъдещи игри и версии на двигателя.

КАТЕГОРИИ

ПОПУЛЯРНИ СТАТИИ

2022 "gcchili.ru" - За зъбите. Имплантиране. Зъбен камък. гърлото