Skip to content

Latest commit

 

History

History
1387 lines (1387 loc) · 100 KB

Extras.md

File metadata and controls

1387 lines (1387 loc) · 100 KB

Список методов в категории Extras:

ARCreateAnchorFromHitTest

Описание

Создает якорь из заданного результата теста попадания, который может быть использован для отслеживания точки в реальном мире с течением времени. Якоря автоматически регулируют свое положение, чтобы попытаться оставаться неподвижными в точке, обнаруженной в реальном мире, это позволяет разместить объект там, не дрейфуя слишком сильно. Возвращает идентификатор, который вы можете использовать для ссылки на этот якорь позже. Результат теста попадания не обязательно должен существовать после создания из него якоря, после этого вы можете безопасно очистить результаты теста попадания. Якорь будет сохраняться и использовать некоторые ресурсы отслеживания до тех пор, пока вы специально не удалите его с помощью ARDeleteAnchor или не уничтожите сеанс AR.

Определение

int agk::ARCreateAnchorFromHitTest( int index )

Параметры

index - Индекс результата теста попадания для использования, начиная с индекса 1

Пример кода


ARCreateAnchorFromPlane

Описание

Создает якорь из центра данной плоскости, который может быть использован для отслеживания точки в реальном мире с течением времени. Якоря автоматически корректируют свое положение, чтобы попытаться оставаться неподвижными в точке, обнаруженной в реальном мире, это позволяет разместить объект там, не дрейфуя слишком сильно. Возвращает идентификатор, который вы можете использовать для ссылки на этот якорь позже. Результат плоскости не обязательно должен существовать после создания из него якоря, после этого вы можете смело вызывать ARGetPlanesFinish. Якорь будет сохраняться и использовать некоторые ресурсы отслеживания до тех пор, пока вы специально не удалите его с помощью ARDeleteAnchor или не уничтожите сеанс AR.

Определение

int agk::ARCreateAnchorFromPlane( int index )

Параметры

index - Индекс используемого самолета, начиная с индекса 1

Пример кода


ARControlCamera

Описание

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

Определение

void agk::ARControlCamera()

Параметры

Пример кода


ShareSnapChatImage

Описание

Отправляет указанное изображение в приложение SnapChat на текущем устройстве вместе с дополнительным файлом стикера, подписью и URL-адресом. Затем пользователь может изменить изображение с помощью приложения SnapChat и решить, стоит ли делиться им с друзьями. Если у пользователя не установлено приложение SnapChat, то вместо него на странице приложения SnapChat будет открыт магазин приложений. Эта команда будет работать только на Android и iOS 10 или выше

Определение

void agk::ShareSnapChatImage( const char* imageFile, const char* stickerFile, const char* caption, const char* url )

Параметры

imageFile - Путь к изображению, которым вы хотите поделиться
stickerFile - Путь к изображению стикера, чтобы добавить его к изображению, может быть пустой строкой
caption - Подпись, которую нужно добавить к изображению, может быть пустой строкой
url - URL-адрес, который нужно добавить к изображению, может быть пустой строкой

Пример кода


SetupCloudData

Описание

Настраивает устройство на использование облачных данных на совместимых платформах, в настоящее время эту функцию поддерживают только Android и iOS. Облачные данные можно использовать для совместного использования настроек на нескольких устройствах, работающих под управлением одного и того же приложения. Например, сохранение некоторых настроек приложения или прогресса на одном устройстве с помощью команд облачных данных сделает их доступными (через короткий промежуток времени) на всех других устройствах на той же платформе. Обратите внимание, что данные не пересекаются с платформами, поэтому данные, сохраненные на iOS, недоступны на Android, а данные, сохраненные на Android, недоступны на iOS. В iOS это использует iCloud Drive для хранения данных, поэтому пользователь должен войти в iCloud и включить iCloud Drive, вы можете определить, были ли они сделаны с помощью GetCloudDataAllowed. Вы также должны добавить iCloud в свой профиль подготовки, но вам не нужно создавать какие-либо контейнеры. Этот профиль подготовки необходимо использовать при экспорте приложения. На iOS вы ограничены 1 МБ памяти. На Android это использует Android Drive AppData, поэтому пользователь должен войти в систему с учетной записью Google на устройстве. Вы также должны добавить проект Google API для вашего приложения здесь https: console.developers.google.com и создайте идентификатор клиента OAuth в разделе учетные данные. Скажите ему, что запрос исходит от Android, дайте ему имя по вашему выбору и назовите имя пакета вашего приложения. Вам нужно будет дать ему SHA-1 fignerprint файла хранилища ключей, который вы будете использовать для подписи вашего APK, это делается для того, чтобы он мог проверить, что только APKS, подписанные вами, могут использовать сгенерированный идентификатор клиента OAuth. Программа keytool является частью Java Development Kit (JDK). После создания вам не нужно ничего делать с токеном OAuth, он будет использоваться автоматически при вызове команд облачных данных. На Android любые данные, которые вы храните, будут засчитываться в лимит хранения Google Диска пользователя, они не могут получить доступ к файлам, хранящимся в вашем приложении, но они могут очистить данные приложения в настройках своего диска. Широковещательные приложения будут использовать хранилище данных AGK Player и совместно использовать переменные во всех ваших широковещательных приложениях, поэтому будьте осторожны с перезаписью значений, если два ваших приложения имеют одно и то же имя переменной. Данные, которые вы храните в хранилище данных AGK Player, будут видны только вам и вашим устройствам. Эта команда должна быть вызвана перед любыми другими командами облачных данных, кроме GetCloudDataAllowed, которые могут быть вызваны в любое время. На Android вы должны спросить пользователя, хочет ли он хранить данные на своем диске, прежде чем вызывать setup, так как эта команда может попросить пользователя войти в свой аккаунт Google.

Определение

void agk::SetupCloudData( const char* reserved )

Параметры

reserved - Зарезервировано, должно быть пустой строкой

Пример кода


SetSnapChatStickerSettings

Описание

Задает свойства для любых изображений наклеек, добавляемых в будущие вызовы ShareSnapChatImage. Параметры X и Y должны находиться в диапазоне от 0.0 до 1.0, например, в направлении X 1.0-это крайняя правая часть изображения, а 0.0-крайняя левая часть изображения.

Определение

void agk::SetSnapChatStickerSettings( float x, float y, int width, int height, float angle )

Параметры

x - Положение X наклейки, по умолчанию 0,5
y - Положение наклейки Y, по умолчанию 0,5
width - Ширина наклейки, по умолчанию 250
height - Высота наклейки, по умолчанию 250
angle - Угол наклона наклейки, по умолчанию 0

Пример кода


SetSharedVariableAppGroup

Описание

Только для iOS. Сообщает AGK, какую группу приложений вы используете для обмена данными между приложениями. Например, group.com.mycompany.mygroup.myvariables создается на портале разработчиков Apple и должен быть добавлен к каждому идентификатору приложения, к которому вы хотите получить доступ к этим переменным. Вам нужно будет заново создать профиль подготовки для каждого приложения после добавления группы приложений к его идентификатору приложения.

