2021-09-30 (木)
月曜のやつ.Windows 10の3Dビューアー,もしかしてT * R * Sの形に綺麗に分解できない行列を無視する?
並行移動成分を持つ4x4の行列の右下の成分を 1 から 0.9999999 とかに書き換えるとオブジェクトが何処かに消えたりする.普通に計算すれば見て分かる影響はないはずなのだけど.通常の操作では1以外にならないけど,逆行列求めたりするときのfloat32の誤差で1以外になったときに壊れていた.
この日記はフィクションです.登場する人名・団体名・地名・職業などはぜんぶ架空のものです. なので実際のものとは何も関係がありません. それから,写真のように見える画像はCGもしくは念写によるものです.
月曜のやつ.Windows 10の3Dビューアー,もしかしてT * R * Sの形に綺麗に分解できない行列を無視する?
並行移動成分を持つ4x4の行列の右下の成分を 1 から 0.9999999 とかに書き換えるとオブジェクトが何処かに消えたりする.普通に計算すれば見て分かる影響はないはずなのだけど.通常の操作では1以外にならないけど,逆行列求めたりするときのfloat32の誤差で1以外になったときに壊れていた.
夕方になるととても眠いので,夜21時前には寝てしまう生活をしている.
glTFを書き出す時,なるべく頂点配列とかをメッシュ間で共有してサイズを削減するようにしたのだけど,Windows 10に最初から入ってる3Dビューアーだけ表示が欠けたりしておかしいな...なにか間違ってる気もするけど,データ上はおかしな箇所が見当たらない.
glTF,THREE.jsのGeometryやUnityのMeshに相当する層がなくて,Mesh内のPrimitiveがマテリアルを持つので,マテリアルだけ異なるオブジェクトを作ろうと思うとPrimitiveごと作り直さないといけないの少し扱いにくいな.
今週ずっと引きこもってたので,天気は微妙だけど自転車で出かける.疲れた.そして身体が痛い.
三峰口→小倉沢→西武秩父
ダム.ダムとか橋とか見ると毎回同じような写真を撮ってしまうな.
水位のせいか,旧道の跡もよく見えるな.
気になったのはのはこの少し上で,ダムに溜まった土砂を取り除いていますと書いてあって,ショベルカーで延々とダンプカーに土砂を乗せる作業をしてたのだけど,途方もなく感じるというか,一度大雨降ったら一瞬でリセットされるように思えてしまう.途方も無いけど実は現実的なのか,やってますという姿勢が重要なのか気になる.
到着.休憩したり色々寄り道してて時間がかかった.
天気悪いけど霧雨くらいだったので安心していたら,帰りは途中から水溜りだらけに.結構降ったっぽい.
そして暗くなってきたなと思ってたら水溜りに紛れたマンホールを見逃して滑った...下りのカーブだったのでブレーキかけながら乗ってしまってすごい勢いで滑ってびっくりした.
結局派手にころんだけど,運良く少し擦りむいたくらいで済んだ.ただ,水溜りの中を転がったせいでリュックサックと服が悲惨な状態に...
とりあえず大丈夫そうなのでそのまま帰る.
Go で Unity のシーンを読むやつ
Cubeを並べたシーンでテストするのに飽きてたので,試しに無料で公開されている https://xaibis.booth.pm/items/2579880 に含まれるReadingCafe.unityを読み込んでみる.prefab周りと法線の処理を少し修正.
modelconv "HexHomeKit1.1.unitypackage#Assets/ReadingCafe.unity" ReadingCafe.glb
glbファイルをTHREE.jsで読み込んでブラウザに表示してみる.
それっぽいものが出力されてうれしいけど,よく見るとまだ色々怪しい.あとテクスチャをリサイズせず埋め込んでるのでglbファイルが256MBある...
ねむい.時間と気力が足りていない.
一昨日のやつ.FBX読み込んでマテリアル周りをそれっぽくしたので,とりあえずUnityのシーンをglTFに変換できるようになった.
複数のマテリアルを持つメッシュをUnityにインポートしたときの MeshRenderer 上での Materials の順序.インポート元ファイルのマテリアルの順序でもなく,FBXのGeometryが参照しているLayerElementMaterialのインデックスでもなく,Meshデータ内で参照される順序に依存するのか.
forumのスレッドの#24のポストの説明が正しかった.
普通に考えるとそんな扱いにくい仕様にするわけないと思うのだけど,実際にそういう挙動っぽい...想像でしかないけど,importerがマテリアル単位のデータを作っていて,そのときの生成順序がそのまま使われている気がする.
メッシュ内の面の順番変わるだけで壊れるし,Geometryを読まないとマテリアルの割当が分からなくて面倒.
天気良い.
前輪は買ったときのままで後輪は去年出かけた先で適当に買ったやつだったので交換.朝Amazonで注文したら夜届いた.ついでにチューブも換えたりチェーン洗ったり.ブレーキシューもずっと換えてなかったので買ってあったやつに交換.久しぶりに外に出ようと思ったら日付が変わっていた...
寝る.
VRChatの影響のような気がするけど最近VR用のシーンが.unitypackageファイルで配布されているのを見かけるので,UnityのシーンをUniGLTFとか使わず手軽にglTFに変換できるようにしたいのだけど,色々面倒.とりあえずCubeとPlaneだけ対応.あとはfbxとかマテリアルをなんとかしよう.
https://github.com/binzume/modelconv/tree/master/unity
データ型をyamlのtagを使って表現しているのは良いけど,ドキュメント自体にタグが付いている&ドキュメントはdictionaryでその下に名前付きでオブジェクトがあるの扱いが微妙だな.あと型名が番号なので対応わかりにくい.
雨.
Go で Unity のシーンを読もうとしたら,yamlのパースでいきなりつまづいた.
複数ドキュメントを含むyamlや%TAG周りを正しく扱えそうなyamlライブラリが見当たらないな.
よく使われるだけあって yaml.v2 使うのが素直そうだけど,%TAGディレクティブが先頭のドキュメントにしか反映されない気がする.マルチドキュメントは真面目に対応する気はなさそうなので,使うなってことなのかも.あと tag:yaml.org,2002:
以外のタグを扱う手段も無さげ?いけないのはライブラリじゃなくて,そもそも真面目に実装する気をなくすようなyamlの仕様のせいな気はする.
諦めて自前でドキュメントを分離する処理を書いて解決.
来週は休み.
Google StoreでPixel 5aを買った時,下取りのオプションを選択してPixel3を送ってみたのだけど受領の通知が来なくて問い合わせるの面倒だなと思っていたら,今日になってメールが来た.郵便局の配送状況の履歴だとだいぶ前に届いてたのだけど.1-3 営業日と書いてあるので週休6日な会社だったのかもしれない.
そろそろ古いディスプレイを処分しないとと思ってたけど,PCと一緒だと無料で回収してくれるの今もやってるのか. https://www.renet.jp/
申し込んで,使ってないX220と一緒に箱に詰めておく.
楽天のサービスあまり使わないけど,たまに楽天カード使うせいか楽天ポイントがたくさん溜まっていた.いつもポイント類は放置してしまうのだけど,履歴を見たら期限付きのポイントが毎年1万ポイント以上失効してたのでちょっともったいなくなった.
とりえあず,今月分の楽天カードの支払いをポイントで払って,残りは一度EdyにチャージしてAmazonギフト券に替えた.Edyの限度額50000円なのか.あと一回のチャージは25000円までなので,楽天ポイントのサイトで申請→Edyサイトで受け取りを繰り返す必要あるのだけど,同じ会社のサービスなのだしもう少し楽にならないかな.
先週から風邪気味な気がする.
髪を切りに行ったりする.
寝る.
昨日注文した気がするのだけど,もう届いた.
左が Pixel 5a で右が今まで使っていた Pixel 3.
写真だとそこまで差はないけど持ってみるとPixel 3と比べて大きくて少し重い...Pixel 3も少し大きすぎるくらいだったのに,どんどん大きくなっていく.
防水+FeliCa対応のPixel端末が5万円台で買えるのは良いな.ただ,充電が有線なのがちょっと不便かもしれない.
おサイフケータイとLINEは未だに自動的に移行されないの面倒だな.LINEは昔より少し楽になった気もするけど,以降の手順の説明にアプリ名名指しで注意書きがあるのを見る限り,多くの人が困っていそう.
5Gの電波を求めて彷徨ったけど,マンションの外に出て少し開けた場所じゃないと5Gで繋がらないな.5Gはまだ早かったか.