WebGLによる自然表現

WebGLによる実験刺激提示
 ゲームエンジン Unity で作成した実験刺激は、 Web GL を用いることにより 、遠隔地への提示が可能になる。このような手法は、心理学実験の将来を大きく変える可能性がある。ここでは、森林や水場や空など、自然表現を Web GL で行う際の工夫についてまとめたい。例えばこのようなものが表現できる。

樹木と草木
 手っ取り早いのは、StandardAsset内のSpeedTreeとgrassテクスチャであるが、クオリティが低くUnity臭い絵ができてしまう。地面のテクスチャと草のテクスチャの組み合わせは重要で、 ぴったり合うとかなり自然な表現ができる。樹木は出来れば買ったほうが良く、ベンダーはある程度限られている。NatureManufactureALP8310のアセットが美しい。Grass Flowers Pack Freeは無料だが美しい。

水の表現
 StandardAssetのWaterも悪くないが、現代的な水表現としてはかなりしょぼい。LuxWaterは16ドルだがなかなかの表現力だ。処理もそれほど重いわけではなく、WebGLでも十分に動作する。
・基本的にサンプルシーンからオブジェクトコピーするだけで使えるようになる。
(ただしカメラのRenderingPathを、 Deferedに設定しないと表示されない。)
・ WaterMaterialフォルダに、様々な水表現のプリセットがある(池はfjordが良い)
マニュアルを見ながら設定を変えると良い

空の表現
 SkyBoxとしてはAllSky – 200+ Sky / Skybox Setが一般的なのだろうか。一部抜粋の無料版もあるが、これだけでもなかなか良い。動的な空は何種類かあるが、Enviroがメジャーであり、他アセットとの連携も良い。WebGLでも動くようだが、非力なマシンでは事実上SkyBoxしか使えないと思われる。

ライトマップの積極的な利用
   ノートパソコンのCPU内蔵型GPUは、nVidiaやAMDが提供する独立型のグラフィックボードに比べ著しく貧弱である(1/10~1/20程度の速度)。 樹木の影は重いため、フレームレートを維持するためには、リアルタイムの影表示を諦める。一方で影が失われるとリアルさが大幅に損なわれるため、 ライトマップによる影の焼き込みが重要となる。Unity エディタ内蔵のライトマッパーは不備が多いので、GPUライトマッパーであるBakeryが重宝する。
・RTXモードにするとRTX系GPUの場合かなり早くなる。
・ExportTerrainTreeでTerrainの木が影を落とすようになる。
(木はStaticにして、scaleをXYZすべて1にしておく必要がある。でないと影のサイズがおかしくなる)
木のLODがすべてStaticになってると恐ろしく時間がかかるので注意!
・TerrainOptimizationは必ずスタックするので、チェックしない。
・Texels per Unitは20でチェック、最終は40くらいが良いか。
・BakeryDirectLight側のShadow spreadで影のにじみ具合が変わる。少し大きくしたほうがドットが目立ちにくくキレイ。
・影が七色になる問題が解決できない・・・

その他1:Terrainの最適化
・サイズを小さくする
・Detail(草)の表示距離を短くする
・樹木はBillboardの距離を短くする

UnityでMuse

MuseはBTで無線計測。長嶋先生によれば、通信にはOSCという、MIDIで用いられる方式を使っているらしい。OSCでMUSEからデータを受信するMUSEIOなどの取得方法はこちらで解説されている(本家は変なページにリダイレクトされる?)。・・・ひー、めんどくせぇ。。。SDKをここに置いておきます

OSCをUnityで使うには、UniOSCというアセットがあるらしい$30
これを組み合わせてデータを取得していると思われる例がGithubにある。無解説。

いやいや、待て待て。The worst case happened: Interaxon does no longer offer the Muse SDK!!!という記事があるぞ。これからはMuseDirectを使えと。しかし、現在MuseDirectも供給が止まっているようである。。。どうすれと??

