「マジカルミライ」プログラムコンテストに入選したいので応募作品を分析してみた


この記事は、[大学ボカロ部 Advent Calendar 2021](https://adventar.org/calendars/6596)の8と10日目の記事です。

https://adventar.org/calendars/6596

# 初めに
初音ミク「マジカルミライ」プログラムコンテストとは、「創作」をテーマにした企画イベントである[マジカルミライ](https://magicalmirai.com/)にて去年から新たにスタートしたプログラマ向けの創作コンテストです。
楽曲やイラストに、これまでにない要素であるプログラムを加えることで、新たな技術とクリエイターの掛け算を作り、創作活動をより盛り上がらせることを目的に開催されました。

https://magicalmirai.com/2021/procon/

今回、[初音ミク「マジカルミライ 2021」プログラミング・コンテスト](https://magicalmirai.com/2021/procon/)へ筆者が初参加し、惜しくも入選を逃したものの来年こそは受賞を目指したいと思い、次回に向けてこれまでの応募作品と公式発表を分析し、**現在の作品の種類と課題点、評価される項目や要素、作品制作の心構え**を個人的にまとめました。

コンテストの理解を深めたい人や、来年のコンテストに挑戦してみたいという方はぜひ**アイデア出し**、**作品の磨き上げ等**にご活用ください。

コンテストの分析には以下の情報を活用しました。

* コンテスト応募ページ
    * [2020年度](https://magicalmirai.com/2020/procon/)、[2021年度](https://magicalmirai.com/2021/procon/)
* コンテスト応募者向けサポートページ
    * [2020年度](https://developer.textalive.jp/events/magicalmirai2020/)、[2021年度](https://developer.textalive.jp/events/magicalmirai2021/)
* 入選作品・受賞作品紹介動画
    * 2020年度 [入選作品](https://www.youtube.com/watch?v=-t9AVVgZo5k&t=2528s) [受賞作品](https://www.youtube.com/watch?v=Yz4Ucrw95bQ)
    * 2021年度 [入選作品](https://www.youtube.com/watch?v=hvmDxCeyWU8) [受賞作品](https://www.youtube.com/watch?v=MkILA_NC1T0)
* コンテスト応募者のGithubページ
* その他関係者Twitter等

## あらまし

* 作品の分類と課題点
    * 応募作品の種別分けとそれぞれの特性
* 選考に高評価の要素
    * 入選・受賞紹介で語られたキーワードまとめ
* 求められる作品とは
    * 結局どんな作品作ればいいのさ

# 作品の分類と課題点
入選・受賞作品紹介とコンテスト応募者向けサポートページから過去2回分の応募作品を体験し、それぞれの特性や表現の違いから、作品を**5つのパターンに分類**しました。
その上で審査、投票、難易度、着想の観点からそれぞれを◎～△で評価し、課題点を考察しました。
評価の詳細は以下の通りです。

* **審査**
審査基準を満たし、審査員の評価を得られやすいかであり、入選狙いを目指す際の指標です。
審査基準は以下の通り
    * **クリエイティビティ**：Webアプリケーションの演出が楽曲と同期して魅力的に見えるか
    * **イノベーション**：Webアプリケーションを支えるアイデアがユニークで、未来の創作文化を予感させるものであるか
    * **完成度**：Webアプリケーションが一般的なWebブラウザで正常に動作するか、実装が技術的に優れているか

* **投票**
入選後に行われるユーザー投票においてどれだけ投票を集めやすいかであり、受賞を目指す指標です。
主に「エモさ」「集客」「話題性」「親しみ」などなど　いわゆる一般ウケするか否かです。

* **難易度**
完成がどれぐらい難しいかを示します。
完成までに必要な「時間」「タスク量」「技術内容」などから判断しています。

* **着想**
過去作および他応募作品との違いを見出し、作りたい作品が思いつきやすいかを示します。
競合の少なさだけでなく、モチベーションの維持にも繋がる内容です。

なお、**分類と評価は筆者の経験や審査・投票結果から推測した個人的な意見**です。
人によって考えは異なるので、あくまで**目安程度**に捉えるようお願いします。

### ミュージックビデオ型
**審査：○ 投票：◎ 難易度：○ 着想：△**
本コンテストで用いられるTextAlive APIで想定された運用であり、一番応募数の多い分野です。
単なる映像表現だけに収まらず、曲や世界観に対し**没入感を深められることが最大の特徴**です。
この評価はピンからキリまでを含めた平均であり、作品によって審査も難易度も大幅に変わります。
この中でさらに分類分けができますが、今後のコンテストでさらに細分化されると考えたので、あえてひとまとめにしました。

これをさらに細分化すると

* **歌詞主体**

|[Lyric Trail/catLee さん](https://magicalmirai.com/2020/procon/entry/entry06)|[LyricTyper/GunseiKPaseri さん](https://gunseikpaseri.github.io/textalive_lyrictyper/)|[グリグリリック/Ryotaro Tsuda さん](https://magicalmirai.com/2020/procon/entry/entry09)|
|:-:|:-:|:-:|
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/2be9e64d-e229-5f89-a225-9b9c1bda802f.png)|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/6b64b7bd-6853-3611-d5f6-46f42fe8d580.png)|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/74bcf6bc-e09d-e4a2-868f-eaf63a292b0b.png)|
**審査：○ 投票：○ 難易度：◎ 着想：△**
歌詞を主人公に捉える、リリックアプリとして正に正統派。
TextAliveのサンプルプログラムがあまりにも強力であるが、作成は最も単純なので機能拡張がしやすい。

* **世界観主体**

|[Miku's Live/tokei39 さん](https://magicalmirai.com/2021/procon/entry/entry09)|[ポリリズみっく！/oki さん](https://magicalmirai.com/2021/procon/entry/entry10)|
|:-:|:-:|
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/de8e728b-c069-184c-b032-0127fa5db424.png)|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/59540ccf-2c41-1cbe-14a5-6f5b6cf19bf3.png)|
**審査：○ 投票：○ 難易度：◎ 着想：○**
制作者が持つ独自の世界観や感性を楽曲に込めた作品。
TextAliveの楽曲解析結果と上手に調和することができれば完成度が高まる。

* **映像表現**

|[打ち上げ花火/Zen さん](https://tikt4096.github.io/textalive/)|[tile & box/hittaito さん](https://magicalmirai.com/2020/procon/entry/entry05)|[Infinite Cyber Tunnel/CalcRobot さん](https://calcrobot.github.io/infinite-cyber-tunnel/)|
|:-:|:-:|:-:|
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/a53f0ac6-ada2-8d26-8e14-84c6228e32d7.png)|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/aaf993b0-9670-e938-2044-097760d6a15a.png)|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/3bca969c-a42a-482a-cf09-6eef357ae8e8.png)|
**審査：○ 投票：◎ 難易度：○ 着想：○**
3Dや図形などにランダム性のある動きを加えることで、新たな視覚的表現を目指したもの。
楽曲情報を元に無限の展開を作ることができる。

* **物語性**

|[キミを探す、夏/Ryotaro Tsuda さん](https://magicalmirai.com/2021/procon/entry/entry01)|[密かなるにじそうさく/倉重 みつき さん](https://denpaghost.github.io/magical-contest-2021)|[音譜の行進隊/takanosuke さん](https://magicalmirai.com/2021/procon/entry/entry06)|
|:-:|:-:|:-:|
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/2de1f1d3-88d1-5d98-0bfd-6ffcdc97f255.png)|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/6d9410f4-b7f9-9e25-1a7c-8458efb6e667.png)|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/f8cf2138-9abb-c603-af6b-0e4e06db55e8.png)|
**審査：◎ 投票：◎ 難易度：△ 着想：△**
曲全体を通して展開があり、ストーリーを感じ取れる作品。
長所はただひたすらにエモい。短所は正解がなく制作が安定しないこと。センスが問われる。

