Insta360 ONE Xの使い方

ボタン

 

大ボタン:シャッター、エンターボタン

小ボタン:電源、モードスイッチボタン

 

電源

小ボタン長押しでオン、オフ

 

アプリの操作

下の中央のカメラボタンを押す

f:id:oitsmalab:20190517125239p:plain

 

接続画面になるので、Connect via Wi-Fiを選ぶ

f:id:oitsmalab:20190517125834p:plain

 

下の画面になったらjoinを選ぶ

f:id:oitsmalab:20190517130029p:plain

 

撮影画面になったら、ビデオアイコンを選択する

f:id:oitsmalab:20190517130140p:plain

 

右下の設定アイコン(青い円内)で、撮影設定を変えられる。赤い円内の部分で、5.7K 30FPSであることを確認する。

f:id:oitsmalab:20190517130909p:plain

 

撮影が終わったら、左下のアイコンを選ぶと、動画を編集できる。

f:id:oitsmalab:20190517131125p:plain




 

 

 

UnityのDefault PlayablesとTimeline Playable Wizardを使う際の備忘録 後編 Normal Modeを使う

はじめに

この記事は、前編(UnityのDefault PlayablesとTimeline Playable Wizardを使う際の備忘録 前編 Standard Bind Playableを使う)の続きです。こちらではDefault PlayablesのTimeline Playable WizardのNormal modeの使い方をまとめます。Timeline Playable Wizardの基本的な使い方は前編をご覧ください。

 

Normal Modeは、タイムラインで操作するゲームオブジェクト以外への参照が必要な時に使用します。例えば、指定する二つのゲームオブジェクトの間を移動させるなどです。

 

使用するサンプルスクリプト

今回は、こちらの NormalModeSample.cs を使います。

gist64e5f0aee13fae187a658cd08b92c8f7

 

Unity Editor上でファイルを作り、Main Cameraにコンポーネントとしてアタッチしてください。

f:id:oitsmalab:20180625113143p:plain

このスクリプト自体は、SampleVariableの値をDebug.Logで表示する以外のことは行いません。SampleVariableに入れるべき値はPlayableの方で行います。

Timeline Playable WizardのNormal modeの設定

Timeline Playable Wizardを開きます。今回は以下の通りに設定します。

 

f:id:oitsmalab:20180625120009p:plain

Standard Blend Playableのチェックは入れません。

Exposed Referencesにはシーン内のほかのゲームオブジェクトへの参照をするための変数を指定します。今回は、OtherGameObjectTransformという名前で、ほかのゲームオブジェクトのTransformを参照できるよう設定します。

Behaviour Variablesはシーン内のオブジェクトへの参照が不要であるものを指定します。今回はMultiplyというfloatの値を使います。

あと、Create Drawerにもチェックを入れておきます。

最後に、Createボタンを押して、Playableを作成してください。

 

MixerBehaviourの設定

Createを押すと、以下の通り、NormalModeSamplePlayableのスクリプトが作られます。この中のNormalModeSamplePlayableMixerBehaviourのスクリプトを編集します。

f:id:oitsmalab:20180625121839p:plain

スクリプトは、以下の通りです。

gistc7901e6460f0137df332ae601e949f40

 

11行目のtrackBindingがWizardで指定したTrack Binding Type(今回はNormalModeSample.cs)への参照になります。NormalModeSample.cs内のSampleVariableへはこれでアクセスできます。

 

この中で18行目にforループがありますが、ここで追加した各クリップでの処理を行います。

inputWeightはクリップ外では0、クリップ内では1ですが、Easingを設定している場合は徐々に0~1で値が変化します。

inputは、Exposed ReferencesやBehaviour Variablesで指定した変数(今回はOtherGameObjectTransform, Multiply)を参照するために使います。

 

これら、inputWeightとinputを使って必要な計算を行い、trackBindingで参照できるTrackBinding Typeへ値を与えます。その処理は、24行目の"// Use the above variables to process each frame of this playable."以下に追加します。今回は、以下の行を追加します。OtherGameObjectTransformのy座標をMultiply倍する処理にinputWeightを追加しただけの処理です。

 

trackBinding.SampleVariable = input.OtherGameObjectTransform.position.y * input.Multiply * inputWeight;

 

 

追加したら、保存してください。

 

Timelineで使う

Main CameraにTimelineを追加し、TimelineにNormal Mode Sample Playable Trackを追加します。このTrackの任意の場所にClipを追加しましょう。以下の通りになるはずです。

 