Определение

void agk::SetSharedVariableAppGroup( const char* group )

Параметры

group - Имя, используемое для идентификации этой переменной

Пример кода


SetPushNotificationKeys

Описание

Эта команда используется на Android для установки SenderID, используемого проектом Firebase. В настоящее время keyName должно быть установлено в SenderID (с учетом регистра), а KeyValue должно быть установлено в значение SenderID, которое можно найти в настройках проекта Firebase на вкладке Облачные сообщения.

Определение

void agk::SetPushNotificationKeys( const char* keyName, const char* keyValue )

Параметры

keyName - Ключ к набору
keyValue - Ключевое значение

Пример кода


SetLocalNotification

Описание

Создает локальное уведомление, которое появится в какой-то момент в будущем. Уведомления ссылаются на идентификатор и могут быть перезаписаны путем создания нового уведомления с тем же идентификатором, что и уведомление, которое вы хотите перезаписать. Если уведомление срабатывает во время работы приложения, то оно не появляется и бесшумно исчезает из списка запланированных уведомлений. Если приложение не открыто, то пользователю будет показано уведомление, и нажатие на него откроет ваше приложение. Если вы установите параметр deeplink, то этот URL-адрес будет отправлен в приложение при нажатии уведомления. URL-адрес можно получить с помощью команды GetURLSchemeText. Параметр datetime должен быть указан в unix time, который измеряется в секундах с 1 января 1970 года, вы можете использовать команду GetUnixTime для возврата текущей даты и времени, а затем изменить ее по мере необходимости. Если дата и время находятся в прошлом, то уведомление будет проигнорировано, оно не будет перезаписывать ни одно существующее уведомление. Идентификатор должен находиться в диапазоне от 1 до 100 включительно.

Определение

void agk::SetLocalNotification( int iID, int datetime, const char *szMessage )
void agk::SetLocalNotification( int iID, int datetime, const char *szMessage, const char *szDeepLink )

Параметры

iID - Идентификатор, который будет использоваться для ссылки на это уведомление в будущем
datetime - Дата и время отображения этого уведомления в unix time
szMessage - Сообщение для отображения в уведомлении
szDeepLink - URL-адрес для отправки в приложение, если уведомление прослушивается

Пример кода


SetCloudDataVariable

Описание

Устанавливает переменную облачных данных в заданное значение. Если несколько устройств записывают значение одновременно, то облачный провайдер выбирает одно из них и отправляет его всем устройствам. Имя переменной должно быть меньше 64 байт, один символ UTF8 может быть несколько байт, но обычно 1 символ равен 1 байту. Рекомендуется, чтобы имена переменных включали имя приложения, например myapp.myvariablename, поскольку при трансляции ваших приложений все они будут совместно использовать одно хранилище данных в приложении AGK PLayer. Изменяемые данные хранятся локально, поэтому GetCloudDataVariable немедленно вернет новое значение, однако синхронизация с облаком выполняется в фоновом режиме и может занять несколько минут. Если устройство не имеет подключения к Интернету, то данные будут синхронизированы при следующей доступной возможности. В iOS вы ограничены 1024 переменными с общим объемом памяти 1 МБ. На Android любые данные, которые вы храните, засчитываются в лимит хранения Google Диска пользователя, пользователь может очистить данные вашего приложения, чтобы освободить место, но он не может прочитать данные, которые вы храните. Вы не должны хранить конфиденциальную информацию, такую как пароли, в виде обычного текста с помощью этих команд.

Определение

void agk::SetCloudDataVariable( const char* varName, const char* varValue )

Параметры

varName - Имя переменной, которую нужно изменить, должно быть меньше 64 байт
varValue - Значение для установки переменной

Пример кода


SetClipboardText

Описание

Устанавливает буфер обмена устройства на указанный текст, при этом перезаписывается все, что ранее было в буфере обмена устройства. Буфер обмена такой же, как и тот, который используется функцией копирования/вставки устройства.

Определение

void agk::SetClipboardText( const char* szText )

Параметры

szText - Текст для копирования

Пример кода


SendSmartWatchData

Описание

Отправка данных на смарт-часы в фоновом режиме, если приложение watch в данный момент не открыто, сообщение будет поставлено в очередь и получено приложением watch при следующем открытии. Сообщение должно быть в виде строки JSON, например {label:my message}. Вы также можете использовать тип с функцией .toJSON() для создания строки JSON. Приложение watch получит его как NSDictionary с метками в качестве ключей. В настоящее время работает только на iOS.

Определение

void agk::SendSmartWatchData( const char* szJson )

Параметры

szJson - Строка JSON, содержащая сообщение для отправки в приложение watch.

Пример кода


SaveSharedVariable

Описание

Сохраняет переменную, чтобы к ней можно было получить доступ из других приложений. Это работает только на платформах iOS, Android 10 и ниже, а также HTML5. Приложения могут совместно использовать переменную только в том случае, если они отвечают определенным требованиям, основанным на платформе. В iOS приложения должны быть созданы одной и той же учетной записью разработчика Apple и иметь одну и ту же группу приложений, добавленную к их идентификаторам приложений на портале разработчиков Apple. После этого вам нужно будет заново создать профиль подготовки. В iOS вы должны сообщить AGK, что такое группа приложений, используя SetSharedVariableAppGroup. На Android 10 и ниже приложения должны иметь разрешение WRITE_EXTERNAL_STORAGE и иметь одно и то же имя пакета до последней точки. Например, com.mycompany.mygroup.myapp1 и com.mycompany.mygroup.myapp2 смогут совместно использовать переменные. На Android общие переменные записываются в доступное пользователю место, поэтому имейте в виду, что пользователи могут читать и/или редактировать сохраненные вами переменные. На Android 11 или выше эта команда не будет работать, так как приложения ограничены в записи в общие места. В HTML приложения должны размещаться в одном домене, значения хранятся в виде файлов cookie. Переменные идентифицируются по имени, поэтому использование SaveSharedVariable(username, Alice) установит переменную с именем username в значение Alice. Затем это может быть прочитано другими приложениями с помощью LoadSharedVariable( username,), Если два приложения сохраняют разные значения в одном и том же имени переменной, то значение будет перезаписано и будет доступно только самое последнее значение. Значения переменных будут сохраняться даже в том случае, если приложение будет удалено и повторно установлено. Вы не должны использовать эту команду для хранения любой конфиденциальной информации, такой как пароли, в виде обычного текста. В iOS длина имени переменной плюс длина идентификатора вашего приложения до последней точки (например, com.mycompany.mygroup) должна быть меньше 58.

Определение

void agk::SaveSharedVariable( const char *varName, const char *varValue )

Параметры

varName - Имя, используемое для идентификации этой переменной
varValue - Значение, которое нужно сохранить в этой переменной

Пример кода


RequestPermission

Описание

