主なコンテンツ

〜主なコンテンツ〜

1. Unityで製作したゲームと製作Tips
  1. 三月精チャレンジ(東方Project二次創作)
    1. 作り方
  2. 英語学習2D(オリジナルスマホアプリ)
2. UE4
3. ゲームアプリ見学
4. Bitbucket & SourceTreeでの一連の流れ
  1. 前半
  2. 後半
5. Tips
  1. UnityのTips
  5. SQL文のTips
  6. Final IK
  7. GearVR+Unity

2016年8月27日土曜日

UnrealEngine4動作環境

動作環境

wikiに必要スペックなどTipsが載っている。ドスパラさんのを買うのが良さそうか。

フォーラム


  • Facebookの助け合い所は管理者が見ていないようで承認が下りない
  • 英語ではあるが、UE4Anserhubが情報収集や質問の場として一番良さそう

2016年8月25日木曜日

Unreal Engine 4 の学習 (DAY2)



お題目

  • Third Personテンプレート
    • ヘルスの処理をBPで作成
      • イベントAnyDamageを配置
      • 変数Healthを配置
        • Cntr+D&Dでゲットで配置(MacはCommand)
        • Alt+D&Dでセットで配置
    • ヘルスバーを表示
      • 新規追加でフォルダを追加
      • フォルダ内で右クリック>ユーザーインターフェイス>ウィジェットブループリントを作成
      • パレット>共通>progress Barを配置
      • 詳細>Progress>バインド>バインディングを作成
        • 右上のデザイナー>グラフのグラフ側がオレンジになる

        • イベントグラフタブを開く
          • 右クリックでGetPlayerCharacterを配置
          • 右クリックでcastと検索し、ThirdPersonCharacterへキャストを選ぶ
          • キャストの出力で変数に昇格する
        • 次にGetPercentタブを開く
          • 先ほど昇格した変数を配置
          • 0:39:40 ~ 0:42:28までクラッシュ対応
        • フォルダのThirdPersonBP>Blueprint>ThirdPersonGameModeをダブルクリック
          • ブループリントエディタを開く

          • イベントBeginPlayを配置
          • ウィジェットを作成(UIを作るためのノード)
          • classのドロップダウンリストから先ほど作ったPlayerUIを選択(新規フォルダに作成したウィジェットブループリント)
          • Add to ViewPortを配置して完成
    • 敵ユニットの作成
      • コンテンツブラウザのThirdPersonBP>Blueprintに新規BPクラスをアクターで作成
      • ダブルクリックでBPエディタを開く
      • コンポーネントを追加>スタティクメッシュコンポーネント
      • 詳細のstatic meshにてShape_Cylinderを選択
      • Construction ScriptでSetRelativeLocationを配置
        • Construction Scriptはインスタンス生成時に実行される処理。
      • 座標のピンを右クリックで分割を選択

      • タワーの頭をプレイヤーに追従させる(1:12:00)
        • イベントグラフタブ
      • 弾を作成する
        • 新規BPをアクタークラスで作成(これが弾となる)
        • コンポーネント追加でSphereコリジョンを追加
          • コリジョンプリセットをBlockALLに変更
        • コンポーネント追加でCommonから球を追加
          • こちらはただの外観なので、コリジョンプリセットはNoCollisionに変更
        • Projectile Movementを追加
        • レベルに配置して確認
          • この辺りからエラーが出るようになるが無視して進める(動画でもエラーが表示されている)
          • バウンドしない
            • コリジョンをDefoultSceneRootにD&Dする(13:33:00)
      • 弾を頭から発射する
        • Arrowコンポーネントを追加し、「頭」の子にする
        • イベントグラフにカスタムイベントを配置
        • 「クラスからアクターをスポーンします」を配置
        • 変数内にあるコンポーネントの、先ほど作成したArrowをgetで配置
        • イベントBeginPlayの接続先をSet Timer by Function Nameにする。Function Nameは直接入力
      • 動く敵を作る
        • 新規BPをキャラクターで作成
        • ブレークポイントの作成
          • ブレーク後にゲームを止めるには、BPエディタ内上部にある「停止」ボタンを押す。ただ、動作が不安定でボタンが反応しない時がある。イベントグラフ内を右クリックをすると治る時があった。

        • Nav Mesh BoundsボリュームはレベルのビューポートでPキーを押すと、正常にビルドされた範囲が緑色で表示される(参考)。
      • マテリアルを作る
        • 3キーを押しながら左クリックでVector3をショートカットで配置できる
        • ノードへの色の反映は10秒ほど時間かかる
      • 連続爆発
        • Alt+クリックでリンクの解除
        • ディレイノードを追加
        • DoOnceのリセットに接続する
      • ゲームオーバーを作る
        • GameOverUIにテキストとボタンを配置
          • イベントグラフにOnClickedを配置し、リスタートするようにする
          • Restart Gameノードは「状況に合わせた表示」のチェックを外さないと出てこない
        • ThirdPersonGameMode
          • カスタムイベントを配置し、詳細にてインプットにDeadというboolean変数を用意する
          • GameOverUIウィジェットをAdd to Viewportするようにする
        • ThirdPersonCharacterカスタムイベントを配置
          • GetGameModeを配置し、そこからドラッグし、ThirdPersonCharacterにキャストする
          • 先ほど作成したGameoverイベントを呼び出す。この時Deadにチェックを入れる。
          • Set Show Mouse Cursorに接続し、チェックを入れる
          • Set Input Mode UI onlyに接続する
        • ゴールの作成
          • 新規BPをアクターで作成
          • Text Renderはまだ日本語対応されていない
            • Horizontal Alignment(水平整列)を中央にする
        • GameOverUIに処理を追加
          • 右上のグラフを選択

          • マウス操作のみにした後に、ThirdPersonGameModeへキャストし、結果を変数として出力するようにする
          • 一旦、コンパイルしてからデザイナーに戻り、テキストのConentにてバインドを選択すると先ほど作成した結果の変数が表示され、そこからさらにThirdPersonGameModeで作成したGameOverMessegeがプロパティとして選択できるようになっているので選択する
    • プレイヤーから弾を発射する
      • 編集>インプット>BindingsにてShootを作成し、左クリックを対応ボタンとする。これによりShootというアクションイベントを呼び出せるようになる。
      • 玉がThirdPersonCharacter以外に当たったらDestroyするようにするが、この処理を加えると自分と接触しているのか弾が出なくなる。時間がないのでこれにて講義は終了となる

