2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

ホロライブの二次創作ゲーを作りたい

349 :名前は開発中のものです。:2024/01/18(木) 13:43:27.85 ID:VlZ88a8h.net
やっぱにじさんじだわ

350 :名前は開発中のものです。:2024/01/18(木) 13:51:59.14 ID:yF40EP0U.net
>>349
どっちも同じ定期

351 :名前は開発中のものです。:2024/01/18(木) 14:13:00.49 ID:M/zID+Xb.net
イッチはあてぃしとフブキ推しだと思ってたけど
今回の件で結構ダメージ受けてるかもしれないか・・・

352 :名前は開発中のものです。:2024/01/18(木) 14:19:52.39 ID:VlZ88a8h.net
メル推しっていんの?

353 :名前は開発中のものです。:2024/01/18(木) 18:32:04.01 ID:TxaV6iHk.net
>>351
星街の一件でだいぶ萎えてたけど、今回のもだいぶ萎えるわ

354 :名前は開発中のものです。:2024/01/19(金) 01:43:47.06 ID:5Ds9DH3o.net
3Dモデルを大量に動かす夢を諦めきれず GPU ECS Animation Baker $53.90 買った
Humanoidアニメーションが対応してなかった
―完―

そういうときもある

355 :名前は開発中のものです。:2024/01/19(金) 03:41:29.51 ID:cfZKtqxJ.net
そもそもポリゴン数多いキャラ大人数は無理では?

前に紹介したアイドルゲームの最適化事情

Unity新機能を活用した攻めの開発 次世代グラフィックを目指す『IDOLY PRIDE』 - ログミーTech
https://logmi.jp/tech/articles/325231

モバイル向け大量描画テクニック | Unity Learning Materials
https://learning.unity3d.jp/8860/

2万7千ポリゴンのアイドル4~5人だけでもエフェクトや観客にComputeShader、Burst、DrawProcedural、DrawMeshInstancedProcedural、DrawMeshInstancedIndirectで軽量化してる
無双的なゲームなら雑魚キャラのポリゴン少ないと思う

356 :名前は開発中のものです。:2024/01/19(金) 03:52:30.33 ID:h5ltcii/.net
UEで悪いんだけど敵AI増やすと直ぐ重くなるわ

357 :名前は開発中のものです。:2024/01/19(金) 06:43:32.25 ID:cfZKtqxJ.net
似たようなアセットあったわ、IK非対応だけど何か多機能っぽい
https://www.asset-sale.net/entry/GPU_Instancer_-_Crowd_Animations

ただこれって同じモデルをコピーしまくった時の最適化で無双にしか使えないんじゃね?
別のモデル数十体は意味ない気もする、まぁ草とかには使えるけど

358 :名前は開発中のものです。:2024/01/19(金) 08:41:51.64 ID:5Ds9DH3o.net
>>355 >>357
おーありがとう
ポリゴン数多い複数種類キャラ大人数は不可能ではない(※1)(※2)(※3)(※4)(※5)(※6)(※7)……というのが現状らしい
買ったやつは複数種類キャラ大人数は可能なんだけどHumanoidアニメーション非対応とかいくつか問題があって要対応…対応したところでわいの要件をどこまで満たせるか分からないけど
あとその記事のゲームはスマホアプリだからPC限定にすればもう少し選択肢が増えると思われる
草みたいな単純なモデルの大量描画なら有償アセット無くても実現可能なんだよね・・・

>>356
UEはこの手の最適化が得意なイメージあるけどどうなんだろう

359 :名前は開発中のものです。:2024/01/19(金) 08:42:52.30 ID:dflbxeb4.net
>>355
スマホだと無理だよ
PCならなんとかなる

360 :名前は開発中のものです。:2024/01/19(金) 09:00:06.13 ID:dflbxeb4.net
全員が同じ動きをするならVATを使って頂点シェーダーでアニメーションさせるのが一番軽い
Github探したらスキンドメッシュレンダラーをVATにするツールあるからそれでアニメーションクリップをVATにする
https://github.com/sandwichpuissant/Unity-VAT
あとはVAT動かすシェーダーを作ってVATをスクリプトで切替えながらアニメーションさせる

361 :名前は開発中のものです。:2024/01/19(金) 09:11:37.19 ID:5Ds9DH3o.net
>>360
さんくす
残念ながら全員に違う動きをさせたいという要件もある・・・買ったアセットはそれを満たしてたんだけど別のところで問題があって解決できるか要検証ってところ
今のところ同じ動きをするモデルを大量に用意したいシチュエーションがないけどいつか必要になった時のために保存しとくわ

362 :名前は開発中のものです。:2024/01/19(金) 09:43:32.97 ID:h5ltcii/.net
>>358
標準機能でLOD作成出来るみたい。どの位効果あるのか試してないけど

363 :名前は開発中のものです。:2024/01/19(金) 10:03:19.20 ID:5Ds9DH3o.net
Humanoidアニメーション非対応、マテリアルはモデル1体につき1種類のみ、ShaderGraph必須につきHLSLで記述した独自のカスタムシェーダ非対応
マニュアルに書いてない制約多すぎて買ったアセットの検証で心折れそう
こんな大して優先度高くないのに手間かかることやってるからゲーム開発進まないんよな

364 :名前は開発中のものです。:2024/01/19(金) 10:09:45.11 ID:5Ds9DH3o.net
>>362
UEはなんか英単語6文字の機能(名前忘れた)を使うとカメラとの距離に応じてローポリモデルをリアルタイム高パフォーマンスで生成して切り替えてくれるみたいな変態機能なかったっけ
うらやましいってここでつぶやいた気がするけど忘れた

365 :名前は開発中のものです。:2024/01/19(金) 10:25:11.23 ID:h5ltcii/.net
>>364
Naniteは現時点ではスケルタルメッシュには対応してないです従来のLODは有るけど

366 :名前は開発中のものです。:2024/01/19(金) 10:28:24.65 ID:sUYrDz8A.net
大量モブなら影を消して影響ライトも減らしていいかもな

367 :名前は開発中のものです。:2024/01/19(金) 10:37:57.99 ID:5Ds9DH3o.net
>>365
まじすか・・・この分野はどのエンジンも発展途上ということなのか

>>366
その手のエディタ画面を操作するだけで変更できるかわいい手法は一通り試してダメでした(>>270+α)

368 :名前は開発中のものです。:2024/01/19(金) 11:15:58.65 ID:5Ds9DH3o.net
買ったアセットが通常のモデルをECS専用のモデルに変換する手続きを踏むんだけど
変換後のモデルがAnimationClipを参照してなくてどうやってアニメーション再生してんだよって見てみたら
専用モデルと一緒にテクスチャを生成して1ピクセル1ピクセルに各フレームごとのボーンの情報を刻み込んで
そのテクスチャから読み取った情報でメッシュを動かすとかいう変態じみたことやってた

一旦忘れようかこのアセット

369 :名前は開発中のものです。:2024/01/19(金) 11:56:25.49 ID:Exn+M0xc.net
>>368
だからそれがVATなのでは?

370 :名前は開発中のものです。:2024/01/19(金) 12:08:08.00 ID:9VoXLv/9.net
>>369
あ、ごめんそういうことか!
理解した(多分)

371 :名前は開発中のものです。:2024/01/19(金) 19:23:22.24 ID:5Ds9DH3o.net
トワ様の配信今見たけどわいが今日やりたかったことホロアースがほぼ実現しとるやん・・・そういえばホロアース全然やってなかった
これに衝突判定も加えれば100点満点

372 :名前は開発中のものです。:2024/01/19(金) 19:41:37.38 ID:5Ds9DH3o.net
https://i.imgur.com/QeP5duK.png
>>357さんのアセット買って試した
本体$66+本体動かすために必要らしいやつ$82.50
今のところ2種類のモデル64体で120fpsくらい

実用化するために乗り越えなければいけない壁
・Transformの制御が一切効かないので髪やスカート等の揺れものが死んでる
・マテリアルの操作が一切効かないのでマテリアルから色を変えたり等の変更ができない
・従来の物理エンジンが使えない

他にも問題色々ありそうだけどとりあえず上3つは1つでも欠けたらこのアセットが没になるので何とか解決したいところ

373 :名前は開発中のものです。:2024/01/19(金) 19:45:26.73 ID:5Ds9DH3o.net
・実行前にアニメーションとモデルを結び付けて構築する必要があり、今のままだとアセットバンドル化できない
これあったわ、一番重要まである

374 :名前は開発中のものです。:2024/01/19(金) 20:28:56.36 ID:5Ds9DH3o.net
2種類64体のやつ
従来のSkinnedMeshRendererのパフォーマンスが左
新しく買ったアセットのパフォーマンスが右
https://i.imgur.com/7EQJbhW.png

おもっくそ慢心してるけど30種類くらいに増やしたらガクッとパフォーマンス落ちるとかありませんように・・・

375 :名前は開発中のものです。:2024/01/19(金) 20:29:17.86 ID:cfZKtqxJ.net
独自仕様でIK未対応って事は揺れものアセットもまぁ無理だわな
古い無双しか作れない、やっぱ実用例の記事って大事

376 :名前は開発中のものです。:2024/01/19(金) 20:32:12.07 ID:5Ds9DH3o.net
>>375
Transformが制御できないのは代わりに別のところで制御しているからだと思われるので、そこを特定してソースコードいじれば外部から疑似的にTransformを制御できるようになると考えられる
揺れものシステムはわいの自作なのでTransform制御と同じことができるなら揺れものは可能

377 :名前は開発中のものです。:2024/01/19(金) 20:36:40.42 ID:cfZKtqxJ.net
>>376
マジか、やるね~

378 :名前は開発中のものです。:2024/01/19(金) 21:38:01.21 ID:h5ltcii/.net
技術的に面白そうだし主さんのスキルも高いけど自由度が低いのでメタバース的なものには向いてなさそうだよね

379 :名前は開発中のものです。:2024/01/19(金) 23:42:40.53 ID:5Ds9DH3o.net
>>377
よいアセット紹介してくれてありがとうー
折角買ったし今のところ致命的な欠陥もないので使い倒してみる

>>378
ホロアースっていうメタバース的なゲームが今日わいが四苦八苦してたことをある程度やってのけてるかも、詳しくは知らないけど
わいもメタバース的なことがやりたいわけではないからなあ、、、

380 :名前は開発中のものです。:2024/01/20(土) 00:09:47.58 ID:pqHEwM1o.net
>>379
アクションゲームか~面白そうなことやってるので応援してます!!

381 :名前は開発中のものです。:2024/01/20(土) 12:57:34.50 ID:9e9lD738.net
買ったアセット「GPU Instancer - Crowd Animations」>>357 の現時点の問題点、懸念点

・モデルとアニメーションの組み合わせごとにVATを生成する必要がある
→わいの場合30体以上×150種類以上のVATを作ることになりそう
 手間もあるけどストレージの容量を浪費してしまいそう

・メッシュのRead/Writeを有効化する必要がある
→確かこれが有効だとメッシュがCPUメモリにも乗ってしまってメモリ効率が悪いとか・・・要検証

・GPUに高負荷がかかる
→2種類64体の場合、従来のSkinnedMeshRendererだとCPU30%&GPU30%だったのがアセットの場合CPU20%&GPU100%になる(パフォーマンスは>>374の通り)
 前者と後者で要求スペックがどう変わってくるかによってはこのアセットが没になる・・・

382 :名前は開発中のものです。:2024/01/20(土) 18:44:24.01 ID:9e9lD738.net
https://i.imgur.com/vvXcud4.png
2種類64体で120fpsだったのが30種類64体で30fpsまで落ちました
まあ実際にゲームの中で同時に動くのは10体程度だろうから全然いいんだけれども1人生首になってる子おるのなんでよ

383 :名前は開発中のものです。:2024/01/20(土) 18:54:35.51 ID:9e9lD738.net
https://i.imgur.com/mQsaViR.gif
マントが破綻してる子もいる
なんで?(殺意)

384 :名前は開発中のものです。:2024/01/20(土) 18:54:51.81 ID:HGX9gjC/.net
>>382
これってVRMで配布されてんの?

385 :名前は開発中のものです。:2024/01/20(土) 18:55:16.64 ID:9e9lD738.net
>>384
ホロライブMMDでググると公式の配布ページが出てくる

386 :名前は開発中のものです。:2024/01/20(土) 18:55:30.59 ID:HGX9gjC/.net
>>385
へー
公式で配ってんだ

387 :名前は開発中のものです。:2024/01/20(土) 19:00:01.87 ID:z3q9dEhd.net
まぁそんなもんじゃないの
ハイポリ大量って企業でもあんまないと思う、モンハン無双バイオ無双鉄拳無双ダクソ無双

388 :名前は開発中のものです。:2024/01/20(土) 19:03:42.08 ID:aBxLNj5m.net
1メッシュのポリゴン数なんぼよ?

389 :名前は開発中のものです。:2024/01/20(土) 20:26:43.84 ID:9e9lD738.net
>>388
少ない子で
 Tris: 436.4k Verts: 334.5k
多い子で
 Tris: 649.1k Verts: 1.1M
全種類あわせて
 Tris: 20.5M Verts: 15.6M

まあ元がMMDモデルだからこんな使い方>>383は想定されてないだろうね・・・

390 :名前は開発中のものです。:2024/01/20(土) 20:42:30.83 ID:HGX9gjC/.net
>>389
少なくて40万はそりゃ動かんだろ

391 :名前は開発中のものです。:2024/01/20(土) 21:19:41.59 ID:z3q9dEhd.net
FF16超えてるよ!

FF16→10万~15万ポリゴン(バハムートは30万)
God of War (PS4)→8万ポリゴン
Warlander→67000ポリゴン
バイオ5→15000ポリゴン

392 :名前は開発中のものです。:2024/01/20(土) 21:35:21.72 ID:9e9lD738.net
>>390 >>391
なんかおかしいと思ったらUnityで確認した>>389がおかしかった

少ない子
https://3d.nicovideo.jp/works/td63649
頂点数: 51,658 ポリゴン数: 83,202

多い子
https://3d.nicovideo.jp/works/td63632
頂点数: 184,046 ポリゴン数: 107,949

ガバガバやんけ

393 :名前は開発中のものです。:2024/01/20(土) 21:37:01.25 ID:9e9lD738.net
ニコニ立体見るとポリゴン数15万くらいの子もおる
まじで389ガバガバやんけ

394 :名前は開発中のものです。:2024/01/20(土) 22:52:37.55 ID:z3q9dEhd.net
Unityの統計情報のポリゴン数は影の影響で増えるらしい
確かFPSも正確じゃないからゲーム中にスクリプトで表示しないとダメ

https://booth.pm/ja/items/2291888

395 :名前は開発中のものです。:2024/01/20(土) 22:56:30.77 ID:aBxLNj5m.net
>>392
多分この表記は4角ポリゴンの数だろうからUnityでは少ない方で15万triくらいか

396 :名前は開発中のものです。:2024/01/20(土) 22:57:31.73 ID:aBxLNj5m.net
inportsettingのメッシュで確認してるんだよね?

397 :名前は開発中のものです。:2024/01/21(日) 10:08:23.20 ID:FNRdfgES.net
正確ではなくともおおよその値は分かると思って、389はGameタブのStatistics(統計情報ってやつ?)で確認してました・・・

>>394のアセットで確認してみたら>>392の少ない子は
 Verts: 56980 Tris: 83106
多い子
 Verts: 184909 Tris: 107949
大体ニコニ立体の情報と同じだった

>>395の少ない方が約15万triってのが何で確認できるのか分からないけど、一般的にポリゴン数と言われるやつは83106ってことかな?

398 :名前は開発中のものです。:2024/01/21(日) 10:25:36.61 ID:FNRdfgES.net
3Dモデルは専門外すぎて、ポリゴン数云々もよくわからんけど>>382 >>383のモデルが破綻してる子2人の治し方もわからない・・・
ダメもとでアセット販売者のメアドに問い合わせて確認してみるか・・・

399 :名前は開発中のものです。:2024/01/21(日) 10:31:20.53 ID:On0hd98j.net
mmd→Unityの時点でちゃんと変換出来てるかチェックしてみたら?

400 :名前は開発中のものです。:2024/01/21(日) 10:36:18.47 ID:FNRdfgES.net
>>399
従来のSkinnedMeshRendererでの描画は問題ない
変換の作業手順は全員同じだからピンポイントにこの2人だけバグってる理由がまじで分からない

401 :名前は開発中のものです。:2024/01/21(日) 10:54:09.65 ID:ZPNczpKU.net
Unityど素人だけどマントってクロスとか物理系の機能使ってない?そういうの全部オフにても駄目?

402 :名前は開発中のものです。:2024/01/21(日) 11:02:52.40 ID:On0hd98j.net
Unityと言うかMMDでも剛体のタイプ・物理演算の機能はあるので

MMD4Mecanimの中の
Mecanim(Humanoid)での VMD 再生は、まだ不完全な部分が多く全てのモーションで正常に再生できるとは限りません。
その場合は、Animation Type を Humanoid ではなく Generic を選択してください。
Unityで動作する リアルタイムの Bullet Physics プラグイン / C# DLL も同封しています。

ここで物理エンジン使ってる

403 :名前は開発中のものです。:2024/01/21(日) 11:11:32.81 ID:On0hd98j.net
あとIKの機能も使えないらしいからそこが引っかかってる可能性もある

404 :名前は開発中のものです。:2024/01/21(日) 11:20:49.59 ID:FNRdfgES.net
>>401 >>402
物理系の機能は全部殺してあるというかUnityにインポートした時点で意味を持たなくなってるはず
仮にそれが悪さしてたとしても、この2人以外にもボロが出てるはずなので謎

>>403
IKは従来のSkinnedMeshRendererでも用が無いので使ってないから関係ないと思う

405 :名前は開発中のものです。:2024/01/21(日) 11:29:22.04 ID:FNRdfgES.net
https://docs.unity3d.com/2021.3/Documentation/Manual/GPUInstancing.html
> GPU instancing isn’t compatible with the SRP Batcher. (GPU インスタンス化はSRP Batcherと互換性がありません)

従来のSkinnedMeshRendererと同じくSRP Batcherは効いてるものだと勝手に思い込んでたけど効いてないのか…>>382の時点で気づきたかった

色々検証してきて皆からアドバイスもたくさんもらってきたところ申し訳ないけど
このアセット(というかGraphics.DrawMeshInstancedIndirect)を使ってる時点で
異なるメッシュ異なるマテリアルの大量描画には向いてないとなるとこのアセットは没かもしれない…
でもまあ「このアセットは従来のSkinnedMeshRendererの代わりにDrawMeshInstancedIndirectを使って描画していて、DrawMeshInstancedIndirectはSRP Batcherが効かないので異なるメッシュ異なるマテリアルの大量描画には向いていない」という情報は実際に使って検証しないと分からなかったと思うので無意味ではなかったということで

今後この制約の中でも使い道が生まれるかもしれないので検証はもう少し続ける

406 :名前は開発中のものです。:2024/01/21(日) 11:34:36.30 ID:G6sF08L6.net
>>397
ポリゴンには4角ポリゴンと3角ポリゴンがあって基本的にモデリングは4角ポリゴンで行うので4角ポリゴン表記だと思った
4角ポリゴンの2倍が3角ポリゴンの総数だからUnity上でレンダリングされる時は4角ポリゴンの2倍

407 :名前は開発中のものです。:2024/01/21(日) 11:39:33.59 ID:On0hd98j.net
まぁDrawMeshだからまぁ同じ物が大量にある場合の最適化って所は変わらんね

