井戸底より

とりとめのない散文、水底に沈んだ駄文

The Forgotten Cityクリア感想

Outer Wildsみたいなシステムにクエストマーカーつけたらどうなんの、ってのを実現したゲームでした(直球ネタバレ)

知っての通りOuter Wildsは探索を繰り返すことで謎を解いていくシステ厶のゲームである。クエストも目的も何一つ知らされない状態で惑星に放り出され、そこから手繰りで調査を進めるあの感じをDLC終わってからずっと求めている。誰かおれの渇きを癒してくれ

 

Outer Wildsのよくある批判の一つが導線が弱くて手詰まりになりやすいという奴で、クエストマーカーとかタスク一覧を設置するべきかどうかという議論は数百年くらい続いている。個人的には過去の情報を閲覧する機能で十分だと思う一方で、恥ずかしながら自分も手詰まりで一部攻略を見てしまったのは事実なので一理あるとも考えている。可能なら自力で全ての謎を解き明かしたいと思うのは尤もである。ジャンプスケア無理だから追いかけっこは無理なのよ

The Forgotten Cityは探索よりも対話に重きを置いており、探索ゲーと言うよりマダミスを繰り返している感じに近い。原作となるmodの方がよりそんな感じではある。対話によって謎が明かされるのでゲームはほとんど詰まることはなく、スムーズに進行できた。探索は必要ではあるがマップがそこまで広くないこともあり、提示されたクエストを消化していけばほとんど迷うことはなく、それでいて攻略の自由度がある程度担保されているのでゲームバランスが練られていると感じた。

トロコンまで10時間程度でサクっと遊べる良ゲーだった。

 

ストーリーはローマ帝国の大火から逃れた人々が流れ着いた地下都市から始まる。ローマ神話についてあまり詳しくなかったが作品内で情報は提示されるので特に困ったりはしなかった。神話のモチーフの組み合わせ方が上手いと思った。種明かしはベタな展開とは言えるもののラストに至るまで徹底的に秘匿していたので意外性があり面白かった。

エスト一覧が見られることについて、最初は違和感があったものの、途中から全く気にならなくなった。Outer Wildsにクエストラインが必要かどうかはこのゲームで証明されるわけではない。でも情報一覧からそれとなくヒントを見せるくらいはしてもいいと思った。

 

グラフィックに関してはUE臭さを脱臭できてない感じ。気になったのは垂直同期とかGCの問題なのかちょいちょい一瞬止まることとExposureの設定が甘くて画面が暗すぎになることが多かった。弓を持つと緩和されるので弓を持って行動するといい

あとは巻き戻しにならない会話、キーアイテムが幾つかあったのも気になった。まあゲーム都合で割り切れる程度の要素でありループ毎に回収してたら面倒この上ないのでこれでいいんだが

セール時に半額で買えたので自分は躊躇わずに良ゲーと言えるが、通常のお値段だとグラフィック周りが気に入らないかも。体験については文句なしである。

ティアキンの話

ネタバレ全開ですよっと

 

 

 

 

おもしろすぎて寝食を忘れる程に遊んでいまこんなかんじ

祠埋めるのがしんどくなってきてブクマだけして放置してるのが多い

進行度は67%、メインチャレンジはだいたい終わらせた

ちょっと人間的生活とタスクを放棄しすぎたので院試が終わるまで暫く封印しておく

 

チュートリアルアイランドを出るのに6時間くらいかかった時点であれ?となったが洞窟・井戸が出てきてエルデンリングだこれ!となり地下に降りて呆然とするのは皆通る道であろう あと洞窟が58個井戸が15個くらいあるって言われてまた茫然としてる

地下は割とスカスカだけど最初はビジュアルがかなり怖くてデクガーマにビビってアカリダケをちまちま投げながら進んだ。暗闇に対する原初的闘争と言ってる人がいたが確かにその通りであった。エアロバイクという文明の利器を手にするまでは

 

ユン坊が鬱陶しい以外欠点のないバイク

Twitterでこいつの存在を知ってからあらゆる探索が楽になってしまった。開発はこれを想定していたのだろうか?まあいいや

 

