ゲーム作りの合間に息抜きのゲーム作り パート5

ただいま製作中のゲーム! UnrealEngine4で『暁の航路』制作中(メインプログラマー:GAISUTO) Unityで『(タイトル未定)』制作中(メインプログラマー:ざわわ) UnrealEngine4で『(タイトル未定)』(息抜き&学習用)

本職に影響がでないように製作するので結構スローペースになります。 原稿の合間に落書きを描いて、ゲーム作りの合間に息抜きでゲームを作って、仕事の合間はゲームをして息抜き。

——–本日!——–  息抜きでUnrealEngine4でゲームを制作です。本日は5時間半、累計制作時間29時間  長時間座りっぱなしで体が・・・カッチカチになってしまいそう。  そうだ、ラジオ体操をしよう。  一気に体がほぐれるので結構おすすめです!

作業  ・NPCユニティちゃんの追加。まだ動かない。  ・ユニティちゃんが攻撃できるようになった。まだ見た目だけ  ・マップの拡張

NPCユニティちゃんの追加。まだ動かない。  キャラクターBPを「PNPoawn_SD_unitychan」と名前をつけて作成。  TagにBlueTeamを付けて、マップに配置して、動かないけど青チームのユニティちゃんが出現!  敵の視野チェック参考:http://unrealengine.hatenablog.com/entry/2014/10/11/003032  NPCユニティちゃんからライントレースがでます。   緑のラインが貫通で赤のラインがぶつかったら途切れるみたいです。 20160221194955 20160221195240

 [LineTraceByChannel]のOut Hitからライントレースに当たったアクターの情報をとってきて、[BreakHitResult]で情報の分解をして、タグを取得します。  いろいろ試行錯誤をして、次の形に落ち着きました。 20160221195016  試行錯誤・・・なんででしょう・・・[ActorHasTag]がユニティちゃんが持っている"Player"というタグに反応して、tlueという返事を返してくれません!!! -●-●-●-が通過しているルートです。 なんでぇ・・・ 2016022119492820160221183355

○ユニティちゃんが攻撃できるようになった。まだ見た目だけ  攻撃参考(下記のURLのスレッドの13-20を参考)   http://unrealengine.hatenablog.com/entry/2015/07/05/180000  自分の周りに広がるエフェクト(ShotWeapon2)のあと、とんでいく(ShotWeapon)の2つのエフェクトを組み合わせました。 2016022119474720160221194737 20160221194849

 あ、左クリックじゃなくて、Xキーで発動するようになってます。 20160221195759

 モーションはこんな感じに、ちょっとジャンプして片手を上げる感じになります。(次回) 20160221194816

 今後のモーションも含めて、ATKフォルダを作ってまとめておきました。 20160221194657

○マップの拡張  上空からみるとなかなかいい感じですねぇ!! 20160221194548

 階段の先のフロアに上段と下段が出現!  下段から向こう側の下段を橋みたいなので繋いでみましたハラハラゾーンです!  ここで接敵すると怖いですねぇ恐ろしいですねぇ暴れるのが楽しそうです。 2016022119460220160221194616

<次回> ・NPCユニティちゃん、決められたルートを走る! ・ユニティちゃん、攻撃時のモーションが付く! 天に右手を掲げ、落ちる稲妻! ・マップの拡張! 上段と下段どっちを通るのがいいの?

ゲーム作りの合間に息抜きのゲーム作り パート4

ただいま製作中のゲーム! UnrealEngine4で『暁の航路』制作中(メインプログラマー:GAISUTO) Unityで『(タイトル未定)』制作中(メインプログラマー:ざわわ) UnrealEngine4で『(タイトル未定)』(息抜き&学習用)

本職に影響がでないように製作するので結構スローペースになります。 原稿の合間に落書きを描いて、ゲーム作りの合間に息抜きでゲームを作って、仕事の合間はゲームをして息抜き。

——–本日!——– 息抜きでUnrealEngine4でゲームを制作です。本日は6時間、累計制作時間23時間30分 久しぶりにバゲットを丸々1本使ってサンドイッチ作った。 太くておっきいので半分はお昼ごはん、もう半分は夜ご飯です。 今日のパンは顎がしんどい。

作業 ・旗に触れると旗が変化して、チームの得点が加算される。