408 :名前は開発中のものです。:2024/01/21(日) 11:43:54.81 ID:FNRdfgES.net
ここで度々取り上げられてたIDOLY PRIDEってスマホゲームの技術記事を見返してみたら、明言されてるわけではないけど
 異なるメッシュ異なるマテリアルの複数描画→SRP Batcher
 同一のメッシュ同一のマテリアルの大量描画→DrawMeshInstancedIndirect
って使い分けられてるね

異なるメッシュ異なるマテリアルの大量描画はダメか・・・

409 :名前は開発中のものです。:2024/01/21(日) 11:56:14.10 ID:FNRdfgES.net
参考までにポリゴン数0のメッシュで30種類64体を描画したら30fpsだった
>>382と変わって無くて草も生えない

>>406
勉強になる、ありがとうー

410 :名前は開発中のものです。:2024/01/21(日) 11:59:43.90 ID:On0hd98j.net
FPSもスクリプトで表示しないと正確な値出ないよ
Unity公式でも言ってる適当仕様

411 :名前は開発中のものです。:2024/01/21(日) 12:08:59.76 ID:FNRdfgES.net
>>410
https://i.imgur.com/EJzunTo.png
←30種類64体をGPU Instancerで普通に描画
→30種類64体をGPU Instancerでポリゴン数0のメッシュに差し替えて描画
スクリプトでfps見てるんだけどあんま変わらなかった(右下)

412 :名前は開発中のものです。:2024/01/21(日) 12:34:14.29 ID:FNRdfgES.net
よし1人が10人くらいに分身して暴れる必殺技を用意してこのアセットを活かそう(やけくそ)

413 :名前は開発中のものです。:2024/01/21(日) 12:56:59.26 ID:ZPNczpKU.net
>>383
マントを非表示にしてる子がいるみたいですけどそれは無しなんでしょうか?

414 :名前は開発中のものです。:2024/01/21(日) 12:58:56.33 ID:FNRdfgES.net
この機能を実装していて異なるアニメーションの再生に対応したアセットの実例が、問題点まみれで一度挫折した>>354
この時よりも多少知識が増えた今だから問題点を潰して使えるかもしれない、もう1回にらめっこしてみる

>>413
マントが破綻してる子はマントありモデルとマントなしモデルがある子なのでそれは問題ないです

415 :名前は開発中のものです。:2024/01/21(日) 12:59:42.77 ID:FNRdfgES.net
DOTS Instancingという機能がSRP BatcherとGPU Instancingを併用できるとの情報を入手
https://logicalbeat.jp/blog/15417/

この機能を実装していて、(以下>>414

416 :名前は開発中のものです。:2024/01/21(日) 18:35:15.54 ID:FNRdfgES.net
>>354は一旦置いといて

https://assetstore.unity.com/packages/tools/animation/rukhanka-ecs-animation-system-241472?locale=ja-JP
Rukhanka - ECS Animation System $66 買った

結局ShaderGraph縛りかと思ったけどShaderGraphを従来のHLSL記述のシェーダに変換できたので
あとはこれを今使ってるカスタムシェーダ用に書き換えられれば動くところまでは持っていける

セットアップはコンポーネントを1つアタッチするだけという手軽さ
これで30種類のモデルのパフォーマンスが良ければ・・・

417 :名前は開発中のものです。:2024/01/21(日) 18:44:03.47 ID:FNRdfgES.net
ゴリゴリDOTSを使ってるはずで大量のモデルを動かすサンプルもあるのに
Transformの制御が普通にできたりVATを使わず従来のAnimatorで動いてるっぽいのが却って不気味
今までのアセットとの違いというとLinear Blend SkinningというShaderGraphの機能を使ってるっぽいところ(結局HLSLシェーダに変換しても機能してるので今のところ問題なっしんぐ)
https://docs.unity3d.com/ja/Packages/com.unity.shadergraph@10.0/manual/Linear-Blend-Skinning-Node.html

418 :名前は開発中のものです。:2024/01/21(日) 23:57:51.04 ID:On0hd98j.net
ECSはまだ新しいからそんなに情報出てないね
企業もこれから使い出すのかと思うと未来ありそうな気はする

419 :名前は開発中のものです。:2024/01/22(月) 08:10:20.97 ID:oef3vWvB.net
>>418
DOTSはJobSystem+Burstの上に成り立ってる機能だけど
そのJobSystemとBurstが値型しか使えないとか制約が強すぎて嫌われてるから今のままだと使い勝手悪すぎて普及しづらそう
わいが自作した揺れものシステムもJobSystem+Burstで最適化したけどマジで面倒くさかった

420 :名前は開発中のものです。:2024/01/22(月) 17:40:26.02 ID:oef3vWvB.net
このアセットが使っていた機能は正確には「Mesh Deformation」という機能で、そもそも「Mesh Deformation」はDOTSとか関係ないというオチだった
このアセットは、DOTSでも「Mesh Deformation」が使えるよというのが売りのアセットで
従来のSkinnedMeshRendererに「Mesh Deformation」を適用するよりもDOTSで「Mesh Deformation」を使うほうがパフォーマンスは低く、わいが求めてるものとは全然関係ないアセットでした

なので今わいが使ってるカスタムシェーダに「Mesh Deformation」は使えるのか?使えば本当にパフォーマンスが上がるのか?が争点となっているけど
「Mesh Deformation」の適用前と適用したつもりのシェーダで比較してもパフォーマンスは変わらず40FPS前後
GPUは全然余裕あるから、ありえるとしたら「Mesh Deformation」が適用できていないかCPUバウンドで頭打ちになってるかのどちらか

421 :名前は開発中のものです。:2024/01/22(月) 18:17:35.31 ID:oef3vWvB.net
イッチ~😭

422 :名前は開発中のものです。:2024/01/22(月) 19:27:33.28 ID:8OZUJi12.net
ワイは失踪するしか……!もう道が……!

423 :名前は開発中のものです。:2024/01/22(月) 19:28:24.25 ID:oef3vWvB.net
何が問題になってるんだ
今なら見ての通り余裕があるから助け船出せるで

424 :名前は開発中のものです。:2024/01/22(月) 19:31:04.09 ID:8OZUJi12.net
モチベがない上にもはや時間を割こうとすら思えなくなってる

425 :名前は開発中のものです。:2024/01/22(月) 19:36:31.53 ID:8OZUJi12.net
Xのアカウント凍結してるんだが

426 :名前は開発中のものです。:2024/01/22(月) 19:36:55.49 ID:oef3vWvB.net
そりゃ重症だわな・・・
メルさんの件が効いてるのか他に何かあったのか分からんけど、モチベ低下は時間に身を委ねるしか回復手段なさそうだもんなあ
時間に身を委ねた結果回復するか完全に燃え尽きるかはコントロールしきれない、ぶっちゃけガチャ

427 :名前は開発中のものです。:2024/01/22(月) 19:38:21.62 ID:oef3vWvB.net
>>425
普通に見れたよ、なんだろう
とりあえずイッチの骨を拾ってこのスレはわいが使いつぶすから回復したら戻っておいで

428 :名前は開発中のものです。:2024/01/22(月) 19:38:49.89 ID:8OZUJi12.net
ゲーム制作中断した代わりにワイの読み上げあくたんの精度が上がった

429 :名前は開発中のものです。:2024/01/22(月) 19:40:32.55 ID:oef3vWvB.net
そういえばいたなそんなん
AIこよりみたいなやつだっけ
ゲームで使ったら怒られそうか・・・

430 :名前は開発中のものです。:2024/01/22(月) 19:43:25.81 ID:8OZUJi12.net
そらもうアウトラインから立ち幅跳びしてるようなもんやろ

431 :名前は開発中のものです。:2024/01/22(月) 19:57:51.79 ID:oef3vWvB.net
別クチでアドバイス頂けたりもして、結論が出ました

1.GPU Instancingを有効化して、少ない種類のキャラクターを大量描画
→GPUが100%に振り切れても120fpsくらいの高パフォーマンスを出せる

2.GPU Instancingを有効化して、多い種類のキャラクターを大量描画
→セットパスコールが多くてCPU使用率30%あたりで即CPUバウンドになるため、30fps程度しか出せない

3.従来のSkinnedMeshRenderer(SRP Batcherが有効)で、多い種類のキャラクターを大量描画
→セットパスコールはSRP Batcherにより大幅に削減できるが、それでもやはりCPUバウンドにより40fps前後しか出ない

3.の時点でセットパスコール数を減らさない限りCPU側のパフォーマンスが頭打ちなので、「Mesh Deformation」の力を借りても無意味とのこと
キャラクターの数や質を維持したままセットパスコール数によるCPUバウンドを解決することは現状不可能とのことで、アキラメロンという結論になりました

アドバイスくれた皆様方ありがとうございました
70レスくらい使い潰した性能検証は一旦終えて、わいは少し前までやってたいつものゲーム開発に戻ります

432 :名前は開発中のものです。:2024/01/22(月) 20:37:43.32 ID:oef3vWvB.net
なんかQiitaの記事1本書けそうなくらいのボリュームあったなこの検証
書かないけど

433 :名前は開発中のものです。:2024/01/22(月) 21:53:26.61 ID:hx/ZQSsZ.net
まぁ難しい事せず普通に作ろう

後ろの群衆なんかもImpostorsで作った方が早いとかね
https://youtu.be/8iKWEYvozws?t=1013

434 :名前は開発中のものです。:2024/01/22(月) 22:05:55.90 ID:hx/ZQSsZ.net
今流行りのパルワールドも最初はオールアセットゲーから始まっていた
https://news.denfaminicogamer.jp/interview/190906a

インディーゲームは細かいクオリティより新しい面白さに一点集中しよう
https://youtu.be/u1C4EahF4mA

435 :名前は開発中のものです。:2024/01/23(火) 08:25:55.04 ID:1/XcE8eH.net
性能検証>>431について補足

> 3.従来のSkinnedMeshRenderer(SRP Batcherが有効)で、多い種類のキャラクターを大量描画
> →セットパスコールはSRP Batcherにより大幅に削減できるが、それでもやはりCPUバウンドにより40fps前後しか出ない

→PostProcessを無効化する:40fps
→+揺れものシステム&物理演算を無効化する:50fps
→+とあるコンポーネントを無効化する:70fps

という感じで色々無効化したらパフォーマンスが上がった
最後のとあるコンポーネントというのは、キャラクターの眉毛を髪の上から描画させるためのコンポーネントのことで
毎フレームSkinnedMeshRenderer.BakeMesh()が走っていたために微妙な負荷になっていたみたい
こいつを切り捨てるのは割と現実的なのでこれでパフォーマンスが上がるなら消すか

436 :名前は開発中のものです。:2024/01/23(火) 08:27:20.42 ID:1/XcE8eH.net
>>434
新しい面白さなあ・・・前例がほぼない的な意味でなら新しさはあると思うんだけど万人受けは期待してない
わいにとっては絶対面白いけどそれがどこまで受けるかは実際に公開してみないとわからないかも

437 :名前は開発中のものです。:2024/01/23(火) 09:06:59.25 ID:A5/zzmn2.net
あとパルワールドで思い出したけどこれエンジンがUEになってるから
Unityでもある程度重いソフトはMOD切ってIL2CPPでテストも毎回ビルドってのもありうるね

438 :名前は開発中のものです。:2024/01/23(火) 09:52:23.62 ID:1/XcE8eH.net
>>437
IL2CPPでもMonoでも「キャラクターの種類が増えるほどフレームレートが目に見えて低下する」という課題があったのでそれを解決したかったのが今回の検証なんだけど
まあ結局ダメだったのでIL2CPPビルドに頼ったりキャラの数を減らしたりCPUバウンドの要因を地道に削っていくって方向で・・・

439 :名前は開発中のものです。:2024/01/23(火) 09:59:55.78 ID:1/XcE8eH.net
わいが使ってるシェーダが超有能すぎる(実は今回の性能検証でもこっそり一役買ってる)

Qiitaで紹介記事書きたいくらいなんだけど、顧客を絞って1人1人に対するサポートを手厚くやっていきたいという先方のご意向で書けないもどかしさ

440 :名前は開発中のものです。:2024/01/23(火) 10:03:04.39 ID:1/XcE8eH.net
https://i.imgur.com/xwoB9zP.jpeg


441 :名前は開発中のものです。:2024/01/23(火) 10:08:04.96 ID:1/XcE8eH.net
https://i.imgur.com/TfVzuM3.jpeg
こっちにしとこ

442 :名前は開発中のものです。:2024/01/23(火) 10:38:26.22 ID:A5/zzmn2.net
まぁ後は正攻法やね
マップならPerfect Cullingとか言う謎のアセットもあるけど

https://gamemakers.jp/article/2023_12_11_57024/
https://github.com/CyberAgentGameEntertainment/UnityPerformanceTuningBible

443 :名前は開発中のものです。:2024/01/23(火) 12:04:21.03 ID:1/XcE8eH.net
>>442
複数種類のキャラクターが画面内を暴れまわる感じのゲーム作りたいから
カメラに映ってない間という条件のあるカリング系は大体没なんだ・・・

444 :名前は開発中のものです。:2024/01/23(火) 12:05:10.00 ID:1/XcE8eH.net
あとそのあたりのドキュメントは3,4回くらい読み返してる
英語のほうはあんま理解できてる気しないけど

445 :名前は開発中のものです。:2024/01/23(火) 12:09:45.80 ID:U3m3M0NO.net
>>443
閃乱カグラ?

446 :名前は開発中のものです。:2024/01/23(火) 12:14:07.10 ID:1/XcE8eH.net
>>445
閃乱カグラは全然知らない
スマブラとかスーパーポケモンスクランブルが近いかも

447 :名前は開発中のものです。:2024/01/23(火) 13:36:49.37 ID:U3m3M0NO.net
>>446
カグラは無双系ですね。キャラクター重視のゆるいアクションって作ってる途中で
面白くないかもって思っちゃうかもしれないのが難しいところです…

448 :名前は開発中のものです。:2024/01/23(火) 15:01:44.73 ID:1/XcE8eH.net
>>447
スマブラXに百人組み手っていうモードがあったけどSPにもあるんだろうか、無双系って言われてるのって大体あれのことだよね
あれほど雑魚敵がポンポン死んで目まぐるしく入れ替わる感じでもなく
かといってスマブラほど1人1人とのプロレスを重くしたいわけでもなく
その中間くらいにしたい・・・って文章にしてみたけど自分でもよくわからん、思うが儘に作ってみてどうなるかのお楽しみ

449 :名前は開発中のものです。:2024/01/24(水) 00:54:47.29 ID:DwvPG79i.net
主さんにはシェーダーとか開発者を唸らす方向で頑張って欲しい

450 :名前は開発中のものです。:2024/01/24(水) 04:50:44.63 ID:VfW00VT7.net
なんじゃそりゃ
まあ作りたいゲームの方向性も決まってるし 万人受けは狙わず数人が大草原生やしてくれれば御の字なのでやりたいようにやってみます

451 :名前は開発中のものです。:2024/01/24(水) 08:06:32.59 ID:VfW00VT7.net
だいぶ前にスマホ版ビルドしてみたけどメモリ不足で無理だったってのがあったけど
URPの設定のRenderScaleを2倍にしてて5000×2500とかいうとんでもない解像度で描画しようとしてたのが原因だった
RenderScaleを等倍にしたらメモリ使用量も0.6GBくらいに収まって普通にスマホ版で動かせました

452 :名前は開発中のものです。:2024/01/24(水) 09:11:13.67 ID:fVi59P06.net
解像度下げるのも最適化やね

453 :名前は開発中のものです。:2024/01/24(水) 09:23:31.06 ID:VfW00VT7.net
今回はスマホで2倍ってのが意図してなかったものだからよかったけど
PCだと2倍と等倍でもかなり差が分かるし(一応画質設定で下げられるようにする)
おそらくスマホも等倍未満にすると目に見えて画質が下がってしまうのでできればこのラインを維持したいところ・・・

454 :名前は開発中のものです。:2024/01/24(水) 09:30:53.00 ID:AYEYQDPa.net
最近のスマホは馬鹿みたいに解像度高いからな

455 :名前は開発中のものです。:2024/01/24(水) 09:32:51.19 ID:AYEYQDPa.net
昔Unity公式がAMDのアップスケーリング技術使えば2Kでレンダリングしたやつを4Kで描画できるからいいよって言ってた
https://youtu.be/_cKixSjjTjI?si=11QTNBjo9xm3vhAi

456 :名前は開発中のものです。:2024/01/24(水) 10:03:24.49 ID:VfW00VT7.net
>>455
ありがとう
Bilinearと教えてくれたFSRで比較してみたけど、fps、CPU使用率、GPU使用率のいずれも大して変わらなかった
今のわいの環境だとGPUは余力が余りまくってるから、そっちを最適化する技術だとしたらCPUバウンドのわいの環境には響かないかも

457 :名前は開発中のものです。:2024/01/24(水) 10:06:59.85 ID:VfW00VT7.net
でもそうかスマホ版だと影響が如実に現れてるかもしれないのか
本命はPC版でスマホ版は公開する予定がないけどついでに検証してみる

458 :名前は開発中のものです。:2024/01/24(水) 14:52:46.31 ID:AYEYQDPa.net
まぁ動画見る限りいろんなゲームでFSR使われてるって事は4Kで全部レンダリングしてるところは少ないからFSRのほうがバイリニアより性能いいならFSRでアップスケーリングしたらいいんじゃね?

459 :名前は開発中のものです。:2024/01/25(木) 02:00:18.31 ID:MpbjV3ld.net
そりゃそうか、問題なさそうだしそうします

今日(昨日)も性能検証の続きみたいなことやってたけど、シェーダ販売元がパフォーマンスについて詳しく見てくれることになりました
買い切りなのに申し訳ないと思いつつ甘えるしかない

460 :名前は開発中のものです。:2024/01/26(金) 09:25:09.60 ID:zZVqnd62.net
敵AIを200体くらい表示して重くてローポリモデルにしたり解像度下げたりしたけど効果なくて
20体~50体くらいに下げたら軽くなった事があります。CPUがボトルネックになってた(UE勢)

461 :名前は開発中のものです。:2024/01/26(金) 12:51:19.42 ID:FIRNyUEg.net
>>460
そのモデルたちが同じ種類のキャラクターだとUnityではかなり最適化できて無双系のゲームも現実的なんですが
種類が異なるキャラクターを大量に表示するとCPUがボトルネックになってどうしようもなくなるのが現状ですね
UEも似た感じなんじゃないでしょうか

462 :名前は開発中のものです。:2024/01/26(金) 13:23:45.19 ID:FIRNyUEg.net
Bilinear レンダリングスケール1倍
https://tadaup.jp/615974d6f.jpg

FSR レンダリングスケール1倍
https://tadaup.jp/6159760f0.jpg

レンダリングスケール2倍
https://tadaup.jp/615977099.jpg

PC版でも1920x1080の等倍と2倍ならメモリ使用量が1GB変わるくらいなのでまあ現実的(?)

463 :名前は開発中のものです。:2024/01/27(土) 06:32:03.87 ID:JDuT7AmC.net
>>461
UEでキャラクターをGPUインスタンスするアセット探したら6万くらいして驚いたわ~

464 :名前は開発中のものです。:2024/01/27(土) 07:06:33.46 ID:5rs1sE7D.net
>>463
なんでだ・・・そんな高価な技術じゃないと思うんだけど
Naniteだっけ?あんな変態機能はロハで使えるんだから、GPUインスタンスと同等以上の効果が得られる別の機能が何かしらありそうではあるけど

465 :名前は開発中のものです。:2024/01/27(土) 09:51:46.96 ID:vBHCc7ny.net
UnityはGPUインスタンシングは無料だからな
最近はDOTsインスタンシングだし

466 :名前は開発中のものです。:2024/01/27(土) 10:20:40.60 ID:5rs1sE7D.net
DOTSインスタンシングは静的なオブジェクトの大量描画に関してはGPUインスタンシングの上をいくんだろうけど
スキニングが有償アセットでしか対応してない上にパフォーマンスも従来より落ちるのが悲しい
静的なオブジェクトは今のSRP Batcher依存の最適化で十分だからDOTS対応は後回しでいいかな

467 :名前は開発中のものです。:2024/01/27(土) 13:21:21.90 ID:5rs1sE7D.net
3か月くらい前までメモリ32GBでちょっと足りないかもなあ程度だったのに
今日64GBメモリでメモリ不足になった
ゲーム開発以外にも裏でChrome開きまくってたのもあるかもしれないけど、こりゃ半年後には128GBコースか?

468 :名前は開発中のものです。:2024/01/27(土) 14:33:26.94 ID:5rs1sE7D.net
1.わいが使ってるカスタムシェーダを普通に使って(>>462)、物理演算などのグラフィック関係以外を全て切ると
 約70fps 1フレームあたり約14ms

2.この状態からマテリアルのプロパティを未指定(Texture、色などの指定を初期値)にすると
 約75fps 1フレームあたり約13.3ms

3.ここからさらに、シェーダをUniversal Render Pipeline/Litに変更すると
 約150fms 1フレームあたり約6.7ms

4.なお1.の状態からシェーダをUniversal Render Pipeline/Litに変更しただけの場合
 約120fps 1フレームあたり約8.3ms

わいが使ってるカスタムシェーダがもうちょい最適化されてくれると嬉しす・・・!

469 :名前は開発中のものです。:2024/01/28(日) 05:05:06.59 ID:vZodVcfs.net
>>464
6万のアセットってこれね。静的メッシュをインスタンスするのはUE4の時からあります
https://youtu.be/LJDpybYgWtA

470 :名前は開発中のものです。:2024/01/28(日) 05:19:36.46 ID:I69l8S6B.net
>>469
あれ?複数種類のモデルやアニメーションに対しても強いなら6万でも普通にほしい
Unityで欲しかったな・・・

471 :名前は開発中のものです。:2024/01/28(日) 16:00:44.34 ID:I69l8S6B.net
今シェーダ開発者さんにパフォーマンスの調査を依頼してるのもそうだけど、専門家に丸投げしたほうが時間効率が良いことは頭では分かってるのに
パフォーマンス最適化への未練を断ち切れずにせっかくの日曜日を地味な性能検証で潰す人生

472 :名前は開発中のものです。:2024/01/28(日) 20:22:21.54 ID:I69l8S6B.net
今日の性能検証延長戦の成果

https://qiita.com/UnagiHuman/items/7db6c75adea0d5862acf
色々な記事を巡り巡って辿り着いたこの記事で、SkinnedMeshRendererをComputeShaderでミラーリングする方法を覚えました!!!!
SkinnedMeshRendererなしでボーンを制御したかったはずなのに結局SkinnedMeshRendererありき。ドウシテ・・・

473 :名前は開発中のものです。:2024/01/29(月) 11:09:41.21 ID:J/zXr0Lj.net
> Batch cause
> This material has custom buffer override

マテリアルのプロパティにComputeBufferを指定するとSRP Batcherが無効化する問題と喧嘩中
この喧嘩に勝てばパフォーマンスが爆上がりする可能性があってちょっとワクワク

474 :名前は開発中のものです。:2024/01/29(月) 15:55:59.16 ID:J/zXr0Lj.net
従来のSkinnedMeshRendererを殺してBatchRendererGroupベースでモデルを描画することに成功しました
ボーンのTransformを操作することでモデルも変形するので、アニメーションも従来のAnimatorで再生できる

ただし肝心の本命のパフォーマンスが従来のSkinnedMeshRendererより低い
従来のSkinnedMeshRendererでアニメーション再生中 ≒ BatchRendererGroup描画でアニメーション停止中

画像の左が従来のSkinnedMeshRendererでアニメーション再生
真ん中の山がBatchRendererGroup描画でアニメーション再生
右がBatchRendererGroup描画でアニメーション停止
https://i.imgur.com/lzm2gop.png

まだJobSystem+Burstとかで改善できる余地はあるので、まだ希望を捨てずに検証を続けます

475 :名前は開発中のものです。:2024/01/29(月) 17:11:25.49 ID:ibDcrJvt.net
>>474
そういうのはBurst、JobSystemだね

476 :名前は開発中のものです。:2024/01/29(月) 19:25:41.44 ID:J/zXr0Lj.net
>>475
ぶっちゃけネットの海に落ちてるソースコードをいい感じに結合しただけなんだけど
元々のコードが結構最適化されてて詰める余地がなくて割とピンチ

そもそも従来のSkinnedMeshRendererはモデルのメッシュに対するRead/Writeが無効でもスキニングできるのに
BatchRendererGroupでスキニングするためにはメッシュのvertices/normals/tangentsの取得が避けて通れなくてRead/Writeを有効にせざるを得ない時点で勝てない気がしてきた

でもなんか勝ってる人(企業?)もいるっぽいんだよなあ・・・
https://www.infiniteloop.co.jp/tech-blog/2023/07/animatorreplacepart1/

477 :名前は開発中のものです。:2024/01/29(月) 20:07:32.48 ID:J/zXr0Lj.net
やべ、今の実装だとBlendShape対応してなかった
既にパフォーマンス負けてるのにここから更に落ちるのか・・・

478 :名前は開発中のものです。:2024/01/29(月) 21:23:04.00 ID:24olBCr9.net
>>476
なるほど
すごいことやってる人多いね

479 :名前は開発中のものです。:2024/01/30(火) 00:56:34.80 ID:sbR3UD9S.net
このDOMOTIONってどうなんだろうか?
https://github.com/gamedev-pro/dmotion?tab=readme-ov-file

現在の機能(v0.3.4)
完全にバーストされたランタイム
ステートマシンビジュアルエディタ
遷移: Boolean、Int、Enum、End Time
コードでクリップを再生するためのシンプルな API (サンプルを参照)
1D ブレンド ツリー
アニメーション イベント
ルートモーション(デフォルトの動作をオーバーライドする必要がある場合、WriteGroupのサポートあり)
オブジェクトアタッチメント
最適化されたスケルトンと最適化されていないスケルトンのサポート
ステートマシンのビジュアルデバッグ
計画されている機能
2D ブレンド ツリー (デカルト/フリーフォーム)
ステートマシンオーバーライド(別名:アニメーターオーバーライドコントローラー)
サブステート
IK サポート
複数レイヤー
スケルトンマスク

480 :名前は開発中のものです。:2024/01/30(火) 05:39:07.92 ID:DCr4w4dC.net
>>479
あざます!

使ってみた所感
・URP、Unity.Entities、Unity.Entities.Graphics等の依存してるパッケージの必要なバージョンが良くわからない
 特定のパッケージが新しすぎるとそんなクラス無いと怒られるし、それを直すために特定のパッケージのバージョンを落とすと別のクラスが無いと怒られたりする
 一部のエラーを握りつぶしてごり押したので不完全な状態
・ホロライブのMMDモデルだとボーンの数が多すぎて怒られた
 原文:Skeleton entity Unity.Entities.Entity has 376 bones. Skinned mesh entity Latios.EntityWith`1<Latios.Kinemation.SkeletonDependent> has 371 bone references. The sum of these exceed the max shader capacity of 682.
・DMotion Proがアセットストアでリリース予定らしいので期待

そしてやはりShaderGraph限定の機能を使っている(Linear Blend Skinning)
サンプルに含まれてるシェーダだと結構いいパフォーマンス出たけど、わいのカスタムシェーダに置き換えてどこまで落ちるか・・・
そもそもLinear Blend Skinningをカスタムシェーダに移植できるのか試すぞ!というところで超朗報

481 :名前は開発中のものです。:2024/01/30(火) 05:58:14.77 ID:DCr4w4dC.net
長老法!!!!
わいのカスタムシェーダの開発者さんがシェーダ起因のCPUバウンドの原因を特定してくれてパフォーマンスがどちゃくそ改善されました!!!

ビフォー
https://i.imgur.com/2a9gyX8.png

アフター
https://i.imgur.com/TfAT4MG.png

パフォーマンスが低かった理由も教えてくれたけどわいだったら絶対気づけなかった、流石プロ
確かUniversal Render Pipeline/Litだと150fpsとかだったから、ここまでくればもう十分まである
でも折角なのでウィニングラン(?)として>>474>>479の検証だけはやりきりたい

482 :名前は開発中のものです。:2024/01/30(火) 06:15:32.02 ID:25oO7Vfp.net
結局シェーダーの違いやったんか
トゥーンシェーダ色々あるけど結構違いありそうやな

483 :名前は開発中のものです。:2024/01/30(火) 08:16:39.24 ID:sbR3UD9S.net
>>481
やったじゃん

484 :名前は開発中のものです。:2024/01/30(火) 08:19:48.69 ID:sbR3UD9S.net
てかBone376あるとか書いてあるけどこれって全部でってこと?
1つのモデルで376ってありすぎじゃね?

485 :名前は開発中のものです。:2024/01/30(火) 10:02:36.71 ID:DCr4w4dC.net
1つのモデルで371だった それをDOTS用に変換すると376になる?
スカートとか髪のボーン1つ1つにモデルを変形させるための本物のボーンとは別で
用途が分からないダミーのボーンがあったりするせいか頭数が多い

そしてこのボーンの上限超過エラーをコメントアウトして握りつぶしてみたけど表示が破綻してダメだった
このライブラリに同梱されてるシェーダでも表示が崩れるので、上限には意味があるらしい
Proがリリースされたら上限が上がることを祈りつつこのライブラリは一旦保留・・・

486 :名前は開発中のものです。:2024/01/30(火) 11:08:42.21 ID:ZUYV+zXn.net
Unityって何々と何々は共存出来ないって多すぎじゃないですか

487 :名前は開発中のものです。:2024/01/30(火) 11:16:32.01 ID:DCr4w4dC.net
わかる JobSystem+Burstみたいな値型限定で高速化とかするくらいならいっそC++でコーディングさせてくれとは思う
仮にC++で書けたとして本当に速くなるのかは分らんけど

488 :名前は開発中のものです。:2024/01/30(火) 11:21:52.49 ID:25oO7Vfp.net
UEの最適化も結構大変そうだよ
スクエニとか自社の描画システムに切り替えて標準機能ガン無視とかしてる
https://www.docswell.com/s/EpicGamesJapan/ZVPELZ-cedec2018-ue4-CharacterPerformance

489 :名前は開発中のものです。:2024/01/30(火) 12:30:46.72 ID:DCr4w4dC.net
やっぱどこのゲームエンジンも低レベルなAPIを酷使して自前で全部実装するのが最強なのか

490 :名前は開発中のものです。:2024/01/30(火) 15:36:01.77 ID:DCr4w4dC.net
BatchRendererGroupでモデルを描画するためには
1. BatchRendererGroupにメッシュとマテリアルを登録する
2. 実際に描画するために他にも色々登録する
必要があるんだけど、2をやらずにメッシュとマテリアルを登録するだけで登録数に比例した負荷が発生してしまう

描画しなくともこの負荷だけで従来のSkinnedMeshRendererにパフォーマンスで負ける
メッシュとマテリアルを登録せず描画処理だけ走らせると150fpsくらい出る
登録することで発生する負荷を追求したいのにProfiler君さあ・・・
https://i.imgur.com/gYgr1JN.png

491 :名前は開発中のものです。:2024/01/30(火) 16:30:46.65 ID:AjZdEr3a.net
>>487
結局IRにするなら普通にC#使ったほうがいいと思うわ
C++だとしても変わらんし多分Burstのほうが早いまである

492 :名前は開発中のものです。:2024/01/30(火) 16:32:12.53 ID:AjZdEr3a.net
基本的にボーン数はパフォーマンスに影響あるからできるならいらないボーンは削除したほうがいいと思う

493 :名前は開発中のものです。:2024/01/30(火) 16:59:29.90 ID:HWvPLj+X.net
あくたんと天月(´;ω;`)

