第38話 未来のスマホを待たない
十月の朝、悠の自室のデスクには昨夜オフィスから持ち帰った数枚のメモが広げられていた。
そこには、国内の通信キャリア三社が現在展開している携帯電話端末の画面解像度、ブラウザのキャッシュ容量、対応している画像フォーマットの一覧が、成瀬の几帳面な字で書き出されている。
灰皿の縁に置いた煙草から紫煙が細く立ち上り、脇のマグカップからは淹れたてのコーヒーの湯気が揺れていた。一口すすったコーヒーの苦味が頭を覚醒させるなか、悠はボールペンを手に取り、メモに並んだ細かい数字の羅列へ視線を落とした。
数年後には全面タッチパネルのスマートフォンが普及する。だが、それまで待つつもりはない。今のうちに携帯市場で利用者を集めて共通IDと決済を生活の一部として定着させ、将来そのまま新しい端末へ連れていけばいい。
悠はペン先を動かし、メモに並ぶ百種類以上の機種の中から、画面比率やキャッシュ上限の数値が近いものを線で結び、余白に印をつけていった。
大手であっても、これだけ分岐した端末の癖に阻まれて大量の作品を同時に展開できずにいる。ならば、この複雑な端末差を仕組みで乗り越えること自体が、他社には真似のできない参入障壁になる。
悠はメモの下部に、現在の制作から公開までの作業工程を書き出し、手作業の修正工程に大きくバツ印を引いた。制作側が機種ごとの対応に追われている限り、作品が増えるほど納期は厳しくなる。今日からこの流れ自体を根本から変える必要があった。
書き終えたメモを折りたたんで鞄に収めると、悠は短くなった煙草の火を灰皿に押し当てて消した。
★★★★★★★★★★★
午前十時前、悠がネクサスのオフィスへ足を踏み入れると、開発エリアの中央に置かれた検証用の長机には、昨日と同じように十数台の携帯電話がずらりと並び、充電ケーブルが蜘蛛の巣のように這っていた。
成瀬はモニターに映し出された通信ログと実機の画面を交互に睨み、その隣では、午前中の講義がない時間を使って出てきた雫が、ノートパソコンの画面を開いてデータの修正作業に追われている。
「おはようございます。成瀬さん、天海さん、朝早くからありがとうございます」
悠が声を掛けると、二人が同時に顔を上げた。成瀬の目元には少し疲れが滲んでおり、雫もペンタブレットのペンを握ったまま、申し訳なさそうに眉を下げた。
「おはようございます、神崎さん。昨夜から古い端末向けに背景のパーツを削った軽量版を作ってみているんですが……どうしても色の階調が潰れてしまって、まだ全機種の確認までは終わっていません」
「そこへ、朝から別の版権元様からも追加の原稿データが届いています」
書類の束を抱えて歩み寄ってきた結城が、困ったように苦笑いを浮かべた。
「先週まとまった中堅出版社様と映像制作会社様の分です。契約自体は順調に増えていますが、今朝、成瀬さんから実機での表示確認が難航していると聞きました。現場の検証ラインがこの状態だと、来週以降の公開スケジュールを少し後ろへずらす交渉が必要になるかもしれません」
「いえ、公開スケジュールは予定通りで行きましょう。せっかく各社と正式に契約を結んで公開日を決めたんですから、最初の配信から約束通りの日程で出して、信頼を積み重ねたいところです」
悠はジャケットを脱いで椅子の背に掛け、鞄から取り出したメモを長机の上に広げて雫へ向き直った。
「天海さん。まず、古い機種のために天海さんたちがイラストの描き込みを減らしたり、機種ごとに別々のデータを作り直したりする作業は、今この瞬間からやめにしましょう」
「えっ……? で、でも、そのままのデータだと、古い端末や別キャリアの機種では正常に表示されなくなってしまいます」
戸惑う雫へ、悠は穏やかな笑顔を向けた。
「天海さんたち制作チームには、一番表現力の高いマスターデータを一つだけ作ってもらいます。作品の世界観や色彩を削る必要はありません。機種が増えるたびにクリエイターが描き直すのではなく、元のデータを一つ作れば、あとはシステム側で自動的に対応できるようにしたいんです」
悠はそこで言葉を区切り、隣に立つ成瀬へ視線を向けた。
「成瀬さん。制作側の負担を増やさずに、この端末差をシステム側で吸収する方法はありませんか」
問いかけられた成瀬は、悠がメモに引いた分類線に目を留めた後、長机に並んだ端末群と自分の手元の仕様書を交互に見比べた。数秒ほど思考を巡らせると、長机の脇にあるホワイトボードの前へ歩み寄り、黒のマーカーを手に取った。
「……やり方はあります。今は百種類以上ある端末を一台ずつ別々に扱っていますが、中身のブラウザの描画仕様とメモリ上限、画面比率の三つを基準にすれば、市場に出ている端末は五つか六つのグループに分類できます」
成瀬はホワイトボードに大きな枠を描き、そこから五本の矢印を伸ばした。
「五、六種類まで減らせるとして、そこから先は?」
「現在、端末側のブラウザで処理させている部分をサーバー側に移します。今、一部の端末で表示が崩れているのは、複数の透過画像や特殊なレイアウトを端末側で重ね合わせようとしているからです」
成瀬はマーカーを動かし、既存の圧縮・振り分けエンジンの図の手前に、新しい処理枠を書き加えた。
「天海さんたちが作った多層レイヤーのマスターデータを、配信する前のサーバー側で、端末グループごとに最適な一枚の画像へ事前に合成して書き出してしまう仕組みにします。漫画のビューアも同じように、特殊なコマ割りや吹き出しの文字まで含めて、サーバー側で各グループの画面幅に合わせてレンダリングしたコマ画像を自動生成して振り分けるんです」
「それなら画像の容量はどうなります?」
「各グループのキャッシュ上限に合わせて書き出しますから、既存の振り分けエンジンの判定ロジックを活かしたまま、前処理の変換モジュールを足すだけで対応できます。レイヤーの座標ずれも起きませんし、端末側のメモリ消費も最小限で済みます。ただ、最終的な実機での確認は必要です」
自ら設計の筋道を組み立てながら、成瀬の声に技術者としての熱が戻ってきた。悠はホワイトボードの図を見つめ、もう一つの課題を口にした。
「実機の確認も減らせますか? 百種類以上の実機で人間が目視確認するとなれば、結局そこがボトルネックになってしまいますが」
「代表機種に絞れば、かなり減らせます」
成瀬は長机の上に並んだ十数台の携帯電話の中から、昨日表示が崩れていた三台を指差した。
「まずパソコン上で、各端末グループのメモリ上限と画面サイズを擬似的にチェックする簡易プログラムを一つ噛ませて、数値上のエラーを自動で弾きます。そのうえで、人間が最後に目視で確認するのは、各グループの中で一番メモリ制限が厳しくて画面の癖が強い『境界になる代表端末』の一台ずつに絞るんです」
後ろで聞いていたエンジニアたちも、成瀬の言葉に顔を上げてホワイトボードへ視線を集中させた。
「一番条件の厳しい代表端末で正常に表示されれば、同じグループの他機種でも問題が起きる可能性はかなり低くなります。ただ、それでも機種固有の描画差は残るので、そこは例外として記録し、個別処理を追加できる仕組みを残しておけば対応できますね」
悠はホワイトボードの図を見つめ、力強く頷いた。
「分かりました。その方針で進めてください。実装にはどのくらいかかりそうですか?」
「各キャリアの端末仕様書は手元に揃っていますから、今日中にグループ分類の定義テーブルを作ります。事前合成とコマ切り出しの変換モジュールも、既存の画像処理ライブラリを流用すれば三日あれば実装できますよ」
「頼もしいですね。必要な検証機材や追加のサーバーリソースがあれば、遠慮なく言ってください。予算はすぐに確保します」
悠がそう応じてから視線を移すと、雫がぱっと表情を明るくして背筋を伸ばした。
「あの、神崎さん、成瀬さん! ということは、来週公開分のコラボ衣装も、最初のデザイン案のまま細かい装飾を残して進めてもいいんですか?」
「もちろんです。天海さんが一番いいと思う形で仕上げてください。せっかくのコラボですから、元の作品のファンが見ても驚くくらいのクオリティで出しましょう」
「はい! ありがとうございます。すぐに制作チームの皆にも伝えて、一番いいデータで仕上げます!」
雫は制作チームの席へ駆け戻った。結城も手元のスケジュール表に目を落とし、安堵したように息を吐いた。
「公開延期にならずに済むなら何よりです。では私は、来週以降の配信ラインナップの確定連絡を各社へ入れてきます」
それぞれの持ち場へ散っていく仲間たちの背中を見送りながら、悠は成瀬がホワイトボードに描いた設計図をもう一度見上げた。
あと三日で、新しい変換モジュールと検証ラインが組み上がる。これが稼働を始めれば、手元に積み上がっている大量の新作タイトルを世へ送り出す準備が整う。
★★★★★★★★★★★
それから四日後の午後。
開発エリアの長机の前には、再び悠、成瀬、雫、そして結城が顔を揃えていた。
机の上に置かれているのは、十数台の端末ではない。成瀬が分類した六つの端末グループを代表する、わずか六台の携帯電話だけだった。その中には、先日表示が崩れていた少し古い機種や、別キャリアの端末も含まれている。
「既存のエンジンへの変換モジュールの組み込みと、端末グループの定義が完了しました。今、天海さんたちから上がった来週公開分のマスターデータを流し込んでいます」
成瀬がキーボードのエンターキーを叩いた。
サーバー側でマスターデータが瞬時に解析され、各グループの画面サイズとメモリ上限に合わせた画像へと自動で変換・合成されていく。パソコン上の簡易チェッカーがすべてのグループで「エラーなし」の緑色のランプを灯した直後、長机に並んだ六台の携帯電話の画面が一斉に書き換わった。
雫が一番古い端末を手に取った。
「……出てます! 全部、綺麗に出てます!」
雫の弾んだ声がオフィスに響いた。
最新機種はもちろんのこと、先日まで背景レイヤーが無惨にずれていた古い端末の画面にも、繊細なグラデーションを保ったままコラボ衣装のアバターがくっきりと表示されている。赤いバツ印が出ていた別キャリアの端末でも、メモリ制限に引っかかることなく、新しい漫画ビューアの特殊なコマ割りと吹き出しのセリフが枠内にぴたりと収まっていた。
「しかも、一枚の最適な画像データとして配信される分、古い端末での読み込み速度も以前より目に見えて速くなっています。通信環境が多少不安定な場所でも、これならストレスなくページをめくれますよ」
成瀬が満足げに言い、古い機種の十字キーを操作して画面をスクロールさせて見せた。ページを送る動作も軽快で、引っかかりは一切ない。
「すごい……! 削ろうか迷っていた衣装の細かいレースの模様も、背景の淡い光も、古い画面でちゃんとそのまま見えています」
瞳を輝かせる雫の隣で、結城も感心したように六台の画面を見比べていた。
「これまで一タイトル当たり数日かかっていた表示確認が、この代表端末のチェックを軸に回せるようになれば、受け入れられる作品数の上限が一気に跳ね上がりますね。ちょうど今週、追加で契約した出版社様から初期配信用のデータがまとまって届いていますが、すぐに対応できますか?」
結城の問いに、成瀬は画面から視線を上げ、落ち着いた口調で応じた。
「変換処理自体は問題ありません。ただ、まだ代表の六台で確認しただけですから、いきなりすべてを流し込むのは避けたいところです。まずは何タイトルか先行してラインに乗せて、実環境での表示とサーバー側の変換負荷を見させてください」
「なるほど。来週以降の公開スケジュールには間に合いそうですか?」
「今のところ大丈夫です。先行分で例外的な表示崩れや負荷の偏りが出なければ、そのまま順番に数を増やしていけます」
確実な手順を踏もうとする成瀬の言葉に、悠は深く頷いて三人の顔を見渡した。
「分かりました。では、まず成瀬さんのところで先行分の確認を進めてもらって、問題がなければ待機していた新作タイトルとコラボ企画を順次公開へ回しましょう。結城さん、その段取りで配信スケジュールの調整をお願いします」
「承知しました。すぐに手配します」
★★★★★★★★★★★
さらに二日後の夕方。
先行投入したタイトルでの安定稼働が確認されたオフィスでは、拡大した変換ラインを通じて、待機していた人気漫画や新規コラボアバターの公開処理が次々と進められていた。
結城が印刷された配信進行表のチェック欄にペンで印をつけながら、悠のデスクへ歩み寄ってきた。
「神崎さん、本日予定していた新規五タイトルと連動アバターの公開がすべて完了しました。先週までは一日に一タイトル確認するのがやっとでしたが、今日は午前中だけで全件の検証が通っています。版権元の担当者様からも、予定通りの同時公開に感謝の連絡が入りました」
「ありがとうございます。成瀬さん、サーバー側の変換負荷や端末のエラーはどうですか?」
悠が声を掛けると、モニターに向かっていた成瀬がアクセス解析のウィンドウを開いたまま振り返った。
「変換サーバーの負荷は想定の範囲内で安定しています。例外処理が必要なマイナー機種も二つほど見つかりましたが、先ほど個別定義を追加して対応済みです。それより、これを見てください」
成瀬が画面のグラフを指差した。悠が隣へ歩み寄って覗き込むと、機種別のアクセスログの数値がリアルタイムで更新されていた。
「昨日の夕方から、二年前に発売された旧世代の端末と、これまでうちで比率の低かった別キャリアの機種からのページ遷移率が急激に跳ね上がっています。これまではトップページに来ても、漫画ビューアやアバター画面を開いた段階で表示崩れや読み込み遅延が起きて離脱していた層です。そこが途中で落ちずに、最後の一ページまで読み切るようになっていますね」
「確かに、古い機種からの滞在時間が目に見えて伸びていますね」
その時、制作スペースの方から雫の明るい声が上がった。
「神崎さん、成瀬さん! 公開されたばかりの作品掲示板に、読者の方から感想がたくさん書き込まれています!」
雫がノートパソコンを抱えて小走りにやってきて、画面を悠たちへ向けた。
画面の掲示板には、新しく公開されたばかりのコラボ衣装を着たアバターのアイコンが並び、次々と新しい書き込みが追加されていた。
『前の機種だから無理かと思ってたけど、自分の携帯でもカラーで綺麗に読めた!』『コラボ衣装のレースの模様まで細かく見えてすごい』
『隣の席の友達にも教えて一緒に登録した』
雫が画面の文字列を指先で辿りながら、嬉しそうに頬を緩めた。
「大学の友達にも、少し前の携帯を使っている子が多いんです。そういう人たちにも、妥協しないままの絵をちゃんと届けられたんですね」
「ええ。天海さんたちが細部まで描き込んだからこそ、小さな画面でもこれだけ喜んでもらえるんです」
結城も掲示板の書き込みとアクセスログの数値を交互に見比べ、納得したように頷いた。
「友達に教えた、という書き込みがいくつもありますね。対応端末の壁がなくなったことで、口コミの広がる範囲が一気に広がっています」
悠が視線を上げると、オフィスの壁際に設置されたモニターでは、一時的に緩やかになっていた新規登録者数のグラフが、夕方に入ってから再び鋭い角度で右肩上がりの曲線を描き始めていた。