まずは、ブループリントを整理しました。 GameModeのブループリント(ゲームのルール) GameInstanceのブループリント(レベルが変わっても値を持っている) レベルが変わるとは(タイトルレベル→バトルレベル→リザルトレベル)みたいなもの ブループリントなんてどれも同じだろうと思ってたのでGameInstanceの存在を知って目から鱗でした。 得点を加算とか減算ってゲームのルールじゃないのかなぁとGameModeでずっと作ってましたが破棄しました。 20160220230451

編集→プロジェクトの設定 GameInstanceに自分の作ったMyGameInstanceを設定。 これで値を保持してくれるはず! 一応、GameDefaultMapとEditorStartupMapに作業中のマップを設定して、 DefaultGameModeもThirdParsonのやつからBattleModeに変更。 DefaultPawnClassはユニティちゃんです。 20160220230515

MyGameInstanceの中身。 5つほど変数を作りました。 得点関係、時間関係、旗の位置情報(※) ※使い道なかったら削除予定 20160220230438

旗に触れて旗が変化する部分の処理  TriggerBoxにFlag(int型)の変数を作ったので、そこを初期化しておきます。  最初は0に固定されてるという安心感がほしい。  Flag:0が中立旗、1が赤旗、2が青旗 20160220230414

・自分は赤チーム、旗中立の時の流れ(青チームが接触したときも同じ流れ)

 ・赤の得点加算  ・中立フラグかそうでないかを見る   →中立旗の場合(なにもしない)   →青旗の場合(青の得点減算)

 ・旗の情報を赤にする。

 旗が赤へ変化した後、シーケンスで2つ処理  1つ目はMyGameInstanceから赤得点をゲットして、1足して、セット。  [Switch on int]にこのBoxTriggerのFlag情報をいれます。  Flag情報が0なら中立旗なので、Flag情報に1をいれて赤旗にします。  2なら青旗なので、青の得点を減算して、Flag情報に1をいれて赤旗にします。  (今後、加算・減算系は関数化すると思います。) 20160220230359

スコアを表示  本番ではゲーム時間が10分の場合5分の時に30秒だけ表示するようにしようと思います。  4チームバトルができるようになったらこれが、面白い方向に作用してくれるはず!  見た目の部分は、パレットから画面にVerticalBoxをドラッグ&ドロップ設置して、その中にTextを2つ上下に設置。  右側のプロパティの中でContentのTextに上側はRedTeamScore、下側は0と設定  下側のTextの一番右にバインディングを作成とあるので作成 2016022023053220160220230535 20160220235909    バインディング  ここが納得がまだいってない場所! GameInstanceの参照ができない!  なのでキャストで作成してます。  関数の名前をRedTeamScoreにして、得点をMyGameInstanceからゲットして、[ToText]で得点をtext型にして、ReturnValueに与えます。  これで表示されている0が変化します。 2016022023055420160220230607  どうにかすれば、こんな感じにシンプルになるはず、"NOTE"という表示もなくなるし 20160220224642

つぎにゲーム画面でRedTeamScoreと得点を表示させる。  コンテンツブラウザとかフィールドが表示されている画面の上のツールバーのブループリントから  レベルブループリントを開いて、ゲームが始まったらウィジェットを表示するようにします。  [GameStateウィジェットを作成]で上で作ったGameStateを作成して、AddtoViewportで画面に表示。 20160221000833

 あとは、ゲームを初めて、旗に接触したら旗が変わって、赤チームタグを持つユニティちゃんなので 赤チームの得点が加算されます。 20160220230725

<次回>  ・NPCユニティちゃんが出現!?  ・フィールドを拡張、陸地から続く長い階段の先に待つフロアは一体・・・

ゲーム作りの合間に息抜きのゲーム作り パート3

ただいま製作中のゲーム! UnrealEngine4で『暁の航路』制作中(メインプログラマー:GAISUTO) Unityで『(タイトル未定)』制作中(メインプログラマー:ざわわ) UnrealEngine4で『(タイトル未定)』(息抜き&学習用)

本職に影響がでないように製作するので結構スローペースになります。 原稿の合間に落書きを描いて、ゲーム作りの合間に息抜きでゲームを作って、仕事の合間はゲームをして息抜き。

