かげさんの111から始まるHistory » Nreal » NRSDKのNRDebuggerクラスの中身を見てみた

« Nreal Light で動画キャプチャするプログラムにチャレンジしているんだが、うまくいかねぇ…(-_-;) | トップページ | Nreal Light や Nreal Air でユニティちゃんを表示してランダムアニメーション »

2022.07.18

NRSDKのNRDebuggerクラスの中身を見てみた

| |コメント (0)

 このエントリーをはてなブックマークに追加

どうも、かげさんです(^^)/
あなたがこの記事を読んでいるのは何回目でしょうか?
初めての方、いらっしゃい!
複数回目の方、再訪問ありがとです(・∀・)

あいかわらず Nreal Light のプログラムで録画機能を使うと 0 バイトファイルができるだけで止まっているかげさんです…(´・ω・`)

何か進展するための情報があれば良いのですが、調べ方が悪いのか、よく分からず…

とりあえずログなりメッセージを表示する方法がないかなと思って、NRSDK の NRDebuggerクラスを調べてみた。

NRDebugger のソース

録画に使うソースの中にこんな記述があった。

NRDebugger.Info("Created VideoCapture Instance!");

NRDebugger.Error("Failed to create VideoCapture Instance!");

NRDebugger.Warning("Can not start video capture!");

どうやら NRDebuggerクラス というのを使うとコンソールログを出すっぽい。

NRDebugger のソースは、Assets\Scripts\NRDebugger.cs である。

ざっくり読んでみたところ、LogLevel 列挙型と、クラスをインスタンス化しなくても使えるスタティックメソッドがあるのが分かった。

LogLevel 列挙型

LogLevel 列挙型の値 LogLevel 列挙型の意味
All すべて
Debug デバッグ情報
Info 情報
Warning 警告
Error エラー
Fatal 致命的なエラー
Off オフ

ログレベルは、上記のLogLevel 列挙型の場合、下の方がレベルが高い。

NRDebugger.LogLevel = LogLevel.Info;

とすることで、情報以上のレベルのログだけが出力される。

通常、デバッグで使うログは数が多く、情報収集には便利なんだが、数が多い分、重要な情報が埋もれてしまう。

上記のように情報以上とすることで、デバッグ情報レベルのログは出力されなくなり、重要な情報の見落とし率がグッと下がる。

ログレベルの考え方は、割と一般的なもので業務アプリケーションの開発でも使われる。

余談だが、かげさんが作っていたWindowsゲーム「初音ミク冒険記」のデバッグでもログレベルを使っており、初音ミク冒険記では、かなり細かいログレベル管理をしていた。

<参考:初音ミク冒険記のデバッグ設定画面でのログレベル設定>

Boukenkiloglevel

ログ出力メソッド

メソッド名 メソッドの内容
Debug デバッグ情報を出力
Info 情報
Warning 警告
Error エラー
Fatal 致命的なエラー

どのメソッドも引数としてオブジェクト、文字列、書式付き文字列とそのパラメータを受け取れるようになっている。

単純な文字列を出力する記述は、こんな感じだ。

NRDebugger.Warning("Can not start video capture!");

オブジェクトだとこんな感じ。

NRDebugger.Warning(Cube);

書式付き文字列だとこんな感じ。

NRDebugger.Warning("{0}{1:0}", "数値パラメータ=", intParameter);

まとめ

NRDebugger クラスを使うと、ログレベルで管理されたコンソールログを出力するのが分かった。

ここまではOKだ



最大201インチのシアター級巨大スクリーン(ARグラス越しに4mで130インチ、6mで201インチに相当)で映像をお楽しみいただくことができます。
TUVが認めた目に優しいARグラス:国際的な独立第三者検査・認証機関であるテュフラインランド(TUV Rheinland)からハードウェアレベルの「低ブルーライト・フリッカーフリー」認証を取得しました。
Nreal Streaming Box(エンリアル ストリーミングボックス) NR-7101AGL - ARグラス/スマートグラス Nreal Air 専用/Android・iOS 両対応/Nreal Airにケーブルで接続するボックス

 このエントリーをはてなブックマークに追加

| |コメント (0)

このエントリーへのリンク

このエントリーのリンクを入れるHTML:

コメント

このブログの新着コメントをRSSリーダに登録する為のxml




←名前とメールアドレスは必須です。
URLも記入すれば、URLのみが公開されます。
メールアドレスのみですと、メールアドレスが公開されてしまいますので、御注意ください。

↓コメント本文では、「a href」「b」「i」「br/」「p」「strong」「em」「ul」「ol」「li」「blockquote」「pre」のタグが使えます。絵文字をクリックすると、本文にタグを挿入できます。