ゲームバランスについて。まあ崩壊している。初ボスでリト以外を選ぶと苦戦間違いなしである。そして今や白銀ライネルも鼻ほじりながら倒せるくらいにはスクラビルドがやばい

敵のスケーリングは上手くいってるだろうか?中盤黒~白ボコが出始めた辺りが一番戦闘がキツかった。ピクミンの角をどんどん武器に使ってよいのだと気付いてから楽になった。スクラビルドのせいでバランスが崩壊してるのだけど、そのバランス崩壊のために強敵を倒して得て他に使い道がある有限な素材を使う必要があるってのは上手い落としどころかもしれない。でもゾーラ武器ヤバくない?シドいれば実質常時2倍だし

あとは防具強化がbotw同様大事。ダメージ計算がアルテリオス式の癖に防具が最終強化でグンと伸びるのは前作から引き継ぎなので何考えてこのシステムにしたかちょっと聞いてみたい。これもレベルデザインの一環なのだろうか?というか森の馬宿行って楽団任務受けないと暫く防御強化できないのもだいぶヤバい

 

モチーフについて。くどいレベルで日本・中国的意匠が盛り込まれている。枯山水と中華建築を逆さにしたような建築って中々ないので新鮮だった。原住民はポリネシア的な民族衣装チックだし

洋風ファンタジーに和というか東アジア的要素をどれだけ持ち込むべきかって感性は人に依るだろうけど個人的にはbotwでカカリコ村やイーガ団に限定されていたように一部分に留めてほしいんだよなあ。でもこれはこれでうまく昇華できてて良い気もする

あとは能力に代表される「手」のモチーフ。ダークソウルはシリーズ通してなんか右手に対して欲望、醜悪さ、忌まわしいイメージを表現してるらしいんだけど今作が採用したのはその対極にある握手、伸ばす手、繋ぐ手でありリンクである。

 

音楽について。ヤバイ。超ヤバイ。

単純なフェーズ移行だけではなく、ボス戦の進行状況によってアクティブに音楽が変わるのがこれだけ爽快だとは思わなかった。これ作曲する方も相当大変なんだろうなあ

後述するフリザゲイラでの使い方が非常に好き。あとはラストのFinal Fallな場面もトランジションもすごい自然で良い。

各地方のメロディはそのままに、声を逆再生したようなゾナウ族のテーマとなる音がバリバリ印象的でボス戦の随所に使われているのが非常に良い。スタッフロールでラスト一個前に流れたテーマが非常に好き。

前作でも多分あったと思うけど時間経過で昼→夜に変わるのと合わせてBGMのテンポが下がって転調するの実際に聞くとすごい。気が付いたら変わってる

ブロックゴーレムの軽快な曲もとても好きだったけどそのアレンジがゴーレム製造房で流れたときはなんかウルっと来ちゃった。ナウシカみたいに腐海に覆われたような工場から最後のゴーレムを作るっていうシチュがエモい(言語力の欠如)

ジブリ繋がりだとラピュタもののけ姫だよなあこれって場面多かったですねえ。ゼルダはパロディ多めの愉快なファンタジーらしい 翼ギアはメーヴェだった?

 

戦闘について。一押しボスはフリザゲイラ。道中での氷はダイビングで破ろうねっていう伏線を回収し、空と雲のフィールドを存分に生かした最高のボスです。あとボス戦の曲が非常にいい。風タクのリト族のアレンジらしい

 

 

って言ったけど流石にラスボスに軍配を上げるべきかなあ。ラスダン道中の音楽の遷移も緊迫感からある種の神聖さ、畏怖に向かうまでの流れが非常に美しい。なのでガノン手前でワープマーカー置いて帰るべきではない

グリオークはクソボス。いや面白いんだけどヒリつく戦闘が魅力のライネルとは違う大味な面白さであり何回も戦いたいとは思わない。報酬もやけにしょっぱいし

炎>氷>>キング≧雷>>>>>>>地下の順でクソ。サンダー野郎は雨降らすのやめろ、遮蔽物のない場所で戦わせるな

でも剣に炎グリオーク角付けたら柄だけになって振って炎が迸るレーヴァテインになるのはセンスあると思ったよ。

 