等が考えられます。紹介した作品でも複合している場合が多く、完全な分類分けが難しいです。
逆に言うと、自由な発想でいくらでも可能性を描ける。まさに**このコンテストを象徴する分類**だと思います。

### シミュレーション型
|[歌って頂いた。/minatty さん](https://magicalmirai.com/2020/procon/entry/entry02)|[光粒子とコトバの海/Kaku さん](https://magicalmirai.com/2020/procon/entry/entry08)|[みくばん - Mikuban/Teardrop さん](https://mikuban.netlify.app/)|
|:-:|:-:|:-:|
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/a01f90ab-3248-58c0-b6ad-415fe4caf17d.png)|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/6f1ccf29-ef68-cb26-d5da-3797e239f6c5.png)|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/2aaff175-48fc-fb08-caff-66f778c79393.png)|
**審査：◎ 投票：○ 難易度：◎ 着想：○**
操作パネルによってパラメータを変更することで、**ユーザーが自分の好みにアプリの表現内容を変更できる作品群**です。
MV型と似ていますがこの要素を加えるとユーザー向けからクリエイター向けに近くなり、機能要件も作品の方向性も大きく変わると考えて別分野にしました。
プログラム設計の段階でアプリのパラメータ変更を想定する必要があるもののアプリ開発の観点ではそこまで難しくないことに加え、審査員がクリエイターの目線を持っているので目指す価値は十分にあると考えています。
ただし、ユーザー投票においてはクリエイターは少数なので、他作品に遅れをとるかもしれません。
パラメータを**直感で操作できる等、操作UIへの工夫がカギ**となるでしょう。