Только для Android все остальные платформы ничего не сделают. Генерирует системный диалог с запросом у пользователя указанного разрешения устройства, используемого определенными командами Android. Разрешения следующие: writeExternal - используется командами SaveSharedVariable и любыми путями raw:, которые обращаются к SD-карте. Местоположение - используется командами GPS Камера - используется командой SetDeviceCameraToImage и для канала AR - камеры RecordAudio - используется командой StartScreenRecording Вы можете проверить результат запроса, вызвав checkPermission. После первого запроса Android предоставит пользователю возможность прекратить отображение диалогового окна запроса. В этом случае эта команда больше не будет генерировать диалоговое окно запроса и вместо этого ничего не будет делать. Пользователю придется зайти в настройки приложения устройства, чтобы отменить это решение. Любое разрешение, не указанное здесь, не требует от вас запроса разрешения пользователя, оно будет автоматически предоставлено при установке, если ваше приложение этого требует. Все разрешения, которые использует ваше приложение, даже те, которые требуют запроса, должны быть указаны в диалоговом окне экспорта APK, установив соответствующие флажки.

Определение

void agk::RequestPermission( const char* szPermission )

Параметры

szPermission - Разрешение на запрос

Пример кода


RequestAppReview

Описание

iOS 10.3 имеет специальную функцию, которая позволит пользователю просматривать ваше приложение изнутри самого приложения, эта команда подскажет iOS начать этот процесс. Обратите внимание, что iOS не гарантирует отображение чего-либо при вызове этой команды, и она не должна вызываться в ответ на нажатие кнопки или другое взаимодействие пользователя. Вы должны вызвать его, когда в приложении наступает затишье, например в конце уровня. Если вы хотите запустить процесс проверки в ответ на действие пользователя, например нажатие кнопки, то вам следует использовать команду OpenBrowser для открытия AppStore.

Определение

void agk::RequestAppReview()

Параметры

Пример кода


ReceiveSmartWatchData

Описание

Получает сообщение в очереди из приложения watch. Это будет в виде строки JSON. Если вы вызываете эту команду из уровня 2, вы должны удалить возвращенную строку, когда закончите с ней, вызвав agk::DeleteString. В настоящее время работает только на iOS.

Определение

char* agk::ReceiveSmartWatchData()

Параметры

Пример кода


RateApp

Описание

Отображает диалоговое окно с запросом пользователя оценить приложение в App Store. В настоящее время эта команда поддерживается только на iOS.

Определение

void agk::RateApp ( const char* szID, const char* szTitle )
void agk::RateApp ( const char* szID, const char* szTitle, const char* szMessage )
void agk::RateApp ( const char* szID )

Параметры

szID - Это идентификатор вашего приложения. Вы можете получить его в iTunes Connect.
szTitle - Строка, используемая в качестве заголовка диалогового окна, обычно это Rate AppName
szMessage - Строка, используемая в качестве сообщения диалогового окна

Пример кода


PushNotificationSetup

Описание

Возвращает 1, если настройка прошла успешно, 0, если она не удалась или устройство не поддерживает push-уведомления.

Определение

int agk::PushNotificationSetup()

Параметры

Пример кода


LoadSharedVariable

Описание

Загружает переменную, сохраненную этим приложением или другим приложением. Это работает только на платформах iOS, Android 10 и ниже, а также HTML5. Приложения могут совместно использовать переменную только в том случае, если они отвечают определенным требованиям, основанным на платформе. В iOS приложения должны иметь один и тот же начальный идентификатор пакета (также называемый префиксом идентификатора приложения) и иметь один и тот же явный идентификатор приложения до последней точки. Например, com.mycompany.mygroup.myapp1 и com.mycompany.mygroup.myapp2 смогут совместно использовать переменные. На Android 10 и ниже приложения должны иметь разрешение WRITE_EXTERNAL_STORAGE и иметь одно и то же имя пакета до последней точки. Например, com.mycompany.mygroup.myapp1 и com.mycompany.mygroup.myapp2 смогут совместно использовать переменные. На Android общие переменные записываются в доступное пользователю место, поэтому имейте в виду, что пользователи могут читать и/или редактировать сохраненные вами переменные. На Android 11 или выше эта команда не будет работать, так как приложения ограничены в записи в общие места. В HTML приложения должны размещаться в одном домене, значения хранятся в виде файлов cookie. Переменные идентифицируются по имени, поэтому использование SaveSharedVariable(username, Alice) установит переменную с именем username в значение Alice. Затем это может быть прочитано другими приложениями с помощью LoadSharedVariable( username, ). Если переменная с заданным именем не существует, то вместо нее возвращается указанное значение по умолчанию

Определение

char* agk::LoadSharedVariable( const char *varName, const char *defaultValue )

Параметры

varName - Имя переменной для извлечения
defaultValue - Значение, возвращаемое, если переменная не существует

Пример кода


InAppPurchaseSetup

Описание

После установки названия покупки в приложении и добавления идентификаторов продуктов вызовите InAppPurchaseSetup, чтобы завершить процесс. После этого момента вы можете попытаться приобрести разблокируемый контент. В настоящее время эта команда поддерживается только на iOS и Android.

Определение

void agk::InAppPurchaseSetup()

Параметры

Пример кода


InAppPurchaseSetKeys

Описание

Устанавливает все необходимые внутренние данные при настройке IAP для этой платформы. В настоящее время это относится только к Google Play и Ouya, где вам нужно предоставить свой открытый ключ в base64. Это должно быть вызвано перед InAppPurchaseSetup. Чтобы найти открытый ключ для приложений Google Play, откройте сведения о приложении в консоли Google PlayDeveloper и нажмите кнопку Службы и API. Открытый ключ будет находиться в поле под названием Ваш лицензионный ключ для этого приложения.

Определение

void agk::InAppPurchaseSetKeys ( const char* szData1, const char* szData2 )

Параметры

szData1 - Открытый ключ
szData2 - Разработчик UUID (только Ouya)

Пример кода


InAppPurchaseSetTitle

Описание

Задает имя приложения таким образом, чтобы оно отображалось в любых диалоговых окнах, отображаемых при использовании команд покупки в приложении. В настоящее время эта команда поддерживается только на iOS и Android.

Определение

void agk::InAppPurchaseSetTitle ( const char* szTitle )

Параметры

szTitle - Название вашей заявки

Пример кода


InAppPurchaseRestore

Описание

Восстанавливает все управляемые покупки, сделанные на этой платформе. Например, если пользователь приобрел товар, а затем переустановил приложение, то приложение вернет 0 для GetInAppPurchaseAvailable, если оно не было приобретено снова. Несмотря на то, что это не будет взимать плату с пользователя снова за управляемые товары, Apple требует, чтобы у вас была кнопка, вызывающая эту функцию, вместо того чтобы заставлять пользователя снова проходить процесс покупки. После вызова этой команды вы можете вызвать GetInAppPurchaseAvailable. В настоящее время эта команда поддерживается только на iOS. Эта команда не нужна на Android и Amazon, так как она автоматически восстанавливается в InAppPurchaseSetup

Определение

void agk::InAppPurchaseRestore()