グラフィックについて。これがメモリ4GBのスイッチで動いてるの恐ろしい。しかも裏で動いてるアプリの制約もあって実際に使えるのは2GB程度と聞いたけど本当?

1stトレーラー以降空に雲が全然映ってないので最適化の都合でオミットされたのかと思ってたけどそんなことはなかった。すげえ

魔王ガノン戦とか砂漠の地面を漂う煙とか、トレンドの表現を押さえててすげえ。それをSwitchで動かしてるのがすげえ。さすがに精細さに欠ける影とかフィルターっぽさを感じる部分もあったけど総じて素晴らしい表現。

 

ゲームシステムについて。まあ最高峰レベルで素晴らしいんだけど不満もある。前作が祠一辺倒だった反省か色んな目的地点があるのは良い更新点だと思う。ゾナウギアとか運搬コログとかカバンダとか

これは自分もそう感じる部分があって、フィールドが遊び全開な代わりに祠が前作よりチュートリアルと気付きに寄っている気がする。そのせいでどこも知育玩具みたいになっているが

 

ストーリーについて。凄いんだけど多分想定順序はリト→ゴロン→ゲルド→ゾーラ→魂→コログの森→龍の涙→マスソ→コーガ様なんだよね。先に龍の涙を終わらせてマスターソード抜いたせいでネタバレ喰らったみたいでちょっと気にくわない

前作ウツシエと比べて地上絵は非常に導線として強いんだけど、その分なんかストーリー順序が想定通り進みづらくなるのは残念かなあ。あと地下を積極的に探索してた人は魂の神殿先に見つけてミネル様にネタバレされてたのかな。まあ実際想定順序なんて無くて色んな攻略順序があって良いと言うべきだろうか

 

なんかもっと書きたいことあった気がするけど忘れちゃった。思い出したら追記します。

最高のゲーム体験でした。

 

銀の龍の背に乗って

ラスタライザについてメモ

ラスタライザというかポリゴンの頂点カラーの補間処理についてのメモ

 

ラスタライザを作る人の古文書集 - ushiroad

Vertex Color on Polygon Surface | 試行錯誤

 

ソフトウェアライスタライザ実装 その3 (ラスタライズ) - Qiita

 

昔のラスタライザは双線形補間で頂点カラー、TexCoordの補間をしていたが最近だと重心座標系も使われている?比較的処理が重いがポリゴン内判定、ウェイトブレンドを綺麗な処理でまとめられている気がする

 

こういうネットの海に沈殿した有用な趣味ブログを集積するのは楽しい

Customノードで遊ぼう①:Voronoiノードの自作

こいつ2年ブログ塩漬けしてたらしいっすよ

 

UE5.2がそろそろ出そうな雰囲気もあるなか未だに4.27にしがみついています。理由は単純でPCスペックが足りないからです。機能別サンプルで40fps張り付きはきつい

しかしながら世間的にはPS5の供給不足がようやっと解消されそうという状況で、SteamのGPU使用率調査を見ると未だにGTX1650がナンバーワンだったりします。GTX1650でLumenやNaniteをバリバリ使うゲームは絶対動かせません。その辺りの機能を使わないのであれば無駄に最低要件を上げるだけなので別段UE5に移行しなくてもいいんじゃないかと思ってます。コロナ禍もなんだかんだ言ってあと2年は尾を引きそうな気がするしGPUも安くならなさそうですし

 

まあでもPhysics ControlとかモーションワープとかAI関連とか魅力的な新機能も使いたいので2年くらいかけてぼちぼち移行したいというお気持ちです。そんな中で何とかブログに書くネタを探す第一弾です。

UE4のノイズノードは汎用性を考慮したせいか露骨に重く出力も素直ではなくてなかなか使えません。単機能でいいならそういうのはCustomノードで自作したほうが処理が軽く済むことが多いです。

やってることは下記のシェーダーを丸パクリしただけです。こんなんをブログの種にしていいの?

Shader - Voronoi - 3D

ただしランダム性の元となるHash関数は下記のsin不使用な実装を使用しています。これにより処理負荷を大きく削減できているはずです。

Shader - Hash without Sine