### ゲーム型
|[Lyric Shooting!!/すぱりだ さん,やつはし さん](https://magicalmirai.com/2020/procon/entry/entry01)|[Voice Shooter/sakuramodki さん,すぱりだ さん,ななしお さん,HiroyukiIsoe さん,ya2ha4 さん,りおんぬ さん](https://magicalmirai.com/2021/procon/entry/entry03)|[TouchLyricWorld/huskyB4ll さん](https://husky21st.github.io/TouchLyricWorld/)|
|:-:|:-:|:-:|
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/91893cdf-81fe-b47c-b6ec-62dc38f703be.png)|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/22992800-83a2-24b9-b34b-de6129ce96a9.png)|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/5607d0e4-42b9-82c5-423d-084f49fa05cd.png)|
**審査：◎ 投票：◎ 難易度：△ 着想：◎**
TextAliveから得られる楽曲情報を元にゲームを構築した作品分類です。
特徴はユーザーからの入力を直接反映できるため**インタラクティブ性がMAX**な点であり、プログラマなら一度は夢見るゲームプログラミングなだけあって**着想もモチベーションも向上**が見込めます。
しかし、この分野は「表現の違い」より「クオリティの差」が出やすいだけでなく
ユーザー向けのゲームデザインを注視すると実装要件が跳ね上がり難易度が相応に高いのが難点です。
イラストや効果音など、**プログラム以外の分野が他より強く求められる傾向**にあるので、入選を目指す際には注意が必要です。
でもやっぱゲーム作るのもやるのも楽しいので、ぜひ一度は挑戦してほしいところ。

### プラットフォーム型
|[mmmapper/nolze さん](https://mmmapper.github.io/)|[配置 de PV/upc1712 さん](https://magicalmirai.com/2021/procon/entry/entry02)|
|:-:|:-:|
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/38693da3-242b-c3e8-4041-cee982d270ee.png)|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2316425/e01f53e5-abba-d4a5-46ef-7fb8edd228e4.png)|
**審査：◎ 投票：△ 難易度：○ 着想：○**
創作の実行環境を提供して**ユーザーのクリエイティブを引き出す効果を期待した作品**で、シミュレータ型との違いはあちらをMV調整が操作できる系とすると、こちらはMVそのものを作成できる系であり今流行りのメタ的な分野といえるでしょう。
想定するユーザーがさらにクリエイター向けとなり一般ウケがより難しくなるので、どこまでをユーザーが設定でき、どこまでをシステムがサポートするのか、**自由度と制約のバランス**が最も重要になると入選発表時に分析されていました。

