‫やあ､ お帰りなさい｡
‫このビデオでは､ 特定のブループリント クラスのインスタンスと､ すべてのインスタンスに適用されるブループリントであるデフォルト
‫ブループリントを区別して説明します｡
‫また､ ブループリントで特定の C++ 変数の割り当て､ 読み取りまたは書き込みアクセスをどのように行うかについて説明します｡
‫では､ さっそく始めましょう｡
‫これで､ Blueprint にいくつかのコンポーネントを公開する準備が整いました｡
‫ここで､ コンポーネントをそれぞれクリックすると､ 詳細パネルが完全に空になることを確認しました｡
‫そこで､ 特定のプロパティをブループリントに公開する方法を学ぶ必要があり､ U プロパティ マクロを使用してそれを実現します｡
‫それでは､ VSコードに戻り､ Youプロパティマクロを見てみましょう｡
‫これは特殊なマクロです｡
‫これは Unreal Engine 独自のもので､ 入力パラメータを受け取ることができるため､ このように括弧で囲まれています｡
‫ここでは､ 特定の方法で物事を公開する方法を示すために､ いくつかの使い捨ての変数を作成し､ 終了したら削除します｡
‫これらを使って､ この露出がどのように機能するかを確認し､ いくつかの整数を作ることができるようにするだけです｡
‫INT 32を作り､ このint 32をどこでも見えるintと呼ぶことにしましょう｡
‫そしてちょうどここで､ これを12という値に初期化します｡
‫さて､ これをリフレクションシステムに公開するために､ 新しいプロパティマクロが必要になります｡
‫さて､ これは単なる整数の変数です｡
‫これらのようなコンポーネントではないので､ コンポーネントタブに表示されることはありません｡
‫設計図にはコンポーネントセクションがあり､ コンポーネントはここに表示されますが､ 通常の変数も表示されることを思い出してください｡
‫例えば､ BP Pond, Tank Selfをクリックすると､ コンポーネントではない他のすべての変数が表示されます｡
‫そこで､ vsコードに戻って､ visibleをどこかに公開する方法を決めましょう｡
‫INT さて､ 今回はyou propertyのキーワードを紹介します｡
‫これらは､ Uの括弧に入るオプションです｡
‫物件マクロです｡
‫今回は､ どこでも見えるを追加します｡
‫では､ これをコンパイルしてみましょう｡
‫なるほど｡
‫それでは､ エディタに飛び込んでみましょう｡
‫BP Pond Tank では､ BP Pond Tank を自己選択しました｡
‫詳細パネルで visible を検索すると､ ここに私の
‫visible があります｡
‫実際には全く編集できないのですが｡
‫どこでも見えるというのは､ そういうことなんですね｡
‫表示されていることを意味しますが､ このプロパティを編集することはできません｡
‫さて､ それではもう1つINT32を作成してみましょう｡
‫これはどこでも編集intと呼ぶことにします｡
‫そして､ この値､ たとえば22を与えて､ これは独自のUプロパティ・マクロを取得し､ visible anywhereの代わりに､
‫このキーワードを与えるつもりです｡
‫どこでも編集できる｡
‫そして､ エディタに戻って､ edit anywhereを検索して､
‫ここに私のedit anywhereがあります｡
‫選ぶことも､ 変えることもできる｡
‫編集可能なのです｡
‫それが「どこでも編集」の意味です｡
‫変えられるということです｡
‫つまり､ C++で22に初期化していても､ ブループリントでその値を上書きして新しい値を与えることができるのです｡
‫さて､ ここまでで「どこでも見える」と「どこでも編集」について学びましたが､ キーワードはこの2つ以外にもあります｡
‫例えば､ 新しいint 32を作り､ これを可視インスタンスのみのintと呼び､ これを11に初期化するとします｡
‫そして､ このマクロに付与するキーワードは､ 「visible instance only」です｡
‫これをコンパイルして､ ブループリントの詳細パネルで visible を検索してみます｡ int のどこでも
‫visible が表示されますが､ 新しい変数はどこにあるのでしょうか｡
‫可視インスタンスのみとしました｡
‫INT 可視インスタンスのみ参照｡
‫INT まあ､ ここでは見れませんが､ これを見てください｡
‫うちのBP池の水槽を､ ここの世界に1つ引っ張り出してくる｡
‫そして､ 私たちは世界のアウトライナーを見ることができます｡
‫突然ですが､ この世界にはBPの池沼タンクがあるんです｡
‫この状態で､ 詳細パネルに降りてきて､ visibleを検索します｡ これで､ visible anywhere
‫intとvisible instance only intを見ることができます｡
‫では､ なぜここでは見えるのに､ 実際の設計図そのものを見ると見えないのでしょう｡
‫まあ､ そこは区別して考えたいところです｡
‫コンテンツ ブラウザでブループリントをダブルクリックすると､ ブループリントが開き､
‫プロパティが表示されます｡
‫何？
‫ここで見ているのは､ デフォルトの設計図です｡
‫ブループリントのすべてのデフォルト情報が含まれています｡
‫しかし､ レベル内にドラッグすると､ 今度はインスタンスと呼ばれるものができてしまいます｡
‫つまり､ この世界に存在する特定のBP -- タンクは､ BPポンドタンクのインスタンスなのです｡
‫実は､ 複数のインスタンスを引き出して､ 世界に存在するそれぞれがBP池槽のインスタンスなのです｡
‫これは､ デフォルトのブループリントとは異なります｡
‫このグラフは､ 今後､ より多くのスペシファイアを学びながら､ より充実させていく予定です｡
‫これまでのところ､ visible anywhereしか見ていませんが､ これはdefaultsとinstanceの両方のカラムにあることがわかると思います｡
‫そして､ Read Onlyというタイトルの行にあります｡
‫つまり､ このグラフから､ 自分の所有するどこでも見えるものは､ 見えるだけであることがわかります｡
‫編集はできませんが､ デフォルトとインスタンスの両方で表示されます｡
‫一方､ visibleインスタンスは､ インスタンス上でのみ､ 読み取り専用アクセス権を持ちます｡
‫デフォルトの設計図では実際に見ることはできません｡
‫そして､ デフォルトやインスタンスのプロパティを実際に編集することができるedit anywhereについて学びました｡
‫そのため､ defaultsとinstanceの両方の欄に存在するわけです｡
‫そこで課題として､ ベースとなる池沼クラスに変数を追加してほしい｡
‫これから行うのは､ 追加する変数の型を決めることです｡ 何でもかまいませんが､
‫整数や浮動小数点数のような基本的な型にしてください｡
‫FベクトルやF文字列にして､ 他の30進数のようにデフォルト値で初期化することもできます｡
‫そして､ これはどんな変数でもいいのです｡
‫スピードの変数やスタミナの変数を作ることができます｡
‫ここには自由がある｡
‫この変数を作成したら､ この変数にどのアクセスレベルを設定するかを決定し､ youプロパティマクロを付与して､
‫ここに正しい指定を追加します｡
‫ここで､ これをインスタンスまたはデフォルトでのみ表示するか､ またはどこでも表示または編集できるようにするかを決め､
‫これまでに学んだ指定子のいずれかを使用して､ この変数に正しい指定を与えて､ 先に進み､ ビデオを一時停止して､
‫今この変数を作成することができます｡
‫わかりました｡
‫ということで､ 先に変数を作っておくことにします｡
‫今は､ まったく違うものを作ったっていいんです｡
‫これはあくまで練習用です｡
‫フロートを作ってこれをspeedと呼び､ speedを400Fと初期化します｡
‫そして､ このスピード変数は､ インスタンスとデフォルトの両方で編集できるようにしたいと思います｡
‫そこで､ これにUプロパティマクロを付与して､ どこでも編集できるようにします｡
‫では､ これをコンパイルしてきます｡
‫そしてエディタに戻って､ ベースとなる戦車インスタンスをひとつ選びます｡
‫そして､ この詳細パネルには､ スピード変数が表示され､ もちろんここで編集することができます｡
‫タンクを開くと､ ここに速度変数があり､ 400に設定されていて､ 編集可能になっています｡
‫要約すると､ 特定のブループリント クラスのインスタンスとデフォルトの違いについて学びました｡
‫また､ Visible Anywhere､ Visible､ Instance only､ Edit anywhereといった新しいプロパティ指定子もいくつか学びました｡
‫次のビデオでは､ これらの新しいプロパティ指定子を使用して､ Blueprint で C++ 変数へのアクセスを制御する方法を引き続き学習します｡
‫また､ お会いしましょう｡