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

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

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

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity3D

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

Q&A

解決済

1回答

975閲覧

Unity でデータバインディングを使う方法を知りたい

usamino

総合スコア59

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity3D

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

0グッド

0クリップ

投稿2019/04/17 08:00

編集2019/04/17 09:44

https://teratail.com/questions/180624

上記は以前フォームアプリで活用させて頂いた質問となります。

 先日までc#のフォームアプリでイベント駆動型のクイズゲームを作成しておりましたがアニメーションが欲しくなりUnityの勉強を始めました。
しかしフォームアプリですとデータディングと言う非常に便利な方法があったのですがUnityではどれにあたるのかがわからず困っております。

クイズに正解すると次の問題がテキストに浮かんできて回答をする。
正解すると次の問題がテキストに表れてクイズに回答をする。と言う繰り返しとなります。

どなたか良い方法をご教授頂けると幸いです。
宜しくお願い致します。

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

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

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

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

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

Zuishin

2019/04/17 08:16

前半と後半で全然別のこと書いてますが、バインドという非常に便利な式はフォームアプリにもありません。
usamino

2019/04/17 08:21

フォームアプリでbindingSourceやDataBindings.Addなどを以前使ったことがあったと思うのですが。それに代わるような方法があればと探しておりました。
Zuishin

2019/04/17 08:28

今リンクした質問での私の回答は「フロー駆動ではなくイベント駆動を使いましょう」ということです。バインドは式ではなくデータバインディングという技術を使うことです。 質問がおかしいので、事情を知らなければ読んでも理解できません。私も忘れていたので検索して初めて思い出しました。 質問を整理すると「Unity でデータバインディングを使う方法を知りたい」となりますので、以前の質問へのリンクを貼り、本文含めて書き直してください。 私は Unity のデータバインディングを知らないので答えられません。
usamino

2019/04/17 08:46

なるほど理解致しました。 やってみます。ありがとうございます。
Zuishin

2019/04/17 09:03

編集後を見ましたが、やはり「式」になっています。 繰り返しますが、式ではありません。 「式」というのはプログラミング用語です。 専門用語は間違った使い方をすると、読む人が混乱しますので、正確に使ってください。
usamino

2019/04/17 09:44

失礼致しました。 訂正させて頂きました。
guest

回答1

0

ベストアンサー

C#側のフォームアプリはよく知りませんが、「以前の質問」を見る限り、
多分Unityでやる場合もZuishinさんの回答と同じような方法になると思います。
「プログラムを一行打ったら勝手に入力待ち」みたいな機能は(その機能自体を自作するなり外部アセットを導入しない限り)**「Unityには存在しない」**が直接的な回答になります。

表示・入力の基礎は「unity ugui ボタン」等で調べてください。
表示と入力の合間にアニメを付けたいだけなら「unity アニメーション」で検索すれば色々出てくると思います。
基本方針は「Unity標準のアニメーションシステムを使う」「自力でアニメ用スクリプト書く」「DOTween等の外部アセットを使う」のいずれかになると思います。

フロー型?(スクリプトでイベント待ち?)の「式(=プログラム)」で同じようなことをしたいなら「UniRx」というライブラリが使えるかもしれません。

具体的に何がしたいのか書かれていないので、とりあえず検索ワードの提示のみ。

投稿2019/04/17 09:15

編集2019/04/17 09:19
sakura_hana

総合スコア11427

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

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

usamino

2019/04/17 09:59

sakura_hanaさんコメントありがとうございます。 言葉足らずでした。私がしたかったのは下記の流れとなります。 問題が出題される      「りんごを英語で言うと?」 ⇓ 答えをキーボードで回答   「apple」 ⇓ 正誤判断 ⇓ アニメーション       正解なら喜ぶ 失敗なら悲しむ ⇓ 全文字が一致すると次の問題を表示。 UniRxは初めて知りました。調べてみようかと思います。ありがとうございます。
Zuishin

2019/04/17 10:29

sakura_hana さんはご存知だと思いますが、誤解を招くので「式」について押さえます。 https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/language-specification/expressions C# のプログラムの単位には大きく式(Expression)と文(Statement)があります。 大雑把に言うと、式は値を持つもので、文は持たないものです。 たとえば a = 1 のような代入や a++ のようなインクリメントは値を持つので式です。 式は if ((a = 1) == 2) のように他の式と比べることや、メソッドの引数として渡すことができます。 ここでは (a = 1) という代入式と 2 というリテラル式を比較しています。 if (true) {} のように値を持たないものは文です。文は引数として使うことができません。 switch は長らく文でしたが、C# 8.0 では switch 式が導入され、引数として使うことができるようになります。 「if 文」とは言いますが「if 式」とは言いません。 「ラムダ式」とは言いますが「ラムダ文」とは言いません。 このように「式」という言葉はきっちりと意味が定義付けられている言葉なので、ほかの意味で使わないようにしてください。
sakura_hana

2019/04/17 11:01

@usaminoさん であれば「unity テキスト 入力」「unity キーボード 入力」などで検索するといいと思います。 @Zuishinさん 私もふわっとそんな感じかなーと思ってた程度でした。詳細説明ありがとうございます。
usamino

2019/04/18 06:13

@Zuishinさんありがとうございます。 言葉の意味がハッキリ理解できるように勉強させて頂きます。 @sakura_hanaさん ご丁寧にありがとうございます。 自分なりに調べて解釈していこうかと思います。 ヒントをありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問