Параметры

Пример кода


InAppPurchaseAddProductID

Описание

Используйте эту команду для добавления любых идентификаторов продуктов в список, например com.yourcompany.yourproduct.iap. Первый идентификатор продукта, который вы добавляете, становится 0, второй-1 и т. Д. Вы также должны указать тип этого продукта: расходуемый (1) или непотребляемый(0). Расходные материалы-это как монеты, которые можно покупать снова и снова, они называются неуправляемыми предметами в Google Play. Непотребляемые продукты-это одноразовые покупки, такие как разблокировка полной версии приложения, они называются управляемыми элементами Google Play. В настоящее время эта команда поддерживается только на iOS, Google Play и Amazon. Это должно быть вызвано до InAppPurchaseSetup, после чего никакие другие продукты не могут быть добавлены.

Определение

void agk::InAppPurchaseAddProductID ( const char* szID, int type )

Параметры

szID - Идентификатор продукта, указанный в iTunes Connect или консоли разработчика Google Play
type - Тип этого продукта-расходуемый (1) или непотребляемый(0)

Пример кода


InAppPurchaseActivate

Описание

Вызовите это, когда вы хотите начать процесс активации / разблокировки дополнительного контента. В настоящее время эта команда поддерживается только на iOS и Android.

Определение

void agk::InAppPurchaseActivate ( int iID )

Параметры

iID - этот идентификатор соответствует идентификаторам продуктов, которые были добавлены, например, ваш первый продукт

Пример кода


GetSmartWatchState

Описание

Возвращает текущее состояние подключения смарт-часов: 0=начальное состояние, ActivateSmartWatch не вызывался. 1=подключение, через мгновение перейдет в более детальное состояние. 2=соединение успешно, вы можете отправлять и получать данные. -1=команды watch не поддерживаются на этом устройстве. -2=соединение не удалось или часы не найдены. -3=часы найдены, но в данный момент они не сопряжены с устройством, -4=часы найдены, но наше приложение для часов в данный момент не установлено. В настоящее время работает только на iOS.

Определение

int agk::GetSmartWatchState()

Параметры

Пример кода


GetPushNotificationToken

Описание

Возвращает маркер push-уведомления для этого устройства, он должен быть отправлен на ваш сервер, который отправляет уведомления, чтобы он мог отправлять уведомления на это устройство. Если PushNotificationSetup вернул 1, то вы должны продолжать вызывать эту команду до тех пор, пока она не вернет непустую строку. Если PushNotificationSetup вернул 0, то эта команда всегда будет возвращать пустую строку. Пожалуйста, обратитесь к руководству по Push-уведомлениям Android для получения более подробной информации о том, как использовать токен устройства для отправки Push-уведомлений на это устройство.

Определение

char* agk::GetPushNotificationToken()

Параметры

Пример кода


GetLocalNotificationTime

Описание

Возвращает дату и время отображения указанного уведомления. Возвращаемое время будет в формате unix timestamp, который измеряется количеством секунд с 1 января 1970 года. Если по указанному идентификатору уведомления не существует, то возвращается 0

Определение

int agk::GetLocalNotificationTime( int iID )

Параметры

iID - ИДЕНТИФИКАТОР уведомления для проверки

Пример кода


GetLocalNotificationMessage

Описание

Возвращает сообщение, которое будет отображаться указанное уведомление. Если по указанному идентификатору уведомления не существует, то будет возвращена пустая строка

Определение

char* agk::GetLocalNotificationMessage( int iID )

Параметры

iID - ИДЕНТИФИКАТОР уведомления для проверки

Пример кода


GetLocalNotificationExists

Описание

Возвращает 1, если уведомление с этим идентификатором ожидает отображения, в противном случае 0. Уведомления обновляются каждые 5 секунд, так что это может продолжать возвращать 1 вскоре после того, как уведомление сработало.

Определение

int agk::GetLocalNotificationExists( int iID )

Параметры

iID - ИДЕНТИФИКАТОР уведомления для проверки

Пример кода


GetInAppPurchaseState

Описание

Возвращает текущее состояние попытки активации содержимого. Значение 0 указывает на то, что процесс продолжается, в то время как 1 подтверждает, что процесс завершен. В настоящее время эта команда поддерживается только на iOS и Android.

Определение

int agk::GetInAppPurchaseState()

Параметры

Пример кода


GetInAppPurchaseSignature

Описание

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

Определение

char* agk::GetInAppPurchaseSignature(int iID)

Параметры

iID - Например, ваш первый идентификатор продукта равен 0, ваш второй-1 и т. Д.

Пример кода


GetInAppPurchaseLocalPrice

Описание

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

Определение

char* agk::GetInAppPurchaseLocalPrice ( int iID )

Параметры

iID - этот идентификатор соответствует идентификаторам продуктов которые были добавлены например ваш первый продукт

Пример кода


GetInAppPurchaseDescription

Описание

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

Определение

char* agk::GetInAppPurchaseDescription ( int iID )

Параметры

iID - этот идентификатор соответствует идентификаторам продуктов, которые были добавлены, например, ваш первый продукт

Пример кода


GetInAppPurchaseAvailable

Описание

Возвращает 1, если дополнительный контент был приобретен и поэтому доступен. Возвращает 0, если содержимое недоступно. В настоящее время эта команда поддерживается только на iOS и Android.

Определение

int agk::GetInAppPurchaseAvailable ( int iID )

Параметры

iID - этот идентификатор соответствует идентификаторам продуктов которые были добавлены например ваш первый продукт

Пример кода


GetGameCenterPlayerID

Описание

Возвращает уникальный идентификатор игрока, вошедшего в систему в данный момент. Если никто не вошел в систему или платформа не поддерживает команды GameCenter, то это вернет пустую строку. Если вы вызываете эту команду из уровня 2, то возвращаемая строка должна быть удалена с помощью agk::DeleteString, когда вы закончите с ней.

Определение

char* agk::GetGameCenterPlayerID()

Параметры

Пример кода


GetGameCenterPlayerDisplayName

Описание

Возвращает отображаемое имя для текущего вошедшего в систему игрока. Если никто не вошел в систему или платформа не поддерживает команды GameCenter, то это вернет пустую строку. Если вы вызываете эту команду из уровня 2, то возвращенная строка должна быть удалена с помощью agk::DeleteString, когда вы закончите с ней.

Определение

char* agk::GetGameCenterPlayerDisplayName()

Параметры

Пример кода


GetGameCenterLoggedIn

Описание

Вернет 1, если пользователь вошел в Game Center или Google Play Games, и 0, если нет. Процесс входа в систему асинхронен, поэтому после вызова GameCenterLogin может потребоваться несколько секунд, чтобы эта команда вернула 1. Если пользователь не может войти в систему или GameCenter недоступен, то это вернет -1.

Определение

int agk::GetGameCenterLoggedIn()

Параметры

Пример кода


GetGameCenterExists

Описание

Возвращает 1, если текущая платформа поддерживает Game Center или Google Play Games.

Определение

