2016年8月5日金曜日

久しぶりの更新です




最近まとまった時間が取れず開発ができない状態が続いていたのですが、来週ぐらいから時間が取れそうなのでまた少しづつ開発していこうと思います。


そこで今回は基礎を中心に学ぼうと思いAmazonで "Unreal Engine 4 ブループリント逆引きリファレンス"を購入しました。







困ったときはこの本を頼りにがんばります。



2016年7月20日水曜日

Blender練習




最近キューブを動かすプログラムの開発に行き詰まってきたので、息抜きも兼ねてBlenderでモデリングをしてみました。


普段使っているL字デスクを再現しようと思ったのはいいのですが、Blenderの操作が独特すぎて最初はかなり困惑しました・・・。


でもなんとか完成までこぎつけたので一安心です。。。










このモデルが欲しい方いたら差し上げます。。




2016年7月11日月曜日

キューブを押すパート4




障害物の取得



先日Traceを使い近くのアクター等を参照できる事を知り、これら応用して障害物がある場合キューブを動かせないようにする仕組みを作りました。


今回判断したいのは【キューブが移動する先の障害物の有無】なので、まずはBoxTraceを使い元となるキューブの面を一回で動かす距離まで引き伸ばしたTraceを四方に配置し、


障害物がない場合
変数CanMove(Boolean)をTrue

障害物がある場合
変数CanMove(Boolean)をFalse

にそれぞれセットします。


次にBoxCollisionのOverlapEventを追加し、そこから

  • 変数CanMove(Boolean) 
  • OverlapActor == PlayerCharacter

上記の二つをANDで出力したものをBranchに繋ぎ、それがTrueだった場合、

変数Direction(Vector)

を対応した方向に動くようにセットするものを4つ(四方に必要なので)作り、以前から使用しているキューブを動かす機構に繋げました。



このTraceを四方向分





キューブを動かす機構



これらによって、前回作った【キャラクターBPでキューブを動かすシステム】を撤廃しました。

以上のプログラムを使い軽いパズルの様なものを作ってみようと思います。



2016年7月6日水曜日

キューブを押すパート3




ブループリントの処理を変更


今日はチュートリアル動画等を参考に様々な処理を作ってみて、その中に使えそうながあったので応用してみました。


まず、以前作ったシステムではキューブを動かすために必要な処理を、キューブ自体に組み込んでいたのですが、今回はキャラクターのブループリントに組み込んでみようと思いました。(5時間かかった。)


おかげで今のところは不具合もなく好調です。また今まで抱えていた問題もすんなり解決できたので、ずっと悩んでいた時間はなんだったんだろう。


そこで前回との違いを、軽く動画にまとめてみました。





キューブを押すver0.0.2




ついでに以前の動画も貼っておきます。




キューブを押すver0.0.1




この調子で行けば近いうちにミニゲーム的なものが作れそうなので、もう少し改良を加えていこうと思います。



2016年7月5日火曜日

キューブを押すパート2



キューブを動かす処理について


関数について調べていたところvectorをfloatに分解できる事がわかったので、それを使った処理を作ってみました。


以前の処理ではX, Y, X-, Y- に対応した4つ分の処理を組み込んでいたせいで、タイムラインも4つあり無駄も多かったです。



今回作ってみた処理はこちらです。

  1. overlapが入力されたら 値XにA 値YにB そそれぞれセット
  2. タイムラインの値と 値X を乗算
  3. タイムラインの値と 値Y を乗算
  4. キューブのlocationを locationX, locationY locationZ に分解
  5. locationX と 乗算された 値X を加算
  6. locationY と 乗算された 値X を加算
  7. locationX, locationY locationZの値をvectorに変換し、SetActorRelativeLocationに入力

のようにしたところ無駄な部分がかなり減りました。


以前のブループリントと今回作ったブループリントを比べてみると一目瞭然です。


以前のブループリント 






今回のブループリント




今まではblooleanしか知らなかったので、今回わかった事で多くのことが可能になった気がします。

これからも関数についてもっと調べてみようと思います。



2016年7月4日月曜日

キューブを押すパート1



初めまして、プログラミング言語知らないのになぜかゲームを作ろうと思ったbutabutaです。
これからこのブログでUE4での製作状況を発信していこうと思います。



二日前から↓の画像のようなものを目標に「キューブを押すプログラム」を制作しています。






初日

UE4の操作すらわからずチュートリアルを参考にしながら作ってみました。そこで完成したものは

「キューブに近づいてEを押すとキューブが瞬間移動する」

といった謎のギミックになってしまいました。



二日目

ブループリントにも少しだけ理解が生まれ、それらしいものができました。それがこちらです。




初日に比べるとマシにはなりましたが、問題はたくさんあります。


  • キューブを複数配置すると一つしか動作しない。
  • 障害物を越えていく
  • 連打をすると動作が不安定になる・・・等

明日からは問題を解決するところからやっていこうと思います。