Кіріспе
C4 Engine - Terathon Software компаниясы әзірлеген компьютерлік ойын қозғалтқышы. Ол PlayStation 5, PlayStation 4, PlayStation 3, Windows (XP және одан кейінгі), Mac OS X (версиясы 10.9 және одан кейінгі), Linux және iOS үшін 3D ойындар мен интерактивті виртуалды симуляциялардың басқа түрлерін құру үшін қолданылады.
The C4 Engine is a proprietary computer game engine developed by Terathon Software that is used to create 3D games and other types of interactive virtual simulations for PlayStation 5, PlayStation 4, PlayStation 3, Windows (XP and later), Mac OS X (versions 10.9 and later), Linux, and iOS.
Даму тарихы
C4 Engine-ді әзірлеуді компьютерлік графика авторы Эрик Ленгьел басқарды, ол сонымен қатар Terathon Software-дің негізін қалаушы. Бұл қозғалтқыш бірнеше жыл бойы біртіндеп жасалып келе жатқан болса да, алғаш рет 2005 жылы мамыр айында коммерциялық лицензия бойынша қолжетімді болды. Нарықтың өзгеруіне байланысты C4 қозғалтқышы 2015 жылы шығарылды, бірақ 2021 жылы қайта оралатындығы туралы хабарландыру жасалды. C4 Engine 7.0 нұсқасы 2023 жылдың 22 наурызында шығарылады.
Қуаттары мен ерекшеліктері
C4 Engine архитектурасы - бағдарламалық жасақтама компоненттерінің қабатты жиынтығы, онда төменгі қабаттар компьютерлік аппараттық және операциялық жүйемен өзара әрекеттеседі, ал жоғары қабаттар ойын кодына платформаға тәуелсіз қызметтер көрсетеді. Қозғалтқыштың едәуір бөлігі 3D графикалық функцияларға арналған болса, аудио, желілік, физикалық, енгізу құрылғылары мен скрипттерге қатысты функционалдыққа арналған үлкен компоненттер де бар. Двигательдің құжаттамасы интернетте API веб-беттерінің жиынтығы және вики арқылы қол жетімді.
Графика
C4 Engine Windows, Mac, Linux және iOS платформаларындағы OpenGL кітапханасына негізделген және ол бір жарықпен бір жарықпен бір жарықпен жұмыс істейді. Қозғалтқыш бірнеше түрлі жарық көздері мен көлеңкелеу әдістерімен рендеринг жасауға қабілетті. Динамикалық көлеңкелерді көрсетудің негізгі әдісі - көлеңкелік карталау, ал каскадты көлеңкелік карталаудың нұсқасы өте үлкен сыртқы көріністер үшін қолданылады. Шейдерлер C4-те екі қол жетімді әдістің бірімен жасалады, екеуі де пайдаланушыны негізгі графикалық кітапхана талап ететін шейдер кодынан оқшаулайды. Қарапайым көлеңкелерді материалдың атрибуттарының жиынтығын, мысалы, диффузды шағылысу түсі, көкжиекті шағылысу түсі және текстура карталарының тобы сияқты белгілеу арқылы жасауға болады. Қозғалтқыш әр түрлі материал мен жарық түрлерінің комбинациясына қажетті көлеңкелеу кодын ішкі түрде жасайды. Материалдық атрибуттарды қалыпты карталау, параллакс карталау, горизонт карталау және дөңгелекті шағылыстар немесе сынулар сияқты әсерлерді жасауға қолдануға болады. C4 сонымен қатар графикалық Shader редакторына кіреді, ол алдын ала белгіленген операциялардың үлкен жиынтығын пайдалана отырып, күрделі бапталған материалдарды жасауға мүмкіндік береді. Материалдарды жобалаудың бұл әдісі тәжірибелі пайдаланушыларға шығармашылық еркіндік пен функционалдылықты арттырады, бірақ пайдаланушының біраз көбірек жұмысын қажет етеді. Стандартты материал атрибуттарын пайдалана отырып жасалған материалдарды Shader Editor-да бастапқы нүкте ретінде қызмет ету үшін жекешеленген шейдерлерге түрлендіруге болады. C4 қозғалтқышының жер бетіндегі мүмкіндіктері воксель технологиясына негізделген, бұл 3D-ге толықтай мүсіндеуге мүмкіндік береді, мысалы, төбелер, аркалар және дәстүрлі биіктікке негізделген жер телімдері жүйесінде мүмкін емес болатын шын мәнінде тік жартастар. Үшбұрышты торлар маршингтік кубтар алгоритмін қолдана отырып, воксельдік деректерден жасалады, ал Transvoxel алгоритмін қолдана отырып, әртүрлі қарапайымдылық аймақтарын біріктіруге мүмкіндік береді. Қозғалтқыш түрлі-түсті арнайы эффекттерді, соның ішінде бөлшектер жүйесін, өртке қарсы, электрлік эффекттерді, көлемдік тұманды және ауа райы құбылыстарын түсіре алады. Пост-өңдеу кезеңінде қозғалтқыш жылдамдық буферіне негізделген әдісті қолдана отырып, соңғы суретке толық сахналық кинематографиялық қозғалыс бұзылуын, сондай-ақ жарқырау және бұрмалау эффекттерін қолдана алады. Қозғалтқыш жекеленген өңдеуден кейінгі эффекттерді жобалауға мүмкіндік бермейді.
Аудио
C4 Engine 16 битті моно немесе стерео үлгі алу арқылы WAV форматында сақталған дыбыстарды ойнай алады, ал дыбыс деректерін жадынан ойнатуға немесе дискіден ағылуға болады. Двигатель дыбыстарды жиілікті ауыстырып, Допплер эффектісі, реверберация және атмосфералық сіңіру сияқты мүмкіндіктерді беретін арнайы микшер арқылы ойнайды.
Желі құру
C4-тегі көп ойыншылы ойынды ойынға қосылған әртүрлі компьютерлер арасында байланыс орнату үшін User Datagram Protocol протоколын пайдаланатын екі қабатты хабарламалар жүйесі қолдайды.
Физика
C4 қозғалтқышында физикалық қозғалтқыш бар, оны пайдалану немесе оның орнына үшінші тараптың шешімін іске асыру мүмкіндігі бар.
Құралдар
C4 Engine-де қазіргі заманғы ойын жасау үшін қажетті негізгі ойын әзірлеу құралдары бар. Әрбір құрал қозғалтқыштан бөлек орналасқан плагин модулі ретінде жинақталған. Көптеген құралдар қозғалтқышпен қамтамасыз етілген толық графикалық пайдаланушы интерфейсі жүйесін пайдаланады, сондықтан пайдаланушыға бірнеше платформада бірізді интерфейс ұсынылады.
Әлемдік редактор
World Editor құралы - бұл 3D контент жасау бағдарламасы, ол әдетте C4 Engine-мен пайдалану үшін ойын ортасын құру үшін қолданылады. Ол әлем геометриясын құру үшін қолданылатын сурет салу және манипуляциялау мүмкіндіктерінің үлкен жиынтығын, сондай-ақ жарық, дыбыс, триггерлер және арнайы эффекттер сияқты көптеген ойын қажеттіліктерін ұсынады. World Editor OpenGEX және COLLADA форматтары арқылы көрініс ақпаратын импорттай алады. Бұл Autodesk Maya немесе 3D Studio Max сияқты көптеген цифрлық мазмұн жасау бағдарламаларының мазмұнын пайдалануға мүмкіндік береді.
Скрипт редакторы
World Editor құралына суретшілер мен деңгей дизайнерлері, сондай-ақ бағдарламашылар қол жетімді болуы үшін жасалған графикалық скрипт редакторы кіреді. Скрипт редакторы пайдаланушыға әр түрлі "әдістерді" әрекет тәуелділіктері мен орындау реттілігін білдіретін "тіл" арқылы байланыстырылған бағытталған графикке орналастыруға мүмкіндік береді. Скрипттер график құрылымында циклдерді құру арқылы циклдерді қолдайды, ал шартты орындау оларды бастайтын әдістердің нәтижелік мәнінің шығысына байланысты орындалатын немесе орындалмайтын талшықты белгілеу арқылы қолдайды. Қозғалтқыш бірнеше стандартты скрипт әдістерімен жабдықталады, олар көрініс торабын қосу немесе ажырату сияқты қарапайым әрекеттерді (мысалы, жарықты қосу немесе сөндіру) және кездейсоқ математикалық өрнекті бағалау сияқты күрделі әрекеттерді орындайды. Жаңа скрипт әдістерін ойын кодымен анықтауға болады және олар сценарий редакторында деңгей дизайнері пайдалана алатын жеке әрекеттер ретінде пайда болады.
Панельдің редакторы
World Editor құралына 3D әлемнің ішіне орналастырылатын 2D интерфейс панельдерін құруды қамтамасыз ететін "панель редакторы" деп аталатын суб редактор кіреді. Панель редакторы пайдаланушыға көріністің бөлігі ретінде берілген панелдік эффект торабында мәтін мен суреттер сияқты виджеттердің әртүрлі түрлерін орналастыруға мүмкіндік береді. Панельдерде сондай-ақ сол әлемнің кез-келген жерінде орналасқан камераға көрінетін көріністі көрсететін арнайы камера виджеті болуы мүмкін. Интерфейс панельдері динамикалық және интерактивті болып табылады. Қозғалтқыш әр түрлі түрдегі анимацияны, мысалы, жылжыту, айналу немесе түстерді өзгерту үшін жеке панель элементтеріне қолдануға болатын "мутаторлардың" кеңейтілген жиынтығын ұсынады. Ойын кейіпкері панельге жақындап, интерактивті элементтердің ішінде тышқанды шерту арқылы онымен өзара әрекеттесе алады. Ойыншы оларды іске қосқан кезде бірнеше әрекеттердің орын алуына себеп болатын скрипт осындай элементтерге қосылуы мүмкін.
Лицензиялау
C4 Engine лицензиясы әр адамға 100 долларға беріледі, және бұл болашақтағы барлық жаңартуларды қоса алғанда, қосымша ақысыз.
Академиктер
C4 Engine көптеген университеттерде ойынға бағдарланған бағдарламалық қамтамасыз ету бағдарламалары немесе арнайы зерттеу жобалары үшін лицензияланған. Бұл университеттерге MIT, Georgia Tech, Worcester Polytechnic Institute (WPI), Макмастер университеті және Кемптен университеті жатады. Кейбір бағдарламалардың студенттері C4 Engine-ді пайдалана отырып, өздерінің ойынын жасауды талап етеді, және осы жобалардың көбісі Independent Games Festival студенттік жарысына кірді. Бір университет зерттеу жобасына WPI-де жасалған TactaVest технологиясы қатысты, ал олардың C4 қозғалтқышын қолдануы 2006 жылы 26 мамырда Discovery Channel Canada телешоуы Daily Planet эфиріне шығарылды.