2016年8月24日水曜日

Unreal Engine 4 の学習 (DAY1)



お題目

  • 基本操作
  • 横スクロールアクションの作成
    • BP内で右クリック+マウス操作で摘んで移動
    • BPを用いたエレベーターの作成
      • 可動性を「ムーバブル」にする必要あり
      • 可変フレームレートなのでdelta secondsをかける
        • delta secondsは前回から何秒後に呼び出されたかを返す
      • タイムラインを追加する(2:30:00)
        • フロートトラックを追加
        • Shift + 左クリックでキーを追加
        • タイムラインはフレームレート非依存
      • タイムラインをAddRelativeLocationにつなぐ
        • イベントティックの切断(2:37:10)
      • ノードを複数選択した状態でCキーを押すと、名前をつけてひとまとめのブロックにできる
    • 奥行きの移動追加
      • 編集>プロジェクト設定>インプット>Bindings>Axis Mappingにて奥行き操作を追加(ここではMoveDepthとした)
      • BP内で右クリックし、検索で「MoveDepth」とすると先ほど追加した軸イベントが選択可能になっているのでこれをBPに配置
      • AddActorWorldOffsetで動かす
        • 横スクロールなので、奥行きXの値はどこかで0を入力しているらしい。滑らかに動かしたい場合は、CharactorMovement選択時の詳細に表示されるPlanarMovomentのConstrain to Planeのチェックを入れた上で、AddMovementInputを用いる。(4:16:00)
    • カメラの位置を変える
      • カメラもSideScrollerCharacterに含まれている。ビューポートタブをクリックしカメラを動かす。

2016年8月1日月曜日

日本語学習カードゲーム



ポーカーのようなルールで、長い文章を作った人が勝ち。買おうかな…。(参考

映画「ゲーム・オブ・スローンス」


デンマークの友人がお勧めしていた映画。スローンズ(thrones)は王位の意味。これは映画ではなく連続ドラマとのこと。魔法の存在する架空の中世ヨーロッパを舞台に王位争いが繰り広げられる。

これだけ聞くと単なるファンタジー物に思えてしまうのだが、先の読めない展開と人間の泥臭さを濃密に描いておりアメリカで賞を総なめしたとのこと。時間があるときに見てみたい。(参考