デジゲー博2017に「ツミアゲタワー」を出展します
デジゲー博とは?
- 同人ゲーム、インディーゲームの展示・頒布のイベントです。
- 今年は11/12(日)に開催されます。
- 会場は秋葉原UDXです。
出展します!
- 場所は "C-08b" になります。
ツミアゲタワー
▲こんな雰囲気のゲームです。あなたはタワマンを作る職人になります。
ブースにお越しください!
- 初めてのイベント出展で不慣れではありますが、何卒宜しくお願いいたします。
- プレイしていただいた方にアプリアイコン缶バッチを差し上げます。先着です。
- 数に限りがあります(30前後)。予めご了承ください。
Unity1週間ゲームジャム(2017/08/21〜)に参加しました
今月はお休みする予定です...!! #unity1week
— 青木とと(ˊ~ˋ*) (@lycoris102) 2017年8月16日
.
.
.
.
.
.
.
.
見てたらやりたくなりました。て、てへ...
Unity1週間ゲームジャムとは?
- @naichilab さんの運営する unityroom というサイトで開催されたイベント
- 1週間でお題に沿ったUnity製のゲームを製作する
- 5回目である今回の課題は「フロー」
成果物「oneline」
oneline | 無料ゲーム投稿サイト unityroom - Unityのゲームをアップロードして公開しよう
今回もお疲れ様でした! | oneline | ゲーム投稿サイト unityroom #unity1week #oneline https://t.co/3iUTQ4mKpv pic.twitter.com/jJopBUbC56
— 青木とと(ˊ~ˋ*) (@lycoris102) 2017年8月27日
使用アセット
発想
最初作りたいと思ったものに近いのは @daiki_all さんのStream Flow です。
STREAM FLOW #indiedev https://t.co/JXyvQw1pH1 pic.twitter.com/QqCirtNHOw
— DAIKI (@daiki_all) 2017年8月29日
見た目綺麗ですし、加速した時の爽快感も含め、とても良いゲームです。こんな感じで線を操作してビル群を避けるようなゲームを作ろうと思ったのですが スタートも遅れたので、間に合うかなーと思った挙句断念。出来る限りのものを作る方向に舵取りを変えました。
また、ちょうどアイデアを考えていた頃に @kan_kikuchi さんの以下のツイートを見かけ...
明かりを付けるというより、光が当たっているかの判定や、影を作りたい場合等に超有用なアセットでした(:3っ)∋〜
— カン神巫女 -KAMIKO- (@Kan_Kikuchi) 2017年8月21日
「2D環境にて高品質な光と影の演出」
が出来ると謳われている2DDL Proを試してみた
【Unity】【アセット】https://t.co/PUzJCywPmf pic.twitter.com/MTGgcP1eP9
2DDL、即買いしました!!!!!!!
楽しい!| 「2D環境にて高品質な光と影の演出」が出来ると謳われている2DDL Proを試してみた【Unity】【アセット】 - (:3[kanのメモ帳]@Kan_Kikuchi https://t.co/cqx4lafxdE pic.twitter.com/ymU0xMmp5D
— 青木とと(ˊ~ˋ*) (@lycoris102) 2017年8月21日
この2DDLを使って、光と影が綺麗なゲームを作りたいなぁというのが今回のゲームの着想です。具体的な条件として「オブジェクトが多数登場する」と見応えありそうだと思ったので、今回のフローの条件と合わせて「砂/水のような物体がゴールに向かって流れていく」ゲームに倒しました。
ネタ被りお許しください…!! #unity1week pic.twitter.com/2n6qZsRkU4
— 青木とと(ˊ~ˋ*) (@lycoris102) 2017年8月22日
最初、直線で流すのがシンプルだと思っていたのですが、直線だと跳ね上げる動作がどうしても難しく自由度を制限してしまうため、フリーハンドに倒しました。逆にある程度制限が無いとゴリ押しができてゲームとして成立しないとも思ったので、一筆書きスタイルになりました。結局、一度引いた線の上を戻ることが出来るなど、制限として機能していなかったなぁとは反省。
2D物理演算周りの挙動
この辺りの技術を使いました。Unityの標準機能なので気軽に試すことができます。 (今回のゲーム中で使用したのはAreaEffector2D/PointEffector2D)
アイデア投下。昔作ったゲームですが BuoyancyEffector2D(浮力) を使うと簡単にXY軸ゲームで、水が流れるような動きを作ることが出来ます。 #unity1week https://t.co/Eq89VLbYJu pic.twitter.com/jwFvVqS57w
— 青木とと(ˊ~ˋ*) (@lycoris102) 2017年8月20日
AreaEffector2Dを地味に初めて使った。Collider2Dと一緒にアタッチし、Collider側の IsTrigger / UsedByEffector を有効にすることで指定した角度に対して力を働かせる君 #unity1week pic.twitter.com/qqy45k2yf1
— 青木とと(ˊ~ˋ*) (@lycoris102) 2017年8月24日
PointEffector2D ( https://t.co/zJbvr4qsui ) は中心点に対して引き付ける/引き離す力を設定できる。磁力/ブラックホール … etc #unity1week pic.twitter.com/GNal20WEFB
— 青木とと(ˊ~ˋ*) (@lycoris102) 2017年8月24日
頑張りましょう
- オリジナリティ
- 今回のアプリのような線引き物理演算パズルは既にストアには溢れ返ってる
- もう1歩オリジナリティを足せると良かった...
- パフォーマンス
- 一部結構雑に書いたところがあるので...
- レベルデザイン
- テストプレイ (主にしてもらうの) 大事
- 今回は妻に提出直前にプレイしてもらって、ギリギリで難易度調整を行なった
- その後も2回くらい調整したが、未だにクリアツイートを見かけない
- STAGE13が意地悪過ぎたので、もう少し軟化して良かった
- どこで離脱したかトラッキングしたい...
感想
今回で5回目の1週間ゲームジャムの参加になります。参加するたびにゲーム製作者の方と繋がれるの、いつも本当に嬉しく思います。
特に今回、Twitterで上で魅力的な作品を多く見かけたので、製作中もとても刺激を受けました。特に自分はイラスト周りは全然ダメなので、世界感のパワーを持つ作品はとても尊敬しています。
1週間ゲームジャム
— VeLTiNA@Pandoraid開発 (@veltina_soft) 2017年8月22日
とりあえずモック#unity1week#PixelArt pic.twitter.com/98R3qDKHyR
そして動画を貼り忘れる #unity1week pic.twitter.com/Me0wJUo7EV
— kumokera (@kumokera) 2017年8月25日
元気があったらこういう感じのつくるよ#unity1week pic.twitter.com/CD9D0FP5rr
— E.G. (@EdwardGeraldine) 2017年8月21日
#unity1week
— ライナ (@raina2395) 2017年8月23日
今日の進捗
移動の部分はとりあえずここまで、次はゲーム部分作っていこうかな pic.twitter.com/v5KqohNrtW
イメージ的にはこんな感じでいってみますがアセット間に合うのか…#indiegame #gamedev #unity1week pic.twitter.com/pG3hjOgkT1
— UMINEKO STUDIO (@UminekoStudio) 2017年8月21日
そんな中ですが、恐れ多くも人気TOP2位になれました。
今回アイコンもパッとしなかったので、あんまり期待してはいなかったのですが、Twitterでの進捗報告と第1回~4回にセルフブランディングできている結果かなとも思っています。自身のゲームクリエイターとしてのプレゼンスを上げるために参加しているところもあるので、このように評価していただけるのはとても嬉しくあります。感想や改善点などありましたら、頂けますと幸いです。
今回も @naichiさん、参加者の皆さん、ありがとうございました!
おまけ
ウォークスルー動画作りました。クリアできない方はどうぞ!ネタバレ注意!
【Unity道場】使って覚えるTileMap に参加しました
概要
イベント
Unity 2017.2bでUnityEditorに組み込まれたTileMap機能について講義/ハンズオン形式で学ぶイベント。 @tsubaki_t1 さん(テラシュールブログ) が講師を務めてくださり、更にハンズオンということでUnityスタッフが分からない部分を教えてくださる、至れり尽くせりな会でした。
会場
会場の「ベルサール六本木コンファレンスセンター」は「住友不動産六本木グランドタワー」の9階にあります。これまで渋谷のTECH PLAY SHIBUYA (旧dots.) で開催されることが多かったが、六本木の会場になってからは初参加。
着いた!(迷った) #unity道場
— 青木とと(ˊᗜˋ*) (@lycoris102) 2017年8月5日
迷いました。
資料
www.slideshare.net
内容
2D Experimental Preview
Unityにおける新機能は、クオリティ向上やバグを防ぐ目的で、いきなりリリースするのではなく、Experimental Buildという形式でユーザに試してもらうケースが多くなっている。最近 2D Experimental Preview で検証されている内容は以下を参照。
https://forum.unity3d.com/forums/2d-experimental-preview.104/ www.youtube.com
Experimental Buildの段階を経て、次はベータリリースされるが「TileMap」の機能は、先日リリースされた unity2017.2b に含まれている。
TileMapの使い方
おー、Tilemap出来た! #Unity道場 pic.twitter.com/HhGAFfj0d1
— 青木とと(ˊᗜˋ*) (@lycoris102) 2017年8月5日
上記でやっているのは以下の一連の流れ。
- TilePaletteの作成
- Window > TimePalette
- CreateNewPaletteを選択
- TileAssetの作成 (ワークショップでは対応済みだった)
- Textureの設定
- タイルマップに使用したい画像アセットを選択
- TextureTypeをSpriteに変更
- SpriteModeをMultipleに変更
- PixelPerUnitをタイル1枚における一片の長さを指定
- (FilterModeをPointにすると補間が無くなり、ドット感が増す)
- Spriteの設定
- SpriteEditorを開く
- Sliceでタイル毎に画像を分割 (GridByCellSizeを使うと楽)
- Textureの設定
- TilePaletteへの登録
- 先ほど設定したSpriteをTilePaletteウィンドウにドラッグ/ドロップ
- TileAssetをどこに保存するか聞かれるので適当に指定
- TileMapを埋める
- Hierarchy上で 2DObject > TileMapを選択
- 塗りたいTileMapオブジェクトをHierarchy上で選択
- (TileMapオブジェクト自体を複数生成できるため)
- TilePaletteから “ブラシ” (筆のアイコン) を選択
- 塗りたいタイルを選択
- Sceneビュー上のグリッドを選択して塗る
また、塗りたいタイルを回転させる手段は、マシン/バージョンによって微妙に異なるっぽい。正式リリース時のドキュメント化に期待。
TileAssetを選択して塗る際に “[“ で左回転 “]” で右回転できた (Unity2017.2.05b / mac) #unity道場 pic.twitter.com/t5rgKpL28k
— 青木とと(ˊᗜˋ*) (@lycoris102) 2017年8月5日
上記のフローにも記載したが、TileMapオブジェクトを複数用い、Order in Layerを変更することで、レイヤーを扱うことも出来る。
TileMapの上に何かしらのオブジェクトを配置したい場合は同一のTileMap上で処理するのではなく、TileMapをもう1つ生成し、Order in Layerを上げて上位に設置すると良い #Unity道場 pic.twitter.com/e73Ip2VwGC
— 青木とと(ˊᗜˋ*) (@lycoris102) 2017年8月5日
TileMap上にアイテムなどのオブジェクトを設置する際には、Grid以下に置くとGridに沿って移動させることが出来るのでオススメとのこと。
Memo: Grid以下に配置したオブジェクトは、Sceneビュー上ではグリッドに沿って移動/配置させることが出来る #Unity道場 pic.twitter.com/U0Jve4ajXN
— 青木とと(ˊᗜˋ*) (@lycoris102) 2017年8月6日
TileAssetと当たり判定について
TilePaletteにTextureを登録すると生成されるTileAssetをProjectで選択すると色や衝突判定を設定可。ColliderTypeは None(衝突しない) / Grid(マス目に衝突判定) / Sprite(Spriteの設定に準拠) #Unity道場 pic.twitter.com/c4x7HwvtSp
— 青木とと(ˊᗜˋ*) (@lycoris102) 2017年8月6日
Memo: TileAssetのColliderTypeをSpriteにしたときの当たり判定の領域は、SpriteEditor上で変更することができる #Unity道場 pic.twitter.com/M5JoCoGVTZ
— 青木とと(ˊᗜˋ*) (@lycoris102) 2017年8月6日
SpriteMaskと組み合わせると楽しい
SpriteMaskに関してはテラシュールブログ上の記事を参考に。 uGUIのMask機能がMaskコンポーネントを持つGameObjectの子要素に対してMaskが適応されるのに対し、こっちはSpriteRendererにおいてMaskの影響を受けるか/受けないかを設定する感じになった。 これをTileMapと組み合わせて、以下のようなものが作れた。
たーのしー! #Unity道場 pic.twitter.com/q6IjhfAEMj
— 青木とと(ˊᗜˋ*) (@lycoris102) 2017年8月5日
ProgrammableTile / CustomBrush
タイル描画時の挙動を改造することが出来る。今回は用意されたサンプルプロジェクトに付随された、AutoTileを使用した。これは、配置されたタイルの左右/上下のつながりの関係に応じて、どのタイルを利用するかを決めるというもの。 また ProgrammableTile を使えば、ランダムにタイルを配置することも、SpriteAnimationを適応することも可能。 また、CustomBrushを用意することで、TileMapの塗り方にパターンを持たせることが出来る (ランダムに配置したり、直線上に配置したり)。
以下がUnity公式が発表しているProgrammableTileのサンプルおよびサンプルプロジェクト。
今回の会について
上記の @RyotaMurohoshi さんの記事でも触れられている通り、1度説明後に講師の方を真似して一緒に作業するフロー/質問しやすい環境で、とても理解が進む会でした (MakerFaire/デザフェスと日程が被ったこともあり、あまり人数は多くなかった感じでしたが、ワークショップ形式であることを考えたらちょうど良い人数だったかも)
タイルマップ使って何か作ってみたいところではあるのですが、タイルマップの弱点は素材が整わないと何も出来ないというところ… 何かフリーの素材漁ってみようと思います。
参加者のみなさん、講師の椿さん、ユニティスタッフのみなさん、ありがとうございましたー! (あと個人的にですが、椿さんに1週間ゲームジャムの実況ありがとうございました!ってお伝えすることができて良かった….)