ホロライブの二次創作ゲーを作りたい (939レス)
上下前次1-新
479(2): 2024/01/30(火)00:56 ID:sbR3UD9S(1/3) AAS
このDOMOTIONってどうなんだろうか?
外部リンク:github.com
現在の機能(v0.3.4)
完全にバーストされたランタイム
ステートマシンビジュアルエディタ
遷移: Boolean、Int、Enum、End Time
コードでクリップを再生するためのシンプルな API (サンプルを参照)
省13
480: 2024/01/30(火)05:39 ID:DCr4w4dC(1/9) AAS
>>479
あざます!
使ってみた所感
・URP、Unity.Entities、Unity.Entities.Graphics等の依存してるパッケージの必要なバージョンが良くわからない
特定のパッケージが新しすぎるとそんなクラス無いと怒られるし、それを直すために特定のパッケージのバージョンを落とすと別のクラスが無いと怒られたりする
一部のエラーを握りつぶしてごり押したので不完全な状態
・ホロライブのMMDモデルだとボーンの数が多すぎて怒られた
省5
481(3): 2024/01/30(火)05:58 ID:DCr4w4dC(2/9) AAS
長老法!!!!
わいのカスタムシェーダの開発者さんがシェーダ起因のCPUバウンドの原因を特定してくれてパフォーマンスがどちゃくそ改善されました!!!
ビフォー
画像リンク[png]:i.imgur.com
アフター
画像リンク[png]:i.imgur.com
パフォーマンスが低かった理由も教えてくれたけどわいだったら絶対気づけなかった、流石プロ
省2
482: 2024/01/30(火)06:15 ID:25oO7Vfp(1/2) AAS
結局シェーダーの違いやったんか
トゥーンシェーダ色々あるけど結構違いありそうやな
483: 2024/01/30(火)08:16 ID:sbR3UD9S(2/3) AAS
>>481
やったじゃん
484: 2024/01/30(火)08:19 ID:sbR3UD9S(3/3) AAS
てかBone376あるとか書いてあるけどこれって全部でってこと?
1つのモデルで376ってありすぎじゃね?
485: 2024/01/30(火)10:02 ID:DCr4w4dC(3/9) AAS
1つのモデルで371だった それをDOTS用に変換すると376になる?
スカートとか髪のボーン1つ1つにモデルを変形させるための本物のボーンとは別で
用途が分からないダミーのボーンがあったりするせいか頭数が多い
そしてこのボーンの上限超過エラーをコメントアウトして握りつぶしてみたけど表示が破綻してダメだった
このライブラリに同梱されてるシェーダでも表示が崩れるので、上限には意味があるらしい
Proがリリースされたら上限が上がることを祈りつつこのライブラリは一旦保留・・・
486: 2024/01/30(火)11:08 ID:ZUYV+zXn(1/2) AAS
Unityって何々と何々は共存出来ないって多すぎじゃないですか
487(1): 2024/01/30(火)11:16 ID:DCr4w4dC(4/9) AAS
わかる JobSystem+Burstみたいな値型限定で高速化とかするくらいならいっそC++でコーディングさせてくれとは思う
仮にC++で書けたとして本当に速くなるのかは分らんけど
488: 2024/01/30(火)11:21 ID:25oO7Vfp(2/2) AAS
UEの最適化も結構大変そうだよ
スクエニとか自社の描画システムに切り替えて標準機能ガン無視とかしてる
外部リンク:www.docswell.com
489: 2024/01/30(火)12:30 ID:DCr4w4dC(5/9) AAS
やっぱどこのゲームエンジンも低レベルなAPIを酷使して自前で全部実装するのが最強なのか
490: 2024/01/30(火)15:36 ID:DCr4w4dC(6/9) AAS
BatchRendererGroupでモデルを描画するためには
1. BatchRendererGroupにメッシュとマテリアルを登録する
2. 実際に描画するために他にも色々登録する
必要があるんだけど、2をやらずにメッシュとマテリアルを登録するだけで登録数に比例した負荷が発生してしまう
描画しなくともこの負荷だけで従来のSkinnedMeshRendererにパフォーマンスで負ける
メッシュとマテリアルを登録せず描画処理だけ走らせると150fpsくらい出る
登録することで発生する負荷を追求したいのにProfiler君さあ・・・
省1
491: 2024/01/30(火)16:30 ID:AjZdEr3a(1/2) AAS
>>487
結局IRにするなら普通にC#使ったほうがいいと思うわ
C++だとしても変わらんし多分Burstのほうが早いまである
492: 2024/01/30(火)16:32 ID:AjZdEr3a(2/2) AAS
基本的にボーン数はパフォーマンスに影響あるからできるならいらないボーンは削除したほうがいいと思う
493: 2024/01/30(火)16:59 ID:HWvPLj+X(1) AAS
あくたんと天月(´;ω;`)
494: 2024/01/30(火)17:21 ID:DCr4w4dC(7/9) AAS
なんかもう>>481で満足しちゃったので(他力本願)
BatchRendererGroupは異なるメッシュやマテリアルの大量描画には向かない可能性があるということで一旦置いておく
300以上のボーンを持つキャラクター30体の不要なボーンを精査するのは時間帯効果が低そうなので優先度低めのタスクとして頭の片隅においておきます・・・
495(1): 2024/01/30(火)17:22 ID:DCr4w4dC(8/9) AAS
ちなみに>>481のパフォーマンスが上がった理由は「マテリアルに対してSetVectorしたフレームではConstantBufferの更新が走るので、SetVectorしたマテリアルの数に比例してパフォーマンスが低下する」とのこと
外部リンク:note.com
> UnityのSRP Batcherとは何なのか
> 一言でいえば、Draw Call毎にConstant Bufferを更新するという非効率な仕組みをやめたということです。これによりレンダリングに関連するCPUコストが削減されます。
毎フレームSetVectorするとSRP Batcherの強みを殺すことになる
勉強になりました
496: 2024/01/30(火)20:09 ID:8GAA7lp1(1) AAS
>>495
なるほどサンクス
497(1): 2024/01/30(火)20:21 ID:DCr4w4dC(9/9) AAS
ん?SetVectorがダメならfloatに分割してSetFloatを3、4回走らせればいいだけの気がする・・・
それで許されるのならなんかガバガバだな
もしかして今回の犯人がSetVectorだったというだけで、Set系は全部アウトなのかも
要検証
498(1): 2024/01/30(火)22:43 ID:ZUYV+zXn(2/2) AAS
シェーダー最適化してもまともなAI組んだらCPUバウンドで動かなくなるから
単調なアニメーションさせることしか出来ないけどそれは大丈夫なのかな
499(1): 2024/01/31(水)03:53 ID:vVhRDcrl(1/6) AAS
>>498
AIって他の雑多な処理と同じくC#でコーディングしたもの?
毎フレーム走るC#の処理が多すぎるとCPUバウンドになるってこと?
どうなんだろう・・・IL2CPPやJobSystem+Burstとかで処理時間を詰めていけば乗り切れたりするのかな
500(1): 2024/01/31(水)04:43 ID:vVhRDcrl(2/6) AAS
>>497
やっぱり
SetFloatで試したけど、毎フレームSetFloatしたら70fpsまで落ちた
このカスタムシェーダ、マテリアルの値を毎フレーム更新しなきゃいけない機能を搭載してるから、その機能を一時的に殺すことで130fpsくらいまで上昇した
今のところわい個人はその機能に用がないからいいけど先方はそういうわけにもいかないだろうから、お礼がてら対策できないか検証してみるか
501: 2024/01/31(水)10:33 ID:T8K+yJgS(1/3) AAS
>>499
Job Burstでかなり早く処理できるよ
502(1): 2024/01/31(水)10:35 ID:T8K+yJgS(2/3) AAS
>>500
Set系が難ありって感じかな
C#スクリプトからその時の状況の変化でイベント発行してシェーダーはその値を使う
状況の変化がない場合はその値をずっと使い続けるみたいなことができればいいと思う
503(1): 2024/01/31(水)11:09 ID:vVhRDcrl(3/6) AAS
>>502
パフォーマンスはかなり最適化されてて、値をキャッシュできるものは元からキャッシュが実装されてた
このシェーダにはPerspectiveRemovalっていう機能があって、カメラとキャラクターの向きや位置関係をリアルタイムでシェーダに教えてあげる必要があるのでキャッシュが使えない
PerspectiveRemovalが何者か正確に理解できてないけど違いはこんな感じ↓
PerspectiveRemovalオフ(そこら辺のシェーダでも通常はこっち)
画像リンク[png]:tadaup.jp
PerspectiveRemovalオン
省1
504: 2024/01/31(水)11:25 ID:3RPE9L0m(1/2) AAS
>>503
顔がこっち向く的な?
505: 2024/01/31(水)11:26 ID:3RPE9L0m(2/2) AAS
その機能削除して普通にIKとかでよくね?
AnimationRiggingはデフォルトでBurst対応してたと思う
506(1): 2024/01/31(水)11:35 ID:vVhRDcrl(4/6) AAS
削除っていうか、このシェーダは購入したもので不定期的にあるアプデの恩恵を受けたい
&いつか自分がこの機能を使いたい時が出てくるかもしれないから、正式に修正してもらったほうが嬉しい
先方もわいが出したパフォーマンス最適化の提案を度々取り入れてくれてるので今回も直したソースコード送り付けてお願いしてみる
507: 2024/01/31(水)11:55 ID:T8K+yJgS(3/3) AAS
>>506
なるほどね
508: 2024/01/31(水)13:45 ID:vVhRDcrl(5/6) AAS
修正できたからウッキウキでお願いの連絡しようとしたら、とっくに修正終わってるからリリース待っててちょと一蹴された、さすがプロ
509(1): 2024/01/31(水)20:48 ID:YUKGGu/H(1/2) AAS
素朴な質問だけどシェーダー何使ってるの?
MMDはどうやってUnityにインポートしてる?MMD4Mecanim?
510: 2024/01/31(水)20:48 ID:YUKGGu/H(2/2) AAS
素朴な質問だけどシェーダー何使ってるの?
MMDはどうやってUnityにインポートしてる?MMD4Mecanim?
511(2): 2024/01/31(水)23:21 ID:vVhRDcrl(6/6) AAS
>>509
シェーダ公式ページ 画像多いので通信量とか注意
外部リンク:github.com
MMD4Mecanimでインポートしてる
正確には同梱されてるpmx2fbx.exeでfbxに変換するだけで、それ以降はMMD4Mecanimの機能は全く使ってない
512: 2024/02/01(木)01:07 ID:950QpuXW(1) AAS
>>511
あーこれ気になってた
売ってるのかこのシェーダー
513(1): 2024/02/01(木)18:34 ID:7MENY3uE(1/3) AAS
今日も今日とて、みみっちぃ最適化をする人生
・(Skinned)MeshRendererにはBoundsというプロパティがある
・Boundsとはモデルを覆う箱の大きさを設定するプロパティで、この箱がカメラの描画範囲にあるかどうかでカリング処理が施される
・Boundsの初期値はモデルの初期ポーズを覆う最低限の大きさしかない
→アニメーションでポーズが変わると初期値の箱から手足がはみ出ることがある
→結果として、本来カメラに映るはずの手足がカリングで非表示にされる
・これの簡単な対策はBoundsをクソでかくすることだが、でかすぎるとカメラにモデルが映ってないのにカリングされなくなる確率が高まる
省4
514: 2024/02/01(木)18:37 ID:7MENY3uE(2/3) AAS
UIの実装を進めてる時よりみみっちぃ最適化に熱を上げてる時のほうがイキイキしてるわいって・・・
515(1): 2024/02/01(木)19:00 ID:V9fYybJx(1) AAS
>>511
さんくす
これって超高価なシェーダーだよね。
デモが重かったのもあって、自分は買わなかった
>>513
手足がはみ出ない程度の大きさにすれば十分だと思うが・・・
516: 2024/02/01(木)19:10 ID:7MENY3uE(3/3) AAS
>>515
本来は企業向けのシェーダだから普通は個人で買わないわな
確かにここまでBoundsの大きさを緻密に制御する必要ないかも・・・まずはそこから見直してみる
517: 2024/02/01(木)20:18 ID:Rt8Mi+6/(1) AAS
トゥーンシェーダー色々あるけど機能が微妙に違っておもろいね
518(1): 2024/02/02(金)01:41 ID:QAswQ9a3(1/6) AAS
AA省
519: 2024/02/02(金)04:20 ID:4QkoN+Q0(1/2) AAS
そんなメチャクチャは拘らないけどアセットとか色んな機能とかは飽きないように程度に吟味する
520: 2024/02/02(金)04:32 ID:QAswQ9a3(2/6) AAS
わいはどのアセットも直感で手出してる感あるなあ
流石にこのシェーダは超高価だったので、直感に加えてホロライブのモデルに対して使われてる導入実績も買いの理由だった
521(1): 2024/02/02(金)13:10 ID:QAswQ9a3(3/6) AAS
シンボリックリンクというショートカットの亜種について学んだ
通常のショートカットはプログラムがショートカット自体を1ファイルとして認識してしまうけど、シンボリックリンクならプログラムがパスとして認識してくれるから
フォルダA/ファイルB.txtがある時にシンボリックリンクCを作成してシンボリックリンクC/ファイルB.txtにアクセスすると
フォルダAのファイルB.txtにアクセスしてくれる
開発環境では結構需要ある機能かも
と思ったけどないかも・・・
522(1): 2024/02/02(金)15:39 ID:dj/qkXQZ(1/2) AAS
>>521
WindowsのシンボリックリンクはUnityエディタで動作しないぞ。俺はジャンクションを使ってる。
外部リンク:note.com
523(1): 2024/02/02(金)15:45 ID:dj/qkXQZ(2/2) AAS
>>518
UIって面白さと無関係だと思うが
2Dゲームならまだしも、ホロライブの3Dゲームなんだよな?
524: 2024/02/02(金)16:03 ID:4QkoN+Q0(2/2) AAS
でも飽きないように適度に拘ったオサレなUIを作って欲しい
525: 2024/02/02(金)16:07 ID:QAswQ9a3(4/6) AAS
>>523
今のわいは細部に囚われすぎてるから
ゲームとして成立させるために必要な部分を進めるべきってことが言いたかった
526: 2024/02/02(金)16:09 ID:QAswQ9a3(5/6) AAS
>>522
まじすか、あれでもジャンクションって相対パスが使えないとかあったような・・・
でも開発環境なら別にいっか
527(1): 2024/02/02(金)16:27 ID:QAswQ9a3(6/6) AAS
今使ってるモニターが一応165Hzのはずなんだけど
60fpsと165fpsの滑らかさの違いがまるで分からん・・・
外部リンク[html]:electro-disco.com
ちなみにこのページだと、キャラクターの速度をメッチャ速くすれば60と120の差が若干分かる程度
そういうもんなんだろうか
528(2): 2024/02/03(土)06:33 ID:FhUQ5OGM(1/10) AAS
リリンク手書き風ってテクスチャに書き込んでるのかそういうシェーダーがあるのかな
529(1): 2024/02/03(土)07:34 ID:6KL4YSaI(1/7) AAS
>>527
普通に60FPSでぬるぬるを感じるって事は30FPSだと足りてなかったってだけだから
それ以上の速さじゃないと分からないので当たり
昔でも音ゲーのハイスピードくらいしか60FPS以上いらないと言われてたね
>>528
手書き風フォント?揺らぎエフェクト?モーショングラフィック?UIの話かな?
530(1): 2024/02/03(土)07:55 ID:FhUQ5OGM(2/10) AAS
>>529
キャラのシェーダーね。雑魚にも適用されてるっぽいし手間考えたらそういうシェーダーかなあ
531(1): 2024/02/03(土)08:02 ID:6KL4YSaI(2/7) AAS
>>530
手書きって鉛筆の光と影の奴かな?
今まさにトゥーンシェーダーでこれ使ってるわ、前無料で配ってたんだよね
外部リンク:assetstore.unity.com
532: 2024/02/03(土)08:40 ID:6KL4YSaI(3/7) AAS
似たようなのだとRealToonの方も多機能でDOTS対応とかもしてたり
Toony Colorsは自作で細かくいじれるとかあるね
533(1): 2024/02/03(土)08:49 ID:FhUQ5OGM(3/10) AAS
>>531
この手のシェーダー使ってるのは間違い無いんだけど、イラストレーターの原画みたいに
ゲーム中ムービー中でもえらく細かく丁寧に書き込まれてるんですよね
外部リンク:relink.granbluefantasy.jp
534(1): 2024/02/03(土)08:56 ID:6KL4YSaI(4/7) AAS
>>533
動画サムネで左側に出るのは原画でその右がコミックシェーダーかな?
535: 2024/02/03(土)09:21 ID:FhUQ5OGM(4/10) AAS
>>534
ムービー中はほぼ原画みたいですね
536: 2024/02/03(土)09:25 ID:FhUQ5OGM(5/10) AAS
Vtuberのモデルって100万くらいかかるらしいですね
537: 2024/02/03(土)09:27 ID:b1z9n3Ql(1/4) AAS
わいが使ってるモデルは公式サイトで配布されてる無料のMMDモデルよ
でも実際のところ1人あたり複数種類の衣装のバリエーションがある中で初期衣装しかMMDモデルが配布されてないので
2,3世代遅れてる感がある悲しみ
538(1): 2024/02/03(土)10:04 ID:L0jPLy0n(1) AAS
>>528
テクスチャにスペキュラとか書き込んでると思うよ
539: 2024/02/03(土)10:12 ID:b1z9n3Ql(2/4) AAS
ここ最近、本筋のゲーム開発進めるより寄り道してるほうが楽しい
他にも実際にゲームで使うかはともかく試してみたいことが色々ある
・マルチプレイモードを実装できるか?
・VR機能とか実装してみたい
・WebGLビルドはexeビルドと比べてどこまで太刀打ちできるのか?
はよ本筋進めろ
540: 2024/02/03(土)10:46 ID:FhUQ5OGM(6/10) AAS
>>538
アルベドじゃなくスペキュラに書き込んでるのか
541(1): 2024/02/03(土)10:52 ID:6KL4YSaI(5/7) AAS
桜井のYoutubeでも絵とか利便性はディレクターならまぁまぁ拘って良いと思う
本筋って個人制作だとやれる範囲少なくてバズるなら配信向けゲー
確実に売れるならパズルや脱出ゲーネタ考えれないとキツイ
542(1): 2024/02/03(土)11:31 ID:FhUQ5OGM(7/10) AAS
>>541
脱出ゲームってホラーゲームの事?
ホラーゲームならホラー専門の配信者が配信してくれるよね
543(1): 2024/02/03(土)11:39 ID:6KL4YSaI(6/7) AAS
>>542
脱出ゲーはスマホかな、最近は脱出と言うより失敗しなければクリア的なカジュアルクリックゲー
と言うかこれは2Dだからあんま3D化されてないね
ホラーとか操作激ムズゲー、なんか笑える奴が配信向けPCゲー
544: 2024/02/03(土)12:01 ID:FhUQ5OGM(8/10) AAS
>>543
脱出ゲームってストアに大量にあるけど売れてるんだ
545(1): 2024/02/03(土)12:04 ID:b1z9n3Ql(3/4) AAS
バズったり配信してもらえたら勿論嬉しいけどそれを目標に掲げてしまうと鬱になりそうな気がするから
自分の作りたいように作ってみる
Xで数人が大草原生やしてたら御の字
546: 2024/02/03(土)12:20 ID:6KL4YSaI(7/7) AAS
自分でもクソおもんないみたいな投げやりじゃなかったら何でも良いと思うよ
たけしの挑戦状みたいな意味不明なアドベンチャーでも何でもOK
547: 2024/02/03(土)12:51 ID:FhUQ5OGM(9/10) AAS
思いがけず注目されても昇進鬱みたいになる事もある
548(1): 2024/02/03(土)13:38 ID:FhUQ5OGM(10/10) AAS
>>545
自分はバズったりメディアに取り上げらたりしてフォロワーも増えたけど
古参やボスに悪い意味で目を付けられて敵も増えて疲れてSNSやめちゃった
549: 2024/02/03(土)13:52 ID:b1z9n3Ql(4/4) AAS
>>548
そういうのはどうしようもないので、メンタルを鍛えるとかエゴサしないとか自衛手段を確立させておくしか
550: 2024/02/05(月)05:37 ID:EMA1eHIP(1/4) AAS
粛々とUIの実装中
ゲームの中身は全部完成した後でババーンと晒したいから開発中は画像とか出せないので、このスレ的には盛り上げられないな・・・
時々本筋とは関係ない技術検証とか混ぜたほうが盛り上げられるけど、マルチタスクできないからそれやると本筋が完全にストップしてしまうもどかしさ
551: 2024/02/05(月)08:05 ID:Mat5R6oI(1/6) AAS
UIも綺麗じゃないとダサって思われてしまうのである程度のクオリティは必要だ
本筋は人によって作りたい物が違うのでそもそも盛り上がらないかもね
ゲームに必要なのは色んなシステムと素材なのでそこで盛り上がるのは健全なので全然OK
552: 2024/02/05(月)08:15 ID:Mat5R6oI(2/6) AAS
アセットも全部良いアセットの方が良いというもんでもない
ここは自作の方がいいな、ここは自作するのは厳しい、自分でしっかりとした理由で見極めないといけない
553: 2024/02/05(月)08:23 ID:Mat5R6oI(3/6) AAS
そもそもで言うとスクリプトも常にその選択を迫られる
全部細かくメソッドを分けるべきなのか?いやここは分けないようにしようとか
ここは追加編集多いからスクリプトだけでなくステートマシンやビヘイビアツリーにしようとか
554: 2024/02/05(月)08:56 ID:EMA1eHIP(2/4) AAS
わいの場合ホロライブの二次創作ゲームだから、アセットに関しては
ホロライブっぽさを出したい→自作
それ以外→既存アセット
になりそう
スクリプトは上みたいにパフォーマンスとかで問題が表面化したときの検証をここで話題にできるかな
あとはCyberAgentのPerformanceTuningBibleとか参考書の内容を守りながら地道に
555: 2024/02/05(月)09:08 ID:EMA1eHIP(3/4) AAS
わいの使ってる超高価シェーダの機能自慢でもするか
lilToonシェーダとか実際に使ったことはないから使い勝手とかクオリティがどんなもんか知らんのよな
556: 2024/02/05(月)09:36 ID:Mat5R6oI(4/6) AAS
そこはクオリティで比べるのは難しいね、適当に機能とかで選んで良いかも
557: 2024/02/05(月)10:09 ID:poWEMvtO(1/2) AAS
コードが公開されてるシェーダーは組み合わせたりカスタムして使ってるわ
558: 2024/02/05(月)10:19 ID:poWEMvtO(2/2) AAS
アセットに自作シェーダーが使われてる場合は他のシェーダーに変えたりカスタムしなおして使うことが多いです
559: 2024/02/05(月)10:22 ID:Mat5R6oI(5/6) AAS
シェーダーに強いの普通に凄いと思うで!
シェーダーグラフ同梱でも組み合わせるの難しいと思うし
上下前次1-新書関写板覧索設栞歴
あと 380 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.025s