こんにちはピーター、 Museカスタマーケアにお問い合わせいただきありがとうございます。また、Museでの作業に熱心に取り組んでいただきありがとうございます。 私たちはあなたが私たちに送った重要なリンクを大いに評価します。 残念ながら、ご存知かもしれませんが、SDKは提供されなくなりました。 Muse SDKと調査ツールは、Museを世界で最も売れているEEGシステムにするのに役立ちました。彼らはまた、私たちが維持するのが困難であった大量の技術サポートを必要としていました。私たちが成長するにつれて、私たちのコミュニティにふさわしいと私たちが信じる種類のサポートを開発者に提供するのに苦労してきました。このため、Museソフトウェア開発キット(SDK)の積極的なサポートを停止するという難しい決断を下さなければなりませんでした。 可能性として、Muse Direct(iOS)を提供しています。 Muse Directを開発して、Museからの生データを記録、ストリーミング、および視覚化できるようにしました。 iOSデバイスでMuseをMuseDirectに接続し、OSCを介して(WiFiを使用して)データをコンピューターまたは別のデバイスにストリーミングして、任意のプログラミング言語でデータを処理できます。 データをライブで表示したり、CSVファイルとしてExcelにエクスポートしたりできます。ただし、この生データは、複数のサンプル、経験豊富な神経科学者、およびそれを分析するためのスクリプト(コード)の作成なしでは解釈が難しい場合があることに注意することが重要です。このデータの処理は非常に複雑であり、個人に提供できるサポートは限られているため、プロジェクトについて経験豊富なEEG研究者に連絡することを検討することをお勧めします(Muse SDKをプルすることを選択した理由)。 私たちは、ミューズをこれまで以上に良くし、コミュニティに可能な限り最高のツールを提供するために、より持続可能なソリューションの提供に向けて努力を続けていきます。それまでは、Museへのご理解とご協力に心より感謝申し上げます。

MuseMoniter
いろいろデータ取得方法が紹介されている・・・MuseMonitorならぬMindMonitorでCSVが取れるらしい。そして自分は既にこのソフトを入手しているらしい・・・(笑)。

心理サイエンス基礎演習Ⅱ-14

ゾンビゲーム中の生理反応・行動反応を測定する
 今週はゲームを題材に、心身の反応測定にチャレンジします。いろいろ複雑で申し訳ないですが、エキサイティングなテーマなので、じっくり取り組んでくださればと思います。

1.計測プログラムのインストール
まずは、下記のような順序ですすめていきましょう。詳しくは動画をご覧ください。
・M5Stickの組み立て、接続のチェック
・ファイルのダウンロード
・Arduinoで開いてSSIDとパスワード、モジュール名を設定し書き込み
テスト計測画面で波形確認、温度、湿度、気圧などを変化させ、エクセルで描画
・プログラムの簡単な解説

2.ホラーゲームを用いた実験
実験は下記の順序で進めていきます。詳しくは動画をご覧ください。
バイオハザード記事に見る心理学的ゲーム開発の行方
・実験スケジュールの確認(8分を3回実施)
・センサー貼り方指示
・結果の視覚化
リンク1:質問紙
リンク2:ホラーゲーム(ゾンビキッカー)google chromeで実施してください。
 実験を実施する際は、なるべく静かで、室温23℃程度の快適な部屋で、一人で実施してください。生体情報を計測する場合は、実験環境(環境温度・湿度など)を適切に保つことが大事です。事前に調整してから実施するようにしてください。
 また、本体の電池は30程度しか持たないので、ケーブルを接続しっぱなしで計測してくださればと思います。

 課題が終わった方は、下記アドレスからリアクションを登録してください。今日は特に送っていただくものはありません。リアクションは出欠記録を兼ねています。また、成績評価の対象となることに留意して下さい。リアクションは授業当日を含め6日以内にお送りください。
心理サイエンス基礎演習2リアクション

心理サイエンス応用演習Ⅱ-15

研究結果について
 年末の忙しい時期に、実験を実施・分析して、さらには発表資料まで作るのは、とても大変な作業であったろうと思います。 どの研究も興味深い切り口であり、研究結果を楽しく吟味することができました。各研究にコメント動画を作成したので、自分の物を中心に、順にご覧ください。

終わりに
 自分で実験刺激を用意して実験を行うのは大変ですが、決められたテーマでやるよりは楽しいし、得るものも多いのではないかと思います。今の段階でここまで出来ていれば、3年生4年生の間に、かなり高度なことができるようになると思います。例えば照明やインテリアの会社に就職したいと思っている方は、こういった調査を独自に行い、実験刺激が閲覧できるノートパソコンと、調査結果を持参して就職活動を行えば、採用される可能性は非常に高くなるのではないでしょうか? そういった意味では、皆さんの人生の方向を大きく変え得る知識でもあります。活かすかどうかは皆さん次第です。授業ページはいつでも閲覧できるよう残しておくので、今後の学習や人生設計にお役立て下さい。

リアクションの記入
 課題が終わった方は、下記アドレスからリアクションを登録してください。今回は、この授業を通して感じたことを、半年間のまとめとして書き込んでいただければと思います。
心理サイエンス応用演習2リアクション

卒業論文演習-15

前回授業リアクションへのフィードバック 
 前回の授業で、完成した卒論を目の当たりにして、いろいろな事をお考えになった事と思います。来年の事はわかりませんが、卒論指導の方向性は基本的に変わらないので、参考にできる所は先取りして下さると、卒論作成もスムーズにすすむと思います。