494 :名前は開発中のものです。:2024/01/30(火) 17:21:10.35 ID:DCr4w4dC.net
なんかもう>>481で満足しちゃったので(他力本願)
BatchRendererGroupは異なるメッシュやマテリアルの大量描画には向かない可能性があるということで一旦置いておく

300以上のボーンを持つキャラクター30体の不要なボーンを精査するのは時間帯効果が低そうなので優先度低めのタスクとして頭の片隅においておきます・・・

495 :名前は開発中のものです。:2024/01/30(火) 17:22:01.84 ID:DCr4w4dC.net
ちなみに>>481のパフォーマンスが上がった理由は「マテリアルに対してSetVectorしたフレームではConstantBufferの更新が走るので、SetVectorしたマテリアルの数に比例してパフォーマンスが低下する」とのこと

https://note.com/kazuyaraki/n/n71555418dd96
> UnityのSRP Batcherとは何なのか
> 一言でいえば、Draw Call毎にConstant Bufferを更新するという非効率な仕組みをやめたということです。これによりレンダリングに関連するCPUコストが削減されます。

毎フレームSetVectorするとSRP Batcherの強みを殺すことになる
勉強になりました

496 :名前は開発中のものです。:2024/01/30(火) 20:09:55.73 ID:8GAA7lp1.net
>>495
なるほどサンクス

497 :名前は開発中のものです。:2024/01/30(火) 20:21:29.65 ID:DCr4w4dC.net
ん?SetVectorがダメならfloatに分割してSetFloatを3、4回走らせればいいだけの気がする・・・
それで許されるのならなんかガバガバだな
もしかして今回の犯人がSetVectorだったというだけで、Set系は全部アウトなのかも
要検証

498 :名前は開発中のものです。:2024/01/30(火) 22:43:19.95 ID:ZUYV+zXn.net
シェーダー最適化してもまともなAI組んだらCPUバウンドで動かなくなるから
単調なアニメーションさせることしか出来ないけどそれは大丈夫なのかな

499 :名前は開発中のものです。:2024/01/31(水) 03:53:20.43 ID:vVhRDcrl.net
>>498
AIって他の雑多な処理と同じくC#でコーディングしたもの?
毎フレーム走るC#の処理が多すぎるとCPUバウンドになるってこと?
どうなんだろう・・・IL2CPPやJobSystem+Burstとかで処理時間を詰めていけば乗り切れたりするのかな

500 :名前は開発中のものです。:2024/01/31(水) 04:43:02.64 ID:vVhRDcrl.net
>>497
やっぱり
SetFloatで試したけど、毎フレームSetFloatしたら70fpsまで落ちた
このカスタムシェーダ、マテリアルの値を毎フレーム更新しなきゃいけない機能を搭載してるから、その機能を一時的に殺すことで130fpsくらいまで上昇した
今のところわい個人はその機能に用がないからいいけど先方はそういうわけにもいかないだろうから、お礼がてら対策できないか検証してみるか

501 :名前は開発中のものです。:2024/01/31(水) 10:33:27.78 ID:T8K+yJgS.net
>>499
Job Burstでかなり早く処理できるよ

502 :名前は開発中のものです。:2024/01/31(水) 10:35:59.05 ID:T8K+yJgS.net
>>500
Set系が難ありって感じかな
C#スクリプトからその時の状況の変化でイベント発行してシェーダーはその値を使う
状況の変化がない場合はその値をずっと使い続けるみたいなことができればいいと思う

503 :名前は開発中のものです。:2024/01/31(水) 11:09:28.53 ID:vVhRDcrl.net
>>502
パフォーマンスはかなり最適化されてて、値をキャッシュできるものは元からキャッシュが実装されてた
このシェーダにはPerspectiveRemovalっていう機能があって、カメラとキャラクターの向きや位置関係をリアルタイムでシェーダに教えてあげる必要があるのでキャッシュが使えない
PerspectiveRemovalが何者か正確に理解できてないけど違いはこんな感じ↓

PerspectiveRemovalオフ(そこら辺のシェーダでも通常はこっち)
https://tadaup.jp/73e565be5.png

PerspectiveRemovalオン
https://tadaup.jp/73e56309a.png

504 :名前は開発中のものです。:2024/01/31(水) 11:25:56.94 ID:3RPE9L0m.net
>>503
顔がこっち向く的な?

505 :名前は開発中のものです。:2024/01/31(水) 11:26:47.66 ID:3RPE9L0m.net
その機能削除して普通にIKとかでよくね?
AnimationRiggingはデフォルトでBurst対応してたと思う

506 :名前は開発中のものです。:2024/01/31(水) 11:35:08.35 ID:vVhRDcrl.net
削除っていうか、このシェーダは購入したもので不定期的にあるアプデの恩恵を受けたい
&いつか自分がこの機能を使いたい時が出てくるかもしれないから、正式に修正してもらったほうが嬉しい
先方もわいが出したパフォーマンス最適化の提案を度々取り入れてくれてるので今回も直したソースコード送り付けてお願いしてみる

507 :名前は開発中のものです。:2024/01/31(水) 11:55:33.80 ID:T8K+yJgS.net
>>506
なるほどね

508 :名前は開発中のものです。:2024/01/31(水) 13:45:40.82 ID:vVhRDcrl.net
修正できたからウッキウキでお願いの連絡しようとしたら、とっくに修正終わってるからリリース待っててちょと一蹴された、さすがプロ

509 :名前は開発中のものです。:2024/01/31(水) 20:48:03.16 ID:YUKGGu/H.net
素朴な質問だけどシェーダー何使ってるの?
MMDはどうやってUnityにインポートしてる?MMD4Mecanim?

510 :名前は開発中のものです。:2024/01/31(水) 20:48:05.51 ID:YUKGGu/H.net
素朴な質問だけどシェーダー何使ってるの?
MMDはどうやってUnityにインポートしてる?MMD4Mecanim?

511 :名前は開発中のものです。:2024/01/31(水) 23:21:39.42 ID:vVhRDcrl.net
>>509
シェーダ公式ページ 画像多いので通信量とか注意
https://github.com/ColinLeung-NiloCat/UnityURPToonLitShaderExample

MMD4Mecanimでインポートしてる
正確には同梱されてるpmx2fbx.exeでfbxに変換するだけで、それ以降はMMD4Mecanimの機能は全く使ってない

512 :名前は開発中のものです。:2024/02/01(木) 01:07:18.15 ID:950QpuXW.net
>>511
あーこれ気になってた
売ってるのかこのシェーダー

513 :名前は開発中のものです。:2024/02/01(木) 18:34:04.15 ID:7MENY3uE.net
今日も今日とて、みみっちぃ最適化をする人生

・(Skinned)MeshRendererにはBoundsというプロパティがある
・Boundsとはモデルを覆う箱の大きさを設定するプロパティで、この箱がカメラの描画範囲にあるかどうかでカリング処理が施される
・Boundsの初期値はモデルの初期ポーズを覆う最低限の大きさしかない
 →アニメーションでポーズが変わると初期値の箱から手足がはみ出ることがある
 →結果として、本来カメラに映るはずの手足がカリングで非表示にされる

・これの簡単な対策はBoundsをクソでかくすることだが、でかすぎるとカメラにモデルが映ってないのにカリングされなくなる確率が高まる
 →そこでわいはボーンの位置を全部読み取ってBoundsのサイズを毎フレーム更新する実装を施していた
 →ボーンは1キャラあたり300以上、つまりTransform.positionのアクセスが300以上×キャラクターの数発生する

これをBurstで最適化する
見込みとしては2msしか短縮されないけど、今のわいは1msでも最適化したい