voronoi3Dのhash入力はダミーでいわゆる家弓メソッドでhash関数を使えるようにしています。4.26くらいでcustomノードにinclude pathを追加できるようになりましたが変わらずこちらの方が楽ですね。

 

ちなみに処理負荷は、

VectorNoise(Voronoi, Quality = 1):Base pass shader: 281 instructions

今回の実装:Base pass shader: 192 instructions

なので大分抑えられています。ただし見た目が結構違うので互換にはなりません。

 

続くかどうかは未定

 

GeometryNodesでインボリュート歯車を作ろう

🍮買ってからブログを一年放置してました。基板は届きましたがまだ改造していません。自作キーボードも塩漬けしてます。草

GeometryNodesの練習で歯車を作ってみました。あまり作例がネットに転がってなかったのとネタになりそうだったのでブログに書くことにしました。

 

2.93~3.0でめっちゃ更新入ってたり機能も開発中で色々戸惑いましたがいい感じに作れた...

と思いきやそんなことはなかった

f:id:tevasan:20211228004812p:plain

うんち

はい。ポリ割りがダメダメです。

 

同一平面上でブーリアンかけた時特有のポリ割りの崩壊が発生しています。まぁ設計のあたりをつける分には十分だし実際にモデルを使う際はその時に修正すればいいのでとりあえず放置します。三角面化するとポリ割りは改善しますが謎の穴が発生します。

何か良い方法あったらコメントまで

 

以下サイトを参考にしました。

How to Model Geometrically Correct (Involute) Gears in Blender

歯車の転位|小原歯車工業株式会社

 

2.79くらいの頃はOtvinta.comの歯車計算機に非常にお世話になってました。当時はAdd Mesh Extra ObjectsアドオンのMath Functionからインボリュート曲線を生成して複製して...と面倒な手順を踏んで作っていました。

 

いちいち曲線から作らなくてもノードで一発で生成できるなんていい時代になったなあ...と言いたかったんですがポリ割りを直す手間を考えたら大して変わらない気がする...

 

ノードの中身は上のURLのYoutubeの手順をそのまま移植し、計算式は歯車計算機のhtmlソースと小原歯車工業さんのHPに書いてあることを写しただけです。特に難しい部分はありません。 

ただ一点、ジオメトリノード内で円周上に並ぶような配置を作るのに苦労しました。

f:id:tevasan:20211228010941p:plain

力技of力技

メッシュラインで(0,0,0)~(1,0,0)に頂点を配置

→ポイント化してインスタンスを作成

インスタンスのX座標を角度0~2πに変換して回転

→位置設定でインスタンス位置を(0,0,0)に戻す

 

という手順で円周配置しています。絶対もっといいやり方あると思うんですが...

 

NiagaraでいうところのExecutionIndexみたいな情報が取れれば楽になるんですがインスタンスの順序を取るのは現状では無理そうなので今後の更新に期待。

 

たぶんこの辺はGeometryNodes内で完結させるよりもモディファイアと組み合わせたり複数オブジェクトを使ってやる方が楽だしBlenderの設計思想としてはそちらの方が正道だと思いますがノードグループ一つで歯車ポンと出したかったのでこれでいいんだよ うん

 

ひととおり機能をさらってみましたがGeometryNodesの発展途上感と可能性を感じました。出来合いのモデルを良い感じにばら撒いたりモデル同士を組み合わせてのは現状でも十分可能で非常に優秀なツールですがプロシージャル生成周りやメッシュを直接弄るあたりの機能はまだまだ出揃っていないように思いました。

 

おわり

JGAurora JGMaker Magicを買った

うちで稼働している3DプリンターはFDM式のAlunar M508と光造形式のQIDI Shadow 5.5Sの二つ。M508は確か2017年末に買ったからもう三年くらい働かせていることになる。それで久々に調べたらどうも製造元のAlunarという会社が吹っ飛んだらしく、Amazonには新製品も予備部品の在庫も一個もないし公式サイトも閉鎖している。かなしいなぁ

 

f:id:tevasan:20201018180351p:plain

Amazonの在庫全部死んでるの図

というわけで新しい3Dプリンターを買いました。

