ハクソク

世界を動かす技術を、日本語で。

WatchOSでの地図の完璧な仕上げに6年を費やす

概要

  • **Pedometer++**のApple Watch向け地図機能開発の6年間の歩み
  • watchOSでの地図体験向上のための課題と解決策
  • カスタム地図エンジンやデザイン試行錯誤の詳細
  • Liquid Glassやダークモード対応のための地図刷新
  • MapKitを採用しなかった理由と独自性の強調

Apple Watchでの地図体験開発の旅

  • 山岳地帯や人里離れた場所での冒険を愛する筆者の実体験
  • 安全なナビゲーションのためには、定期的な現在地確認の習慣が重要という発見
  • 手首の地図が最良の方法との結論
  • Apple Watch向け最適な地図体験を目指し、6年以上にわたる開発
  • Pedometer++ 8にて、長いデザインの旅が集大成を迎えた実感

初期の取り組み

  • Apple Watch初期から手首で使える良い地図を求めていた
  • watchOS 6でSwiftUIが登場し、本格的なアプリ開発が可能に
  • 当初はサーバー生成地図を利用し、ワークアウトデータを都度送信する仕様
  • アイデア検証には役立ったが、オフライン利用や実用性の面で限界

カスタム地図エンジンの構築

  • SwiftUIネイティブの地図描画エンジンを独自開発
  • タイル型地図や位置情報のオーバーレイ表示に対応
  • 2021年には安定したパフォーマンスで地図描画が可能に

デザインの試行錯誤

  • watchOSの小さな画面での地図とワークアウト情報の両立が課題
  • モーダル切替型UI」を採用し、地図画面とメトリクス画面をボタンで切替
  • しかし、UI構造や操作性に妥協感が残り、再設計を繰り返す
  • メトリクスを画面下部に配置する案や、カスタマイズ可能UIも検討
  • watchOSの原則として、複雑な設定や長時間の操作は避けるべきという結論

Liquid Glass・カートグラフィー・ダークモード対応

  • watchOS 26でのLiquid Glass導入を受け、地図の見栄えに新たな課題
  • 既存のThunderforest OutdoorsベースマップがLiquid Glassと相性が悪い
  • カートグラファーAndy Allenと協力し、新しいカスタムベースマップを作成
    • 視認性向上のため、要素のコントラスト強化・彩度アップ
    • ダークモードにも対応し、特にwatchOSでの可読性を重視

最適なデザインへの到達

  • デザイナーRafa Condeの協力で新たな視点を獲得
  • メトリクスを左上に重ねるレイアウトと、地図が縦スタックのトップページとなる設計
  • 地図のインタラクションは**「ブラウズモード」**へのタップで切替
  • プロトタイプを実地検証し、数百マイルの徒歩テストで有用性を確認
  • フォントや細部の調整を経て、最終的に納得できる美しいデザインへ
  • 6年間の努力と学びの結晶として、プラットフォームに最適かつ独自性のあるUIを実現

MapKitを採用しなかった理由

  • AppleのMapKitの登場以前から独自地図開発を継続

  • MapKitは基本機能には優れるが、柔軟性やカスタマイズ性に制限

  • watchOSのMapKitは常にダークモード表示で、ユーザー選択やアクセシビリティ面で不十分

  • アニメーションやオーバーレイの自由度も限定的

  • 地形やトレイル情報の充実度で独自地図に軍配

  • カスタム地図の強みとして、詳細な情報表示や独自デザインを実現

    • 例:スコットランドのトレイルヘッドでの地図比較で、独自地図の情報量が圧倒的
  • カートグラファーとの共同作業によるユニークな開発体験

まとめ

  • **Pedometer++**のApple Watch地図機能は、独自開発・デザイン最適化・実地検証を経て完成
  • ユーザー体験・視認性・使いやすさに徹底的にこだわった設計
  • MapKitに頼らない独自路線で、唯一無二の地図体験を提供

Hackerたちの意見