f:id:oitsmalab:20180625123818p:plain

 

追加したClipには、Exposed ReferenceやBehaviour Variablesで指定した変数への設定ができます。今回は、以下の通りMultiplyを5とし、OtherGameObjectTransformとしてDirectionl Light(y座標 = 3)を与えます。また、Ease In Durationを1にしておきます。

 

f:id:oitsmalab:20180625124700p:plain

 

この設定で実行すると、以下の通り、クリップ内でNormalModeSample.csのSampleVariableの値が0から15に上昇します。15というのは、OtherGameObjectTransformとして指定したDirectionl Lightのy座標が3、Multiplyの値が5で、それらの積をSample Variableに保存しているからです。

f:id:oitsmalab:20180625125145g:plain

 

Clip内を実行中にDirectionl Lightのy座標を変えれば、それによってSample Variableの値も変わります。

f:id:oitsmalab:20180625130747g:plain

 

このように、自分以外のオブジェクトを参照しながらTimelineを実行するには、Normal Modeを使うのが良いです。

 

 

 

UnityのDefault PlayablesとTimeline Playable Wizardを使う際の備忘録 前編 Standard Blend Playableを使う

はじめに

この記事は二部構成です。後編(UnityのDefault PlayablesとTimeline Playable Wizardを使う際の備忘録 後編 Normal Modeを使う)はこちらをご覧ください。

 

Default Playableとは

UnityのTimeline機能は動画のようなストーリーのあるコンテンツを作るのに有効ですが、カスタマイズするためのスクリプトを書くのがなかなか大変です。そのカスタマイズの助けになるのがUnityが公開している"Default Playables”アセットです。

assetstore.unity.com

このアセットについては、テラシュールブログさんが紹介記事を公開しています。

tsubakit1.hateblo.jp

この記事にあるように、Default PlayableアセットはVideo Playerの制御やTransformのTween(位置をAからBへ徐々に動かす)などをTimelineで行うためのTrackを提供していますが、もう一つ重要なのがTimeline Playable Wizardです。こちらについてもテラシュールブログさんが紹介記事を出しています。

tsubakit1.hateblo.jp

この記事の説明の通り、Wizardを使うことでTimelineのカスタムTrackをコードを自分でゼロから書くことなく準備することができます。ただ、細かい作り方についての解説はこの記事になかったので、備忘録としてこちらに書くことにしました。

 

Timeline Playable Wizard

Asset StoreからDefault Playablesを入手すると、Unity EditorのWindowsのメニューにTimeline Playable Wizardが追加されるので、それを選択します。すると、以下のメニューが出てきます。

 

f:id:oitsmalab:20180625084053p:plain

 

このメニューでは、Standard Blend Playable(上図赤丸内)にチェックを入れるかどうかで設定が変わってくるので、分けて説明します。チェックを入れない(Normal Mode)場合の使い方については後編をご覧ください。

Standard Blend Playableを使う

以下のサンプルスクリプト StandardBlendPlayableSample.csを使います。

SampleVariableに値が保存されると、その値をDebug.Logで表示します。これをMain Cameraにアタッチするとします。

 

インスペクタ内で、アタッチしたSample Blend Playable SampleコンポーネントのSample Variableの値を0.5に指定します。

f:id:oitsmalab:20180625133835p:plain

 

次に、Timeline Playable Wizardを開いて、以下の通りに設定します。

 

f:id:oitsmalab:20180625134331p:plain

 

Playableの名前をSamplePlayableとし、Standard Blend Playableに、Track Binding Typeを先ほど作ったStandardBindPlayableSampleにすることで、このコンポーネントをタイムラインで制御できます。

 

Default Valuesには、StandardBindPlayableSample.csをアタッチしたMain Cameraをヒエラルキーからドラッグアンドドロップしましょう。これで、Main CameraにアタッチされているStandardBindPlayableSampleコンポーネントに対してインスペクタで設定した値(Sample Variableの値が0.5、など)が、Playableのデフォルトの値になります。

 

最後に、Standard Blend Playable Propertiesの項目でTimeline上で変化させたい変数を選択します。今回はSampleVariableを変化させます。

 

設定が終わったらCreateを押すと、Playable Nameとして設定した名前のフォルダと以下のファイルが作られます。

 

f:id:oitsmalab:20180625093003p:plain

 

次に、以下のように、ヒエラルキーでMainCameraを選択した状態でTimelineウィンドウを開き、Createを押してTimelineアセットを作って保存します。

