Научная статья на тему 'ПРЕИМУЩЕСТВА ВИЗУАЛЬНЫХ ЯЗЫКОВ ПРОГРАМИРОВАНИЯ НА ПРИМЕРЕ BLUEPRINT В СРЕДЕ ИГРОВОГО ДВИЖКА UNREAL ENGINE 4'

ПРЕИМУЩЕСТВА ВИЗУАЛЬНЫХ ЯЗЫКОВ ПРОГРАМИРОВАНИЯ НА ПРИМЕРЕ BLUEPRINT В СРЕДЕ ИГРОВОГО ДВИЖКА UNREAL ENGINE 4 Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
71
9
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ВИЗУАЛЬНЫЙ ЯЗЫК ПРОГРАММИРОВАНИЯ / КОМПИЛЯЦИЯ / СКРИПТ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Неизвестный М.А.

Статья посвящена визуальному языку программирования Blueprint, его преимуществам и отличиям перед традиционным языком программирования, таким как С++.The article is devoted to visual programming language Blueprint, its advantages and differences over traditional programming language such as C ++.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «ПРЕИМУЩЕСТВА ВИЗУАЛЬНЫХ ЯЗЫКОВ ПРОГРАМИРОВАНИЯ НА ПРИМЕРЕ BLUEPRINT В СРЕДЕ ИГРОВОГО ДВИЖКА UNREAL ENGINE 4»

обращения 10.08.2016).

- Изместьева Е. 11 принципов успешного краудсорсинга в образовании ГЭлектронный ресурс! — Режим доступа. URL: https://te-st.ru/2014/02/10/successful-crowdsourcing/ (дата обращения 05.08.2016).

Неизвестный М.А. студент 2 курса

факультет «Информационных систем и технологий» Поволжский университет телекоммуникаций и информатики

Россия, г. Самара

ПРЕИМУЩЕСТВА ВИЗУАЛЬНЫХ ЯЗЫКОВ ПРОГРАМИРОВАНИЯ НА ПРИМЕРЕ BLUEPRINT В СРЕДЕ ИГРОВОГО ДВИЖКА UNREAL

ENGINE 4.

Статья посвящена визуальному языку программирования Blueprint, его преимуществам и отличиям перед традиционным языком программирования, таким как С++.

Ключевые слова: визуальный язык программирования, компиляция, скрипт, Blueprint.

The article is devoted to visual programming language Blueprint, its advantages and differences over traditional programming language such as C ++.

Keywords: visual programming language, compilation, script, the Blueprint.

Язык программирования — формальная знаковая система, предназначенная для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, определяющих внешний вид программы и действия, которые выполнит её исполнитель. За всё время своего существования языки программирования изменялись, становясь проще и понятнее.

С появлением компьютеров программистам приходилось писать программы в машинном коде. Это требовало огромных усилий и приводило к множеству ошибок. В 50 -х годах был создан ассемблер, позволяющий задавать названия команд в символическом виде, что облегчило работу программистов.

Следующими языками программирования являлись языки высокого уровня. Они имеют ряд преимуществ: простота, независимость выполнения от компьютера. Также они имитируют естественные языки, используя некоторые слова разговорного языка и общепринятые математические символы. Эти языки более удобны для человека.

С 70-х годов и по настоящее время продолжается период языков 4-го поколения. Целью их создания было стремление увеличить скорость разработки проектов, уменьшить число ошибок, получить возможность быстро и легко вносить изменения в программу.

Следующим витком развития языков программирования можно считать

появление визуальных языков программирования. В отличие от традиционного программирования, в визуальном программист имеет дело со структурами по типу блок-схем. При этом составляющие этих блоков являются заранее разработанными подпрограммами и функциями. При соединении таких блоков их взаимный интерфейс настраивается без участия программиста. Таким образом, визуальные языки позволяют программировать на уровне алгоритмов, а не программного кода.

Примерами визуальных языков являются Google Blockly, VisSim, Blueprint и др.

Рассмотрим технологию Blueprint в движке Unreal Engine 4.

Blueprint - это визуальный скриптинг в среде UE4, основанный на использовании графического интерфейса, позволяющий создавать гейплейные элементы в среде движка.

Рассмотрим преимущества составления скрипта на Blueprint по сравнению с С++.

Blueprint, как С++ и многие языки программирования, поддерживает объектно-ориентированное программирование, что поможет составить удобную классовую иерархию в проекте. Blueprint позволяет создать новый класс без необходимости написания кода и его дополнительной компиляции, что делает возможным работать без задержек и экономить время.

Помимо всего прочего Blueprint очень быстро компилируется по сравнении с C++. Это позволяет быстро протестировать выполнение алгоритма, посмотреть, как работает та или иная функция.