514 :名前は開発中のものです。:2024/02/01(木) 18:37:10.31 ID:7MENY3uE.net
UIの実装を進めてる時よりみみっちぃ最適化に熱を上げてる時のほうがイキイキしてるわいって・・・

515 :名前は開発中のものです。:2024/02/01(木) 19:00:27.95 ID:V9fYybJx.net
>>511
さんくす

これって超高価なシェーダーだよね。
デモが重かったのもあって、自分は買わなかった

>>513
手足がはみ出ない程度の大きさにすれば十分だと思うが・・・

516 :名前は開発中のものです。:2024/02/01(木) 19:10:05.01 ID:7MENY3uE.net
>>515
本来は企業向けのシェーダだから普通は個人で買わないわな

確かにここまでBoundsの大きさを緻密に制御する必要ないかも・・・まずはそこから見直してみる

517 :名前は開発中のものです。:2024/02/01(木) 20:18:11.43 ID:Rt8Mi+6/.net
トゥーンシェーダー色々あるけど機能が微妙に違っておもろいね

518 :名前は開発中のものです。:2024/02/02(金) 01:41:06.97 ID:QAswQ9a3.net
トゥーンシェーダはlilToonとか無料で高機能よね

>>434のレスを見返してわいが今最適化の沼にハマっていることに気づいた

_人人人人人人人人人人人人人人人人人人人人人_
> インディーゲームは細かいクオリティより <
> 新しい面白さに一点集中しよう      <
 ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y ̄

時々過去を振り返るの大事
さぁUIの実装に戻ろうか

519 :名前は開発中のものです。:2024/02/02(金) 04:20:55.46 ID:4QkoN+Q0.net
そんなメチャクチャは拘らないけどアセットとか色んな機能とかは飽きないように程度に吟味する

520 :名前は開発中のものです。:2024/02/02(金) 04:32:49.64 ID:QAswQ9a3.net
わいはどのアセットも直感で手出してる感あるなあ
流石にこのシェーダは超高価だったので、直感に加えてホロライブのモデルに対して使われてる導入実績も買いの理由だった

521 :名前は開発中のものです。:2024/02/02(金) 13:10:44.63 ID:QAswQ9a3.net
シンボリックリンクというショートカットの亜種について学んだ

通常のショートカットはプログラムがショートカット自体を1ファイルとして認識してしまうけど、シンボリックリンクならプログラムがパスとして認識してくれるから
フォルダA/ファイルB.txtがある時にシンボリックリンクCを作成してシンボリックリンクC/ファイルB.txtにアクセスすると
フォルダAのファイルB.txtにアクセスしてくれる

開発環境では結構需要ある機能かも
と思ったけどないかも・・・

522 :名前は開発中のものです。:2024/02/02(金) 15:39:46.15 ID:dj/qkXQZ.net
>>521
WindowsのシンボリックリンクはUnityエディタで動作しないぞ。俺はジャンクションを使ってる。
https://note.com/ume_white/n/n2ec5145e4903

523 :名前は開発中のものです。:2024/02/02(金) 15:45:32.21 ID:dj/qkXQZ.net
>>518
UIって面白さと無関係だと思うが
2Dゲームならまだしも、ホロライブの3Dゲームなんだよな?

524 :名前は開発中のものです。:2024/02/02(金) 16:03:37.78 ID:4QkoN+Q0.net
でも飽きないように適度に拘ったオサレなUIを作って欲しい

525 :名前は開発中のものです。:2024/02/02(金) 16:07:05.12 ID:QAswQ9a3.net
>>523
今のわいは細部に囚われすぎてるから
ゲームとして成立させるために必要な部分を進めるべきってことが言いたかった

526 :名前は開発中のものです。:2024/02/02(金) 16:09:22.58 ID:QAswQ9a3.net
>>522
まじすか、あれでもジャンクションって相対パスが使えないとかあったような・・・
でも開発環境なら別にいっか

527 :名前は開発中のものです。:2024/02/02(金) 16:27:10.81 ID:QAswQ9a3.net
今使ってるモニターが一応165Hzのはずなんだけど
60fpsと165fpsの滑らかさの違いがまるで分からん・・・

https://electro-disco.com/fpscheckerpage.html
ちなみにこのページだと、キャラクターの速度をメッチャ速くすれば60と120の差が若干分かる程度
そういうもんなんだろうか

528 :名前は開発中のものです。:2024/02/03(土) 06:33:25.47 ID:FhUQ5OGM.net
リリンク手書き風ってテクスチャに書き込んでるのかそういうシェーダーがあるのかな

529 :名前は開発中のものです。:2024/02/03(土) 07:34:39.61 ID:6KL4YSaI.net
>>527
普通に60FPSでぬるぬるを感じるって事は30FPSだと足りてなかったってだけだから
それ以上の速さじゃないと分からないので当たり
昔でも音ゲーのハイスピードくらいしか60FPS以上いらないと言われてたね

>>528
手書き風フォント?揺らぎエフェクト?モーショングラフィック?UIの話かな?

530 :名前は開発中のものです。:2024/02/03(土) 07:55:03.94 ID:FhUQ5OGM.net
>>529
キャラのシェーダーね。雑魚にも適用されてるっぽいし手間考えたらそういうシェーダーかなあ

531 :名前は開発中のものです。:2024/02/03(土) 08:02:06.78 ID:6KL4YSaI.net
>>530
手書きって鉛筆の光と影の奴かな?
今まさにトゥーンシェーダーでこれ使ってるわ、前無料で配ってたんだよね
https://assetstore.unity.com/packages/vfx/shaders/mk-toon-stylized-shader-178415

532 :名前は開発中のものです。:2024/02/03(土) 08:40:16.53 ID:6KL4YSaI.net
似たようなのだとRealToonの方も多機能でDOTS対応とかもしてたり
Toony Colorsは自作で細かくいじれるとかあるね

533 :名前は開発中のものです。:2024/02/03(土) 08:49:33.30 ID:FhUQ5OGM.net
>>531
この手のシェーダー使ってるのは間違い無いんだけど、イラストレーターの原画みたいに
ゲーム中ムービー中でもえらく細かく丁寧に書き込まれてるんですよね

https://relink.granbluefantasy.jp/characters/detail?chara=main_character&part=gran

534 :名前は開発中のものです。:2024/02/03(土) 08:56:09.68 ID:6KL4YSaI.net
>>533
動画サムネで左側に出るのは原画でその右がコミックシェーダーかな?

535 :名前は開発中のものです。:2024/02/03(土) 09:21:48.17 ID:FhUQ5OGM.net
>>534
ムービー中はほぼ原画みたいですね

536 :名前は開発中のものです。:2024/02/03(土) 09:25:29.63 ID:FhUQ5OGM.net
Vtuberのモデルって100万くらいかかるらしいですね

537 :名前は開発中のものです。:2024/02/03(土) 09:27:32.13 ID:b1z9n3Ql.net
わいが使ってるモデルは公式サイトで配布されてる無料のMMDモデルよ
でも実際のところ1人あたり複数種類の衣装のバリエーションがある中で初期衣装しかMMDモデルが配布されてないので
2,3世代遅れてる感がある悲しみ

538 :名前は開発中のものです。:2024/02/03(土) 10:04:31.69 ID:L0jPLy0n.net
>>528
テクスチャにスペキュラとか書き込んでると思うよ

539 :名前は開発中のものです。:2024/02/03(土) 10:12:32.02 ID:b1z9n3Ql.net
ここ最近、本筋のゲーム開発進めるより寄り道してるほうが楽しい
他にも実際にゲームで使うかはともかく試してみたいことが色々ある

・マルチプレイモードを実装できるか?
・VR機能とか実装してみたい
・WebGLビルドはexeビルドと比べてどこまで太刀打ちできるのか?

はよ本筋進めろ

540 :名前は開発中のものです。:2024/02/03(土) 10:46:20.81 ID:FhUQ5OGM.net
>>538
アルベドじゃなくスペキュラに書き込んでるのか

541 :名前は開発中のものです。:2024/02/03(土) 10:52:01.58 ID:6KL4YSaI.net
桜井のYoutubeでも絵とか利便性はディレクターならまぁまぁ拘って良いと思う
本筋って個人制作だとやれる範囲少なくてバズるなら配信向けゲー
確実に売れるならパズルや脱出ゲーネタ考えれないとキツイ

542 :名前は開発中のものです。:2024/02/03(土) 11:31:50.89 ID:FhUQ5OGM.net
>>541
脱出ゲームってホラーゲームの事?
ホラーゲームならホラー専門の配信者が配信してくれるよね

543 :名前は開発中のものです。:2024/02/03(土) 11:39:37.81 ID:6KL4YSaI.net
>>542
脱出ゲーはスマホかな、最近は脱出と言うより失敗しなければクリア的なカジュアルクリックゲー
と言うかこれは2Dだからあんま3D化されてないね
ホラーとか操作激ムズゲー、なんか笑える奴が配信向けPCゲー

544 :名前は開発中のものです。:2024/02/03(土) 12:01:34.49 ID:FhUQ5OGM.net
>>543
脱出ゲームってストアに大量にあるけど売れてるんだ

545 :名前は開発中のものです。:2024/02/03(土) 12:04:40.61 ID:b1z9n3Ql.net
バズったり配信してもらえたら勿論嬉しいけどそれを目標に掲げてしまうと鬱になりそうな気がするから
自分の作りたいように作ってみる
Xで数人が大草原生やしてたら御の字

546 :名前は開発中のものです。:2024/02/03(土) 12:20:09.18 ID:6KL4YSaI.net
自分でもクソおもんないみたいな投げやりじゃなかったら何でも良いと思うよ
たけしの挑戦状みたいな意味不明なアドベンチャーでも何でもOK

547 :名前は開発中のものです。:2024/02/03(土) 12:51:13.37 ID:FhUQ5OGM.net
思いがけず注目されても昇進鬱みたいになる事もある

548 :名前は開発中のものです。:2024/02/03(土) 13:38:15.10 ID:FhUQ5OGM.net
>>545
自分はバズったりメディアに取り上げらたりしてフォロワーも増えたけど
古参やボスに悪い意味で目を付けられて敵も増えて疲れてSNSやめちゃった

549 :名前は開発中のものです。:2024/02/03(土) 13:52:01.50 ID:b1z9n3Ql.net
>>548
そういうのはどうしようもないので、メンタルを鍛えるとかエゴサしないとか自衛手段を確立させておくしか

550 :名前は開発中のものです。:2024/02/05(月) 05:37:53.34 ID:EMA1eHIP.net
粛々とUIの実装中
ゲームの中身は全部完成した後でババーンと晒したいから開発中は画像とか出せないので、このスレ的には盛り上げられないな・・・
時々本筋とは関係ない技術検証とか混ぜたほうが盛り上げられるけど、マルチタスクできないからそれやると本筋が完全にストップしてしまうもどかしさ

551 :名前は開発中のものです。:2024/02/05(月) 08:05:37.51 ID:Mat5R6oI.net
UIも綺麗じゃないとダサって思われてしまうのである程度のクオリティは必要だ
本筋は人によって作りたい物が違うのでそもそも盛り上がらないかもね
ゲームに必要なのは色んなシステムと素材なのでそこで盛り上がるのは健全なので全然OK

552 :名前は開発中のものです。:2024/02/05(月) 08:15:01.21 ID:Mat5R6oI.net
アセットも全部良いアセットの方が良いというもんでもない
ここは自作の方がいいな、ここは自作するのは厳しい、自分でしっかりとした理由で見極めないといけない

553 :名前は開発中のものです。:2024/02/05(月) 08:23:19.40 ID:Mat5R6oI.net
そもそもで言うとスクリプトも常にその選択を迫られる
全部細かくメソッドを分けるべきなのか?いやここは分けないようにしようとか
ここは追加編集多いからスクリプトだけでなくステートマシンやビヘイビアツリーにしようとか

554 :名前は開発中のものです。:2024/02/05(月) 08:56:23.00 ID:EMA1eHIP.net
わいの場合ホロライブの二次創作ゲームだから、アセットに関しては
 ホロライブっぽさを出したい→自作
 それ以外→既存アセット
になりそう

スクリプトは上みたいにパフォーマンスとかで問題が表面化したときの検証をここで話題にできるかな
あとはCyberAgentのPerformanceTuningBibleとか参考書の内容を守りながら地道に

555 :名前は開発中のものです。:2024/02/05(月) 09:08:37.19 ID:EMA1eHIP.net
わいの使ってる超高価シェーダの機能自慢でもするか
lilToonシェーダとか実際に使ったことはないから使い勝手とかクオリティがどんなもんか知らんのよな

556 :名前は開発中のものです。:2024/02/05(月) 09:36:53.82 ID:Mat5R6oI.net
そこはクオリティで比べるのは難しいね、適当に機能とかで選んで良いかも

557 :名前は開発中のものです。:2024/02/05(月) 10:09:26.14 ID:poWEMvtO.net
コードが公開されてるシェーダーは組み合わせたりカスタムして使ってるわ

558 :名前は開発中のものです。:2024/02/05(月) 10:19:02.01 ID:poWEMvtO.net
アセットに自作シェーダーが使われてる場合は他のシェーダーに変えたりカスタムしなおして使うことが多いです

559 :名前は開発中のものです。:2024/02/05(月) 10:22:47.56 ID:Mat5R6oI.net
シェーダーに強いの普通に凄いと思うで!
シェーダーグラフ同梱でも組み合わせるの難しいと思うし

560 :名前は開発中のものです。:2024/02/05(月) 10:26:57.76 ID:EMA1eHIP.net
シェーダ単体で紹介するよりも他のシェーダと比較したほうがいいよなあと思ったけど
よく知らないシェーダを比較用にセットアップしてもそのシェーダの良さを引き出しきれなさそうであまり意味がない気がした

シェーダ自分で組めるのうらやましい

561 :名前は開発中のものです。:2024/02/05(月) 10:36:31.56 ID:Mat5R6oI.net
シェーダー繋がりで更にパーティクルエフェクトとかもどこまで作るのか?となってくるね
これもサイバーエージェントのパーティクル用NovaShaderとかあったり選択肢が多い

562 :名前は開発中のものです。:2024/02/06(火) 18:07:38.21 ID:NS4G87y3.net
Nか月前のわい
「プログラムは基本自作するぞ!」
「BGM・SEは自作するぞ!」
「3Dモデルとかボイスとかキャラクター関係は全部既存だぞ!」
「シェーダは一部既存アセットで簡単なのは自作したいぞ!」
「UI用の画像は全部自作するぞ!」
「VFXは流石に全部自作は無理だから既存アセットを参考資料として買って後は自作するぞ!」

現在のわい
「プログラムは基本自作するぞ!」
「BGMは自作するぞ!でもSEは既存アセットでよくね?」
「3Dモデルとかボイスとかキャラクター関係は全部既存だぞ!」
「シェーダとか既存アセットでよくね?」
「UI用の画像とか既存アセットでよくね?」
「VFXとか既存アセットでよくね?」

決して逃避ではない、決して

563 :名前は開発中のものです。:2024/02/06(火) 20:34:08.46 ID:Log9R3DV.net
作れれば何でもいいのだ
詰まるのが1番ダメ

564 :名前は開発中のものです。:2024/02/06(火) 22:13:06.63 ID:/JBE453e.net
正しい、一旦無理やり完成してから気になるところ治す方が良い

565 :名前は開発中のものです。:2024/02/07(水) 11:03:17.47 ID:ON4SZfXL.net
今思い描いてる構想をそのまま形にできるなら
3Dモデルとボイスさえ本家に忠実なら他はオリジナリティ皆無でもゲームとして成立する

566 :名前は開発中のものです。:2024/02/07(水) 11:53:12.18 ID:r0qPhnLA.net
>>565
ボイスとかどうなってるの?

567 :名前は開発中のものです。:2024/02/07(水) 12:34:24.54 ID:ON4SZfXL.net
>>566
本人たちの切り抜きボイスを使う
既存のホロライブ二次創作ゲーと同じ

568 :名前は開発中のものです。:2024/02/07(水) 12:35:38.17 ID:ON4SZfXL.net
677: 名前は開発中のものです。 sage 2024/02/07(水) 09:00:19.81
個人制作のSteamゲーのコメント見てたらモデル、モーション、プログラムなど90%はアセットって書かれていた。
組み合わせやバランス調整で個性だすとかそういう注力の作り方あるんだなぁ

なるほど?

569 :名前は開発中のものです。:2024/02/07(水) 13:16:17.14 ID:WJhyQ+4K.net
これもほぼアセット
https://news.denfaminicogamer.jp/interview/190906a

音楽ならAudiostockとかで買える
あとアセットじゃなくお仕事依頼でもフリーなら安いっぽい、クラウドワークス、ランサーズに
声優ならiikoeやSKIMAとかもある

570 :名前は開発中のものです。:2024/02/07(水) 13:21:25.41 ID:WJhyQ+4K.net
イラストはココナラかな?
何にせよ金で解決できるのだ

571 :名前は開発中のものです。:2024/02/07(水) 14:05:10.46 ID:WJhyQ+4K.net
最近のゲームの作り方はハイパーカジュアルなんかも参考になる
ハイパーカジュアルもアセット7割とか使うから似たようなもん

https://youtu.be/PMbnVxOVggI

572 :名前は開発中のものです。:2024/02/07(水) 14:41:12.83 ID:ON4SZfXL.net
>>569-571
助かります

音楽はホロライブの子たちが出してるオリ曲のアレンジ曲を作りたい
作曲の経験が無いから失敗してアセットで妥協する可能性もあるけどまずはチャレンジ

声は本人たちの切り抜きボイスが有り余ってるので大丈夫
イラストは本人たちの3Dモデルにポーズをとらせて撮った画像が使えそう

573 :名前は開発中のものです。:2024/02/07(水) 14:58:04.75 ID:WJhyQ+4K.net
>>572
ええね!とにかくアセットオンリーでも完成させればディレクターの一歩が始まるんや
ゲームはやる気と情報だけで作れるんや

574 :名前は開発中のものです。:2024/02/07(水) 16:20:21.86 ID:ON4SZfXL.net
ある子の衣装にマントが着いてるんだけど
揺らすと髪がマントにめり込んで表示が崩れるのでマントは非表示にしました
https://tadaup.jp/1aadaef1e.gif

自作した揺れ物システムでは揺れ物同士の衝突判定は実現不可能
今からMagicaClothに乗り換える手間も惜しい(そもそもMagicaClothは激しい動きの時に好ましくない挙動をするので没にした)
わためのマントに思い入れのあるわためいと許して・・・
https://tadaup.jp/1aadac81f.jpg

https://tadaup.jp/1aadad3d2.jpg

575 :名前は開発中のものです。:2024/02/07(水) 17:11:04.77 ID:WJhyQ+4K.net
MagicaClothの1持ってるわ
メッシュクロスだと重くてボーンクロスが軽い
重さ次第でムービーとかはメッシュクロスにするとか色々考えられる
またマントの角度自体を変えるとかモーション自体を変えてしまうとかも

576 :名前は開発中のものです。:2024/02/07(水) 17:20:02.46 ID:ON4SZfXL.net
1キャラ100種類以上のモーション×30キャラ以上を想定してるから
衣装のパーツやモーションに手を加える対処法は難しい

持ってるのがMagicaCloth2だからメッシュクロス×同時に10人以上でパフォーマンスと揺れ物の挙動をもう一度見てみるか・・・
検証の時間だー!

577 :名前は開発中のものです。:2024/02/07(水) 17:24:40.67 ID:ON4SZfXL.net
>>576
モーション100種類×30キャラっていうのはモーションが合計3000ってことではなく
同じモーションを30キャラ全員に流用するって意味