int agk::GetGameCenterExists()

Параметры

Пример кода


GetFacebookDownloadState

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

int agk::GetFacebookDownloadState()

Параметры

Пример кода


GetFacebookDownloadFile

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

char* agk::GetFacebookDownloadFile()

Параметры

Пример кода


GetFacebookLoggedIn

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

int agk::GetFacebookLoggedIn()

Параметры

Пример кода


GetCloudDataVariable

Описание

Возвращает значение переменной облачных данных по имени. Если переменная не существует, то вместо нее будет возвращено значение по умолчанию, переданное по умолчанию. Если вы вызываете эту команду из уровня 2, то вы должны удалить возвращенную строку, когда закончите с ней, вызвав agk::DeleteString.

Определение

char* agk::GetCloudDataVariable( const char* varName, const char* defaultValue )

Параметры

varName - Имя переменной, которую нужно проверить, должно быть меньше 64 байт
defaultValue - Значение, возвращаемое, если переменная не существует

Пример кода


GetCloudDataChanged

Описание

Возвращает 1 если облачные данные изменились из-за того, что другое устройство изменило значение, оно будет оставаться 1 до тех пор, пока вы не вызовете GetCloudDataVariable. В противном случае возвращает 0. Это не станет 1, когда вы измените значение локально.

Определение

int agk::GetCloudDataChanged()

Параметры

Пример кода


GetCloudDataAllowed

Описание

Возвращает 1, если команды облачных данных доступны для использования. Возвращает 0, если пользователь еще не решил, разрешить или заблокировать доступ, это будет предложено в SetupCloudData, если это применимо. Возвращает -1, если пользователь специально отказал в доступе. Возвращает значение -2, если пользователь не вошел в систему или на устройстве нет iCloud или Google Диска. Вы можете предложить пользователю войти в систему и включить их при первом запуске вашего приложения или когда он решит включить облачное резервное копирование в ваших собственных настройках приложения. Если эта команда возвращает -3 на Android, то данные Google cloud повреждены и должны быть очищены в настройках диска.

Определение

int agk::GetCloudDataAllowed()

Параметры

Пример кода


GetClipboardText

Описание

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

Определение

char* agk::GetClipboardText()

Параметры

Пример кода


GameCenterSubmitScore

Описание

Отправляет счет на именованную доску лидеров, которая должна соответствовать идентификатору таблицы лидеров, присвоенному вашей доске в iTunes connect, Google Game Services или GameCircle.

Определение

void agk::GameCenterSubmitScore( int iScore, const char* szBoardID )

Параметры

iScore - Оценка для представления
szBoardID - Название доски лидеров

Пример кода


GameCenterSubmitAchievement

Описание

Изменение прогресса пользователей при достижении именованного достижения имя должно совпадать с идентификатором достижения, присвоенным этому достижению в iTunes connect, Google Game Services или GameCircle. Значения iPercentageComplete должны находиться в диапазоне от 0 до 100. Однако для инкрементных достижений это значение фактически является числом завершенных шагов и может находиться за пределами этого диапазона. Это значение будет перезаписывать текущий процент или выполненные шаги достижения.

Определение

void agk::GameCenterSubmitAchievement ( const char* szAchievementID, int iPercentageComplete )

Параметры

szAchievementID - Название достижения
iPercentageComplete - Пользователи продвигаются к получению этого достижения или количества выполненных шагов

Пример кода


GameCenterShowLeaderBoard

Описание

Показывает пользователю именованную таблицу лидеров, имя которой должно совпадать с идентификатором таблицы лидеров, присвоенным вашей доске в iTunes connect, Google Game Services или GameCircle.

Определение

void agk::GameCenterShowLeaderBoard ( const char* szBoardID )

Параметры

szBoardID - Название доски лидеров

Пример кода


GameCenterSetup

Описание

Вызовите этот вызов один раз, чтобы настроить приложение для дальнейших команд Game Center.

Определение

void agk::GameCenterSetup()

Параметры

Пример кода


GameCenterLogin

Описание

Вызовите это один раз, чтобы войти в систему пользователя в Game Center (iOS) или Google Play Games (Android), если они вошли в систему до того, как это произойдет в фоновом режиме и не прерывает пользователя, в противном случае появится всплывающее окно с просьбой войти в систему и предоставить разрешение на продолжение.

Определение

void agk::GameCenterLogin()

Параметры

Пример кода


GameCenterAchievementsReset

Описание

Еще не функционирует

Определение

void agk::GameCenterAchievementsReset ( )

Параметры

Пример кода


GameCenterAchievementsShow

Описание

Показывает пользователю свои достижения и прогресс.

Определение

void agk::GameCenterAchievementsShow ( )

Параметры

Пример кода


GameCenterLogout

Описание

Вызовите эту функцию, чтобы вывести пользователя из Google Play Games. После этого вы можете снова вызвать GameCenterLogin. На Game Center (iOS) это никак не влияет, пользователь должен выйти из приложения Game Center.

Определение

void agk::GameCenterLogout()

Параметры

Пример кода


FirebaseSetup

Описание

Запускает систему Firebase analytics и отслеживание некоторых автоматизированных событий. Дополнительные события можно отслеживать с помощью FirebaseLogEvent. Вы должны включить конфигурационный файл Google Services, созданный при настройке проекта Firebase, который можно добавить во время экспорта для Android или iOS. Если вы не укажете свой собственный конфигурационный файл google services во время экспорта, то все ваши данные отслеживания будут отправлены в наш проект AGK Firebase и проигнорированы. Аналогично, если вы используете эти команды во время трансляции, то данные отслеживания будут отправлены в проект AGK и проигнорированы.

Определение

void agk::FirebaseSetup()

Параметры

Пример кода


FirebaseLogEvent

Описание

Говорит Firebase записать событие, которое произошло в вашем приложении, например, разблокировку достижения. Они появятся на странице аналитики проекта Firebase. Обратите внимание, что имена событий не должны содержать тире или пробелы, иначе они не будут зарегистрированы.

Определение

void agk::FirebaseLogEvent( const char *event_name )

Параметры

event_name - Имя события для передачи в Firebase, некоторые из них зарезервированы для автоматических событий, например first_open

Пример кода


FacebookShowLikeButton

Описание

Эта команда в настоящее время не поддерживается

Определение

void agk::FacebookShowLikeButton ( const char* szURL, int iX, int iY, int iWidth, int iHeight )

Параметры

szURL - URL-адрес, который вам нравится.
iX - x положение кнопки like.
iY - y положение кнопки like.
iWidth - ширина кнопки like.
iHeight - высота кнопки like.

Пример кода


FacebookSetup

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

void agk::FacebookSetup ( const char* szID )

Параметры

szID - ваш идентификатор приложения Facebook.

Пример кода


FacebookPostOnMyWall

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает. Вы можете использовать ShareText или ShareImage, чтобы дать пользователю возможность поделиться своей информацией.

Определение

void agk::FacebookPostOnMyWall ( const char* szLink, const char* szPicture, const char* szName, const char* szCaption, const char* szDescription )

