【UE4】第12回ぷちコンのぷちコンゲームジャム

デザイナーさんがステージやUI、神楽鈴、タイトルとエンドをいい感じにしてくれたお陰で、2日で作ったとは思えないクオリティになりました! 自分の担当はその他全般で、プレイヤー、エネミーAI、ギミック全般、絵作りの仕上げ、キャラクターモデルなどなど。

今回は、ぷちコンゲームジャムで初めて・・・
  「VRMを使った!」
  「ビヘイビアツリー使った!」
  「立体音響使った!」
  「プレイヤーキャラクター切り替え機能入れた!」
かわいいフィジックスは間に合わなかった。
けど短い時間でよくやった! うん!

作戦会議~!

今回はとにかく時間がない!
1日目はビルの停電に伴い13時から開始。
2日目は台風に伴い、17時撤収。
いつもより3時間ほど少ない感じです。
なかなかハードな2日間

さっと何を作るか決める!
今回は前回のテンプレートを使って、まずテーマの「れい」について漢字を書き出した。
そして、出たキーワードから作る物を決めました。
ここらへんで15時過ぎぐらいですね。
f:id:NazzTea:20190908224229j:plain

ゲーム要素と役割分担を決めて作業開始! f:id:NazzTea:20190908224233j:plain

そして出来上がった作品は!

霊が襲ってくるので捕まらないように逃げて鈴を集めて徐霊するゲームです!
立体音響なので、敵のいる方向から引きずるような音が聞こえます。
ベッドフォンを着けて耳を澄まして音のしない方に全力で逃げてください。
どうしても無理な時は、神楽鈴の力を使うと幽霊を一時的に退けることができます! ただ、しばらく力を使えなくなるので、どこに消えたのか耳を澄ませて判断して、全力で逃げてください!

プレイヤーキャラクターは、巫女さんと・・・ゲーミングPCでお馴染みのツクモ! その店員さんの二種類になってます! 全力で媚びを売る。

動画(投稿用ではない)

【UE4】ゲーム配布『燕天』:第11回ぷちコンのぷちコンゲームジャム

なんと! 第11回ぷちコンでカナマイ賞を頂きました! ありがとうございます! 平成のうちに公開しようと思います。 是非遊んでみてください。

ダウンロードして、適当な所に解答して、Rabbit.exeを実行すると遊ぶことができます。 操作方法は左右キーのみ使います。

ダウンロードはこちら(グーグルドライブ)

動画

記事リンク

yutakaworks.hatenablog.com

wakanya.hatenablog.com

【UE4】第11回ぷちコンのぷちコンゲームジャム

二日間にわたるUE4ぷちコンゲームジャムが終わりました!
プログラマー2人、デザイナー1人とバランスがとれたパーティーでした。

お題が「えん」ということで、変換できた漢字から燕(えん・つばめ)と円を使ってゲームを作りました!

企画が決まるまで

やったこと
 はじめに「えん」で変換できる漢字をマインドマップ書きだしました。
その後、いい時間だったので、お店でお昼ご飯を注文して待っている間に漢字からイメージとか単語を繋げて、コンセプトと手段を列挙してました。
コンセプトは、過去にヒストリアさんが開いた勉強会で「コンセプトは〇〇感だ!」みたいなのが頭にうっすら残っていたので、これを考える。
もう1つ、UE4魔改造ゲームジャムで知った「EMS Framework」が頭に残ってたので、手段と目的を考えるのに使う。

参考1:「ゲームコンセプト概論~刺さる企画の作り方~」(出張ヒストリア!ゲーム開発勉強会)
参考2:「EMS Framework」

こうしてご飯を食べ終えてまったりしている間に、ツバメになって空を飛んで円を描くということにまとまりました。
ここからは早くて、爽快感・空に円を描くからアクロバットスポーツに決まり、目的は芸術点を競うということになりました!
f:id:NazzTea:20190317230249p:plain

ご飯が終わって戻ってから、ささっと設計と役割分担。
f:id:NazzTea:20190317235619p:plain

そして出来上がった作品は!

燕で空に円を描いて芸術点を競うアクロバティックスポーツゲームです!
タイトルは「燕天」
試遊会でいろんな人に熱中して遊んでもらえたので感無量ですね!