キャラ毎に技を固定して優劣を発生させるのはよろしくないと判断したので
技を好きなように付け外しできるようにする想定

578 :名前は開発中のものです。:2024/02/07(水) 17:24:45.03 ID:WJhyQ+4K.net
確かモンハンは衣装切り替え用に微調整スクリプト使って全部調整してるとか記事あったかな

579 :名前は開発中のものです。:2024/02/07(水) 17:41:37.98 ID:WJhyQ+4K.net
Mixamoのモーションだと服や体格差の調整用に腕の広がりとか調整した後でモーションDL出来る
Unity Recorderでも確かアニメーションレコード出来る
揺れものやIKの物理演算やオブジェクトの物理エンジン飛び散りなんかを録画して軽量化する奴

580 :名前は開発中のものです。:2024/02/07(水) 17:57:56.20 ID:WJhyQ+4K.net
あと技って事は別にモーションの調整関係なく当たり判定があって判定の大きさいじらなければ全部公平になるよ

581 :名前は開発中のものです。:2024/02/07(水) 18:34:28.12 ID:WJhyQ+4K.net
メッシュ変形をVATで録画するのは多分Unityでは無理でMayaやHoudiniらしい
https://youtu.be/qXcxBw3KUtw
https://creator.game.cyberagent.co.jp/?p=7537

流石にそこまではせんか

582 :名前は開発中のものです。:2024/02/07(水) 18:55:30.60 ID:ON4SZfXL.net
UnityでVATに変換するノウハウは過去に行った実験の副産物で確保してあるけど
バトルは基本的にスマブラみたいに入り乱れる感じだから揺れ物の録画も厳しいかも・・・
自作揺れ物システムかMagicaCloth2のどちらかを主力武器にしていくしかなさそう

583 :名前は開発中のものです。:2024/02/08(木) 09:47:32.96 ID:X6FQSTW9.net
MagicaClothのソースコード眺めてみたけど、やはりそう上手い話があるわけがなく・・・

MagicaClothのメッシュクロスは単純にプロキシメッシュの頂点の数に比例して重くなるのは当然のことながら
Meshのverticesに対しても毎フレーム読み書きを行うのでボーンクロスに比べて相当重いと思われる

なのでパフォーマンスの観点から全員のすべての揺れ物をメッシュクロスにするのは現実的ではない
なら基本はボーンクロスを使えば良いかというと、ボーンクロスはモデルが激しく動いたときに好ましくない挙動をするのでその点では自作揺れ物システムに軍配が上がる

自作揺れ物システムとMagicaCloth(メッシュクロス)の併用は論外

ということでMagicaClothは保留にして、しばらく自作揺れ物システムで戦ってみる
>>574みたいなケースも今のところこの1件だけで他の子は大丈夫そう

584 :名前は開発中のものです。:2024/02/08(木) 10:09:01.90 ID:EIZJZMgk.net
>>574
貫通対策ってさせたくない部分にコリジョン仕込むって見るけどどうなんだろ

585 :名前は開発中のものです。:2024/02/08(木) 10:51:19.12 ID:X6FQSTW9.net
>>584
揺れ物(マント)と揺れ物(髪)の間にコリジョンを仕込んだらそのコリジョンの扱いをどうするって問題が生じる

胴体を基準としてコリジョンの相対位置を固定すると、この場合マントが一定以上後方に揺れなくなって走った時に不自然に見える
マントと髪どちらかを基準とした相対位置の固定は、それはもう実質的に相互衝突なので自作揺れ物システムに手を加えるか(相当難しい)、MagicaClothに乗り換えるか(上の理由で難しい)の2択になる

586 :名前は開発中のものです。:2024/02/08(木) 11:08:33.78 ID:SrKNBYB5.net
ほほー
もしかして長髪マントは3Dだと表現が難しいクリエイターが避ける表現なのかもね
大体サンプルって長髪スカートまでだし

587 :名前は開発中のものです。:2024/02/08(木) 11:15:06.56 ID:X6FQSTW9.net
ホロライブ本家はMagicaClothを使ってるけど同時に動くのが2,3人程度なので574みたいな子でもパフォーマンス的に問題ない
わしの場合10人以上同時に動かそうとしてるのでMagicaClothが没ってるというだけ

588 :名前は開発中のものです。:2024/02/08(木) 14:45:28.64 ID:EIZJZMgk.net
リリンクのカタリナは長髪マントだけど戦闘中でも破綻してるようには見えないですね。
激しく動いていたら破綻していても分からないってのはあるけど

589 :名前は開発中のものです。:2024/02/08(木) 14:57:29.48 ID:SrKNBYB5.net
>>588
見たら早いから分かりにくいけど基本は全部モーション固定だね
実は企業の方が軽い手法を使ってたあるある

590 :名前は開発中のものです。:2024/02/10(土) 21:27:20.67 ID:pP1D56t5.net
ここ数日AIイラストについて検証してた
ある程度高品質なイラストを思うように作れるようになってしまいイラストを作ること自体を楽しんでしまったけど
やりたかったのはアイテムのアイコンとかUIの背景みたいな”時間をかけずにオリジナリティを出せたら嬉しい部分”をAIイラストで賄えないかの調査
AIイラスト自体は面白いと思うけどこの目的としては没になりそう

591 :名前は開発中のものです。:2024/02/10(土) 21:56:53.69 ID:2K4zs5NL.net
AIイラストを3Dモデルにするの断念したことあるけど今どの位出来るようになってるんだろうな

592 :名前は開発中のものです。:2024/02/10(土) 22:04:22.30 ID:wWIEILfP.net
アイコンもUIもそんなにアセットが高くないからどっちでもいいかな
ドット絵素材を少し取るとかは出来るようだけど
https://qiita.com/Miyakepp_098/items/e12da6125e295552e38c

593 :名前は開発中のものです。:2024/02/10(土) 22:19:11.27 ID:2K4zs5NL.net
静的なオブジェクトのテクスチャをAIイラストにするのは出来そうだったけど
リギングするのにBlender操作が必要で諦めた思い出

594 :名前は開発中のものです。:2024/02/10(土) 23:05:07.85 ID:wWIEILfP.net
イラストを活かして作るならノベルなりTCGって方法もある
ただゲームってそんなに一枚イラストだけあっても作れないね

595 :名前は開発中のものです。:2024/02/11(日) 02:11:41.53 ID:dNo3Wft6.net
Stable diffusionガチで凄いね

596 :名前は開発中のものです。:2024/02/11(日) 08:04:45.20 ID:LpdAFgPF.net
やっぱり使ってる人もいるか
技術的な面では問題ないんだけど、没にしようと思ってる理由は倫理的な問題のほう
学習元のイラストに無断使用イラストが無いことを証明するのが悪魔の証明になりそうなうえに、証明できるできない以前に「画像生成AIを使っている」というだけで反感を改装

597 :名前は開発中のものです。:2024/02/14(水) 12:51:47.11 ID:Rm/LeLlf.net
AIイラストの次はAI音声合成に手を出している
これはもうゲームで使う気は一切なく完全に遊び
流石にゲームでは使い道ないやろ(と言いつつ思いもしない妙案が飛び出してくるかもしれないので呟いておく)

598 :名前は開発中のものです。:2024/02/14(水) 13:06:28.09 ID:uZ2TmilU.net
AI音声は感情の起伏がまだ実用レベルじゃないと思う
動画も結局ずんだもん解説しかしっくり来ないのもそういう事

https://www.youtube.com/shorts/rcHOnoGlF0c

599 :名前は開発中のものです。:2024/02/14(水) 13:24:38.73 ID:uZ2TmilU.net
素材の可能性もイラストだとほぼTCGだし、AI離れた方がいいよ
VRoidとかローポリキャラのドット変換にアセット組み合わせるとかの方が現実的
逆にUnityやUEのマニュアルとかクッソ分かりづらい時にAIに聞くとほぼ完璧に解釈したのを教えてくれる神AIだよ

600 :名前は開発中のものです。:2024/02/14(水) 14:30:21.43 ID:WVdns2yR.net
ボイスは六条ゆかりがお買い得だったあれとユニティちゃんがあれば掛け声系は足りる感じ

601 :名前は開発中のものです。:2024/02/15(木) 03:04:02.25 ID:S0dkWGae.net
前話題にあったマントモーションの作り方あったわ
Unity内でやるならUMotionとかVery Animationで

https://youtu.be/TW8dWjyW6fI

602 :名前は開発中のものです。:2024/02/15(木) 15:48:37.31 ID:1F/mdo9e.net
>>601
マントのはためき方もアニメーションに覚えさせてるのか・・・結構根気がいりそう
今のところ揺れ物システムで妥協できるから現状維持で、どうしようもないときの奥の手として覚えておくサンガツ

603 :名前は開発中のものです。:2024/02/15(木) 17:16:32.66 ID:S0dkWGae.net
まぁちょっとしたモーションやエフェクトの改造はハイパーカジュアルでもやるので
シェーダーやエフェクト完全自作に比べたら実用範囲の簡単さだと思うよ
https://youtu.be/dQ_pqJENh8Q

604 :名前は開発中のものです。:2024/02/17(土) 10:50:49.09 ID:lJpqdAoA.net
AI使いたいマンの人向け
UModeler XでStable Diffusionを使ったAIテクスチャが可能
https://docs.umodeler.com/docs/usage-guide/ai-texturing-properties

605 :名前は開発中のものです。:2024/02/18(日) 07:52:42.00 ID:06LqUHNx.net
>>604
面白そうサンガツ

606 :名前は開発中のものです。:2024/02/20(火) 07:02:19.94 ID:Iglo8Luu.net
色々いじってて思ったんだけど
MMD4Mecanim→更新されてないのもあって微妙
Blender Addon MMD Tools→モーフ等の仕様の違いさえ理解すればスマート
UniVRM→関係ないけどVRMもほぼ完璧

最適化を考えるとマテリアルモーフの頂点や服で見えない部分はUnityだと使わない時は消して軽量化した方がベストだろう

607 :名前は開発中のものです。:2024/02/20(火) 07:09:38.49 ID:lJVJdMTR.net
>>606
MMD4Mecanim使ってるけどIK専用っぽい名前が付いてて実際は動かしてもメッシュに影響しないボーンとかあるね
そういうのを消してGameObjectの頭数を減らしたほうがいいってこと?

608 :名前は開発中のものです。:2024/02/20(火) 07:22:59.95 ID:Iglo8Luu.net
>>607
どこまでちゃんと対応出来てるかは分かんないけど不完全なのは分かる
そもそもURP対応も出来なくなってるし、無駄に項目多いモーフ関連のスクリプトも殆ど使えないかも
MMDToolsは最近でも更新あってデータはほぼ完璧に読み込める
ただBlender形式のデータやFBXにすると特殊なモーフデータは消えるので確認した上で自分でUnityで実装するのが良い

609 :名前は開発中のものです。:2024/02/20(火) 07:30:13.87 ID:lJVJdMTR.net
>>608
シェーダは全く別のURPシェーダ使ってる
MMD4MecanimのオプションでFBX変換時にアタッチしてくれるコンポーネント(モーフ関連)は付けないようにしてる
だからUnityエディタ上で見えない隠れオブジェクトとかでもなければMMD4Mecanim関連の機能を一切持たない静的なfbxのはず
揺れ物システムとか必要な機能は別途用意してある

610 :名前は開発中のものです。:2024/02/20(火) 07:43:07.79 ID:Iglo8Luu.net
>>609
まぁMMDで見ると普通なのにテクスチャがバグって見えたりとか何かあったらMMD4Mecanimの可能性はある
モーフ関連が正常に変換できてないって事は消えるはずのモーフの頂点が常に描画されたりとか可能性あるある

611 :名前は開発中のものです。:2024/02/20(火) 07:51:20.23 ID:Iglo8Luu.net
MMDのマテリアルモーフでアルファ値で消す着せ替え方法は当たり前だけど頂点を常に読み込んでるので重い
動画撮影ならまだしもゲームだとこういう仕様はキツイね

612 :名前は開発中のものです。:2024/02/20(火) 09:24:15.84 ID:lJVJdMTR.net
テクスチャの表示がおかしいとかはなかったかな
Inspectorに表示されないものが内部的に存在するみたいなことあるんか・・・?なければ問題ないはず
その着せ替え方法は自作の実装でも使ってるけど内部的に頂点が稼働し続けてる問題は妥協してる

613 :名前は開発中のものです。:2024/02/20(火) 09:34:00.80 ID:Iglo8Luu.net
ゲームでMMDみたいな頂点ずっと読み込み方式は普通はないので
最適化したいならまずそこらへん気にするといいよ
映像分野の3Dモデルは最適化しないからそういうのが普通みたい
じゃあモデルも最適化してないのでは?って考えも結構当たりで服で見えない部分が消されてなかったりとかも高確率である
Unity内でやるならMeshDeleterWithTextureとかMeshSplitterとかVRC関連のツールでもいける

614 :名前は開発中のものです。:2024/02/20(火) 12:15:24.54 ID:lJVJdMTR.net
>>613
使ってみるわありがと

615 :名前は開発中のものです。:2024/02/20(火) 12:26:23.37 ID:bLusv/Me.net
VRC関連のメッシュ加工するツールにはお世話になってるわー

616 :名前は開発中のものです。:2024/02/20(火) 12:49:31.06 ID:Iglo8Luu.net
あと前にもちょっと書いたUmodelerXも無料でUnityのメッシュをUModelerizeして編集可能に出来る
ただブレンドシェイプは未対応なのでBlenderも組み合わせて選択肢にいれたい

617 :名前は開発中のものです。:2024/02/22(木) 04:18:49.18 ID:Sgxr52gy.net
3DCG・アニメーションYoutuber紹介
https://youtu.be/_4I-1zZuYvA

最近ちょっとしたモデル編集してて思ったのが
多分有料モデル買ってる人はモデル改造とモーション付け程度でも同人で販売できる

618 :名前は開発中のものです。:2024/02/22(木) 19:08:19.89 ID:HwSz1+nU.net
目新しさより面白さのほうが重要だから
たとえアセットフリップでも面白ければゲームとしては成立すると信じたい

619 :名前は開発中のものです。:2024/02/22(木) 19:24:31.04 ID:Sgxr52gy.net
>>618
オーバーダンジョンもそうだけどまずはアセットでも楽しめるジャンルで売れてから売上金で絵師雇うの順番で良いと思う

おまけ(オンラインでモーションキャプチャ)
【AIの進化!】映像から3Dキャラクターへ!自動で生成できます!【Wonder Studio】+【Blender】
https://youtu.be/IQbzDh6FI6k

620 :名前は開発中のものです。:2024/02/23(金) 03:14:26.95 ID:UeWdTXKA.net
DLSiteにAI生成コーナー出来る
https://www.dlsite.com/aix/fsr/=/work_category/ai/work_type_category/game/from/left_pain.work_type

621 :名前は開発中のものです。:2024/02/24(土) 14:55:32.49 ID:FgtzOohk.net
最近新しいネタがないのでだいぶ前に気づいた話を投げておく

アセットバンドルを読み込む際に「AssetBundle.LoadFromFile」「AssetBundle.LoadFromStream」よりも「AssetBundle.LoadFromMemory」はメモリ効率が悪いという話について
前者2つが「Unityのネイティブ領域(アンマネージドメモリ)」にだけ生データを保持するのに対して後者は「C#の領域(マネージドメモリ)」にも生データを保持するのでLoadFromMemoryはメモリ効率が悪いとされる
勘違いしてたのはLoadFromMemoryした後であればマネージドメモリ側の生データは破棄可能だと思い込んでたこと
アセットバンドルがアセットバンドルとして生き続ける限りLoadFromMemoryの引数に渡したbyte配列を殺すことができない

なのでアセットバンドルを使い続けている間はLoadFromMemoryは他2つの2倍のメモリ消費をし続けることになる

LoadFromStreamに使える暗号化ロジック組むのが地味に時間かかった思い出

622 :名前は開発中のものです。:2024/02/25(日) 04:28:51.42 ID:oa+gZoWb.net
メモリ関連はよく分からんの多いね
完全にメモリ解放するにはシーン切り替えるか再読み込みするしかないとか
あと>>1もいないからMMDモデル以外で機能の話ももうないかも

623 :名前は開発中のものです。:2024/02/25(日) 08:04:31.21 ID:G4/u6ibP.net
わしはまだゲーム作ってるで
今は淡々とゲーム作ってるだけだけど性能検証みたいなネタが湧いてきたらまたここで発散する

624 :名前は開発中のものです。:2024/03/03(日) 09:13:21.27 ID:jGprvO2f.net
https://automaton-media.com/articles/newsjp/20240301-284376/
中国版のUnity「Tuanjie」にUEのNanite(動的LOD)に相当する機能が実装されてるというトンデモ情報を入手したので試したかった
グローバル版の2022.3から移植できるか試したけどやっぱりエラーのオンパレードでダメだった・・・
グローバル版にこの機能が来てくれることを期待(望み薄らしい)

625 :名前は開発中のものです。:2024/03/04(月) 02:12:56.13 ID:sqbx2Icl.net
LODが楽になる機能かな?
まぁしょうがないのでコツコツ最適化しよう

626 :名前は開発中のものです。:2024/03/04(月) 12:22:15.78 ID:TWo1cbNP.net
>>624
エラーを解消してビルドが通ったので
この動的LOD相当の機能「仮想ジオメトリ(Virtual Geometry)」を使いたかった

Project Settings > Graphicsより仮想ジオメトリを有効化する必要があるとのことだったけど
まずその項目が出てこなかった・・・
もしかするとURPには対応してないのかも

あと仮に有効化できたとしてもやはりMeshRendererのみ対応とのことでSkinnedMeshRendererには使えない
わしのゲームはMeshRendererで済むオブジェクトは元々簡素なので恩恵が薄い

検証終了(中止)

627 :名前は開発中のものです。:2024/03/04(月) 13:57:44.82 ID:sqbx2Icl.net
自動化しても劇的に軽くなると言うよりは楽になる機能じゃないかな
どっちかと言うとUnity6の方が機能多そう
https://youtu.be/RwdaCm3g4BA

GPUオクルージョンカリングやライティングのベイク、ライトプローブ、NavMeshの強化
待ってたら仮想ジオメトリも来そうな勢い

628 :名前は開発中のものです。:2024/03/04(月) 14:54:42.64 ID:TWo1cbNP.net
>>627
まあグローバル版使っておいたほうがネットの情報も多いし無難ちゃ無難よね
個人的には2023LTSだっけ?でスプラッシュスクリーンが消せるようになるのが嬉しい

629 :名前は開発中のものです。:2024/03/05(火) 04:38:35.19 ID:TrpUkTn3.net
Twitch同接世界記録3年連続更新中
LOL, CS2, VALORANTゲーミングチーム
『Mad Lions』『Movi Star』『KOI』オーナー
スペイン7人制サッカー「キングスリーグ」
『Porcinos』オーナー
Ibai Lianos(スペイン) Twitch

ストリーマー・インフルエンサー
ボクシングイベント「4年目の夜」
公式プレゼンテーション

ttp://iplogger.info/2fVkC8.link

630 :名前は開発中のものです。:2024/03/06(水) 07:43:53.36 ID:yoTS463Y.net
UmodelerとBlenderどっちが便利か試してたけど一応結果報告しとくとBlender一択になったわ
独特なキーコンフィグの壁と機能多すぎ説明しろの壁を乗り越えたらやっぱ便利だわ