f:id:oitsmalab:20180625093317p:plain

 

ファイル名はMainCameraTimeline.playableにします。

 

f:id:oitsmalab:20180625093452p:plain

 

すると、Main CameraのTimelineがTimelineウィンドウに作られます。Addボタンを押すと、Activation TrackなどUnity Editorに付属するTrack、Transform TweenなどDefault Playablesアセットに付属するTrackに加えて、Sample Playable Trackが選べるようになってるので、それを選んでTrackを作ります。

 

f:id:oitsmalab:20180625094611p:plain

 

次に、下図のようにStandardBlendPlayableSample.csをアタッチしているMain Cameraを、"None(Standard Bind)”と表示されているアセットの選択窓にドラッグし、Timeline上で右クリックして"Add Sample Playable Clip"を選び、Clipを追加します。

 

f:id:oitsmalab:20180625094926p:plain

 

追加したクリップを選択すると、クリップのタイミング、イージングやSample Variableの値を設定できます。このとき、Sample Variableのデフォルトの値はTimeline Playable Wizardで指定した通り、Main CameraにアタッチされているStandardBlendPlayableSampleコンポーネントに対してインスペクタで設定した値(Sample Variables = 0.5)が反映されています。

 

f:id:oitsmalab:20180625095405p:plain

 

ここで、Ease In Durationを1, Sample Variableを1に変更してみましょう。

f:id:oitsmalab:20180625102925p:plain

 

これで準備ができました。Timelineの再生位置を先ほど追加したクリップの前に置くと、Consoleには"Main Camera:0.5"と出ますが、クリップ内では1へ増えていきます。

 

f:id:oitsmalab:20180625103903g:plain

 

今回はDebug.Logで値を表示するだけでしたが、その代わりに別のコードを入れることで、いろいろなものをTimelineで操作できるようになります。

 

それでは、次に後編

oitsmalab.hatenablog.com

をご覧ください。

 

Oculus GOで360度動画を観る。③Oculus GOに保存された360度動画を視る

はじめに

この記事は、「Oculus GOで360度動画を観る」のパート③です。本体に保存された360度動画を視る方法を説明します。パート①(Oculus GO基礎編)、パート②(Oculus GOでYouTubeの360度動画を視る)も併せてご覧ください。

 

続きを読む

Oculus GOで360度動画を観る。②Oculus GOでYouTubeの360度動画を視る

はじめに

この記事は、「Oculus GOで360度動画を観る」のパート②です。YouTubeの360度動画を視る方法を説明します。パート①(Oculus GO基礎編)、パート③(Oculus GOに保存された360度動画を視る)も併せてご覧ください。

 

続きを読む

Oculus GOで360度動画を観る。①Oculus GO基礎編

はじめに

Oculus GOを全く使ったことが無く、ほかのVR用ヘッドマウントディスプレイを使ったこともない方々が360度動画を観るための、基本的な使い方の解説です。記事が長くなったので3つに分けました。

 

①Oculus GO基礎編:この記事。

Oculus GOでYouTubeの360度動画を視る

Oculus GOに保存された360度動画を視る

 

続きを読む

Unityで360度動画を観る

この記事は、Unityの公式チュートリアル https://docs.google.com/document/d/1JjOQ0dXTYPFwg6eSOlIAdqyPo6QMLqh-PETwxf8ZVD8/edit から作成したものです。

UnityにビデオをImportする

まず、Unity Editorを起動して、新規プロジェクトを作る。

次に、https://drive.google.com/file/d/13ZV8euKaDVU6dbjOc496y9kfA1pjJVit/view?usp=sharing から、サンプル動画をダウンロードする。

 

ダウンロードしたファイルは、Unity EditorのProjectタブのAssetsフォルダへドラッグアンドドロップすればImportできる。ファイル名はoutputTrimのはず。

f:id:oitsmalab:20180601091225p:plain

次に、Importした動画ファイルをHierarchyにドラッグアンドドロップする

f:id:oitsmalab:20180601091350p:plain

そうすると、ファイル名と同じ名前のゲームオブジェクトoutputTrimが作成され、そのゲームオブジェクトにはVideo Playerというコンポーネントが見られる。

f:id:oitsmalab:20180601091512p:plain

f:id:oitsmalab:20180601091531p:plain

RenderTextureを設定する

Editor上部のAssets->Create メニューから、RenderTextureを選択する。名前はVideoTextureにしておく。