Параметры

Пример кода


FacebookPostOnFriendsWall

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

void agk::FacebookPostOnFriendsWall ( const char* szID, const char* szLink, const char* szPicture, const char* szName, const char* szCaption, const char* szDescription )

Параметры

Пример кода


FacebookGetUserName

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

char* agk::FacebookGetUserName()

Параметры

Пример кода


FacebookGetUserID

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

char* agk::FacebookGetUserID()

Параметры

Пример кода


FacebookGetFriendsState

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

int agk::FacebookGetFriendsState()

Параметры

Пример кода


FacebookGetFriendsName

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

char* agk::FacebookGetFriendsName ( int iIndex )

Параметры

Пример кода


FacebookGetFriendsID

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

char* agk::FacebookGetFriendsID ( int iIndex )

Параметры

Пример кода


FacebookGetFriendsCount

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

int agk::FacebookGetFriendsCount()

Параметры

Пример кода


FacebookLogout

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

void agk::FacebookLogout()

Параметры

Пример кода


FacebookLogin

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

void agk::FacebookLogin()

Параметры

Пример кода


FacebookGetFriends

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

void agk::FacebookGetFriends()

Параметры

Пример кода


FacebookInviteFriend

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

void agk::FacebookInviteFriend ( const char* szID, const char* szMessage )

Параметры

Пример кода


FacebookGetAccessToken

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

char* agk::FacebookGetAccessToken()

Параметры

Пример кода


FacebookDownloadFriendsPhoto

Описание

Facebook SDK был удален из AppGameKit, эта команда больше ничего не делает

Определение

void agk::FacebookDownloadFriendsPhoto ( int iIndex )

Параметры

Пример кода


FacebookActivateAppTracking

Описание

Facebook Facebook Facebook SDK Активирует отслеживание в SDK Facebook, это полезно, если вы используете рекламу Facebook, так как это будет связывать установки с рекламой, ранее увиденной и нажатой на Facebook. Обратите внимание, что в iOS эта функция требует IDFA (рекламный идентификатор), и вы должны объявить об этом, если отправляете приложение в Apple. Apple спросит, используете ли вы IDFA и для чего вы его используете. Для отслеживания установки с помощью рекламы Facebook вы ДОЛЖНЫ поставить галочки Приписать установку этого приложения ранее показанной рекламе и Приписать действие, предпринятое в этом приложении, ранее показанной рекламе. Если вы также используете AdMob, Amazon Ads или Chartboost в своем приложении, вы также должны поставить галочку Показывать рекламу в приложении. Эта команда не требует, чтобы пользователь входил в систему.

Определение

void agk::FacebookActivateAppTracking()

Параметры

Пример кода


FacebookDestroyLikeButton

Описание

Эта команда в настоящее время не поддерживается

Определение

void agk::FacebookDestroyLikeButton()

Параметры

Пример кода


DeleteSharedVariable

Описание

Удаляет общую переменную по имени. Если переменная не существует, то это ничего не даст. Как только переменная будет удалена, LoadSharedVariable вернет значение по умолчанию для любых запросов на ее загрузку.

Определение

void agk::DeleteSharedVariable( const char *varName )

Параметры

varName - Имя переменной для удаления

Пример кода


DeleteCloudDataVariable

Описание

Удаляет переменную с указанным именем и удаляет все данные, хранящиеся в облаке для этой переменной. Если переменная не существует, то это ничего не делает.

Определение

void agk::DeleteCloudDataVariable( const char* varName )

Параметры

varName - Имя переменной, которую нужно удалить, должно быть меньше 64 байт

Пример кода


CheckPermission

Описание

Только для Android все остальные платформы вернут 1 и ничего не сделают. Проверяет, предоставил ли пользователь вашему приложению указанное разрешение на использование определенных команд Android. Разрешения следующие: writeExternal - используется командами SaveSharedVariable и любыми путями raw:, которые обращаются к SD-карте. Location - используется командами GPS Camera - используется командой SetDeviceCameraToImage RecordAudio - используется командой StartScreenRecording и для канала AR camera Эта команда вернет 0, если у вас нет разрешения и пользователя еще не спросили, вы должны вызвать requestPermission, если вам это нужно. Эта команда возвращает 1 если пользователь находится в процессе запроса разрешения, вы должны дождаться ответа, продолжая вызывать эту команду. Он вернет -1, если пользователь отклонил разрешение, или 2, если пользователь предоставил разрешение. Если пользователь отклоняет ваш запрос, вы можете спросить еще раз, но сначала вы должны объяснить, почему ваше приложение нуждается в нем, чтобы они могли сделать осознанный выбор. Если они все еще отвергают его, вы обычно не должны спрашивать в третий раз. После первой попытки Android предоставит пользователю возможность никогда не разрешать это разрешение. В этом случае эта команда всегда будет возвращать -1, а requestPermission ничего не сделает. Пользователю придется зайти в настройки приложения устройства, чтобы отменить это решение. Любое разрешение, не указанное здесь, не требует от вас запроса разрешения пользователя, оно будет автоматически предоставлено при установке, если ваше приложение этого требует. Все разрешения, которые использует ваше приложение, даже те, которые требуют запроса, должны быть указаны в диалоговом окне экспорта APK, установив соответствующие флажки.

Определение

int agk::CheckPermission( const char* szPermission )

Параметры

szPermission - Разрешение на проверку

Пример кода


CancelLocalNotification

Описание

Отменяет уведомление, запланированное этим приложением

Определение

void agk::CancelLocalNotification( int iID )

Параметры

iID - ИДЕНТИФИКАТОР уведомления об отмене

Пример кода


ActivateSmartWatch

Описание

Попытка подключения к смарт-часам, подключенным к текущему устройству. Он будет пытаться поддерживать это соединение в течение всего срока службы приложения, например, если часы непарные, а затем отремонтированы, то ваше приложение автоматически подключится к часам. Таким образом, вам нужно только один раз вызвать эту команду в начале вашего приложения. В настоящее время работает только на iOS. Чтобы создать приложение watch, вам нужно будет использовать Tier 2 project interpreter_ios и добавить в него приложение watch.

Определение

void agk::ActivateSmartWatch( const char *szReserved )

Параметры

szReserved - Зарезервированная для будущего использования, должна быть пустой строкой

Пример кода


ARSetup

Описание

Доступно только на iOS и Android. Эта команда настраивает функции AR устройства, если они доступны. Используйте команду ARGetStatus, чтобы проверить, было ли это успешно. Эта команда должна быть вызвана перед любыми другими командами AR, если установка не удалась, вы можете вызвать эту команду снова, чтобы попытаться выполнить установку снова. Настройка AR возьмет на себя управление 3D-камерой, включая проекционную матрицу, поэтому любые изменения, внесенные вами в положение камеры, поворот, FOV, будут перезаписаны системой AR при вызове рендеринга или синхронизации. Однако вы все еще можете управлять ближними и дальними значениями камеры с помощью SetCameraRange, который будет сохраняться в системе AR. При использовании AR и размещении или калибровке 3D - объектов система координат 1 единица AGK равна 1 метру.