機種はJGAurora社のJGMaker Magic、Ender 3のパk似た構造をしているが筐体はアルミフレーム、底面は板金、Y軸リニアブッシュ付きで199$とか180$とか。自分が買った時は22kくらいだった。非常にコスパのいい商品と言えよう。しかも性能も最廉価帯の癖に中々のもの。いい時代になったなぁ...

 

f:id:tevasan:20201110102633j:plain

後光がみえる

廉価中華製品らしく幾つか欠点もあり、最も深刻な問題点はX軸駆動ベルトにある。構造上X軸ベルトをガイドローラーの下に通す必要があり、ベルトにかかる荷重が一定ではなくノズルが左右に移動すると緩んだりする。

 

そのためまともにプリントするにはベルトテンショナーが必須といえるが、同梱されていないどころかマニュアルには「X軸ベルトをかける」しか書かれていない。手違いで入ってなかった可能性もあるがマニュアルに何も書いてないんだから仕様だろう。ベルトの長さ的にベルトテンショナーをかけるのは想定されていると思うが...

 

 とりあえず旧3Dプリンターに使っていたスプリングベルトテンショナーを引き剥がして使っているが、普通に買おうとすると十個セットしか売ってなかったりして面倒なので同梱してほしかった。

f:id:tevasan:20201110102715j:plain

ベルトテンショナーつけた

あと気になる点はCuraの印刷予想時間と実際のプリント時間が合わず、たいてい1.5倍くらいかかるところ。見た感じプリンタ内部で加減速の独自処理を走らせているっぽい

 

というかマニュアルの情報量が少なすぎる。日本語の情報が少ないことも相まって初心者が初めて買う3Dプリンターとするには地雷が多いかもしれない。良い商品なんだけどなぁ...

 

一応目立った良い点も挙げておくと、ヒードベッドが荒くて素で剥がれにくいためケープとかは全く必要なく、また接着面がマットで良い感じの仕上がりになる。まぁこれにはレベリングがしにくいとか経年劣化が心配とか付随する問題もあるんだけども

 

次回は改造します。

MixamoのアニメーションをUE4でリターゲットするmemo

MixamoのアニメーションをUE4に持ってくるのに少し手間取ったので備忘録として残しておく。

 

Mixamoの3Dモデルにはrootボーンが含まれていない。これ自体は別に困る話でもないが、UE4で他のモデルにリターゲットするとなぜか足が宙に浮いてしまうという問題が発生した。

 この問題は海外のフォーラムでも散見されていて、rootボーンが存在しないことでリターゲットがうまく機能しないのが理由に思われる。色々ググったがUE4内でうまいこと解決する方法は見つからなかった。

 

BlenderでMixamoのモデルにrootボーンを追加してUE4に持っていく方法で解決できたが、ここにもちょっとした罠があるので手順を示す。ただの備忘録なので詳しい真偽、他の環境での動作は保証しない。

 

まずMixamoから落としてきたデータにrootボーンを追加、mixamorig:Hipsと親子付け

f:id:tevasan:20200909210759p:plain

 

その際rootボーンはX軸で-90度回転させた状態 = (この場合は)Y軸を向いていないといけない。 真上を向いているとUE4に持ってきた時rootボーンのX回転が90度になる

 

アニメーションをUE4に持っていく場合はrootボーンをX軸で90度回転させる。こうしないとアニメーションが-90度回転し半分地に埋まった状態で読み込まれる

f:id:tevasan:20200909210729p:plain

 この状態でFBXエクスポートをすると正しく読み込めるデータになる。軸の方向とか余計なオプションを弄る必要はない

 

BlenderからUE4に持っていく際によく言われるScale100倍問題については、メッシュをインポートしてエクスポートすれば相殺されるのでこの場合は気にする必要はない。逆にUE4のエクスポートに対応したアドオンを使うと100倍に引き伸ばされてアニメーションが壊れるので普通のFBXエクスポーターを使うのが無難。

 

リターゲットをUE4で行うにはSkeletal MeshとSkeletonのデータが必要になる。1個だけWith Skinの状態でアニメーションを落とせばいいだろう。

あとは読み込んだSkeletonにHumanoid Rigを設定してリターゲットしておわり。