7月第一週週報 或いはTIL
7/3
XCodeのセットアップをした
VisionOSのシミュレーターを起動した
Swift初めて見たけどコードとしては分からんとは思わない
構造体の知識が付けば読めそう、Copilot任せで書けもしそう
7/4
VisionOSのシミュレーターで遊んだ
VisionOSのLearnを一通り読んだ
46の入門セッションがあるが、どれも空間コンピューティングの新しい知識にフォーカスしてそう
ひとつ30分くらい
既存分野の知識不足はコンテンツ視聴中に遅延学習することにして一通り見てみようと思った
今のところ、SwiftUIだけでApple純正の3Dコンテンツの表現は出来そう
よりリッチな表現にUnityが必要ということ?
Blenderも覚えないといけないかも
本当に業務利用されてきたら3Dデザイナーが別に居てくれないと無理な業務量になりそう
セッションはWWDCのものだから、開発ドキュメントとしてはこっちを読む必要あるかも
7/5
Principles of spatial design を観た
SafariのサイドバーがWebページの領域を縮小せずに表示されたり、Musicの再生パネルが音楽検索ウィンドウとは別に表示される
そのように作りなさいとのこと
ほぼ無制限の表示領域を持つ強みだな
あくまでユーザーの視界をブロックしないための機能
ユーザーはHMD装着してあらゆる体勢を取る、時には移動する事を念頭に入れてないといけない
但し移動に関してはウィンドウはanchorを持って空間に固定されるべきで、移動した先でre-centerするのは本体側でDesital Crownを使うべき
どういった場所で使うかデザイナーが知ることはできない。だからこそ、physical space availableに左右されないようデザインする
結構な範囲OSが制御してくれるけど(pass throughなど)
visionOSのドキュメントを読み始めた
mixedでのコンテンツ配置し過ぎに注意
`Content that fills a significant portion of the screen, even if that content is partially transparent, can prevent the person from seeing potential hazards in their surroundings.`
たくさん配置することが体験的に必要ならfullを使うべきらしい
fullならこの問題解消するんか?
https://developer.apple.com/documentation/visionos/creating-fully-immersive-experiences
`When you start a fully immersive experience, visionOS defines a system boundary that extends 1.5 meters from the initial position of the person’s head. If their head moves outside of that zone, the system automatically stops the immersive experience and turns on the external video again.`
potential hazardsってのは意図せぬ訪問者とかよりは家具に衝突する方らしい
7/6
Create accessible spatial experiencesを見た
VoiceOverを使える事をしっかり推してたけど、AVPで意味あるのかな...?
RealityKitのAccessibilityComponentをきちんと設定しておく事を求められている
VoiceOver設定をするとジェスチャーの検知が出来ないとか落とし穴もあるみたいだし、この辺実装する場合はいろんな考慮(≒テストパターン)が必要
Accessibilityの話なのか? というくらい細かいMotionについての話が続くので、このセッションは見返さないとわからない
Eye pointer推しだと思ってたけど他のポインティング方法もサポートしてるみたい
disabilitiesがあってもappを使えるようにしなさい
どっかのPodcastでこの辺ちゃんと実装してないとStore審査通らないと聞いたな
visionOSのドキュメント続き
https://developer.apple.com/design/human-interface-guidelines/designing-for-visionos
運動用ゲームとか作るなら没入型ではない方が良いってことかな
wireというGolang用のDIライブラリの存在を知った
7/7
Develop your first immersive appを見た
起動時はWindowから始めよというのが基本
これ何度も念押しされてるな
ユーザーの意図通りに動くことがAVPで大事なことなのかも
RealityViewのupdateメソッドはframeごとではなくSwiftUIのstate changesごと
ここUnity文脈で見てたから誤解してた
RealityKit、Reality Composer Proはデザインする時使えないときつそう
操作感はUnityぽい
XCodeとシームレスに動いてSwiftUIから呼び出しやすいのが強みかな
ここまで一気に作ってからリリースしなきゃいけなかったと思うとハードのリリースが遅れたのもむべなるかな
これiOSエンジニアになった方が早い(暴論)と思って社内iOSエンジニアに相談してみた
AVPやりたいなら汎用的なロードマップが使えない
SwiftUI中心に学んで行けば良いのでは? とのこと
https://developer.apple.com/tutorials/swiftui/
7/8
Docker、root権限で動かさないのがベストプラクティスだと初めて知る
コンテナやしrootで動いても特にホストに影響無いやろ、くらいに思っていた
https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#user
この記事が気に入ったらサポートをしてみませんか?