・先輩たちの研究を見てみて一つ一つの小見出しが丁寧でわかりやすく書かれていて参考にしようと思いました。
→これは結構重要なので、ぜひ覚えておいてください。
・序論を書けるかこのレベルまでの卒論が自分に出来るのか不安になってきた。
・自分はこんなきれいな論文を書くことが出来るのか不安になった。
→こちらでお示しするスケジュールに沿って準備していただければ、質の高い卒論を書くことは十分可能です。4年になってからは、毎週卒論のための時間を2~3時間ほど設けて、自主的に取り組んでくださればと思います。
・卒論紹介動画を見て、卒論の基本的な構成やオンラインならではのデメリットなどを学ぶことができた。
・対面でできず不測の事態にその場で対応が難しいと思われるから、入念な準備と計画が必要になってくると思う。
・オンラインになるかどうかにかかわらずFormsを使用するようにした方が良いのではないかと考えた。・2つの研究を見て、頻繁に外出できずリアルな体験に出会いにくい社会でストレスと付き合う方法について考えたいと思ったので、結果がより身近な手段ですぐ実生活に活かせるようなものであることを意識して自分の研究計画を作成したいと考えました。
→思った以上にコロナの状況が安定せず、研究の計画変更も当然ありだろうと思います。計画を大きく変更したい場合は、あまり心配せず、とりあえずご連絡いただき、相談しながら進めていければと思っています

本年度の卒論を紹介
 今日は2020年度の卒論として、以下の研究を紹介したいと思います。アニメーションのリラックス効果の研究は、素朴ですが伸びしろのある分野だと思っています。リモートワークの研究は、「コロナの影響下でも実験がしたい」という意欲作です。前回同様、自分の卒業論文計画の参考にして下さればと思います。

リアクションの回答
 今日は、下記のふたつをリアクションに記入・登録してください。
1.上記の卒論紹介動画を見て考えたこと
2.授業をとおして改善を行った自分の研究計画書(ワード形式で添付)
 原則として開催日のうちに提出するようにしてください(リアクションの内容は評価の対象になることにご注意ください)。

今後の卒論計画について
 本授業は今回で終わりですが、卒論計画に不安がある方は、春休み中にいつでもチャットからご連絡ください。コロナの感染状況が芳しくなく先行きが不安ですが、なるべく臨機応変に対応していきたいと思います。

VegetationEngine

・すべての動画はここに存在する。
まず最初にVegetationEngineManagerをセットする方法を知る。Motion,Season,Wetnessなどをグルーバルに設定できる。

VegetationEngineはアセットストア上の様々な植生アセットを対象に、シェーダーを最適化し、インタラクションを可能にするもの。らしい。Prefabをコンバージョンツールで変換して使用するしくみのようだ。あらゆるベンダー、植生生成ツール(SpeedTreeなど)を網羅している。ようだ。

Editorでシェーダーの機能を確かめるには、AnimatedMaterialの設定が必要だ。PrefabSettingからは、色や風の影響度合いなどをまとめて設定できる。複数のパラメータを一括セットできるプリセットもある。

TVEにはSimple,Standard,Subsurfaceの3種類のシェーダーがある。Simpleはローエンドからハイエンドまで使えるように設計されてるが、かなり重いのでモバイルの場合はハイエンドのデバイスで使用する。StandardシェーダーはPCもしくはコンソール用で、フォワード・デファードのレンダリングをサポートする。Subsurfaceは透過光をもっとも美しく表現しフォワードのみとなる。Standard以上のシェーダーはサブサーフェイススキャタリングなどの高度な光の処理を行える。これらのシェーダーはAmplyfyShaderでカスタムできる。

Elementsの使い方。Color、Overlay(雪の表現)、Interactionができる。色、動き、インタラクションなどのGlobal項目の影響度合いは、各プレファブに設定されているシェーダーのスライダーで調整できる。エレメントをメニューからセットしたあと、エレメントの種類を変えるにはElementシェーダーの種類を変更する。ただしプレファブには使えないので注意。回避する方法は動画に説明されている。たぶん。

HDRP+NatureRendererで草を生やすデモ。だいたいやり方は同様と思われる。最初に「TheVegetationEngine」というコンポーネントを追加するのかな?そのあとプレファブをコンバートして、UnityのTerrainEditorで植えていくというような。SpeedTree樹木の配置、風の影響の設定、SSSの設定などが解説される。エレメントを足して、部分的に色を変える。・・・エレメントの影響はGlobalColorスライダーで個々の植生ごとに変えられるようだ(草は影響されるが木は無視するとか)。GlobalOverlayを使うと、植生全体に(例えば雪が降ったような)色をつけることができる。など。

エレメントで葉の量を減らす。

シダやタルにVEシェーダーを適用して雪が降るようにする。・・・しかし、同じようにならない。下まで真っ白になってしまい不自然なのだが。。。これはひょっとしてOverlay設定の方に問題が!?(今更??)いやそんな項目はない、、、いやシーズンの設定?いやそんな項目があるとは・・・。。。。うーん。


マニュアル