631 :名前は開発中のものです。:2024/03/06(水) 12:22:38.22 ID:yoTS463Y.net
新作の方じゃないけど39人同時アニメするゲームは1キャラ1万ポリゴンまでゴリゴリに最適化されているらしい
https://twitter.com/kurawan/status/1764962545046298959
(deleted an unsolicited ad)

632 :名前は開発中のものです。:2024/03/06(水) 12:43:39.82 ID:njUww2f3.net
やっぱユーザーの頭数が多いほうが集合知の結晶たるツール本体の品質が上がるってことかね

ポリゴン数の数よりメッシュやマテリアルの種類の数のほうがパフォーマンスへの影響度の比重が大きい気がするのはわしの環境が高すぎる(4070Tiデスクトップ)か低すぎる(グラボなしノート)せいでまともに比較できてないってことだろうか

633 :名前は開発中のものです。:2024/03/06(水) 13:16:51.86 ID:yoTS463Y.net
グラボなしはちょっとキツイかな
Ryzenなら一応モバイル並の内蔵グラボあるけど
あとは単純に39人同時は企業もゴリゴリ最適化してるってだけ、揺れ物の演算も切ってパターンアニメにしてそう

634 :名前は開発中のものです。:2024/03/09(土) 01:14:36.00 ID:CjZBZZx/.net
CySharpのUnitGenerator使えそうね
というかCySharpのユーティリティはどれも最適化厨のわしのためにあるようなのばかりや
単純に使い道無かったり使い方分かんなくてほぼ見てなかったけどこの際だからリポジトリ一通り目を通してみるか

635 :名前は開発中のものです。:2024/03/12(火) 19:23:46.94 ID:Ls2Kx9X6.net
CySharpのライブラリを調査中

【NativeMemoryArray】
使えそう・・・で使い道がない・・・?

【MasterMemory】
使おう(決意)

【StructureOfArraysGenerator】
コイツGithubの評価がそこまで高くない割に最適化の攻撃力が高くない?

【MemoryPack】
既に超お世話になってます
でも開発環境ではJSONを扱いたいのでJSONデータ→JsonFx⇔MemoryPackみたいな面倒な事やってる
もちろん本番向けのビルドはMemoryPackで完結させてる

636 :名前は開発中のものです。:2024/03/12(火) 19:24:00.09 ID:Ls2Kx9X6.net
【ZString】
2020で検証した時は自作の文字列操作ライブラリのほうが速かった(ほぼFastStringとStringBuilderTemporaryの流用だけどめっちゃ拘って最適化した)
機能はZStringより少ないけど今のところ事足りてるからヨシ!

【MagicOnion】
今のところ自作ゲームにオンライン要素を取り入れる予定が皆無なのに
好奇心12割で使ってみたさ

【UniTask】
現状だとIEnumeraorのコルーチンを酷使してるけど
正直なところUniTaskに置き換えるメリットを余り認識できてない
今度時間ができたら検証のうえ使ってみたい気持ち

SourceGeneratorというものを初めて知ったけど
これがCySharpのパフォーマンス最適化系ライブラリに大きく寄与しているということなので
自作のライブラリも見直しかな・・・

637 :名前は開発中のものです。:2024/03/12(火) 20:03:22.89 ID:UEjCz180.net
なんか知らんが凄い
NativeArrayと言われるとBurstみたい

638 :名前は開発中のものです。:2024/03/15(金) 05:35:10.75 ID:CjtFzN7f.net
CySharpのライブラリ調査続き

【R3】
【MessagePipe】
うまく使い分ければUnityEventの上位互換になれそう(※うまく使い分けられれば)

【ObservableCollections】
これも一見使えそうで使い道がなさそう
というよりMVVMをサポートしないUnityとの相性がイマイチらしい

めぼしいのはこんなもん?

ホロライブには姉妹で一緒にゲーム配信してるタレントがいるんだけど
その姉妹でも遊べるようにオフライン2人モードは実装してみたいかも
そもそもホロライブの子に遊んでもらえるところまで登り詰められる気はあんまりしないけどなガハハ・・・

639 :名前は開発中のものです。:2024/03/15(金) 05:35:30.92 ID:CjtFzN7f.net
おまけ【EpicOnlineServices&SynicSugar】
MagicOnionはホスティングサーバーを自前で用意しろという個人製作勢には世知辛い代物だった
ホスティングサーバー自体どれも個人製作勢には敷居が高めな中、EpicOnlineServicesを発見
完全無料を謳っていて、実績は薄いけどあのEpicGamesだから大丈夫だろう論
そのEpicOnlineServicesで使える通信ライブラリでとりあえず見つけたのがSynicSugar
オフライン部分が固まったら余力でオンライン要素も作ってみたい気持ちがあるのでそこまで到達したら使いたい

640 :名前は開発中のものです。:2024/03/15(金) 07:25:11.76 ID:hBYPZJLn.net
AI絵の3Dモデル化そこそこ精度出るようになってきた

641 :名前は開発中のものです。:2024/03/15(金) 12:35:11.67 ID:cpm4g6Qh.net
よく分からないけど、どんなゲームを作ってるんですか?

642 :名前は開発中のものです。:2024/03/15(金) 12:53:45.91 ID:BE3KarCQ.net
>>640
つよい
今プリキュアのAI疑惑で盛り上がってるようにAIを絡めたものはゲームには一切使えないかな

>>641
次々と湧いてくるNPCを倒して勝ち残るみたいなゲーム
バトル部分は結構シンプルにしたくて、代わりに別の部分に力を入れてるので
ホロライブからこのゲームを知る人にはそこを楽しんでもらいたい
もったいぶりたいわけでもないけど一発ネタみたいなとこあるから何に力を入れてるかはリリースするまで隠し通すしかない悲しみ

643 :名前は開発中のものです。:2024/03/15(金) 14:09:55.45 ID:BE3KarCQ.net
ホロライブからってなんか公式っぽい言い方になっちゃったけど全然関係ないよ

マルチプレイ機能はSteamでゲームを出す前提ならSteamworksが使えて万事解決なんだけど
開発が進むにつれてSteamでは許可下りねえなこれっていう禍々しさが増していってる気がする
マルチプレイとか妄想膨らませまくってるけど本筋の開発進捗はまだ10%にも満たないんじゃないか?(楽観)

644 :名前は開発中のものです。:2024/03/15(金) 16:50:02.37 ID:hBYPZJLn.net
>>642
イラストから2面図作るのにControlNet使ってます。
AI絡めたものが駄目という事なら姿勢推定使ってるVtuber全て使えない事になってしまいますね

645 :名前は開発中のものです。:2024/03/15(金) 17:42:27.82 ID:hBYPZJLn.net
>>642
ゲーム内容がなかなか出てこないのはそういう事でしたか。AIの話題は荒れるので控えます

646 :名前は開発中のものです。:2024/03/15(金) 18:17:25.94 ID:BE3KarCQ.net
>>644
AIの問題点は絵柄割れ厨という蔑称が全てを物語ってるから
そこさえクリアできれば別にいいんでない
知らんけど、、、

647 :名前は開発中のものです。:2024/03/15(金) 19:15:38.14 ID:CjtFzN7f.net
https://www.docswell.com/s/UnityJapan/KX2LN5-ss-224788584#p32

特に根拠もなくC#→IL→(Burst)→IL2CPP→C++→Assemblyの直列だと思ってた
まだまだ全然理解してないってことやね
技術記事漁ってるとわいってつくづく感覚でゲーム開発してるんだなって思う

648 :名前は開発中のものです。:2024/03/15(金) 21:04:25.23 ID:CjtFzN7f.net
自作ゲームの動作確認用に買ったローエンドのノートPC届いた
GTX1650で、3Dモデルを30体出すと40FPSくらい
まだ試してないけどまあ10体くらいなら60FPS安定してくれるかな・・・

649 :名前は開発中のものです。:2024/03/17(日) 03:49:12.58 ID:CPQi0k6u.net
以前ちらっと触れた中国版Unity「Tuanjie」にアセットバンドルの復号化機構があるじゃーんと思って調べてみた
ググって出てくるMITライセンスのSeekableAesAssetBundleがそのまま流用されてるだけっぽい

わいもこれ使わせてもらってるけど
・LoadFromFile:パフォーマンス最強だが復号化などの中間処理を挟めない
・LoadFromMemory:高度な暗号化が使えるがパフォーマンス最悪
・LoadFromStream:暗号化も対応してパフォーマンスも良き
ということでLoadFromStream一択のなかコレに対応したアセットバンドル読み込み方法を実装したライブラリが実質的にSeekableAesAssetBundleしかない
果たしてこれはセキュアなのか?まあ所詮は個人制作ゲーなので無駄に極める気もないけど、、、

650 :名前は開発中のものです。:2024/03/23(土) 17:36:38.66 ID:/yi7Gpmp.net
コルーチンで実装してた非同期処理をUniTaskに移行中

基本的にUniTaskスゲエエエエエなんだけど、インスタンスAを同期的に返してから数フレーム挟んで非同期的に別のインスタンスBを返すみたいなのはUniTaskだけでは完結できないかも・・・

あとwhile (...) yield return null; ならガチゼロアロケーションだったのが
while (...) await UniTask.Yield(); だと1回だけガベージが発生するのが気になってしまう症候群

651 :名前は開発中のものです。:2024/03/24(日) 04:57:08.54 ID:wUUBbmA1.net
アクション作るの難しいからネタが割れない程度に少し見せて欲しい気持ちがある

652 :名前は開発中のものです。:2024/03/24(日) 09:34:34.64 ID:hM1eUfiK.net
>>651
ここでも結構ぼやいてるけど
最適化の検証をやりまくったり揺れ物システムやリソース管理みたいな外堀ばかりガチガチに固めてたから
肝心のインゲームはまだ全然できてないよ・・・サーセン
https://tadaup.jp/59c118be0.jpg

バトル部分はポケモンスクランブルシリーズがイメージに近い

653 :名前は開発中のものです。:2024/03/24(日) 14:26:59.94 ID:7W4VnN4P.net
最適化の最終兵器はリダクション…
1キャラ1万ポリゴンもリダクション技術次第…

https://youtu.be/WLDxLB426oA

654 :名前は開発中のものです。:2024/03/24(日) 15:12:58.28 ID:hM1eUfiK.net
>>653
ポリゴン数1万前後の人型モデル20種類くらいでも試してみたけど130fpsくらい
ポリゴン数を全く最適化してないホロライブのモデルとあんまり変わらないかも
内蔵GPUを見捨てることにしたしシェーダもプログラムもかなり最適化してGTX1000番台なら目標値は満たしてるのでもう十分説

655 :名前は開発中のものです。:2024/03/24(日) 19:22:25.10 ID:hM1eUfiK.net
DOTween、再利用に優しくない

DOTweenで最適化済みのケース
①3から5に遷移するDOTweenを再生開始する
②再生途中(4まで進んだとき)にDOTweenを停止する
③5から3に遷移するDOTweenを再生開始する

やりたかったケース
①現在位置(3)から5に遷移するDOTweenを再生開始する
②再生途中(4まで進んだとき)にDOTweenを停止する
③現在位置(4)から3に遷移するDOTweenを再生開始する

DOTweenの初回実行時に開始時点の現在位置をキャッシュしてしまうので
2回目以降も現在位置から遷移を開始するにはDOTweenを一旦破棄して作り直す必要がある
再利用もそれなりに最適化されてるとはいうけど、新顔のMagicTweenとのパフォーマンス比較を見るにそこまででもないのかもしれない・・・

656 :名前は開発中のものです。:2024/03/26(火) 14:13:39.37 ID:SjZ42LlF.net
すいませんAIモデリングの成果を見て下さい。手動修正は必要だけどそこそこ精度出てきたと思う
https://i.imgur.com/HUYfTH1.mp4

657 :名前は開発中のものです。:2024/03/26(火) 19:33:10.60 ID:i7kxKNdC.net
AIも進歩しとるのう・・・
DOTweenはDOTweenCore<T1, T2, ...>に関しては何とかなりそうだけどSequenceはあきらめるしかなさそう

658 :名前は開発中のものです。:2024/03/27(水) 19:29:47.73 ID:wMF6yP+M.net
Unity2020あたりだとアセットバンドルを複数並行して読み込めたんだけど
2022.3の今だと2つ目のロードが始まった瞬間に落ちる
LTSのアプデで直ってたりしないかな・・・

659 :名前は開発中のものです。:2024/03/27(水) 22:29:03.73 ID:9XlYZ8qI.net
DOTween良く知らないけどキーフレームからアニメーションを生成する機能なのか

660 :名前は開発中のものです。:2024/03/28(木) 20:42:43.60 ID:WwZTj/WG.net
それはたぶん違うアセット
DOTweenはC#の拡張機能
 this.transform.DOMove(new Vector3(5f, 0f, 0f), 3f);
とかやると3秒かけて(5,0,0)に移動するアニメーションを再生できるみたいな

661 :名前は開発中のものです。:2024/03/29(金) 22:44:01.00 ID:HDYDRfYX.net
ステラーブレイドの開発者が短髪なら開発期間を1年短縮できたと言ってるけど揺れ物って難しいんだな

キム ただ、長いポニーテールを表現することは大きなチャレンジでした。安定して美しく動かすのは非常に難しいのです。(描写が)不安定になりがちな部分ではありましたが、開発チームの努力のおかげで実現できました。
――ちなみにポニーテールとショートカットでは、どれぐらい制作の難度が変わりますか。
キム あの髪型(ポニーテール)じゃなかったら、もしかしたら開発期間が1年ぐらい短縮できたかもです(笑)。
イ ときどき開発チームからも「もうちょっと髪の毛を短くできませんか」という声が上がってました。
https://www.famitsu.com/news/202403/27338068.html
『ステラーブレイド』開発者インタビュー。美しくたなびく長い髪に時間をかけた。リリーの赤い髪とそばかすはキム・ヒョンテ氏の好み【Stellar Blade】 | ゲーム・エンタメ最新情報のファミ通.com
『Stellar Blade』(ステラーブレイド)の開発を手掛けるSHIFT UPのディレクターのキム・ヒョンテ氏と、テクニカルディレクターのイ・ドンギ氏へのインタビューをお届け。

662 :名前は開発中のものです。:2024/03/30(土) 08:26:09.48 ID:ghgNRfLF.net
ホロブレイクGodot製やな

663 :名前は開発中のものです。:2024/03/30(土) 10:02:52.00 ID:X/uVKznU.net
>>661
今のわいみたいに有り物のモデルとかだとボーンの数が決まってて髪のなびき方の表現に限界があるから妥協を強いられる
3Dモデリングつよつよでボーン数を調整できるとしても突き詰めるとパフォーマンスとのトレードオフになるので地獄

664 :名前は開発中のものです。:2024/03/30(土) 10:05:57.05 ID:X/uVKznU.net
>>662
ホロインディ発の二次創作ゲームは素直に羨ましい
ただホロインディ含めて公式のMMDモデルを二次創作ゲームに取り入れた前例がまだないのが気がかり
先駆者がいてくれたほうが安心できるような、超絶面白いゲームを先に出されてしまうとそれはそれで悔しいような

665 :名前は開発中のものです。:2024/03/30(土) 10:50:26.91 ID:rzz27DAr.net
3Dよわよわやけど個人なら頑張ってキャラは完全オリジナルの方がええとは思う
でも現実的に最高のパフォーマンス出すにはグラフィッカーとタッグ組む方がええと思う
んでタッグ組む前に名刺として何か作品出すのに素材ゲーはピッタリやと思う

666 :名前は開発中のものです。:2024/03/30(土) 20:04:56.46 ID:X/uVKznU.net
仕事の関係で2,3か月くらい開発がほぼストップしそう
ただでさえ進みが悪かったのに・・・仕方なし

667 :名前は開発中のものです。:2024/04/01(月) 19:52:04.36 ID:zXBMi0sW.net
わいのゲームの名前がHoloだとして
Holo固有の機能を実装してるプログラムはnamespaceの「Holo」に隔離して
Holoに限らずUnity製のゲームなら流用が効くようなシステム全般はnamespaceの「HoloEngine」にぶち込んで分けてて
以前まではHoloからHoloEngineは参照するけどHoloEngineはそれ単体で独立するように実装を進めてたんだけど
とうとうHoloEngineからHoloを参照することになってしまった・・・

HoloEngineを再び独立させることもできなくはないけど
結局似たような機能がHoloとHoloEngineの両方に分散してるだけになるので今のまま一元管理(?)したい思い
どうしてこうなった

668 :名前は開発中のものです。:2024/04/02(火) 15:35:28.24 ID:gpJjrN6E.net
最初からいい共通ライブラリ(だよな?)は作れないと思う
いい機会だし、しっかり勉強してみて設計からやり直してもいいんじゃね

Game Engine Architecture
https://www.gameenginebook.com/

669 :名前は開発中のものです。:2024/04/02(火) 19:50:47.22 ID:7FVGdsPH.net
>>668
そうそれ共通ライブラリ
やはり極めるなら座学からは逃げられないか・・・あとは定期的なリファクタリング

670 :名前は開発中のものです。:2024/04/02(火) 23:37:53.17 ID:LuUnr5R1.net
自分かつてプチコンで最適化にはまっていた時期あるし主さんが最適化に嵌るのも分かる
だけどプロトタイプ的なものを作るのが順序なんじゃないのかなあ

671 :名前は開発中のものです。:2024/04/04(木) 07:40:05.86 ID:a4Yxfceo.net
速度優先でプロトタイプを作ってから最適化を意識した本制作を進めよう!みたいなのはパフォーマンスチューニングバイブルにも書いてあるし、仰る通り・・・