Определение

void agk::ARSetup()

Параметры

Пример кода


ARSetPlaneDetectionMode

Описание

Устанавливает режим обнаружения плоскости для AR, по умолчанию он включен. Обнаруженные самолеты можно обнаружить с помощью команды ARGetPlanes.

Определение

void agk::ARSetPlaneDetectionMode( int mode )

Параметры

mode - 1=Включить обнаружение плоскости, 0=Выключить обнаружение плоскости

Пример кода


ARSetLightEstimationMode

Описание

Устанавливает режим оценки освещенности для AR, по умолчанию он включен. Это попытка выработать окружающий свет в реальном мире, чтобы вы могли правильно освещать свои виртуальные объекты.

Определение

void agk::ARSetLightEstimationMode( int mode )

Параметры

mode - 1=Включить оценку освещенности, 0=Выключить оценку освещенности

Пример кода


ARHitTestFinish

Описание

Очищает ресурсы, используемые во время тестирования хитов, это должно быть вызвано, когда вы закончите проверку результатов теста хитов. Если вы не вызовете его, то он будет вызван автоматически, когда вы выполните еще один тест попадания или уничтожите сеанс AR.

Определение

void agk::ARHitTestFinish()

Параметры

Пример кода


ARHitTest

Описание

Бросает луч в реальный мир и обнаруживает любые попадания с самолетов или точек слежения, обнаруженных в мире. Возвращает количество обнаруженных хитов, хиты будут упорядочены с ближайшим первым. Координаты должны находиться в пространстве экрана, например значения, возвращаемые из GetPointerX и GetPointerY. Когда вы закончите проверку результатов этого теста попадания, вы должны вызвать ARHitTestFinish, чтобы освободить все использованные ресурсы. Если нет, то это будет сделано автоматически при следующем вызове ARHitTest.

Определение

int agk::ARHitTest( float screenX, float screenY )

Параметры

screenX - Компонент X координаты экрана
screenY - Компонент Y координаты экрана

Пример кода


ARGetPlanesFinish

Описание

Очищает все ресурсы, используемые при вызове ARGetPlanes, вы должны вызвать его, когда закончите проверку результатов. Если нет, то он будет вызван автоматически при следующем вызове ARGetPlanes или уничтожении сеанса AR.

Определение

void agk::ARGetPlanesFinish()

Параметры

Пример кода


ARGetPlanes

Описание

Запрашивает сеанс AR для всех самолетов, отслеживаемых в настоящее время в мире, они обнаруживаются с течением времени, если включен режим ARSetPlaneDetectionMode. Возвращает количество найденных плоскостей. Это может быть использовано для отображения обнаруженных плоскостей пользователю путем создания некоторых плоских объектов с помощью CreateObjectPlane и размещения их в заданном положении, с заданным поворотом и размером. Когда вы закончите проверку результатов, вам следует вызвать ARGetPlanesFinish, чтобы очистить все ресурсы, используемые при проверке.

Определение

int agk::ARGetPlanes( int reserved )

Параметры

reserved - зарезервировано для будущего использования, должно быть 0

Пример кода


ARGetPlaneZ

Описание

Возвращает Z-компоненту центра данной плоскости. Эта точка может со временем смещаться относительно реальной картины мира, поэтому ее следует регулярно проверять и обновлять, если вы используете ее для отображения видимого представления плоскости.

Определение

float agk::ARGetPlaneZ( int index )

Параметры

index - Индекс самолета для проверки, начиная с индекса 1

Пример кода


ARGetPlaneY

Описание

Возвращает Y-компоненту центра данной плоскости. Эта точка может со временем смещаться относительно реальной картины мира, поэтому ее следует регулярно проверять и обновлять, если вы используете ее для отображения видимого представления плоскости.

Определение

float agk::ARGetPlaneY( int index )

Параметры

index - Индекс самолета для проверки, начиная с индекса 1

Пример кода


ARGetPlaneSizeZ

Описание

Возвращает Z-компоненту размера данной плоскости. Это может быть использовано для масштабирования 3D-объекта в соответствии с визуальным представлением обнаруженной плоскости.

Определение

float agk::ARGetPlaneSizeZ( int index )

Параметры

index - Индекс самолета для проверки, начиная с индекса 1

Пример кода


ARGetPlaneSizeX

Описание

Возвращает компонент X размера данной плоскости. Это может быть использовано для масштабирования 3D-объекта в соответствии с визуальным представлением обнаруженной плоскости.

Определение

float agk::ARGetPlaneSizeX( int index )

Параметры

index - Индекс самолета для проверки, начиная с индекса 1

Пример кода


ARGetPlaneAngleZ

Описание

Возвращает Z-компоненту вращения данной плоскости. Это может быть использовано для поворота 3D-объекта в соответствии с визуальным представлением обнаруженной плоскости.

Определение

float agk::ARGetPlaneAngleZ( int index )

Параметры

index - Индекс самолета для проверки, начиная с индекса 1

Пример кода


ARGetPlaneAngleY

Описание

Возвращает Y-компоненту вращения данной плоскости. Это может быть использовано для поворота 3D-объекта в соответствии с визуальным представлением обнаруженной плоскости.

Определение

float agk::ARGetPlaneAngleY( int index )

Параметры

index - Индекс самолета для проверки, начиная с индекса 1

Пример кода


ARGetPlaneAngleX

Описание

Возвращает X-компоненту вращения данной плоскости. Это может быть использовано для поворота 3D-объекта в соответствии с визуальным представлением обнаруженной плоскости.

Определение

float agk::ARGetPlaneAngleX( int index )

Параметры

index - Индекс самолета для проверки, начиная с индекса 1

Пример кода


ARGetStatus

Описание

Возвращает текущее состояние процесса настройки AR. 0=ARSetup еще не вызван, -1=AR недоступен на этом устройстве или установка не удалась, -2=Пользователь отклонил установку ARCore, 1=ARCore install in progress, 2=AR setup successful.

Определение

int agk::ARGetStatus()

Параметры

Пример кода


ARGetLightEstimate

Описание

Возвращает расчетное значение освещенности для текущего кадра, это будет значение от 0.0 до 1.0. Лучше всего использовать это значение для установки цвета окружающего света с помощью SetAmbientColor со значением 1.0, соответствующим значению цвета 255,255,255.

Определение

float agk::ARGetLightEstimate()

Параметры

Пример кода


ARGetHitTestZ

Описание

Возвращает Z-компоненту заданного результата теста попадания в 3D-пространстве. Результаты теста на попадание упорядочиваются с ближайшим первым, начиная с индекса 1. Эта точка должна использоваться только в течение короткого времени, например, для отображения эффекта частицы, так как она будет дрейфовать относительно реального мира. Если вы планируете использовать эту 3D-точку для позиционирования долгоживущего объекта в мире, то вместо этого вы должны создать якорь из этого результата теста попадания, чтобы он не дрейфовал.

