UDN
Search public documentation:

DevelopmentKitGemsConcatenateStringsKismetNodeJP
English Translation
中国翻译
한국어

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 ホーム > Unreal Development Kit Gems > Concatenate Strings (文字列連結) Kismet ノードの作成
UE3 ホーム > Kismet ビジュアル スクリプト処理 > Concatenate Strings (文字列連結) Kismet ノードの作成

Concatenate Strings (文字列連結) Kismet ノードの作成


2011年4月に UDK について最終テスト実施済み
PC および iOS 対応

概要


現在のところ Kismet には文字列を簡単に足し合わせる方法がありません。この記事は、まさにその機能を実行する Kismet ノードを追加する場合に役立ちます。

Unrealscript


Kismet のノードは、ValueA と ValueB という入力値を受け取り、UnrealScript のネイティブの連結演算子を使って、合成された文字列を生成します。オプションとして、2 つの文字列の間にスペースを入れた連結も可能です。Kismet 変数ノード値の取得や Kismet 変数ノードのセットといった他のロジックのほとんどは、「Unreal Engine」によって内部的に処理されます。

SeqAct_ConcatenateStrings.uc
class SeqAct_ConcatenateStrings extends SequenceAction;

var() String ValueA;
var() String ValueB;
var() bool ConcatenateWithSpace;
var string StringResult;

event Activated()
{
  StringResult = (ConcatenateWithSpace) ? ValueA@ValueB : ValueA$ValueB;
  ActivateOutputLink(0);
}

defaultproperties
{
  ObjName="Concatenate Strings"
  ObjCategory="Misc"
  InputLinks(0)=(LinkDesc="In")
  OutputLinks(0)=(LinkDesc="Out")
  VariableLinks.Empty
  VariableLinks(0)=(ExpectedType=class'SeqVar_String',LinkDesc="A",PropertyName=ValueA)
  VariableLinks(1)=(ExpectedType=class'SeqVar_String',LinkDesc="B",PropertyName=ValueB)
  VariableLinks(2)=(ExpectedType=class'SeqVar_String',LinkDesc="StringResult",bWriteable=true,PropertyName=StringResult)
}

使用方法


Concatenate Strings (文字列連結) Kismet ノードの追加

既存のレベルを開くか、新たなレベルを作成します。Kismet を開きます。Level Loaded (レベルのロード) Kismet event ノードを追加します。Concatenate Strings (文字列連結) Kismet ノードを追加します。これは、New Action (新たなアクション) メニュー内の Misc (種々雑多) カテゴリ内に保存されます。

01_AddConcatenateKismetNode.jpg

Concatenate String (文字列連結) Kismet ノードのプロパティ

Concatenate String (文字列連結) Kismet ノードには、セット可能なプロパティがいくつかあります。Kismet 文字列変数ノードを使用したくない場合は、 ValueA および ValueB 内で直接文字列が連結するようにセットすることができます。 Concatenate With Space (スペースをともなった連結) によって、2 つの値の間にスペースを入れることができます。 "A" と "B" の間にスペースを入れないで連結した場合は、"AB" となります。スペースをいれると、連結は "A B" となります。

02_ConcatenateKismetNodeProperties.jpg

Concatenate String (文字列連結) Kismet ノードに値を入れる

ここから、新たな Kismet 文字列変数ノードを作成します。 ValueAValueB を、事前に定義されている文字列に結びつけます。 String Result (文字列結果) を、値が含まれている Kismet 文字列変数ノードに結びつけることができます。値はオーバーライドされます。

03_PopulatingConcatenateKismetNode.jpg

Log (ログ) Kismet ノードの追加

Concatenate String (文字列連結) Kismet ノードが適切に動作していることをテストするために、結果のログを取ることができます。そのためには、Log (ログ) Kismet ノードを追加します。

04_AddLogKismetNode.jpg

Log (ログ) Kismet ノード内で String * をエクスポーズする

String Result (文字列結果) 変数のログを取るには、Log (ログ) Kismet ノードを右クリックして、String * ノードをエクスポーズします。

05_ExpandLogKismetNode.jpg

完成した Kismet

残りの固定されていない端を接続すると、Kismet は次のようになります。

06_FinalKismet.jpg

PIE でテストする

このレベルを PIE で実行すると、連結された文字列のログがスクリーン上で取られていることが分かります。

07_Screenshot.jpg

関連テーマ