### ミックスリアリティ型
**審査：△ 投票：？ 難易度：△ 着想：○**
画面という枠を超え、**端末のカメラやAR、その他周辺機器を活用した作品**です。
いまだ入選作品がないものの、2020年度ではARマーカーを使用したものや学研で過去に販売された[ポケットミク](https://otonanokagaku.net/nsx39/)の活用、2021年度では入選発表にてエキストラ紹介された [きさまさんのSan-Juke Box](https://youtu.be/hvmDxCeyWU8?t=3911)等、影で力を蓄えている存在でもあります。
入賞作品がない最大の理由は、**実行環境の依存率。**
最新技術が含まれる分、ブラウザや端末が対応していないことが多くユーザーへの普及と体験が難しいため入選が厳しい状況にあります。
主催運営によって**実行環境がある程度規定**されたら盛り上がるかも？今後に期待です。

### 今後の展開
第１回から２回にかけて、TextAliveの機能把握やコンテストの恒常化が見込まれたこと等により
クオリティが一気に跳ね上がった印象を筆者は持ちました。
恐らく、今後上記の**種別を複合させたような作品**が登場したり、目指されることが考えられます。
というか、すでに制作されています。[倉重 みつきさんの密やかなるにじそうさく](https://denpaghost.github.io/magical-contest-2021)はまさに、MV(物語性)型にゲーム型を掛け合わせた凄まじい作品でした。

ただ、必ずしもプラス思考がいい結果を産むとは限りません。機能を足すということは技術的に難しくなるだけでなく、**タスクが複雑になり完成が遠のく**ことになります。
プログラムに限らず、[やりすぎはよくありません](https://ja.wikipedia.org/wiki/KISS%E3%81%AE%E5%8E%9F%E5%89%87)。この種類分けが自身の力量と合致した作品作りの手助けとなればうれしいです。

また、クリエイターは**新しい表現を常に心掛けている**ので、この分類に収まらない全く新しい概念も今後誕生すると思います。
コンテストである以上、「評価される作品」が目標となるのは仕方のないことですが、入選なんか考えず、のびのびと発想を伸ばして**自分だけの作品を作る**のは全くもってありよりのはべりです。
独自性や競合を守るため、あえて予想は追記しません。あとは皆が勝手にどうぞ。

# 選考に高評価の要素
このコンテストでは、入選作品紹介の際にどの工夫点や表現が高評価に繋がったかを主催者と審査員自らyoutube liveで紹介いただけます。（ありがたい話です）
ここからは、アーカイブで閲覧できる作品紹介の動画から重要な発言をピックアップし、**入選の決め手となる要因や開発力の入れどころ等をまとめて列挙**します。
開発の行き詰り解消や作品の見直しにお使いください。

### 体験後の感想
まずは、良いアプリを体験した後に出てくる感想の発言集です。自分の作品を人に体験させ、以下の感想を思わせることができれば勝ちです。

* 遊んで楽しい
* 演出が気持ちいい
* 触りたくなる
* 何度でも遊べる
* 全編通して飽きない
* 開くたびに演出が変わった
* 触ったら面白さがよりわかる
* 普通のMVより没入できた
* 曲に介入できる
* 時間で変わった
* 曲の終わりのシメがいい
* オードソックスだけどいい
* 制作者の思いが感じられた

### 好印象の工夫点
制作者がユーザーに向けた作品の手間暇、いわゆる「凝った作り」の一例です。実装に時間と労力がかかりますが、審査はちゃんと、しっかり見ています。
経験則ですが、初めから狙うより実装してから付け加えるほうが上手く制作できたりします。

* 歌詞ごとに変化
* 曲ごとに変化
* 背景、色彩の変化
  * 「最初から最後まで」「何度でも」見たくなる作品に共通した要素です。
* ユーザーの操作に敏感に反応
  * ドラッグ、クリックでパーティクルが舞う等
  * あくまで引き立て役であることに注意
* オブジェクトのモーション
  * 速度に緩急やアニメーションを付ける(イージングのこと)
  * 画像にして動きを付ける等
    * シークバーを画像に置き換える～といった工夫もあります。
  * 3Dならキャラモーションを豊富にしたり
* 様々な実行環境への配慮
  * スマホ用や画面サイズへのマルチ対応のこと。
  * あくまで「できればより良い」要素です。対応してないからと言って審査が下がるような姿勢はありませんでした。下手に触って撃沈は避けたい。
* グローバル対応
    * youtube liveのコメントはその殆どが英語です。

### 楽曲解析結果の活用
コンテストで用いられるTextAlive APIの開発を行った産総研はコンテスト運営の協力を行っており、APIの機能を最大限活用した作品はどれも高い評価をいただいていました。
ここではTextAliveが楽曲を解析したときに得られる情報と、その活用例を挙げます。

* 楽曲情報
  * 制作者、曲名
* 歌詞のテキスト、品詞、タイミング情報
  * 形態素解析（文章を単語まで分解して意味や品詞を抽出する技術）
  * サンプルプログラムでは漢字だけ強調や名詞だけ色変え等をやっています。
* 音楽地図 （ビート、サビ、コード進行、感情値、声量の推定値）
  * サビで変化～は割と簡単かつ効果的なgood要素です。
  * 感情値は楽曲の快・不快度、活性度を数値で示した指標で、割と最近の論文で紹介されています。まだ有効活用したアプリはなかったはず。
* 埋め込みyoutubeビデオの効果的使用
  * [irihsさんのミクミク劇場](https://youtu.be/-t9AVVgZo5k?t=3060)や[うたろさんの君を探す夏](https://magicalmirai.com/2021/procon/entry/entry01)が良い例です。
* APIで提供してない独自機能をプラス
  * [周波数成分解析が埋め込まれた事件](https://youtu.be/hvmDxCeyWU8?t=2818)のこと。
* これらを組み合わせてなにかする
  * 関連させ、連鎖的に動かすなど。

### マジカルミライ要素
そして、コンテスト主催であるクリプトン・フューチャー・メディア、およびイベント母体であるマジカルミライの要素を加えることが作品の高評価に繋がるのは言うまでもありません。

* マジカルミライのテーマ
  * 2020年度「祭り」→　花火
  * 2021年度「ファンタジー」→　フラワー　など
  * 2022年度は10th anniversary 歴史的な要素がいいかも？
* ピアプロキャラクターズ
  * テーマカラー
     * 色彩に困ったら一考の余地あり
  * 持ち物
  * 記念日
  * 得意ジャンル・テンポ・音域 etc...
     * 大百科とか百科事典とか各自で見てくれぇ

### 良くない要素
逆にマイナスとして見られた内容です。
エキストラステージで惜しくも入選を逃した作品に対して、「ここを改善してくれたら・・・」といった発言をまとめました。

* バグが残っている
* ブラウザ互換、古い環境でしか動かない
  * 後のユーザー投票を見据えてのこと
* ゲームなのに目的やゴールがない
  * ゲーム型の場合「達成感」といった別のベクトルも必要
* 3D作品で酔ってしまった
  * 画角の変化、操作感に気を付ける
* 色彩が薄くノリきれない
* 変化に乏しい
  * しっとり系作品は特に注意


# 求められる作品とは
じゃあ結局どんな作品を作ればいいの？と恐ろし気な題名を付けましたが、
答えは**自分が作りたい作品を作ればいい**です。

これらの分析と要素は、「あればより良い。審査で入選しやすい」ものであり、「あってしかるべき、無くてはならない」ではありません。
誰かに評価される作品づくりにおいて重要なことは、**長所を伸ばすより短所を無くすこと**です。どれだけ頑張っても、バグが一つ蔓延るだけでその作品の評価はがた落ちすることになります。
機能を付け足すより、何を残すのかが大事です。

そして何より、**何よりも作品づくりに大切なことは作品を完成させること**です。
ここらで[私の応募作品のリンクを貼ります](https://mushroom8orz.github.io/DIVA-Lyrical-/)が、正直自分ではあまり納得のいかない出来でした。
しかし、今回参加したからこそ次回参加する意欲になりましたし、こうなったらトコトンまでやってやると作品を細かく分析してこのサイトを公開できました。
もし、このサイトで言われたことが作品づくりの足かせになるのなら、とりあえず考えは置いといて**自分が作りたいものを作りましょう。**

私は作品づくりをするとき、高頻度で作品の目標を見失ったり唐突にどうでもよくなったりするときがあります。
このサイトを作ったきっかけは、そんな自分が後で見返して発想の行き詰まりを解消したり自己を奮わせるためです。
題名とは裏腹にライバルを増やすような内容ですが、知ったことじゃないぜ。
おい知ってるか？2021年度の作品数は20！半分が入選！**5人に1人がミクさんお出迎えなんだぜ！！！！！**
**ぼくも欲しい！！！！！！！！**
次回にむけてｶﾞﾝﾊﾞﾙｿﾞｰ

# 終わりに
ここまでたっぷり、(割と自分勝手に)考察と分析を行ってきましたが、これができたのは応募作品に対して非常に高い熱意で紹介してくださり、そしてyoutube Live等で積極的に披露の機会を用意していただけたからです。
自分の作品が詳細に評価され、多くの人に触れてもらえる。
私が次回コンテストに参加したいと思う最大の要因になりました。
(個人的に、楽曲コンテストも受賞の決め手コメントとか一般投票があるといいなって思いました。ライブに組み込む以上難しいかもしれませんが。)
TextAlive開発、コンテスト運営協力の加藤さんと後藤さん。主催のクリプトン・フューチャー・メディア代表取締役の伊藤さんに、この場を借りて感謝申し上げます。

そして、このサイトを閲覧し次回のコンテストに挑戦したくなってきた皆さん。ここまで読んでいただきありがとうございます。
次合うときは戦いましょう。