Определение

float agk::ARGetHitTestZ( int index )

Параметры

index - Индекс попадания результата теста проверить, начиная с индекса 1.

Пример кода


ARGetHitTestY

Описание

Возвращает компонент Y данного результата теста попадания в 3D-пространстве. Результаты теста на попадание упорядочиваются с ближайшим первым, начиная с индекса 1. Эта точка должна использоваться только в течение короткого времени, например, для отображения эффекта частицы, так как она будет дрейфовать относительно реального мира. Если вы планируете использовать эту 3D-точку для позиционирования долгоживущего объекта в мире, то вам следует создать якорь из этого результата теста попадания, чтобы он не дрейфовал.

Определение

float agk::ARGetHitTestY( int index )

Параметры

index - Индекс попадания результата теста проверить, начиная с индекса 1.

Пример кода


ARGetHitTestType

Описание

Возвращает тип обнаруженной поверхности: 1=плоскость, обычно горизонтальная, 0=точка, обычно стена или другой объект, -1=неизвестно.

Определение

int agk::ARGetHitTestType( int index )

Параметры

index - Индекс попадания результата теста проверить, начиная с индекса 1.

Пример кода


ARGetPlaneX

Описание

Возвращает X-компоненту центра данной плоскости. Эта точка может со временем смещаться относительно реальной картины мира, поэтому ее следует регулярно проверять и обновлять, если вы используете ее для отображения видимого представления плоскости.

Определение

float agk::ARGetPlaneX( int index )

Параметры

index - Индекс самолета для проверки, начиная с индекса 1

Пример кода


ARGetHitTestNormalZ

Описание

Возвращает Z-компоненту нормали данного результата теста попадания в 3D-пространстве. Результаты теста на попадание упорядочиваются с ближайшим первым, начиная с индекса 1. Для плоскостей на земле нормаль будет указывать прямо вверх в трехмерном пространстве, для точек, обнаруженных на стенах или других объектах, нормаль будет указывать в сторону от обнаруженной поверхности.

Определение

float agk::ARGetHitTestNormalZ( int index )

Параметры

index - Индекс попадания результата теста проверить, начиная с индекса 1.

Пример кода


ARGetHitTestNormalY

Описание

Возвращает Y-компоненту нормали данного результата теста попадания в 3D-пространстве. Результаты теста на попадание упорядочиваются с ближайшим первым, начиная с индекса 1. Для плоскостей на земле нормаль будет указывать прямо вверх в трехмерном пространстве, для точек, обнаруженных на стенах или других объектах, нормаль будет указывать в сторону от обнаруженной поверхности.

Определение

float agk::ARGetHitTestNormalY( int index )

Параметры

index - Индекс попадания результата теста проверить, начиная с индекса 1.

Пример кода


ARFixObjectToAnchor

Описание

Прикрепляет объект к якорю таким же образом, как работает FixObjectToObject. Положение и вращение объекта будут добавлены к положению и вращению якоря. Так, например, объект в положении 0,0,0 будет находиться непосредственно над положением якоря, тогда как если бы объект имел положение 0,2,0, то объект был бы расположен на 2 метра выше положения якоря. Нет ограничений на количество объектов, которые могут быть прикреплены к якорю, и объекты все еще могут быть прикреплены к объекту, прикрепленному к якорю. Например, объект 1 может быть закреплен на якоре, а объект 2-на объекте 1. Чтобы удалить объект из якоря, вызовите эту команду с идентификатором якоря 0. Затем объект будет помещен в мир в его заданном положении, например, положение 0,0,0 поместит его в начало мира.

Определение

void agk::ARFixObjectToAnchor( int objID, int anchorID )

Параметры

objID - Идентификатор объекта для фиксации на якоре
anchorID - Идентификатор якоря для использования

Пример кода


ARGetAnchorStatus

Описание

Возвращает текущее состояние отслеживания данного якоря. 0=остановлено, 1=приостановлено, 2=отслеживается, -1=не знаю. Якоря могут перестать отслеживать, если камера теряет связь с миром, это может произойти, если камера не видит достаточно объектов, чтобы понять, как движется сцена. Например, глядя на пустую стену. Когда якорь останавливается или приостанавливает отслеживание, он сохраняет свое текущее положение и вращение, но это больше не коррелирует с мировым положением, которое он отслеживал, поэтому якорь может казаться дрейфующим относительно мира. Когда якорь возобновит слежение, он должен вернуться в свое правильное мировое положение.

Определение

int agk::ARGetAnchorStatus( int anchorID )

Параметры

anchorID - Идентификатор якоря для проверки

Пример кода


ARDeleteAnchor

Описание

Удаляет указанный якорь и освобождает все ресурсы, которые он использовал. Если какие-либо объекты были прикреплены к якорю при его удалении, то они вернутся в непривязанное состояние и будут помещены в мировые координаты

Определение

void agk::ARDeleteAnchor( int anchorID )

Параметры

anchorID - Идентификатор якоря для удаления

Пример кода


ARGetHitTestX

Описание

Возвращает компонент X данного результата теста попадания в 3D-пространстве. Результаты теста на попадание упорядочиваются с ближайшим первым, начиная с индекса 1. Эта точка должна использоваться только в течение короткого времени, например, для отображения эффекта частицы, так как она будет дрейфовать относительно реального мира. Если вы планируете использовать эту 3D-точку для позиционирования долгоживущего объекта в мире, то вместо этого вы должны создать якорь из этого результата теста попадания, чтобы он не дрейфовал.

Определение

float agk::ARGetHitTestX( int index )

Параметры

index - Индекс попадания результата теста проверить, начиная с индекса 1.

Пример кода


ARGetHitTestNormalX

Описание

Возвращает X-компоненту нормали данного результата теста попадания в 3D-пространстве. Результаты теста на попадание упорядочиваются с ближайшим первым, начиная с индекса 1. Для плоскостей на земле нормаль будет указывать прямо вверх в трехмерном пространстве, для точек, обнаруженных на стенах или других объектах, нормаль будет указывать в сторону от обнаруженной поверхности.

Определение

float agk::ARGetHitTestNormalX( int index )

Параметры

index - Индекс попадания результата теста проверить, начиная с индекса 1.

Пример кода


ARDrawBackground

Описание

You must call this command if you want the AR camera feed to be drawn to the screen. If you do not then the camera will still track as if it were moving around the real world but the camera feed will not be seen inside the app. This may be useful if you want to render a purely virtual reality but still use the AR camera tracking functionality. The best time to call this command is just before calling Render or Sync.

Определение

void agk::ARDrawBackground()

Параметры

Пример кода


ARDestroy

Описание

Destroys the AR session and any resources allocated during setup. After you can not call any AR commands, except ARGetStatus and ARSetup. You may call ARSetup to recreate an AR session. There is no limit on the number of times you can create and destroy the AR session. Currently on Android this command may take up to 5 seconds, apparently this will be improved ina future version of Google's ARCore.

Определение

void agk::ARDestroy()

Параметры

Пример кода