——–本日!——–  息抜きでUnrealEngine4でゲームを制作です。本日は4時間半、累計制作時間17時間30分  あれ・・・意外と今日の作業時間短い  ・触れるとキャラクターの所属するチームの色に変化する旗を作ったぞー  ・フィールドを拡張

〈メモ〉  旗を自分の色に変えることがこんなにも大変なのか!!  土曜日は出かけてたので、ノーパソでエクセルに旗の処理の流れを3つぐらい準備してたのに、組み合わせれるかと思ってたものが組み合わせれなかったりして、速攻で設計変更することになった。

○触れるとキャラクターの所属するチームの色に変化する旗を作ったぞー  ユニティちゃんBPでチーム識別用のタグをつける。  BP上で上書き可能らしいので、ゲーム開始前にチーム設定で変更できるようにしていきたい。  とりあえず、赤チームにしました。

20160214191823  パート2で組んだ旗用のBoxTriggerのBPを改造していきます。  BoxTriggerに触れたら[Get Components by Tag]でターゲット(ボックスに触れたユニット)からタグを取得する。  ・・・・・・のではなく、[Get Components by Tag]で触れたユニットがRedTeamのタグを持っていたら、持っているタグを全て次に渡して、[Get]で渡された配列の0番地にあるRedTeamというタグを次に渡して、[ComponentHasTag]で渡されてきたタグがRedTeamというタグか?という問答でイエスを返させる。  そうすると[ブランチ]は真という回答をだします。  ブルーチームが触れたときはの流れは、赤とほぼ同じ流れで下で待機してて、上側のブランチが偽をだし、真という回答を送りたそうにしている下のブランチの背中を押してあげる。

20160214192016

 上記の先の処理  [DoOnce](一度通ると、2回目はResetを押されるまで次の処理に行かない)物を使います。  参考(最初に知っておきたいBlueprintノード集):http://historia.co.jp/archives/534

 赤チームの流れの続き、[DoOnce]を通過して、赤旗を設置後、音を鳴らして、中立旗もしくは、青旗を見えなくします。そのあと、青チームの[DoOnce]のResetを押しに行く。  で、まだテスト中に1度も音が鳴ってない!!あれぇ・・・おっかしいなぁ 20160214192028

○フィールドを拡張

 階段を下りる場所から橋を作り、大地を作り、奥へと会談を伸ばし、フロアを作り、そしてさらに右側に伸びる。  形的には + になりそうな感じです。真ん中をつないだり、上下をさらに作ったりして、シンプルでいてかつ走りがいのあるマップにしていきたい。  あと10パートぐらいで + の形にはなりそう。

20160214223450

<次回>  ・得点を管理するBPとすべての旗の情報をもったBPを作る  ・NPCユニティちゃんが出現!?  ・フィールドを拡張、陸地から続く長い階段の先に待つフロアは一体・・・

ゲーム作りの合間に息抜きのゲーム作り パート2

ただいま製作中のゲーム! UnrealEngine4で『暁の航路』制作中(メインプログラマー:GAISUTO) Unityで『(タイトル未定)』制作中(メインプログラマー:ざわわ) UnrealEngine4で『(タイトル未定)』(息抜き&学習用)

本職に影響がでないように製作するので結構スローペースになります。 原稿の合間に落書きを描いて、ゲーム作りの合間に息抜きでゲームを作って、仕事の合間はゲームをして息抜き。

——–本日!——– 息抜きでUnrealEngine4でゲームを制作です。本日は8時間、累計制作時間13時間 息抜き・・・とはいったい・・・ まぁ息抜きでRPG始めたら「次のセーブポイントまで」を繰り返してしまったっていうようなものかな。 ・ユニティちゃんじゃんぷした! ・ユニティちゃんの操作が楽になった! ・ステージ拡張! ・旗となるエフェクトを配置!

ここで悲しいお知らせがあります。 陣取りゲームを修正して、旗取りゲームになります。

旗を奪い合うので旗取りが正しいかなぁ

〈メモ〉  トライアンドエラー、とりあえず、完成した流れの関数から部品を1つ抜いたりして  影響を見て学ぶ。

