質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
SDK

SDK(software development kit)は特定のハードウェアのプラットフォーム、開発環境又はソフトウェアパッケージでソフトウェアをつくるのに必要な開発ツールのセットです。SDKはAPI、IDE又は他の開発ツールとフレームワークを組み合わせたもので構成されていることがあります。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Kinect

Kinect(キネクト)はマイクロソフトから発売されたジェスチャー・音声認識によって 操作ができるデバイスです。

Q&A

0回答

1966閲覧

Kinect v2の初期化失敗(Unity)

jazz_up_feeling

総合スコア6

SDK

SDK(software development kit)は特定のハードウェアのプラットフォーム、開発環境又はソフトウェアパッケージでソフトウェアをつくるのに必要な開発ツールのセットです。SDKはAPI、IDE又は他の開発ツールとフレームワークを組み合わせたもので構成されていることがあります。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Kinect

Kinect(キネクト)はマイクロソフトから発売されたジェスチャー・音声認識によって 操作ができるデバイスです。

0グッド

0クリップ

投稿2017/06/16 07:40

Unity Personal 5.4.3f1にてKinect v2(SDKはKinect for Windows 2.0です)を使おうとしています。
しかし、下記コードでKinectの初期化をしようとしても、'KinectSensor' does not contain a definition for 'GetDefault'と表示され、エラーとなってしまいます。
KinectForWindows_UnityのPackageはImportしております。

using UnityEngine;
using System.Collections;
using Windows.Kinect;

public class Kinect_Tracking : MonoBehaviour {

private KinectSensor _Sensor; // Use this for initialization void Start () { _Sensor = KinectSensor.GetDefault(); if (_Sensor != null) { _Reader = _Sensor.ColorFrameSource.OpenReader(); var frameDesc = _Sensor.ColorFrameSource.CreateFrameDescription(ColorImageFormat.Rgba); ColorWidth = frameDesc.Width; ColorHeight = frameDesc.Height; _Texture = new Texture2D(frameDesc.Width, frameDesc.Height, TextureFormat.RGBA32, false); _Data = new byte[frameDesc.BytesPerPixel * frameDesc.LengthInPixels]; if (!_Sensor.IsOpen) { _Sensor.Open(); } } } // Update is called once per frame void Update () { }

}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Bongo

2017/06/18 10:19

パッケージ側のバージョンはどうなっていますでしょうか?たとえば、パッケージのファイル名は「Kinect.2.0.1410.19000.unitypackage」ですか?
jazz_up_feeling

2017/06/19 00:04

ご返信ありがとうございます。 パッケージファイル名は、Kinect.2.0.1410.19000.unitypackageです。本パッケージのKinectViewフォルダにあるMainSceneは動作します。ただ、自分でScriptを作成作成しようとすると、質問内容のエラーが発生してしまいます。
Bongo

2017/06/23 22:13

すいません、未だ有用な回答が見つけられず、回答欄に代わってコメント欄にて書き込みます。検索してみても「does not contain a definition for...」の出る事例はバージョン違いに起因するものばかりで、バージョン違いならそもそもMainSceneもまともに動作しないでしょうから、今回のケースとは違う気がします。「新規にプロジェクト作成→Kinectパッケージをインポート→アセットにスクリプトファイル作成→スクリプトを開いて上記コードを記入」とやっても、KinectSensorにGetDefaultの補完候補は出てこない状況でしょうか?なおかつ、そのプロジェクトに「パッケージ付属のKinectViewフォルダをドロップ→ダイアログに従いAPIをUnity 5用に更新→MainSceneを開く」場合では、そのMainSceneは正常である...となると、もはやUnity側の問題のような気もしてきます。5.6.1f1で試した限りでは自作スクリプト上でもちゃんとGetDefaultメソッドにアクセスできるようですが(Kinectを持っていないため完全な動作確認はできませんでしたが、少なくともメソッドが見つからないことはありませんでした)、Unityを最新版に更新しても状況は変わりませんでしょうか。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問