Aukiネットワークとトークンエコノミーの基礎を学ぼう
Aukiネットワークで稼働する、独自ドメインを取得しよう
Aukiネットワークのホワイトペーパーの詳細をご覧ください。
Aukiネットワークのネットワーク状況をライブで追跡する
コミュニティと$AUKIを追跡する
Aukiネットワークに参加する
See how the Auki network is empowering robot fleets.
See how the Auki network is enabling AI.
See how the Auki network is enabling XR experiences.
ConjureKitを使って、第一世代のソーシャル拡張現実体験を構築しましょう
Aukiトークンで最大10万ドルの開発者助成金を申請する
当社のSDKを使用して、ポーズメッシュ上でアプリケーションを構築する方法を学びましょう。
すべてのConjureKit SDKドキュメントとサポート
Cactus(カクタス)がどのように小売業の効率を改善できるかをご覧ください。
Gotu(ゴートゥ)がプロパティ管理者にどのように役立つかをご覧ください。
Gotuナビゲーションがどのようにイベントを盛り上げるかをご覧ください。
小売業のための空間AIプラットフォーム
イベントやプロパティ管理用の屋内ナビゲーション
ホームデコ&展示装飾アプリケーション
このローカルマルチプレイヤー共同AR体験で勝利を目指そう
Aukiと共に誰がポーズメッシュを構築をしているかご覧ください
私たちの哲学を深く知ってみてください
ディスコードで会話に参加しませんか
XでAukiコミュニティの最新情報をチェック
Aukiとポーズメッシュに関するよくある質問
プレスリリース、メディアキット、連絡先等
In this first part of the lesson, we'll download an existing single player AR game to use as the starting point and implement the Auki SDK.
For the purpose of this tutorial, we have created a repository that you can use as a starting point for the project. All features of the gameplay have been implemented in single player mode. The repository commits have been tagged to mark the states of the project according to the sections of this tutorial.
To get started, pull the project from GitHub and check out the "Initial project setup" commit:
git clone git@github.com:aukilabs/ConjureKit-Shooter-Game.git cd ConjureKit-Shooter-Game git checkout 07d285316bc8d4626ba444172be70bffa6cb679a
Upon opening the project in Unity, there will be an error message asking you to enter Safe Mode; you can safely ignore this. The cause of the error is the project's dependency on a couple of assets that are available for free in the Unity asset store. In order to fix this, please import these two assets:
Once the above assets are imported (note: don't forget to go through the quick setup process for DOTween), you should be able to play and test the game. If you want to try it in the Editor, you can press Alpha 1 to toggle mouse control, in order to emulate first person control for easier editor testing.
The project can also be built to a device without any additional changes to settings. Please refer to the relevant device-platform deployment documentation. You will see a "Missing Project ID" dialog, but you can click "Yes" to continue.
In this part, we'll start implementing the Auki SDK (previously called ConjureKit) into the project, and listen to some of the callbacks. The packages we need should already be installed in the project pulled from GitHub, but if you need to, please refer to the Quickstart guide for instructions on how to set up the SDK.
start-note
Please also make sure the Managed Stripping Level is set to Minimal, under Project Settings > Player > Optimization.
end-note
First let's add the necessary packages to ^Main.cs^:
Main.cs^
using Auki.ConjureKit; using Auki.ConjureKit.Manna; using Auki.ConjureKit.Vikja; using Auki.Integration.ARFoundation.Manna; using Auki.Util;
Then we'll declare the fields that will hold references to ConjureKit and its modules:
private IConjureKit _conjureKit; private Vikja _vikja; private Manna _manna; private FrameFeederBase _arCameraFrameFeeder;
These two fields will keep track of the session and its current state:
private State _currentState; private Session _session;
Next we want to construct/initialize all the ConjureKit modules. We can do that in the ^Start()^ method of ^Main.cs^:
Start()^
private void Start() { Screen.sleepTimeout = SleepTimeout.NeverSleep; _conjureKit = new ConjureKit(arCamera.transform, "YOUR_APP_KEY", "YOUR_APP_SECRET", AukiDebug.LogLevel.ERROR); _manna = new Manna(_conjureKit); _vikja = new Vikja(_conjureKit); _arCameraFrameFeeder = _manna.GetOrCreateFrameFeederComponent(); _arCameraFrameFeeder.AttachMannaInstance(_manna); EventInit();
_conjureKit.Connect(); }
start-warning
Make sure you replace ^YOUR_APP_KEY^ and ^YOUR_APP_SECRET^ with the values you got during registration.
YOUR_APP_KEY^
YOUR_APP_SECRET^
end-warning
Now let's create ^EventInit()^ in which we'll subscribe all the methods (that we'll declare shortly) to their respective events from ConjureKit:
EventInit()^
private void EventInit() { _conjureKit.OnJoined += OnJoined; _conjureKit.OnLeft += OnLeft; _conjureKit.OnParticipantLeft += OnParticipantLeft; _conjureKit.OnEntityDeleted += OnEntityDeleted; _conjureKit.OnParticipantEntityCreated += OnParticipantEntityCreated; _conjureKit.OnStateChanged += OnStateChange; _manna.OnLighthouseTracked += OnLighthouseTracked; _manna.OnCalibrationSuccess += OnCalibrationSuccess; }
For more information on these callbacks, please refer to ConjureKit core package and OnLighthouseTracked.
And then we'll declare these methods to listen to the respective events above:
#region ConjureKit Callbacks private void OnJoined(Session session) { } private void OnLeft(Session lastSession) { } private void OnParticipantLeft(uint participantId) { } private void OnEntityDeleted(uint entityId) { } private void OnParticipantEntityCreated(Entity entity) { } private void OnStateChange(State state) { } private void OnLighthouseTracked(Lighthouse lighthouse, Pose pose, bool closeEnough) { } private void OnCalibrationSuccess(Matrix4x4 calibrationMatrix) { } #endregion
Now that we have prepared all the needed callbacks, let's add a way to update the Session ID and the ConjureKit State in ^UIManager.cs^:
UIManager.cs^
public void SetSessionId(string id) { sessionText.SetText(id); } public void UpdateState(string state) { stateText.SetText(state); }
With the above methods declared, let's call them in the ^OnJoined^ callback:
OnJoined^
#region ConjureKit Callbacks private void OnJoined(Session session) { _myId = session.ParticipantId; _session = session; uiManager.SetSessionId(_session.Id); }
and ^OnStateChange^:
OnStateChange^
private void OnStateChange(State state) { _currentState = state; uiManager.UpdateState(_currentState.ToString()); var sessionReady = _currentState is State.Calibrated or State.JoinedSession; _arCameraFrameFeeder.enabled = sessionReady; }
Now we should be able to see the Session ID and the ConjureKit State upon running the project. By enabling the ^_arCameraFrameFeeder^ when the current state is ^JoinedSession^ or ^Calibrated^, Manna will start scanning once we are connected to a session, and will stop automatically if we are disconnected.
_arCameraFrameFeeder^
JoinedSession^
Calibrated^
プロジェクトをスタートさせるためにAUKIトークンの助成金を申請し、Auki Labsチームと直接連携して、あなたのクリエイションをマーケットへ。選ばれた申請者は最大10万米ドル相当のAUKIトークンの助成を受け、アウキラボチームによる開発、マーケティング支援を受けることができます。