○ユニティちゃんじゃんぷした!  ユニティちゃんBPにThirdPersonのJumpのやつをコピペ。  ジャンプ中のふわふわした状態のジャンプLOOPのモンタージュをモンタージュの場所で  Recordを押してアニメーションシーケンスにする。  そのあと、Anim_BPのアニムグラフを開いて、NewStateMachineを下記のように設定する。  このアニムグラフを開くのにかなり苦労した。いまだに関数の検索からでしか飛べてないという・・・

1枚目の画像で時計周りになってます。(これもThirdPersonが基本になってます。)  違うといえば数値とか呼び出してる関数とか。

20160211233452

2016021123350420160211233509

2016021123351920160211233527

2016021123353120160211233535

20160211233543

○ユニティちゃんの操作が楽になった!  ・カメラの正面がプレイヤーにとって前進である!  ・ユニティちゃんが右に向いてもカメラはユニティちゃんの後ろに回り込まない!  ユニティちゃんBPのビューポートでSpringArmをコンポーネントに追加してカメラを子にする。  カメラのセッティングを変える。  SD_unitychan_BP(self)のPawnの設定を変更する。

20160211152756 d4621b23dcd1aee742bb833608337755

769a8364d6bb34c50a67f265de62b4a4

イベントグラフにもどってMovementinputを作る。(一応練習用なのでフィールド座標のも用意)

20160211222802

 

○ステージ拡張!  あれから・・・結構追加されました。  真ん中の階段の連続の建物も、壁の違和感やらなんやらで不評を浴びつつもなんとかいい感じに  できてきました。

20160211235933 20160211222907 20160211223722

○旗となるエフェクトを配置!  なんかエフェクトを配置してみたいという好奇心から始まり、エフェクト設置してみたところ  これを旗にしたいと思いました。  ということで、接触したら、エフェクトが変化するように、「あれでもないこれでもない  こうしようかああしようか」とぶつぶつ言いながらなんとか形になりました。  ゲーム開始でトリガーボックスが中立旗を生成して、プレイヤーが触れると赤色の旗に変化します。  現在は赤にしかなりません。

 可視性のON/OFFじゃなくて、ちゃんと生成、破壊にしておいた方がいいのかな。

20160211223512 20160211223528

2016021122253620160211222519

下記のURLを参考にDeathも作ってみた。さらにこれを参考に旗エフェクト配置などを作ってる。 キャラクターを動かせなくなる→エフェクトが発動→音が出る→キャラクターが消えるという流れ。 http://www.nicovideo.jp/watch/sm25863154?via=thumb_watch

そのうち使えそうなのメモ(プレイヤーに追跡するキャラクター) http://bribser.co.jp/blog/navi-blueman/

〈次回〉 ・フィールドを拡張 ・旗の続き ・ユニティちゃんが倒れると、新たなユニティちゃんが召喚される。

ゲーム作りの合間に息抜きのゲーム作り

ただいま製作中のゲーム! UnrealEngine4で『暁の航路』制作中(メインプログラマー:GAISUTO) Unityで『(タイトル未定)』制作中(メインプログラマー:ざわわ) UnrealEngine4で『(タイトル未定)』(息抜き&学習用)

本職に影響がでないように製作するので結構スローペースになります。 原稿の合間に落書きを描いて、ゲーム作りの合間に息抜きでゲームを作って、仕事の合間はゲームをして息抜き。

--------本日!-------- 息抜きでUnrealEngine4でゲームを制作開始しました。 累計制作時間5時間  ・SDユニティちゃんをインポート  ・InfinityBladeのGrassLandsを拡張  ・SDユニティちゃんがフィールドを走る  ・SDユニティちゃんのジャンプ用モーションの始まりと中と終わりを作る

どんなに素晴らしい本があっても、ぐぐっても、初めて触れるものはなかなか進まないんだよ。 という状態で、リスナーさんに、お世話になりっぱなしの生放送をお送りしておりました。 ※Unityも初心者です。

〈メモ〉  保存はこまめに!! 特にモーションを切るとき!

○ユニティちゃんのインポート  モデルインポート参考(リンク先:Qiita)   URL :http://qiita.com/saxor/items/76c366e9dd2ab064c316  モーションインポートの座標修正方法(リンク先:シヴァのブログ)   URL :http://shivat.hatenablog.com/entry/2015/07/17/122157