pedometer++のユーザーとして、デイビッドが何年もかけて維持してきた細部へのこだわりには驚かされるよ。本当に進化がすごい。
彼は本当に熱心で献身的な開発者だよね。これがその完璧な例だよ—「カスタムマップを依頼した」って、つまり地図製作者を雇ったってことなんだけど、Widgetsmithで大成功したのは、Watchsmithに努力を注いだからだし、ウィジェットの世界的な専門家だったんだよね。彼に起こるべきことだったよ。
これは興味深いね。情熱的で才能のある開発者だってのは明らかだけど、主な機能がステップトラッキングみたいで、iPhoneはデフォルトでそれをやってるよね。Pedometer++のステップカウントは、何か特別に正確なのかな?
Apple WatchにApple製のハイキングや地形マップがないのは、マジで失敗だよね。「探検家向け」に作られた一番高いWatch Ultraにもないし。gpxインポートなんて夢のまた夢。結局、ライフスタイルデバイスなんだけどさ。
正直、Apple製のアプリが少ない方がエコシステムやアプリの質にとって良いと思う。最近のAppleの「シャーロック」アプリは全然質が良くないけど、サードパーティが今のデフォルトのオファリングと競争するのをかなり難しくしてるよね。
iPad用の計算機アプリを作るのに10年以上かかったんじゃなかったっけ?
そうなの?他のアプリを動かせるプラットフォームがあって、TFAや他のアプリがその機能を提供してるんだよね。
アウトドアマッピングアプリの開発とサポートに関しては、Appleよりもデイビッド・スミスやonXみたいな企業の方が信頼できるな。
Apple Watchは何でもできるようにしようとしてるけど、特定のアクティビティをすごく得意にしてるわけじゃないよね。何年も使って3台のApple Watchを試したけど、去年10を売っちゃったし、もう買うつもりもない。代わりにCorosを買ったけど、結構満足してる。将来的にはGarminも考えてる。CorosやGarminのデバイスはアクティビティを意識して作られてて、Uberみたいな余計なアプリは入ってないしね。GarminとCorosは地図機能もあるし。
> Apple Watchに1stパーティー製のハイキングや地形マップがないのは大失敗だよね。Appleが人気アプリの機能をOSに統合したことで非難されていた時代を思い出す。Appleは素晴らしいデバイスを作ったけど、そのポテンシャルをフルに活用するのは市場次第だよ。そんなアプリを作らないことがAppleにとって失敗になる理由は何?
他の人が気になってるかもしれないけど、彼は地図製作者を雇って、Apple Mapsにはないハイキングトレイルなどの詳細が入った大きくて見栄えのいいカスタムマップ画像を作ったみたい。Apple Mapsは動的にレンダリングされるけど、彼のは基本的に画像タイルを表示するんだ。見た目が良くて詳細なマップになるけど、ズームレベルごとに別々のダウンロードが必要になったり、回転や更新の面で影響が出るんだよね。
これ、実は無理かもしれないね。AppleはApple WatchのMetalグラフィックスAPIへのアクセスをサードパーティの開発者に提供してないから。
地図製作者を使って別々のデザインを生成することと、そのデザインをレンダリング/配信するための技術は全く別の問題だよ。彼の元の地図プロバイダーは、ベクターとラスタタイルのサービスを両方提供してるよ:https://www.thunderforest.com/maps/outdoors/ 一般的なパターンは、ベクタタイルサービスとスタイル定義を直接使うか、必要ならラスタタイルを生成することだね。
WatchOSのApple Mapsは結構いいけど、いつもルートを設定して自転車に乗ると、3分後に「運動してる?」の画面が出てきて、止まらないと地図が見えなくなるんだよね。あの画面は通知に変わるか、しばらくしたら静かに記録するべきだと思う。Appleの人たちがこれに取り組んでるって聞いて驚いたよ。絶対にこの問題に直面してるはずだし。もし彼の地図がなんとか画面を取っておけるなら、俺にとってはすごい機能だと思う。ただ、App Storeのページをちらっと見たけど、どの機能がサブスクリプション制でどれがそうでないのかがよくわからなかった。設定するまで教えてくれないアプリは本当に嫌いだし(事前にわからなかったのがすごくイライラする)、多分我慢して手動で運動を始めることを思い出すようにするよ。
「運動してる?」機能はオフにできるよ。ワークアウトの設定の中にあるから、「チェックインリマインダー」をオフにしてね。
すごい進化のストーリーだね!デザインの枠を超えることで何が達成できるかを見るのも好きだし、センターに寄せた対称的なUIもいいよね。Apple Watchが欲しくなっちゃう ;) 余談だけど、記事にグレンコーのヒドゥンバレーのスクリーンショットがあって、そこはスコットランドでお気に入りの短いハイキングコースの一つなんだ。ちょっと悲しい余談として、その谷のふもとにある家があって、通り過ぎるたびに夢見心地で見てたんだ。いつも閉まってて、山の間のひっそりした場所にあるんだよね。住むにはすごい場所だなって思ってた。ハイキングのための公園は、道を数百メートル上ったところにあったんだ。数年後、ルイ・セローのドキュメンタリーでその家を見かけたんだけど、彼がその家の持ち主であるテレビパーソナリティのジミー・サヴィルと一緒に行ったんだ。驚いたよ。そしてまた数年後、オーストラリアに戻った後に、サヴィルがイギリスで最も多くの子供や性的な被害者を作った人物だと、死後に明らかになったんだ。恐ろしい話だよね。スクリーンショットの地図の上部には、そのコテージの名前と形が実際に見えるよ。
時計の静的タイルは正解だね。制約のあるデバイスでダイナミックレンダリングを試したことがあるけど、パンやズームが毎フレームGCのポーズに食われちゃったんだ。
watchOSにはGCがないんだよ、ARCを使ってる。
これを読むのがすごく楽しかった!たくさんね。インターネットの初期の頃に技術系ブログを読んでたティーンエイジャーの頃を思い出すよ。ところで、地図製作者を雇ったり委託したりする最後の一文、めっちゃかっこいいね :~)
知らない自然のエリアにいることが多いから、ポケットからスマホを取り出して自分の位置を確認するんだ。時計は心拍数を測るだけ。それはそれでいいんだけど、正確に自分の位置を確認するために大画面のワークフローから切り替える気にはなれないな。5分ごとに位置を確認する必要もないし、通常は30分ごとかそれ以上だし。うーん、もしかしたら何か見落としてるのかも :shrug:
素晴らしい仕事だね、ほんとに。(でも、私はGarminを使い続けるよ。)
これは外部の視点からの意見だってことは分かるけど、「Pedometer++ 8」って「Dissertation_final_final_v8.docx」みたいに聞こえるな。