プロトタイプを先に作った場合
・本制作の資産にはほぼ必ず「本制作用に置き換えるつもりだったプロトタイプ用のコード」が混入することになる
・本制作に入ってから最適化を始めると「処理Aを最適化しよう!そのためにはまず処理Bの最適化が必要だ!」「処理Bを最適化しよう!そのためには(略」となって手に負えなくなる可能性がある
これを恐れていきなり本制作から始めてる

672 :名前は開発中のものです。:2024/04/04(木) 08:36:00.28 ID:2UE+jb2R.net
時期尚早な最適化はプリンを焼く前に生クリームやジャムのトッピングを始めるのに似ている鴨
おなかすいた

673 :名前は開発中のものです。:2024/04/04(木) 08:47:38.73 ID:81uBwOmr.net
企画構成も最初と最後を先に考えて全体像を作らないとミスしやすい
3Dモデルもローポリで全体のシルエットを先に整えないと後の調整が多くなる
レベルデザインも最初に荒削りで作って決めてからファイナライズする

674 :名前は開発中のものです。:2024/04/05(金) 06:04:05.53 ID:b2TYxFF+.net
かーっ!プロトタイプ完成後のことは完成してから考えるかー・・・
それでも部分的に最適化済みのコードとプロトタイプ用のコードがスパゲティになってるのは確実だから間違いなく地獄を見ることになりそうだけど・・・

675 :名前は開発中のものです。:2024/04/05(金) 07:34:26.55 ID:kqFiHOmY.net
プロトタイプって余計なものを削ぎ落して可能な限りシンプルに作るんやで

676 :名前は開発中のものです。:2024/04/05(金) 08:08:08.48 ID:kqFiHOmY.net
プロトタイプのソースを本制作に流用するとか考えないでシンプルに作る事だけ考える
3Dで作る予定でも2Dに落とし込むとか、アニメーションやAIを簡単にしたり無しにするとか
本制作と言語が違っても構わない

テイラー展開でいうところの第ゼロ近似をつくる。分かるかな

677 :名前は開発中のものです。:2024/04/05(金) 13:15:19.70 ID:UGBDnmdT.net
0次近似ってプロトタイプのことだったのか、初めて知ったわ

678 :名前は開発中のものです。:2024/04/05(金) 13:55:15.15 ID:kqFiHOmY.net
第0次近似は一番簡単な近似式の意味で使われる事が多く、テイラー展開では0次近似=定数(0次式)
プロトタイプとして一番簡単な近似=0次近似を作れと言う意味で使った

679 :名前は開発中のものです。:2024/04/05(金) 17:05:36.18 ID:UGBDnmdT.net
なるほどな、皆にわかるように次からはガンダムかちいかわで例えてくれ

680 :名前は開発中のものです。:2024/04/05(金) 18:07:45.09 ID:kqFiHOmY.net
ガンダムあんまり知らないんでモビルスーツ開発の歴史とか調べたけどよく分からんかった。
プロトタイプザク?プロトタイプガンダム?ようわからん

681 :名前は開発中のものです。:2024/04/05(金) 19:31:29.94 ID:b2TYxFF+.net
わいはわいが世間の水準に合わせるで
IT界隈で言われるプロトタイプがどういうものかはそれとなく分かるけど
企画の実現性とか構想はおおよそ固まってるし完成させるために何をすればいいかも見えてるので
そういうのを明確化することが主目的のガチのプロトタイプは多分今のわいには求められてない

最低限ゲームとして成立してるものを速度優先で作ったほうがいいとはいえ
どちらかというと使い捨ての完全試作というより本制作にそのまま移行できる成果物が望ましいかも

682 :名前は開発中のものです。:2024/04/06(土) 03:42:31.60 ID:nHPOAr0Z.net
ポケモンスクランブルという見本があるなら外してくることもなさそうだしそれでもいいかもね

683 :名前は開発中のものです。:2024/04/06(土) 06:06:05.87 ID:iel5SECg.net
調整しやすい作り方は全体のバランスを見て試作する事である
しかし勉強と考えるとゲーム制作は数ヶ月で全て学べる規模じゃない、年単位だ
3Dモデルもとりあえず2~3年と言われてげんなりである

684 :名前は開発中のものです。:2024/04/09(火) 19:56:07.10 ID:6e3VJsVe.net
あれからちょいちょいアセット買い足してるけど全部足してもシェーダ単体の金額に遠く届かないのくさ
アンバランスだけどクオリティが高いのは素直にうれしす

685 :名前は開発中のものです。:2024/04/12(金) 20:09:02.28 ID:I1o6y5TG.net
そろそろバトル部分の制作の準備を始めなくては・・・

今のわいの技量でバトル部分の基盤を組み上げるには「まとまった連休」が必要
トライアンドエラーを重ねてゴリ押しで実装するので、1日でも間が空くと「ここなんでこんな設定にしたんだ?」と数日前の自分の考えを読めなくなり設計が破綻する
トライアンドエラー中のコードでスパゲティが出来上がるので、何なら一晩寝るだけでも短期記憶が飛ぶ恐怖
GWに勝負を仕掛けたい

686 :名前は開発中のものです。:2024/04/13(土) 15:49:20.01 ID:K+PG/M6o.net
開発初期の初期はModel-View-Controller MVCモデルっていうのをそれとなく意識してたけど今ではすっかり見る影もない
例えば画質設定の画質を変更するView相当のコンポーネント1つで現在の画質設定やセーブデータとの連携なんかを全部取りまとめてしまってるみたいな状況

687 :名前は開発中のものです。:2024/04/14(日) 09:41:41.06 ID:YbOLPjXQ.net
開発初期はぺこーらっていうのをそれとなく意識してたけど、今ではすっかり見る影もない
例えば、耳に相当する場所に腕や足が全部まとめて生えてしまっているみたいな状況



デザインパターンはなんとなくで採用したら地獄だよ

688 :名前は開発中のものです。:2024/04/14(日) 12:26:57.81 ID:GUuIn3Ge.net
くさ
まあ設計書とかなくて成果物=設計書みたいなとこあるから多少はね・・・

689 :名前は開発中のものです。:2024/04/19(金) 20:07:22.81 ID:Z7aTpazZ.net
あるリストから複数ある条件のいずれかを満たすものを一時的に除外して処理がしたい時
Linqやラムダ関数などパフォーマンス的によろしくないものを没とした場合のベストプラクティス
今は状況に応じてDoSomething1とDoSomething2を使い分けてたけど、別にDoSomething3でも問題ないのではと思えてきた

https://i.imgur.com/oriOWnG.png

690 :名前は開発中のものです。:2024/04/19(金) 23:48:50.40 ID:R/fo8Hu1.net
>>689
約12年前の記事ですが、参考までにどうぞ
(自分はC#使い込んでないので実際のところパフォーマンスが改善されるかは知りません)

Removal operation in List<string>
https://stackoverflow.com/questions/11796712/removal-operation-in-liststring

691 :名前は開発中のものです。:2024/04/20(土) 09:28:50.68 ID:UBmJvcRv.net
>>690
ありがとうございます!
その例だとやっぱり元のリストを改変するか新規にリストを作成(メモリアロケート発生)してしまいますね
あと実際には型が異なる複数の条件が必要だったりして1行に落とし込むのが無理なので、ここら辺が限界かもしれないです・・・

692 :名前は開発中のものです。:2024/04/20(土) 18:26:18.18 ID:UBmJvcRv.net
エディタ限定でStreamによるファイル読み書きの際にエディタが固まる事象が必ず発生するようになってしまった
調べたらEditorLoopのLoading.LockPersistentManagerで固まってた
https://issuetracker.unity3d.com/issues/cpu-usage-spikes-in-the-loading-dot-lockpersistentmanager-when-async-loading-slash-unloading-scenes
ってレスしようとして、その前にもう一度再現しようと思ったらなんともなかった
なんだったんだ・・・

693 :名前は開発中のものです。:2024/04/20(土) 19:07:14.73 ID:UBmJvcRv.net
治ったと思ったら再発した
原因はAssetBundle.LoadFromStreamAsyncだったので、Stream.LoadAsyncからのAssetBundle.LoadFromMemoryAsyncで凌いだ
ただしLoadFromMemoryはパフォーマンス的に本番ビルドではタブーなのでエディタだけの暫定措置
この謎エラーどうやらビルド後に起きる可能性もあり得るとか・・・

694 :名前は開発中のものです。:2024/04/24(水) 11:07:50.35 ID:qjHshpOS.net
VroidはUVが単純だからAIでテクスチャ生成するの簡単だね
https://i.imgur.com/A1k8EhT.png
https://i.imgur.com/pQdMm9f.png
https://i.imgur.com/QDTy1kH.png
https://i.imgur.com/F4mfGhu.png

695 :名前は開発中のものです。:2024/04/24(水) 12:19:39.84 ID:rESukSlx.net
いいねぇ、VTuberの衣装が配信毎に変わったら新しい世界だわ
欲を言えば、著作権とかの問題があるからサービスに生成機能つけて統合してほしいけどな

696 :名前は開発中のものです。:2024/04/24(水) 20:01:57.39 ID:0xhDc/xN.net
なんかわいの使ってる超高級シェーダがWarudo?っていうVTuber向けのアプリ?向けにリリースされてるとか何とか
ダウンロードできるファイル一覧にWarudo用みたいなのがあるけど詳細は不明

697 :名前は開発中のものです。:2024/04/24(水) 22:16:29.24 ID:rESukSlx.net
Unity互換のVTuber向けプラグインって感じだな
3DもLive2Dも使えるぽ

Introduction to Warudo
https://docs.warudo.app/docs

この界隈、最近熱いよな
最近もTwitchの女性配信者の世界ランキング一位に日本のVtuberランクインってニュース見てワラタわ
世界の認知度も上がってきてるし、市場も爆発的に大きくなってるし、日本勢も負けないでほしいよなぁ

698 :名前は開発中のものです。:2024/04/25(木) 19:59:11.75 ID:+io37ZIa.net
Mono.CecilとSourceGeneratorの基本的な使い方を覚えた

Mono.Cecil
ビルドしたDLLを改造できる機構。DLLに含まれるすべての変数、メソッド及びメソッド内の処理などを変更できる。
かなり昔からあるけどSourceGeneratorの登場によって使い道がほぼなくなった。変数名やメソッド名の難読化のために使う。

SourceGenerator
ソースコードの編集中に追加のソースコードを挿入できる機構。ソースファイルが生成されないので裏で勝手にやってくれるのが強み。
CySharp製のライブラリでもゴリゴリ使われてるけど、量産型の変数やメソッドを自作クラスにホイホイ付与できて便利。変数名やメソッド名の難読化のために使う。(ん?)

699 :名前は開発中のものです。:2024/04/26(金) 19:36:25.52 ID:1rlMNh6f.net
https://i.imgur.com/HBAOmRM.png
JavaScript界隈で今では恐らく化石となってるであろうjQueryにjsRenderというプラグインがあったんだけど
SourceGeneratorはソースコードの中にソースコードを文字列で何行にも渡って書くので
jsRenderみたいにスマートに書きたい
SourceGeneratorのためのSourceGeneratorが必要。時間の合間を見て自作する(できるのか・・・?

明日から10連休、バトル部分どこまで実装できるか

700 :名前は開発中のものです。:2024/04/28(日) 14:15:59.02 ID:kjGHEvhN.net
UnityでSourceGeneratorがうまく動作しない・・・
2022.3.25f1(=Roslyn4.3.1)
ZLoggerのSourceGeneratorが正常に動作する条件下で、ZLoggerのプロジェクト内に別のIIncrementalGeneratorを挟み込むとその部分をUnityが認識してくれないのでコンパイルエラーになる
ZLogger側のIIncrementalGeneratorに追加したクラスとかは正常に認識されるのに何故・・・

※GW2日目、バトル部分未着手

701 :名前は開発中のものです。:2024/04/28(日) 15:20:47.99 ID:kjGHEvhN.net
ただでさえ情報が少ないSourceGeneratorの中でも情報が少ない改良版のIncrementalGeneratorの中でも更に情報が少ないUnity向けの情報がなさすぎてなさすぎる・・・
折角の連休にやることじゃないので、生成したソースはメモリに持たせずファイルに吐き出せばコンパイルが通ったので後はGW明けにのんびりやる

702 :名前は開発中のものです。:2024/04/28(日) 20:14:12.25 ID:rahnUG3p.net
ソースジェネレータで何したいの?
ソースジェネレータはただ属性などに基づいてpartialなクラスに追加でコード生成するだけだから、個人でなにかするには普通にファイル作ったほうが楽
ちょっとでも生成後のコードの書き方間違うと生成されなくてエラー出るよ

703 :名前は開発中のものです。:2024/04/29(月) 04:11:23.29 ID:3qzGYh0B.net
ソースジェネレータはソースコードの難読化に一役買ってもらいたい

ソースコード内の変数名やメソッド名などの固有名詞の難読化は専用のアセット等でほぼほぼできてたけど
アセットバンドル化するオブジェクトにアタッチしたコンポーネント名やシリアライズされた変数名は、アセットバンドル化した時点の名前から変えられないので難読化が現実的じゃなかった

https://i.imgur.com/VR519Fm.png

これをソースジェネレータで解決する
・難読化前のコンポーネントを継承した難読化済みコンポーネントをソースジェネレータで生成して、実際にオブジェクトにアタッチするのは難読化済みコンポーネント
・難読化前コンポーネントの変数はシリアライズせず、難読化済コンポーネントの変数のみインスペクタに表示される&CustomEditorで難読化前の変数名をインスペクタに表示する
・その他、開発環境では難読化を感じさせないようにしつつ成果物はがっつり難読化させるためのテク色々

この「開発環境で難読化を感じさせない」の部分でソースジェネレータにかなり助けられてる

704 :名前は開発中のものです。:2024/04/29(月) 04:12:55.52 ID:3qzGYh0B.net
そもそもここまでがっつり難読化する必要があるかというと、このゲームに限って言えば全然ない
今後のためにできることは色々やっておきたい自己満足感

705 :名前は開発中のものです。:2024/05/01(水) 20:07:19.72 ID:+oqZ/AQ+.net
【悲報】貴重な連休GW、半分終了

ぶっちゃけ既存アセットのエフェクトを眺めて、どのエフェクトを誰のスキルに使うか考えてただけ(しかも2,3人くらいしか決まってない
あとはやっぱり息をするようにプログラムの最適化をする人生だった
明日からはいよいよ、キーを押すとエフェクト付き攻撃モーションをするみたいなバトル部分の本格的な制作ができるはず

706 :名前は開発中のものです。:2024/05/04(土) 13:41:59.69 ID:5Zu1vaZd.net
Unity2022.3のC#はバージョン9だけど、CySharpのライブラリとか色々使ってC#10や11に引き上げる裏技が存在する
これによってglobal usingとか新しいnamespaceの書き方とか使えるようになること自体は嬉しいんだけど
今後新しく導入するライブラリが万一C#10や11に対応してないせいで結局9に戻さなきゃってなった時のことを考えると踏ん切りがつかない
(既にMemoryPackはC#11にするとエラーを吐くので現状は10止まり)
こういう過度な保守的な考えが現状の開発の遅さを招いてるんだろうなあ

707 :名前は開発中のものです。:2024/05/05(日) 12:26:21.51 ID:lKf/S92O.net
キーを押すと攻撃モーションするってそんなに難しいことあるのかな

708 :名前は開発中のものです。:2024/05/05(日) 13:15:05.07 ID:H3uE/8nb.net
>>705から現在まで
・ゲーム開始からインゲームまでの整備
・モーション&エフェクトの再生
 >モーションとエフェクトをよしなにアセットバンドル化してくれる機構の整備
 >モーションのAnimationEventの実装&AnimationEventを起点にエフェクトを再生してくれる機構の整備 ←イマココ

野暮用で少し抜けてたのもあるけどやっぱり時間かかりすぎ

709 :名前は開発中のものです。:2024/05/05(日) 13:17:18.16 ID:H3uE/8nb.net
エフェクトの生成から破棄(プーリング)の機構はわいの過去作のソースコードの流用でこれでも時短できてるほうなんだ・・・恐ろしい

710 :名前は開発中のものです。:2024/05/05(日) 15:26:33.49 ID:H3uE/8nb.net
同じUnityプロジェクトにアセットバンドル用の資産とビルド用の資産が混在している
 →ビルドする時はアセットバンドル用の資産をビルド対象から除外するために無効化したい…
  ビルド中だけ拡張子の後ろにアンダーバーを付けてビルド後に戻す処理を足そう!
 →.metaをリネームするのを忘れる。流石にバックアップから戻すしかない
 →単純にバックアップからコピペだとシンボリックリンクが維持されない・・・
  7zipで圧縮してから解凍すればいけるか?
 →7zipでシンボリックリンクをそのままに圧縮&解凍する方法は? ←ここで30分経過

711 :名前は開発中のものです。:2024/05/05(日) 15:33:29.18 ID:H3uE/8nb.net
解決
robocopy /E /DCOPY:T /SL "コピー元フォルダ" "コピー先フォルダ"

712 :名前は開発中のものです。:2024/05/06(月) 20:19:46.57 ID:wxNusPCC.net
GW終了
https://tadaup.jp/171a80148.gif

相変わらず外堀はゲームとして全然成り立ってないけど中身はめちゃめちゃ高品質というアンバランスさ
開発途中に高速化を狙って一時的にも品質を落とすと元の水準に戻せる自信がないのでこのスタンスを貫くしかない
まだ敵とか当たり判定とか実装できてないけどそこらへん実装できれば一気にゲームらしくなる・・・はず!!
あとエフェクトもアセットそのままなので多少は改変したい

713 :名前は開発中のものです。:2024/05/06(月) 20:27:03.49 ID:wxNusPCC.net
エフェクトもモーションもこれからブラッシュアップしていくけど
何しろキャラクターがキャラクターなので(余計な解釈違いとか起こらぬよう)モーションはほぼ無しにしたい
攻撃の予備動作と攻撃終了後のポーズが何となく分かる程度に抑えて、攻撃途中はほぼ姿を消してる感じ
原○の雷○○軍みたいな

714 :名前は開発中のものです。:2024/05/06(月) 20:45:16.57 ID:wxNusPCC.net
最適化のノウハウとかおすすめライブラリとかテクニカルな記事をめちゃくちゃ書けそうなくらいには手元の情報量が蓄積されているのを実感する
見ての通り開発速度が遅すぎて良い例と言えるか微妙なので書けないけど

715 :名前は開発中のものです。:2024/05/07(火) 11:40:14.90 ID:zRujutzP.net
>>712
おつかれさん

現段階だとただのモデルViewerって感じだな
タイプ別にキャラ3つくらいに絞ってエフェクト盛りまくってゲームっぽくしてα版としてFixした方がholo indieとかでアピールしやすそう
まあ趣味ならその限りじゃないけども

716 :名前は開発中のものです。:2024/05/07(火) 12:48:19.43 ID:MByQcUFs.net
ありがとう
モーションやエフェクトは後から差し替えが効く部類なので、今は特にこだわらずバトル開始から終了までの流れを成立させたい
(と言いつつ結局こだわってしまうのだろうなあ)

717 :名前は開発中のものです。:2024/05/15(水) 19:33:34.19 ID:SAvmcEvu.net
https://tadaup.jp/38995e180.png
攻撃の当たり判定、肉眼で確認できるエフェクトに準じた設定が何かしらできるやろー(鼻ほじ)って甘く見てたけど結局ダメだった
Particle Systemはパーティクル1つ1つの座標を基準に衝突判定を行う特性上 無数のパーティクルから成り立つエフェクト向きであり、1つのパーティクルで画像みたいな斬撃を表現している場合の座標は真ん中の何もない位置になるので衝突判定は使えないという寸法

結局、エフェクトの当たり判定をつけたい部分に衝突判定用のMeshColliderを一定時間設置することで実現。なんか間抜け・・・

718 :名前は開発中のものです。:2024/05/15(水) 23:34:01.83 ID:Tw0e5XRh.net
どういう攻撃かわかんないけど(カマイタチみたいな攻撃?)
パーティクルの先頭の移動に同期させた見えない剣振るイメージでもいいんじゃねとは思った
敵がたくさん出てくる想定だと、今の扇状のヒットボックス出す方がシンプルでいいかもね

719 :名前は開発中のものです。:2024/05/16(木) 18:50:00.39 ID:5D4l4urC.net
>>718
そう 左から右へ薙ぎ払うモーションとエフェクト
敵が大勢出るのもそうだけど、このエフェクトの場合緑の部分が0.5秒くらい残像として画面に残るので今回はMeshColliderのやり方がいいかも
他の攻撃も武器は持たせない方針で目に見えてるエフェクトがほぼそのまま攻撃判定になるように実装していきたい

720 :名前は開発中のものです。:2024/05/16(木) 19:53:25.41 ID:5D4l4urC.net
UnityEngine.Objectを継承した変数に対して「component?.Test();」という記法が使えない(Destroyされていた場合にnullチェックが通常と異なる挙動をする)問題

public static T GetSafe<T>(this T component) where T : UnityEngine.Object
{
 return component != null ? component : null;
}

こういう↑拡張メソッドを噛ませて「component.GetSafe()?.Test();」ならいけるくない?と思ったけど、1フレーム毎に何千回何万回も余分なオーバーヘッドが発生しそうなのが気になった
でもMethodImpl(MethodImplOptions.AggressiveInlining)が効くなら別にアリかも?
この程度のオーバーヘッドすら気になるお年頃

721 :名前は開発中のものです。:2024/05/16(木) 21:36:45.85 ID:Xj71hb0i.net
Unityってビルドインのプロファイラすらないの? 見りゃ一発じゃん

722 :名前は開発中のものです。:2024/05/17(金) 19:28:20.02 ID:mlGHjeZv.net
プロファイラはあるけど
これを検証するために数百か所のコードをGetSafe用に書き換えるのが機械的にできないから時間かかって面倒なんよな・・・
まあ他の作業の興が乗らないとかで時間ができたらやってみる

723 :名前は開発中のものです。:2024/05/18(土) 15:22:52.51 ID:njNgCw95.net
そういえばSourceGeneratorがうまく動かない件はしれっと解決済みです
Unityプロジェクト内のファイルを読み書きするロジックをSourceGeneratorに含めてたけどそれがUnityエディタに弾かれてたようで、修正して無事SourceGeneratorのコンパイルは通るようになった
ただし>>703の目的だとファイルの実体が必要(アセットバンドル化するオブジェクトにアタッチするコンポーネントは一意のGUIDが事前に定まってないといけない)ので
生成したファイルをプロジェクト内に吐き出す現状を維持することにした

724 :名前は開発中のものです。:2024/05/18(土) 21:11:49.29 ID:njNgCw95.net
アイドルマスター新作ソシャゲのグラフィック(シェーダ)が評価されてて、わいのシェーダの開発者さんも関連ポストをリポストしてるけど
もしかして同じシェーダを使ってる?と思ったけど全然違った
でもトゥーンシェーダとしての特徴はどことなく似てるような・・・

725 :名前は開発中のものです。:2024/05/18(土) 21:11:53.07 ID:njNgCw95.net
https://x.com/clubnemos/status/1791175839469740474
https://x.com/noske2801/status/1791165446764495126
アイマス新作

https://i.imgur.com/6XDKxTc.mp4
わいの使ってるシェーダ

726 :名前は開発中のものです。:2024/05/18(土) 21:12:51.26 ID:njNgCw95.net
アイマス新作のほうは1ゲームに特化したシェーダということならモデルの仕様も統一されててかなりピーキーな最適化が適用できるということかもしれないけど
わいの買ったシェーダは多様な顧客のニーズに応えられる汎用性も売りの1つだろうから細かいところは妥協が入ってるんだろうけど
個人的には今ので十分かな・・・

727 :名前は開発中のものです。:2024/05/19(日) 20:12:22.03 ID:DcTsEWz1.net
https://tadaup.jp/4786fa1e8.gif
頭上にHPゲージを表示させた

カメラに近いキャラのHPゲージを前面に表示させるようにしたい
安直に思いつくのはTransform.SetAsLastSibling();だけど、例えばステージにキャラが10体いるとして毎フレームTransform.SetAsLastSibling();を10回実行する負荷がどんなもんか調べる必要がある
大したものじゃないといいけど・・・

728 :名前は開発中のものです。:2024/05/20(月) 19:32:54.17 ID:R1T9k8fl.net
バトルの状態異常についてちょっと妄想を巡らせてみた

ホロライブにはラミィという氷系の子がいる
→この子にはやっぱり氷系の攻撃スキルを持たせたくなる
→つまり状態異常は凍結系になる

3Dモデルの凍結の表現・・・めちゃ難しそう

729 :名前は開発中のものです。:2024/05/22(水) 17:28:08.68 ID:QjJZ+5Gk.net
氷結系はマテリアルじゃないでしょうか。
HPゲージはワールド座標でキャラの頭上に表示して
毎フレームプレイヤーの方向に向かせるようにとか

730 :名前は開発中のものです。:2024/05/22(水) 18:26:10.55 ID:t6BzaHyP.net
ラミィの大冒険のラミィがホロライブデビューしてたんだ
おじさん懐かしいな

731 :名前は開発中のものです。:2024/05/23(木) 20:23:13.75 ID:fJ80DqdO.net
氷結はキャラクターの周りを氷が覆ってるみたいなのをイメージしてたので、キャラクターを大きくかたどった氷状のモデルを即時生成しなきゃいけないかーと思ったけど
氷っぽい模様のマテリアルというかシェーダに差し替えるだけならアセットストアから引っ張ってきて一発ですね!(他力本願)

HPゲージは一応何とかなったので、HPの変動がゲージに反映されてHPが0になると敵が退場するところまで土日で何とか実装したい・・・

732 :名前は開発中のものです。:2024/05/26(日) 17:39:03.12 ID:MEudOZNj.net
https://tadaup.jp/618130b55.gif
なんか・・・違う・・・
吹っ飛びモーションは違和感しかないので後で差し替えるとして、次は敵のAIを実装して敵も移動や攻撃をできるようにする
攻撃のバリエーションを増やすのも後回し
今は最低限バトルとして成り立たせることを最優先

733 :名前は開発中のものです。:2024/05/26(日) 23:16:00.80 ID:aFoQb0Qk.net
吹っ飛びすぎw

734 :名前は開発中のものです。:2024/05/27(月) 03:06:16.77 ID:xKb3Sdui.net
どういう世界観(そもそもの仕様)なのか知らんけど、吹っ飛ぶ速度が等速だったり、ヒットストップやスロー表現が無いから攻撃に重さが不足してるんだと思う

ただ、演出は後付けでカバーできるし微調整の範囲だから後回しで良いかと

735 :名前は開発中のものです。:2024/05/27(月) 07:19:22.31 ID:ocAwHFgS.net
アドバイスあざます
今は部品と部品を繋げただけの単純なものなので、ヒットストップやEasingを効かせたりとかもいずれはやるけど優先度は低め
とりあえず今は敵味方が殴り合って勝ったり負けたりできるようにするために必要な機能を優先的に実装したい
ゲームの中身は一戦一戦が負けられない真剣な戦いというより、わちゃわちゃしてて勝っても負けても面白いバカゲー(世界観)を目指したいので、モーションとかは多少バカっぽくてもよい

「HPが0になると吹っ飛んでから消えて死ぬ」というのは単なるバカゲー要素
元ネタとか深い意味があるわけではない

736 :名前は開発中のものです。:2024/05/27(月) 20:03:43.08 ID:ocAwHFgS.net
https://i.imgur.com/ju6wuPz.gif
このシェーダ、原神チックな顔の陰影の付け方もイケる・・・!

と思ったら大半の子はモデルの仕様的にこの陰影に対応してなかった
シェーダ開発者さん曰く、条件を満たさないモデルはBlender等でUVを調整する必要があるとのこと
開発者さんからもホロライブのモデル全部は難しいやろとのお墨付き
諦めよう

737 :名前は開発中のものです。:2024/05/27(月) 21:34:32.24 ID:un8NcbNy.net
顔の法線を球体とかから転送ベイクすればいいんじゃないかな

738 :名前は開発中のものです。:2024/05/28(火) 13:24:51.35 ID:QMHSfJi+.net
ベイクってblenderでやるんですかね。

739 :名前は開発中のものです。:2024/05/28(火) 18:48:27.98 ID:doppLR6a.net
ホロライブのモデルの大半は顔のテクスチャが顔の左半分(右半分)だけ用意されてて、それを左右対称になるよう内部で複製してるみたい(モデリング素人でここら辺の理屈は分からない)
そのせいで>>736の陰影を適用すると影も左右対称になってしまう(→完全な顔のUVが必要ということらしい)ので、完全な顔のUVをBlenderとかでUV1~UV3のいずれかに別途用意する必要がある

・・・とのことなんだけど、モデリングは専門外なのでどうすればいいか分からない
モデリングを避けて通れない他の理由ができた時にまた考える(多分ない)

740 :名前は開発中のものです。:2024/05/28(火) 19:51:39.28 ID:QMHSfJi+.net
モデリングツール一切使えないのでメッシュベイク系のアセットでごり押ししてる

741 :名前は開発中のものです。:2024/05/29(水) 06:07:41.54 ID:l7h4W7Yu.net
>>739
顔半分のUVが存在しないのか~自分の使ってるメッシュベイクは元々のUVを継承するから駄目っぽいな

742 :名前は開発中のものです。:2024/05/29(水) 15:49:57.13 ID:l7h4W7Yu.net
プログラミングバイブル2ndに簡単なトゥーンシェーダーの作り方が載ってたよ
この際にシェーダー自作の道に進まれてはいかがでしょうか

743 :名前は開発中のものです。:2024/05/29(水) 19:16:01.87 ID:N0adwm+l.net
今からシェーダとかモデリングを学ぶのは時間対効果が微妙だけどこのゲームの次があったら流石に考えます・・・
トゥーンシェーダに限って言えばせっかく手元にプロ仕様の高価なシェーダがあるので使い倒したい

744 :名前は開発中のものです。:2024/05/30(木) 19:27:20.96 ID:AtsRpnbT.net
https://i.imgur.com/bxHv8VB.png

移動モーション⇔停止モーションの遷移は無条件で許可する
 移動・停止モーション中は攻撃モーションへの遷移は許可する
 移動・停止モーション中は被ダメージモーションへの遷移は許可する
 攻撃モーション中は被ダメージモーションへの遷移のみ許可して、移動・停止モーションへの遷移は禁止する
 ただし攻撃モーションを最後まで再生完了した時だけ移動・停止モーションへの遷移を許可する

・・・みたいな分岐をもっとスマートに書きたい

今こんな感じだけど今後もっとバリエーションが増える予定
この書き方ならそこそこ柔軟性のある記述もできるけどこれ以上スマートにならないかなあ

745 :名前は開発中のものです。:2024/05/30(木) 22:51:02.52 ID:y/7aWkE7.net
>>744
条件が複雑になりやすいので遷移ごとに分けてはどうでしょうか。
ひとまとめになってるのは自分はあんまり見たことないです

746 :名前は開発中のものです。:2024/05/30(木) 23:07:51.51 ID:y/7aWkE7.net
>>744
イベントドリブン方式と言って、
攻撃、回避、ダメージなどへのアクションが要求された時に
それぞれの処理を別々に記述する感じです

747 :名前は開発中のものです。:2024/05/30(木) 23:41:39.26 ID:y/7aWkE7.net
Unityが配布してるProject TCCにVisual Scriptingだけど
アクションゲームのイベントドリブン条件付き遷移のサンプルがあります

748 :名前は開発中のものです。:2024/05/31(金) 18:34:18.84 ID:xnLniCAs.net
攻撃処理で具体的に何するとか被ダメージ処理は具体的にこうするみたいなのは流石に分割したメソッドでやってますね
今の実装は「モーション(+攻撃や被ダメージ等のイベント)の変更を受け付ける」
→「受け取ったモーションへの変更可否を決定する(>>744)」
→「変更を許可したモーションに応じたイベントを開始する(攻撃による敵のHP減少、被ダメージによる死亡処理など)」
という感じです

イベントドリブンというのはUnityEventのAddListenerやInvokeを使うのが近いでしょうか
ただやはり”現在の状態(攻撃中、移動中、被ダメージ中)”を元に処理を分岐させる点を考慮すると>>744みたく一箇所で判定するがいい・・・のか?

749 :名前は開発中のものです。:2024/05/31(金) 19:59:24.80 ID:xnLniCAs.net
https://tadaup.jp/7435cb46f.gif

現在位置から一番近い敵を見つけて追従するだけのAIを実装。
このゲームでは基本的にCPU同士も敵だけど、プレイヤーを若干優先的に狙うような補正あり
今はプレイヤー補正が強すぎる気がするけど細かいところはやっぱり後回し

これであとは「敵が攻撃範囲に入ったら攻撃する」AIを土日に作れれば理想的
ただこの”攻撃範囲に入ったら”の部分が面倒そう・・・
近接攻撃にも遠距離攻撃にも対応させないと

750 :名前は開発中のものです。:2024/06/02(日) 21:56:34.72 ID:MdmgTygu.net
https://tadaup.jp/833a6436.gif
なんでだよ!(実装途中だけど時間切れ)
今週というか明日以降はしばらくこのゲームにあまり時間割けないかも・・・

751 :名前は開発中のものです。:2024/06/02(日) 21:56:51.10 ID:MdmgTygu.net
https://tadaup.jp/83c38d78.gif

752 :名前は開発中のものです。:2024/06/05(水) 20:41:16.58 ID:qvh/Mkil.net
今日まなんだこと
Dictionaryのキーに指定したものによる挙動の変化
 classを指定:インスタンスの参照が同一であれば同じキーとして扱われる。object.ReferenceEquals(a,b);ってこと?
 enumを指定:実データは数値のくせしてIEqualityComparer<T>を使わないとボクシングが発生する。理不尽
 structを指定:IEquatable<T>を継承していてなおかつGetHashCodeを実装してないとボクシングが発生する。ガッツリUnitGeneratorをキーに使ってたから冷や汗かいたけどしっかり実装してくれてた

宿題:キーにSystem.Typeを指定したらどうなる?そのうちしらべる

753 :名前は開発中のものです。:2024/06/07(金) 20:08:35.30 ID:2fgPR9tD.net
「prefabにアタッチしたコンポーネント」と「ゲーム開始時に読み込むマスタデータ」の両方に持たせて紐づける必要があるデータ(衣装やアクセの種類、prefab内の特定のオブジェクトを起点に発生するイベントの詳細な情報をマスタデータで管理したい場合など)をどうするか問題

今のところ
・prefabのコンポーネントに持たせたデータをオリジナルとする
→自作の拡張機能をワンクリックすると、prefabから”マスタデータの元となるテキストファイル”にコピーする
→”マスタデータの元となるテキストファイル”から”最適化済みマスタデータ本体”への変換をゲーム実行時に自動で行う(ここまでUnityEditor)
→ビルド後は”最適化済みマスタデータ本体”だけ使う
という手順を踏んでるのが現状

754 :名前は開発中のものです。:2024/06/07(金) 20:11:24.68 ID:2fgPR9tD.net
手順通りにきちんとやる前提ならこれ>>753で問題ないんだけど
いざこのゲームを一般向けに公開した時のことを妄想すると、「致命的なバグを慌てて修正する際にこの手順のいずれかを誤って飛ばした結果――」というシチュが浮かんでくる
いやまあそんなこと言い出したらどんな最適化手法も全部おじゃんなんだけれども。
怖いなあヒューマンエラー・・・

755 :名前は開発中のものです。:2024/06/07(金) 20:20:53.02 ID:2fgPR9tD.net
https://tadaup.jp/1ad44d684.gif

ゲームの進捗まあまあです(GIFは倍速)
次はプレイヤーの死を実装して、攻撃も1パターンだけだとこの先の検証が流石につらいのでもう少し増やす
とりあえずこの土日はそこまでがノルマ

プレイヤーは表に出てる1人+控え2,3人の構成にしたいので
表のプレイヤーが死ぬ→控えに交代→死ぬ→控えが0人=ゲームオーバー
というのが敗北条件
ステージに出てくる敵を全部倒して生き残るのが勝利条件
この辺りのルールはもろポケモンスクランブル

756 :名前は開発中のものです。:2024/06/09(日) 17:02:27.38 ID:Q3/3TzhW.net
https://i.imgur.com/QFNgL71.png
たまたまかっこいいショットが撮れた

折角シェーダとかグラフィック面もこだわってるし、バトル中に一時停止して鑑賞できる機能とかつけようか一瞬迷ったけど
でもどうせホロライブのモデル以外はホロライブと全く関係のない寄せ集めのアセットだしなぁ

757 :名前は開発中のものです。:2024/06/12(水) 19:47:15.66 ID:AJ7z2JyV.net
https://tadaup.jp/2d6d96180.gif

前方2,3メートル先だけに当たり判定のある攻撃を実装。
この攻撃を出すためにCPUは相手と一定の距離を保ちたがるAIも併せて実装。
これでとりあえず敵のAIにバリエーションを持たせられるようになったのでよしとする。

ただどうも死亡後のリスポーンの挙動が怪しい。
吹っ飛んだら死亡直前にいた位置でリスポーンしてほしいのに、たまに吹っ飛んだ先でリスポーンする。
アクションゲームだと僅か1フレームだけ立ってるフラグが原因になる不具合とかあるから大変だ

758 :名前は開発中のものです。:2024/06/13(木) 17:44:57.01 ID:DujSPjlb.net
https://i.imgur.com/LeaiqwO.jpg
もうすぐ終了です

759 :名前は開発中のものです。:2024/06/13(木) 20:56:47.00 ID:TIw63qJb.net
>>758
グロ

760 :名前は開発中のものです。:2024/06/14(金) 11:08:35.51 ID:KJ79sk39.net
もうすぐ終了です   
https://i.imgur.com/zGlrd6A.jpg

761 :名前は開発中のものです。:2024/06/14(金) 12:02:31.82 ID:wKrMsWsL.net
>>760
グロ

762 :名前は開発中のものです。:2024/06/15(土) 08:19:35.83 ID:Hps/JR6Q.net
https://www.youtube.com/watch?v=4Veg3yQuyuk

参考資料
度々名前を出したポケモンスクランブルの3DSソフトの高難易度ステージのプレイ動画
3DSのゲームだから録画する手段も限られるせいか動画少ないね

今作ってるゲームもこれくらいのワチャワチャ感でいきたい

763 :あぼーん:あぼーん .net
あぼーん

764 :名前は開発中のものです。:2024/06/15(土) 13:05:18.73 ID:6UA9PWZs.net
5000円ゲットに加えて家族・友人に紹介で更に×5000円!     
https://i.imgur.com/nhPKdYa.jpg

765 :名前は開発中のものです。:2024/06/16(日) 15:21:14.11 ID:uG4nJV2v.net
この土日はなぜか明確な目的を持てなくて細かいブラッシュアップを中心にネチネチした作業を進めてた・・・

その裏で>>736に未練があったのでBlenderでいじってみたけど、やっぱ無理そう
顔の左半分(右半分)しかないUVをもう半分にも展開するのは素人でも簡単だったけど
その先の細部まで拘ろうとすると素人知識ではどうしようもないと判断して諦めた

766 :名前は開発中のものです。:2024/06/20(木) 21:47:17.04 ID:nwKPCywv.net
https://tadaup.jp/4b4dc36db.png
久しぶりにスマホ版をビルドした

要求スペック的にスマホ版は厳しいのでこのゲームが完成したとしてスマホ版を出すつもりはないけど、個人的にスマホ版を持ち歩いてれば出先でも簡単なデバッグくらいはできるだろうと思ったけどそれすら厳しそう
5体が画面内を暴れまわるだけで既に20FPS……
持ってるスマホそこまで高性能じゃないから致し方なし

767 :名前は開発中のものです。:2024/06/22(土) 10:41:52.81 ID:YalAGtLo.net
この土日もこれといった目標なくまったりやる

ところで買ったアセットにこのモーションがあったんだけど・・・使えるッ!!!!!
https://tadaup.jp/5257f021e.gif

768 :名前は開発中のものです。:2024/06/23(日) 13:03:45.51 ID:dCklct3q.net
今だけです
https://i.imgur.com/hw016FU.jpg

769 :名前は開発中のものです。:2024/06/23(日) 18:54:00.59 ID:zvgSJthc.net
終了までお早めに
https://i.imgur.com/7FFGV4M.jpg

770 :名前は開発中のものです。:2024/06/23(日) 21:23:45.99 ID:kTLZKALM.net
スパム通報してくれてる人いたらありがとう
狙われてるのこのスレだけなんかな・・・

https://files.catbox.moe/awdvt7.mp4
敵は攻撃する前に溜めの時間を設けた。ポケモンスクランブル式
もうちょっと溜めエフェクトなんとかしたい

あとそろそろ操作キャラの変更機能とかも実装したい・・・この土日でやればよかった

771 :名前は開発中のものです。:2024/06/23(日) 21:53:19.26 ID:FXYwn4iK.net
終了近し。お早めに。
https://i.imgur.com/BU5TRfs.jpg

219 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver.24052200