Assetsフォルダ内に作られたVideoTextureファイルをクリックすると、Inspectorタブ内で設定が可能になる。ここでSizeを 3840*1920(先ほどImportしたVideoの画面サイズ) に設定し、Depth BufferのオプションをNo Depth Bufferにする。 

f:id:oitsmalab:20180601092253p:plain

VideoPlayerを設定する

先ほどHierarchyに作ったoutputTrimオブジェクトを選択し、VideoPlayerコンポーネントを設定する。Render ModeをRenderTextureにして、上で作ったVideoTextureをVideoPlayerのTargetTextureにドラッグアンドドロップする

f:id:oitsmalab:20180601093215p:plain

SkyBoxマテリアルを設定する

上のメニューのAssets->CreateからMaterialを選択し、新しいマテリアルをつくる。名前はPanoramicにする。

次に、Panoramicファイルを選択し、インスペクタ上でShaderをSkyBox→Panoramicに設定する。

f:id:oitsmalab:20180601093752p:plain

引き続き、Inspector内のPanoramicマテリアルの設定画面で、右にあるTextureのボックスに先ほど作ったVideoTextureをドラッグアンドドロップする。

f:id:oitsmalab:20180601094002p:plain

SkyBoxを設定する

上のメニューのWindows->Lighting->Settingsを選択し、Inspectorタブ内でLightingの設定を行う。

f:id:oitsmalab:20180601094202p:plain

EnvironmentのSkyBox Materialに上で作ったPanoramicマテリアルをドラッグアンドドロップする。

f:id:oitsmalab:20180601094245p:plain

 

動作を確認する

Playボタンで再生すると、SceneおよびGame画面で、360度動画が再生される。

 

 (おまけ)スマホで360度動画を視る

Unity Editor + iPhone(あるいはiPod Touch)で360度動画を視るときは、GoogleのMagic Windowのスクリプトを使うと、iPhoneの動きに合わせてカメラの方向を変えることができる。

UnityのiOSビルドサポートの準備 

そのために、まずUnityでiOSのビルドサポートを入れる必要がある。下記の通り、File → Build Settingsを選ぶ。

f:id:oitsmalab:20180620114414p:plain

 

Build Settingsのウィンドウで、下図のようにPlatformでiOSを選んだ時に"No iOS module loaded"となっていたら、"Open Download Page"を押して、iOSモジュールのダウンロードを行う。

f:id:oitsmalab:20180620114608p:plain

 

 ダウンロードしたアプリを起動し、インストーラーを実行する。

f:id:oitsmalab:20180620130634p:plain

 

以下の画面のとき、Unity Editorの保存場所が表示されていることを確認する。そうでなければ、Browse...のボタンを選んで、Unityのインストールフォルダを選ぶこと。

f:id:oitsmalab:20180620130750p:plain

 

Unity Editorのインストールフォルダは、以下のように"Editor"フォルダを内包するフォルダ(つまり、"Editor"の一階層上のフォルダ)を選択する。

f:id:oitsmalab:20180620131439p:plain

 

次に、もし下図のように"Applications are blocking the installer"が出てきたら、Unity Editorを閉じる。すると、インストールが進行する。

f:id:oitsmalab:20180620131652p:plain

 

後は、インストールが終わるまで待つ。インストールが終わったら、Unity Editorを起動し、File → Build Settingsを選び、Build Settingsのウィンドウで、PlatformでiOSを選んだ時に下図のようになっていればOK。

f:id:oitsmalab:20180620132605p:plain

iTunesの準備

PCの方にiTunesが入っていることを確認する。入っていなければこちらから

www.apple.com

インストールすること。そして、iPhoneをUSBケーブルでPCにつなぐ。

 

Unity Remoteの準備 

そのためには、まずiPhoneapp storeからUnity Remote 5をダウンロード、インストールして開いておく。

次に、PCの方にiTunesが入っていることを確認する。入っていなければインストールすること。そして、iPhoneをUSBケーブルでPCにつなぐ。

 

次に、Edit -> Project Settings -> Editorで"Unity Remote"を"(iPhoneの機種名)"にする。

f:id:oitsmalab:20180613000215p:plain

 

GyroControllerを使う

そして、新しくC#スクリプトファイル GyroController.csを作り、GoogleのMagic Windowのスクリプトのページの最後のスクリプトをコピペする。最後に、GyroController.csをMain Cameraにアタッチする。

 

これでUnity Editorを再生すると、Game画面がiPhoneの方にも表示され、iPhoneを動かすとカメラの方向が変わるはずである。