ゲームの説明

 円を描くことで得点が加算されるのですが、普通の速度では円を描くことができないです。
 青色の加速リングをくぐると一時的に速度があがるので、一定以上の速度にすると円を描けます。
 円を描いたあと、大きく失速する前に加速リングをくぐると連続で円を描き続けることができます。
 

難易度は

 ・適当にやってもそこそこな得点
 ・1度、人のを見てからやると高得点になりやすい
 ・運がいいと初見プレイでも高得点
 ・慣れると運がいい初見プレイぐらいの点数が安定する
 ・運と慣れと動体視力でさらなる高得点が狙える
という感じです。

動画(投稿用ではない)

そして、もう1つ「えん」的な要素!

ぷちコンゲームジャムのごはん!

f:id:NazzTea:20190317232619j:plain

f:id:NazzTea:20190317235813j:plain

f:id:NazzTea:20190317235852j:plain

【COCOPStudio】キャラクターモデルの削除方法

削除方法

現在面倒ですがアプリ外で削除する形になっています。

Android

2ヵ所のキャラクターファイルを削除する必要があります。
 1つ目、Androidがダウンロードしたファイルを自動で保管する場所
 2つ目、COCOPStudioが保存に使っているフォルダ内

  1. ダウンロードフォルダ内のキャラクターモデルを削除
     場所:マイファイル⇒内部ストレージ⇒Download
     (?????????.vrm)ファイルを削除
    f:id:NazzTea:20190310233714j:plain:w300

  2. COCOPStudioが保存に使っているフォルダ内
     場所:マイファイル⇒内部ストレージ⇒COCOPStudio
    f:id:NazzTea:20190310233656j:plain:w300
    f:id:NazzTea:20190310233702j:plain:w300
    f:id:NazzTea:20190310233709j:plain:w300

プライバシーポリシー「COCOPStudio」

「COCOPStudio」では下記の機能を利用しております。

  • 画像/メディア/ファイル(USB ストレージのコンテンツの読み取り、USB ストレージのコンテンツの変更または削除)
    • 撮影した画像をストレージに保存するために利用しています
  • ストレージ(USB ストレージのコンテンツの読み取り、USB ストレージのコンテンツの変更または削除)
    • 撮影した画像をストレージに保存するために利用しています
  • カメラ(画像と動画の撮影)
  • アプリを用いて作成されるQRコードには以下の情報が含まれます。
    • ポーズのパラメーター

【Unity】スクリプトで生成するボタンのOnClick()設定

Unity : 2018.3.2

問題

ボタンのプレハブにOnClick()設定が反映されない!? f:id:NazzTea:20190202231210p:plain

やりたいこと

・ボタンを動的に作りたい。
・どのボタンが押されたか判別したい。
・OnClickに引数も渡したい。

コード

●ボタンに持っておきたいデータ

public class CharacterData
{
    public Texture2D thumbnail;
    public Texture2D Character2D;
}

●実行したい関数

    public void SetCharacter(CharacterData cData)
    {
        Debug.Log("★★★"+ cData.thumbnail);
        Debug.Log("★★★" + cData.Character2D);
    }

●ボタンアクションに実行したい関数をセット

CharacterData cData = new CharacterData();
・・・
Button button = ButtonPrefab.GetComponent<Button>();
button.onClick.AddListener(() => SetCharacter(cData));


結果

f:id:NazzTea:20190202232858p:plain


補足

キャラクターデータはこんな感じで持ってます。
f:id:NazzTea:20190204221403p:plain
Inspectorで管理がベストなんだろうか・・・最初にメモリに全部持ったりしてるんじゃないかなと思いつつなんか便利なので使ってみてます。 プレハブやサムネはそんなにメモリ食うものじゃないし、メモリがシビアなコンテンツでは無いのでこの管理で行こうって感じです。 プレハブが参照を全部持って来るとなるとVRMデータはやばい。 今回は思考停止してますが気を付けましょう。
f:id:NazzTea:20190204221224p:plain
あとはSetCharacter関数を書いて、スクリプトで作成したButtonのイベントリスナーに登録(AddListener)したらOK