Asset Tools Build and Submit E Source Control (5) Blueprint Log Play In Editor Automation Testin Localization Servic Asset Reimport Lighting Results Map Check (1) Load Errors Editor Errors Packaging Results Asset Check Slate Style Log

UDN Parse Errors

Creating makefile for hot reloading MyProject3 (working set of source files Compiling game modules for hot reload Parsing headers for MyProject3Editor

Running UnrealHeaderTool "C:\Users\Cyfralus\Documents\Unreal Projec Reflection code generated for MyProject3Editor in 6,1347744 seconds Performing 2 actions (4 in parallel) MyProject3Character.cpp [2/2] Link UE4Editor-MyProject3-8492.dll

????????? ?????????? C:\Users\Cyfralus\Documents\Unreal ProjectsVMv Total build time 94,16 seconds

0 Compiler Results j® Find Results

• [0426.72] Compile of ThirdPersonCharacter successful! [in 107 ms] (/Game/ThirdPersonBP/Blueprii

Рис. 1. Время компиляции C++ Blueprint. Несомненным плюсом Blueprint является совпадающий API с С++. Т.е. входящие в их состав классы, функции и процедуры идентичны. Приведем в пример функцию случайного выбора числа из заданного диапазона. Если навести мышкой на блок, то можно увидеть к какой библиотеки он относится.

Рис. 2. Определение библиотеки. Открываем header файл библиотеки и находим функцию, которая может использоваться и в С++.

/* Returns a uniformly distributed^random number between 0 and Max - 1 */

Рис. 3. Искомая функция. Исходя из выше сказанного, код на С++ может быть представлен несколькими блоками в Blueprint (рис.4 и рис.5). А с перечисленными выше преимуществами позволяет работать быстро и эффективно.

void

((Controller-

• - т JBuwPqfMiraflBft v • иии) M (v i - 1= *.»f))

// find out which way n forward

tont» IRotation - Controller >6etContrn)Rotetion(); с cist *"at ator YawHotation(e. Rotation.Yaw,

// tuiM«nl vector

const • - tc Direction » i ' AlklHuvMwnt Input (Oirection.

.(Ya»*otetion) .Gett*ütA*is<tA*is: ;X)j

'roj-i ' ' ягв:*- :;hPve*i*MKnCTt vl»-e) ( {Controller I- MULL) HA (V- .. I- e.ef) ) У/ find out which way la right

<r*i«t ' « Rotation « Controller XietCointrolRotetionQ;

tontt ' «'or ion(a, Rot at ion.Yew, •) ¡

// ff»t right vector-const »Vri tc-- Direction - notation*' // add aovont in that direction AddHovMwnt Input (Oirett ion, \ - - ) J,

- ( Va»*ot at ion ) . OetUni tA*is ( tAxi s ; : Y ) ;

Рис. 4. Методы, написанные на С++

С- 1^4 »ИЩ«<

»

u« IM •

»

>~»0

Рис. 5. Методы, написанные на Blueprint.

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

Blueprint может помочь составить логику дизайнерам игр для последующего написания кода на С++ программистами.

В заключении выделим ещё раз основные плюсы Blueprint:

S Простота в освоении.

S Быстрая компиляция.

S Идентичность с С++.

S Объектно-ориентированный язык программирования.

S Подходит для небольших команд разработчиков.

Использованные источники: 1. https://docs.unrealengine.com/ - technical guide

Николаева В. Ю. студент 3 курса

факультет «информационных систем и технологий» Поволжский государственный университет телекоммуникаций и информатики

Россия, г. Самара ЗНАЧЕНИЕ И ПЕРСПЕКТИВЫ ИНТЕРНЕТА ВЕЩЕЙ

Аннотация: В данной статье рассмотрено толкование термина «Интернет вещей», годы его появления и его значение в современной жизни человека. На основе проведенного исследования выявлены особенности и технологии, которые определяют его рост, а так же отмечены перспективы Интернета вещей.

Abstract: This article discusses the interpretation of the term "Internet of things" revealed years of its appearance and its importance in modern life. On the basis of the study revealed the features and technologies that determine its growth and there are opportunities in the Internet of things.

Ключевые слова: Интернет вещей; Интернет; сенсоры; телекоммуникационные технологии; устройства

Keywords: Internet of things; Internet; sensors; communication technologies; devices

На сегодняшний день, Интернет вещей является одним из наиболее цитируемых терминов в ИТ-публикациях, существует множество определений понятия Интернета вещей. Приведем некоторые из них:

1) Интернет вещей это концепция вычислительной сети физических предметов («вещей»), оснащённых встроенными технологиями для взаимодействия друг с другом или с внешней средой, рассматривающая организацию таких сетей как явление, способное перестроить экономические и общественные процессы, исключающее из части действий и операций необходимость участия человека.

2) Интернет вещей (Internet of Things) - это концепция,

i Надоели баннеры? Вы всегда можете отключить рекламу.