ポスターセッション紹介:クォータニオンをiOSのsimdモジュールで扱う

856 Views

August 14, 24

スライド概要

【非公式】iOSDC Japan 2024 プレイベント 〜パンフレット記事&ポスター編〜 - connpass
https://yumemi.connpass.com/event/326212/

#iOSDC のパンフレット記事とポスターセッションの話をしました #yumemi_grow - usami-kの日記
https://usami-k.hatenablog.com/entry/2024/08/14/223745

profile-image

https://usami-k.github.io/

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

ポスターセッション紹介:クォータニオンを iOS の simd モジュールで扱う 宇佐見公輔 2024‑08‑14 株式会社ゆめみ

2.

自己紹介 • 宇佐見公輔 • 株式会社ゆめみ ‣ iOS テックリード • iOSDC Japan 2024 ‣ パンフレット記事執筆 ‣ ポスターセッション 1 / 14

3.

今日の内容 1. パンフレット記事の紹介 2. ポスターセッションの紹介 3. ポスターの内容をざっくりと 4. ポスターの制作 5. まとめ 2 / 14

4.

パンフレット記事の紹介

5.

記事の PDF を公開中 パンフレット記事の PDF を BOOTH で 公開した。 iOS アプリ開発のいま:基礎知識から 業務レベルのツールまで ‑ Type D4 Lab ‑ BOOTH パンフレット記事の紹介 3 / 14

6.

記事の内容 エンジニアの採用に関わることが多く、こういう情報がまと まっていてほしいと感じたので書いてみた。 • 業務レベルのアプリ開発でどんな知識が求められるか • 主に iOS アプリ開発を仕事にしたい初学者向け 今後、内容をもっとブラッシュアップしていきたいので、感想 や意見をフィードバックしてもらえると嬉しいです! パンフレット記事の紹介 4 / 14

7.

パンフレット記事の制作 今回、パンフレット記事の制作では、江本さんが作成された Vivliostyle のテンプレートを活用した。 A4 サイズのパンフレット向けのレイアウトは意外と難しいの で、テンプレートを活用するのが良さげ。 (全員が同じレイアウトである必要は全然ないけど、一定以上 の品質はほしい気持ち) パンフレット記事の紹介 5 / 14

8.

ポスターセッションの紹介

9.

ポスターの概要 3 次元回転とクォータニオン:iOS の Accelerate フレームワー クでの実践 3 次元グラフィックスの基礎を知りたい iOS アプリ開発者向け • クォータニオンの基礎 • simd モジュール • 滑らかな回転アニメーションの実現 • SceneKit で回転を描画する実例 ポスターセッションの紹介 6 / 14

10.

この内容を扱った動機 次のような点に普段から関心があり、まとまった形のアウト プットにしてみたいと感じた。 • 数学的な側面 ‣ クォータニオン(四元数) ‣ 3 次元回転 • iOS 的な側面 ‣ Accelarate フレームワーク ‣ 3 次元グラフィックス ポスターセッションの紹介 7 / 14

11.

ポスターの内容をざっくりと

12.

クォータニオン 複素数を拡張した数。虚数単位が 3 つある。 𝑥0 + 𝑥1 𝚒 + 𝑥2 𝚓 + 𝑥3 𝚔 𝚒2 = 𝚓2 = 𝚔2 = −1 𝚒𝚓 = −𝚓𝚒 = 𝚔 𝚓𝚔 = −𝚔𝚓 = 𝚒 𝚔𝚒 = −𝚒𝚔 = 𝚓 • 複素数を使うと、2 次元平面上の回転を記述できる • クォータニオンを使うと、3 次元空間上の回転を記述できる ポスターの内容をざっくりと 8 / 14

13.

Accelarate フレームワークと simd モジュール Accelarate:Apple が提供する数値計算ライブラリ群 • 機械学習:BNNS • 画像処理:vImage • デジタル信号処理:vDSP • ベクトルに対する関数演算:vForce • 線型代数:BLAS / LAPACK / Sparse Solvers simd モジュール:Accelerate の一部 • ベクトルや行列の演算のための型と関数 • CPU のベクトル処理機能を使って効率的な演算 ポスターの内容をざっくりと 9 / 14

14.

滑らかな回転アニメーションの実現 3 次元回転の処理は、線型代数の行列計算でも書ける。 しかし、クォータニオンを使うと、 • 回転の補間計算が容易になる • つまり、回転の途中経過の計算が容易になる そのおかげで、回転アニメーションの途中経過が描画できる。 実際に SceneKit で実装してみると視覚的にわかりやすい。 ポスターの内容をざっくりと 10 / 14

15.

ポスターの制作

16.

ポスターの形式 次のどちらかが選べる。 • A4 サイズのスライド 10 枚(原稿提出) • A0 サイズのポスター 1 枚(自力で持ち込み) 前者は普段のトークスライドと近い感じで作れる。 後者は学会のポスター発表と同様の感じ。 ポスターの制作 11 / 14

17.

A0 サイズのポスター 今回はせっかくの機会なので、A0 サイズのポスターに挑戦。 ただ、実のところポスター発表は初めてなので、作り方から調 べることに。 データ制作は、A0 サイズに対応したツールは少なく、Adobe や Affinity のツール群を使うのが一般的か。 今回は、Typst を使って制作してみた。 (Typst は LaTeX と同 様の組版ソフトで、最近注目されている) ポスターの制作 12 / 14

18.

ポスターの印刷と運搬 ポスターを大阪から会場までどうやって運搬して持ち込むか? • 現地に近い場所で印刷して、そのまま会場まで運ぶ • 紙で印刷しておいて、丸めるまたは折りたたんで持ち込む • 布で印刷しておいて、折りたたんで持ち込む まだ検討中。 ポスターの制作 13 / 14

19.

まとめ

20.

まとめ iOSDC 当日は、ポスターもぜひ見に来てください。 パンフレット記事やポスターについて、感想や質問があれば直 接話しかけてもらえればと思います。 まとめ 14 / 14