○ステージGrassLandsの拡張  基本はオブジェクトのコピペ、地面の判定は別にある。   参考UELhttps://www.youtube.com/watch?v=ejnvI3MtQ-I  見た目:SM_Plains_Floors_Block  判定:BlockingVolume

○ユニティちゃんがフィールドを走る  ブループリントの参考はThirdPersonのBPとAnim_BP

 

 モーションの分割   ・インポートしたモーションを複製して、motion_Runに名前を変更。   ・待機、歩く、走る、じゃんぷ・・・のモーションが1つになってるので走る部分だけを切り取る。   ・左下のアニメーションのバーを任意の場所で右クリックすると、指定位置から前を切り取るのか後ろをきりとるのか選択できる。 20160207225406   ・同様に待機を作成   ・コンテンツブラウザで右クリックでブレンドスペースを作成(右クリック→アニメーション→ブレンドスペース1D)   ・待機と走るモーションをブレンド 20160207225345

 アニメーションBP   ・Set'lslnAir'の出口の関数を右クリックして変数を作成   ・Setting'Speed'の出口の関数を右クリックして変数を作成+名前をMoveSpeedにする。    ※名前変更は変数を他で呼び出すときに分かりやすくするため   ・待機と走るモーションをブレンドしたものを呼び出して最終アニメーションに接続   ・アニメーションBPで作ったMoveSpeedの変数をブレンドしたものに接続 20160207225251

20160207225233

 

 キャラクターBP   ・ThirdPerson_BPのMouseinputとMovementinputをコピペ   ・枠の中にユニティちゃんを入れて、位置調整   ・カメラの設置、左上のコンポーネントを追加でカメラ追加をして位置調整 20160207225159 20160207225141

 

 ジャンプ中の部分の動き作成   ・(コンテンツブラウザのアニメーションをダブルクリックでいけるウィンドウ)    アニムアセットの設定のAnimationのRateScaleを0.2にするとアニメーションがかなりゆっくりになる。   ・(コンテンツブラウザでモンタージュを作成してダブルクリックでいけるウィンドウ)    アニメーションセグメントの再生レートをマイナスにすると逆再生になる。   ・通常再生と逆再生をくっつけてふわふわ浮いている感じに設定。 20160207225638

20160207225455

 

こんなかんじ~ 20160207213903

20160207213828

 

〈次回〉  ユニティちゃんじゃんぶ!  ユニティちゃんを中心にカメラが回る!  操作性をなんとかしたい!  ステージの拡張の続き!

〈今後〉  陣取りゲームになっていく予定です  ユニティちゃんに近接武器を持ってもらって、ユニティちゃんのクローンいっぱいつくって、多対多のバトルものにしようなかぁ

この作業環境なら、はかどる!

パソコンが届きました! 初めてのデュアルモニタ!!

IMG_1326_1

このデスクトップPCだとUE4のテクニックの詰まった『少年とカイト』をスムーズに開くことができました。 ノートで開いたとき、起動時間に10分ほどかかったが、さすがです。一瞬です! 開いた瞬間6GBぐらい一気にUE4に占有された。

対象のハードウェアスペックを見落としてた、そりゃノートじゃ無理だわ

最低スペック CPU:4core @2.8GHz RAM:8GB RAM

GPU:GTX680

作業分けメモ(11月17日時点の考え) <デスクトップ> ・UnrealEngene4関連 ・ランドスケープランドスケープ関連のテクスチャ(CLIP STUDIO PAINT

<ノート> ・ブログ ・ホームページ ・企画書更新 ・進行管理 ・3Dモデリング(Metasequoia4) ・モデリング関連のテクスチャ(CLIP STUDIO PAINT) ・モーション(MMD) ・イラスト、漫画(CLIP STUDIO PAINT

蟹を食べたい! 今年の冬こそ!

先月の10月でまた一つ年を取りました。 そして、コミケ当落発表・・・まぁ今回は抽選漏れでした。 ゲームの体験版についは、HPで公開しようと思っています。 コミトレに受かったらディスクにして、薄い本をつけて持って行こうと 思っていますので、よかったらお手に取ってください! 20部ぐらい配布できたら、プログラマーさんと蟹食べに行きたいです・・・ 何卒よろしくお願い申し上げます。

自炊しようと思うので、少部数になります。 ニコ生とかついったーで『行きますよ~』と言ってくだされば お取り置きしておきます。