UE4 ハローワールド
UE4で画像の表示してみました。
ブループリントの全体図?はこのようになっています。
細かく見ていきましょう。
ボタンCが押されている時は変数タイムにプラス1されます。離された時にマイナス1されます。
押されている時とはPressedです。
離されている時がReleasedです。
押している時と離されているときの値をタイムのセットしています。
その先にあるブランチというのはC++などでよく使うif文です。
C++ではif(条件式)という書き方をしていたが、ブループリントではブランチのConditionに条件をつなげます。
今回ではタイム→>=のところです。
ボタンの押した離したで変数の値が変わり画像が切り替わります。
イベントBeginPlayはゲームが開始された瞬間に開始される処理をつなげます。
今回はCボタンを押す前からブランチを処理することで、ブランチの偽の処理がされます。それによりゲーム開始の画面が「C押す」になります。
画像はブループリントのUserWidgetで編集します。imageを画面に持ってます。それによって画像を読み込めるようなります。今回は二枚画像を使っています。
画像をどのように設定しているかというと、新規追加からUserWidgetを選択します。
パレットからimageを追加します。
詳細からAppearanceのimageでインポートした画像を選択できます。これで画像の準備は終わりです。
呼び出し方は下のようになります。Classの選択を忘れないようにしましょう。
真のときにはハローワールドの画像が、偽の時はC押してねの画像が出ます。
Cを押すと画像が変わります。
実際にどこがイベントが実行されているかわからない・・・と思う時は、シュミレートをしてみると今どこが実行されているかわかりやすいですね!こんな感じでナミナミになります。
UE4 文字の表示
今回はUE4で文字の表示についてやっていきます。
イベントBeginPlayとはゲームが始まった瞬間から実行したいなーと思うものをつなげます。今回はゲームが開始とともに文字(Hello)の表示です。
線でつなげるだけで出来てしまうのでソースを書かないですむのは凄いなと毎回思いますね!
TextColorで色の変更が出来ます。
Durationで表示時間を設定できます。
しっかり表示されていますね!
UE4 プロジェクトの作成と下準備
新規プロジェクトはこのように作れます。最初に作る時は何を選択すればいいかわからないと思うので、最初は空のプロジェクトを選択しましょう。
この選択を変えることで最初から出来ることが変わってきます。
まず、UE4に慣れるのなら空のプロジェクトから作ったほうがいいと思います。
モデルやゲームで使う素材が無い場合はスターターコンテツは選択してあった方がいいと思います。このスターターコンテツだけでも十分な素材があるのでとても便利だなと思います。
スターターコンテツありで始めるとこんなステージが既に出来ています。このステージは使うことがないと思うので新しいステージを作ってみましょう。
右上のファイルから新規レベルの作成を選びます。
その後にこのような画面が出できます。
空のレベルだと何も無い真っ暗な画面に切り替わります。このレベルだと本当に何もありません。Defaultは背景と床のモデルだけのステージになります。
作成したら保存しましょう。ファイル分けをしっかりしましょう。いずれプレイヤーのブループリントやモデル、テクスト、マテリアルなど増えるのでファイルわけをしっかりと分けないと、どこになにがあるのかわからなくなってします。
今回はMapというフォルダをつくりそこに保存します。
コンテンツにチェックをいれ、新規追加。新規フォルダを作成からMapフォルダを作ります。そこに保存しましょう。
これでモデルをおいたりする準備が整いました。
猫C while
今回はwhile文についてやります。
<while文とは>
継続条件式が真である限り繰り返されます。偽であれば一度も実行されません。
繰り返される文はwhile{ この間の文が繰り返されます }。
<実際にやってみよう>
printfで表示した後にaがマイナスされていき0より小さくなるとwhile文の継続条件式を満たしていないので抜けるようになります。
結果を見てみましょう。
ちゃんと表示できていますね。
猫C for文
今回はfor文をやります。for文はかなり使います。
<for文とは>
for文を使うと希望の回数だけ繰り返し実行することが出来ます。
使い方は for(初期設定式;継続条件式;再設定式)
{
実行したい文;
}
初期設定式:どこから始めるかを決めます
継続条件式:どこまで繰り返すか決めます
再設定式:初期設定式を更新します
といった感じに使います。
<実際にやってみよう>
このfor文はまず0からスタートし、aが5になったら終了します。for文の中身は変数aの値を表示しているだけです。
結果を見てみましょう。
0~5ちゃんと表示されていますね。再設定式でa++しているのでfor文が回る毎にプラス1されています。aが6になったときに継続条件式を満たせなくなったのでfor文を抜けます。
このように使うことが出来ます。
猫C switch文
今回はswitch文についてやります。
<switch文とは>
switch文とは条件が多数あるときに使います。if文でも出来るがswitch文の方が複雑にならないのがいいところです。
例えば、整数の入力値によって処理の内容を変えたい時に使えます。
使い方は switch(条件式){
case 事例式:
文;
break;
といった感じに使えます。
例えば、Nに入力した整数を代入します。Nが1(case 1:)ならこの処理(文)。breakは処理(文)の後に書くことによって処理(文)をした後にswith文を抜けることが出来ます。
もしbreakを書かないと、上から順に実行され、case1→case2と実行されてしまいます。なのでswitch文を書くときはbreakを書き忘れないようにしましょう。
if文だとif(n==1(例えば))と書くことで同じことが出来るが、nの条件が多数にある場合は複雑になります。そして見ずらいです。なので、switch文を使ったほうがいいと思う。
猫C 関係演算子と論理演算子
<関係演算子と論理演算子とは>
if文の条件式に使われる演算子には、"==","!=",">","<",">=","<=",などあります。これらを関係演算子といいます。
複雑な作りたいとき(一つ以上の条件式を使う時)は"&&"を使うことで複雑な条件を作れます。
例)『aは10以上』かつ『bは5以下』
このように作れます。
if(a>=10 && b<=)とできます。この文は両方の条件を満たしている時にだけ実行されます。
"&&"のことを積結合演算子といいます。
例)『aは10以上』または『bは5以下』
このように作れます。
if(a>=10 || b<=)とできます。この文はどちらかの条件を満たしている時に実行されます。
"||"のことを和結合演算子といいます。
”||”や”&&”のことを論理関係演算子といいます。