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

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

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

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

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

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

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

692:名前は開発中のものです。
24/04/20 18:26:18.18 UBmJvcRv.net
エディタ限定でStreamによるファイル読み書きの際にエディタが固まる事象が必ず発生するようになってしまった
調べたらEditorLoopのLoading.LockPersistentManagerで固まってた
URLリンク(issuetracker.unity3d.com)
ってレスしようとして、その前にもう一度再現しようと思ったらなんともなかった
なんだったんだ・・・

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

694:名前は開発中のものです。
24/04/24 11:07:50.35 qjHshpOS.net
VroidはUVが単純だからAIでテクスチャ生成するの簡単だね
URLリンク(i.imgur.com)
URLリンク(i.imgur.com)
URLリンク(i.imgur.com)
URLリンク(i.imgur.com)

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

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

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

Introduction to Warudo
URLリンク(docs.warudo.app)

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

698:名前は開発中のものです。
24/04/25 19:59:11.75 +io37ZIa.net
Mono.CecilとSourceGeneratorの基本的な使い方を覚えた
Mono.Cecil
ビルドしたDLLを改造できる機構。DLLに含まれるすべての変数、メソッド及びメソッド内の処理などを変更できる。
かなり昔からあるけどSourceGeneratorの登場によって使い道がほぼなくなった。変数名やメソッド名の難読化のために使う。
SourceGenerator
ソースコードの編集中に追加のソースコードを挿入できる機構。ソースファイルが生成されないので裏で勝手にやってくれるのが強み。
CySharp製のライブラリでもゴリゴリ使われてるけど、量産型の変数やメソッドを自作クラスにホイホイ付与できて便利。変数名やメソッド名の難読化のために使う。(ん?)

699:名前は開発中のものです。
24/04/26 19:36:25.52 1rlMNh6f.net
URLリンク(i.imgur.com)
JavaScript界隈で今では恐らく化石となってるであろうjQueryにjsRenderというプラグインがあったんだけど
SourceGeneratorはソースコードの中にソースコードを文字列で何行にも渡って書くので
jsRenderみたいにスマートに書きたい
SourceGeneratorのためのSourceGeneratorが必要。時間の合間を見て自作する(できるのか・・・?
明日から10連休、バトル部分どこまで実装できるか

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

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

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

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

703:名前は開発中のものです。
24/04/29 04:11:23.29 3qzGYh0B.net
ソースジェネレータはソースコードの難読化に一役買ってもらいたい
ソースコード内の変数名やメソッド名などの固有名詞の難読化は専用のアセット等でほぼほぼできてたけど
アセットバンドル化するオブジェクトにアタッチしたコンポーネント名やシリアライズされた変数名は、アセットバンドル化した時点の名前から変えられないので難読化が現実的じゃなかった
URLリンク(i.imgur.com)
これをソースジェネレータで解決する
・難読化前のコンポーネントを継承した難読化済みコンポーネントをソースジェネレータで生成して、実際にオブジェクトにアタッチするのは難読化済みコンポーネント
・難読化前コンポーネントの変数はシリアライズせず、難読化済コンポーネントの変数のみインスペクタに表示される&CustomEditorで難読化前の変数名をインスペクタに表示する
・その他、開発環境では難読化を感じさせないようにしつつ成果物はがっつり難読化させるためのテク色々
この「開発環境で難読化を感じさせない」の部分でソースジェネレータにかなり助けられてる

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

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

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

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

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

708:名前は開発中のものです。
24/05/05 13:15:05.07 H3uE/8nb.net
>>705から現在まで
・ゲーム開始からインゲームまでの整備
・モーション&エフェクトの再生
 >モーションとエフェクトをよしなにアセットバンドル化してくれる機構の整備
 >モーションのAnimationEventの実装&AnimationEventを起点にエフェクトを再生してくれる機構の整備 ←イマココ
野暮用で少し抜けてたのもあるけどやっぱり時間かかりすぎ

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

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

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

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

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

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

715:名前は開発中のものです。
24/05/07 11:40:14.90 zRujutzP.net
>>712
おつかれさん
現段階だとただのモデルViewerって感じだな
タイプ別にキャラ3つくらいに絞ってエフェクト盛りまくってゲームっぽくしてα版としてFixした方がholo indieとかでアピールしやすそう
まあ趣味ならその限りじゃないけども

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

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

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

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

720:名前は開発中のものです。
24/05/16 19:53:25.41 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:名前は開発中のものです。
24/05/16 21:36:45.85 Xj71hb0i.net
Unityってビルドインのプロファイラすらないの? 見りゃ一発じゃん

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

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

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

725:名前は開発中のものです。
24/05/18 21:11:53.07 njNgCw95.net
URLリンク(x.com)
URLリンク(x.com)
アイマス新作

URLリンク(i.imgur.com)
わいの使ってるシェーダ

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

727:名前は開発中のものです。
24/05/19 20:12:22.03 DcTsEWz1.net
URLリンク(tadaup.jp)
頭上にHPゲージを表示させた
カメラに近いキャラのHPゲージを前面に表示させるようにしたい
安直に思いつくのはTransform.SetAsLastSibling();だけど、例えばステージにキャラが10体いるとして毎フレームTransform.SetAsLastSibling();を10回実行する負荷がどんなもんか調べる必要がある
大したものじゃないといいけど・・・

728:名前は開発中のものです。
24/05/20 19:32:54.17 R1T9k8fl.net
バトルの状態異常についてちょっと妄想を巡らせてみた
ホロライブにはラミィという氷系の子がいる
→この子にはやっぱり氷系の攻撃スキルを持たせたくなる
→つまり状態異常は凍結系になる
3Dモデルの凍結の表現・・・めちゃ難しそう

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

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

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

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

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

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

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

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

736:名前は開発中のものです。
24/05/27 20:03:43.08 ocAwHFgS.net
URLリンク(i.imgur.com)
このシェーダ、原神チックな顔の陰影の付け方もイケる・・・!
と思ったら大半の子はモデルの仕様的にこの陰影に対応してなかった
シェーダ開発者さん曰く、条件を満たさないモデルはBlender等でUVを調整する必要があるとのこと
開発者さんからもホロライブのモデル全部は難しいやろとのお墨付き
諦めよう

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

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

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

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

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

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

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

744:名前は開発中のものです。
24/05/30 19:27:20.96 AtsRpnbT.net
URLリンク(i.imgur.com)

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

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

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

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

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

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

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

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

749:名前は開発中のものです。
24/05/31 19:59:24.80 xnLniCAs.net
URLリンク(tadaup.jp)
現在位置から一番近い敵を見つけて追従するだけのAIを実装。
このゲームでは基本的にCPU同士も敵だけど、プレイヤーを若干優先的に狙うような補正あり
今はプレイヤー補正が強すぎる気がするけど細かいところはやっぱり後回し
これであとは「敵が攻撃範囲に入ったら攻撃する」AIを土日に作れれば理想的
ただこの”攻撃範囲に入ったら”の部分が面倒そう・・・
近接攻撃にも遠距離攻撃にも対応させないと

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

751:名前は開発中のものです。
24/06/02 21:56:51.10 MdmgTygu.net
URLリンク(tadaup.jp)

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

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

753:名前は開発中のものです。
24/06/07 20:08:35.30 2fgPR9tD.net
「prefabにアタッチしたコンポーネント」と「ゲーム開始時に読み込むマスタデータ」の両方に持たせて紐づける必要があるデータ(衣装やアクセの種類、prefab内の特定のオブジェクトを起点に発生するイベントの詳細な情報をマスタデータで管理したい場合など)をどうするか問題
今のところ
・prefabのコンポーネントに持たせたデータをオリジナルとする
→自作の拡張機能をワンクリックすると、prefabから”マスタデータの元となるテキストファイル”にコピーする
→”マスタデータの元となるテキストファイル”から”最適化済みマスタデータ本体”への変換をゲーム実行時に自動で行う(ここまでUnityEditor)
→ビルド後は”最適化済みマスタデータ本体”だけ使う
という手順を踏んでるのが現状

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

755:名前は開発中のものです。
24/06/07 20:20:53.02 2fgPR9tD.net
URLリンク(tadaup.jp)
ゲームの進捗まあまあです(GIFは倍速)
次はプレイヤーの死を実装して、攻撃も1パターンだけだとこの先の検証が流石につらいのでもう少し増やす
とりあえずこの土日はそこまでがノルマ
プレイヤーは表に出てる1人+控え2,3人の構成にしたいので
表のプレイヤーが死ぬ→控えに交代→死ぬ→控えが0人=ゲームオーバー
というのが敗北条件
ステージに出てくる敵を全部倒して生き残るのが勝利条件
この辺りのルールはもろポケモンスクランブル

756:名前は開発中のものです。
24/06/09 17:02:27.38 Q3/3TzhW.net
URLリンク(i.imgur.com)
たまたまかっこいいショットが撮れた

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

757:名前は開発中のものです。
24/06/12 19:47:15.66 AJ7z2JyV.net
URLリンク(tadaup.jp)
前方2,3メートル先だけに当たり判定のある攻撃を実装。
この攻撃を出すためにCPUは相手と一定の距離を保ちたがるAIも併せて実装。
これでとりあえず敵のAIにバリエーションを持たせられるようになったのでよしとする。
ただどうも死亡後のリスポーンの挙動が怪しい。
吹っ飛んだら死亡直前にいた位置でリスポーンしてほしいのに、たまに吹っ飛んだ先でリスポーンする。
アクションゲームだと僅か1フレームだけ立ってるフラグが原因になる不具合とかあるから大変だ

758:名前は開発中のものです。
24/06/13 17:44:57.01 DujSPjlb.net
URLリンク(i.imgur.com)
もうすぐ終了です

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

760:名前は開発中のものです。
24/06/14 11:08:35.51 KJ79sk39.net
もうすぐ終了です   
URLリンク(i.imgur.com)

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

762:名前は開発中のものです。
24/06/15 08:19:35.83 Hps/JR6Q.net
URLリンク(www.youtube.com)
参考資料
度々名前を出したポケモンスクランブルの3DSソフトの高難易度ステージのプレイ動画
3DSのゲームだから録画する手段も限られるせいか動画少ないね
今作ってるゲームもこれくらいのワチャワチャ感でいきたい

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

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

765:名前は開発中のものです。
24/06/16 15:21:14.11 uG4nJV2v.net
この土日はなぜか明確な目的を持てなくて細かいブラッシュアップを中心にネチネチした作業を進めてた・・・
その裏で>>736に未練があったのでBlenderでいじってみたけど、やっぱ無理そう
顔の左半分(右半分)しかないUVをもう半分にも展開するのは素人でも簡単だったけど
その先の細部まで拘ろうとすると素人知識ではどうしようもないと判断して諦めた

766:名前は開発中のものです。
24/06/20 21:47:17.04 nwKPCywv.net
URLリンク(tadaup.jp)
久しぶりにスマホ版をビルドした

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

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

ところで買ったアセットにこのモーションがあったんだけど・・・使えるッ!!!!!
URLリンク(tadaup.jp)

768:名前は開発中のものです。
24/06/23 13:03:45.51 dCklct3q.net
今だけです
URLリンク(i.imgur.com)

769:名前は開発中のものです。
24/06/23 18:54:00.59 zvgSJthc.net
終了までお早めに
URLリンク(i.imgur.com)

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

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

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

771:名前は開発中のものです。
24/06/23 21:53:19.26 FXYwn4iK.net
終了近し。お早めに。
URLリンク(i.imgur.com)

772:名前は開発中のものです。
24/06/30 14:24:50.24 oqHJWSHE.net
URLリンク(i.imgur.com)
10日間のチェックインだけで5500P貰えます。

773:名前は開発中のものです。
24/06/30 18:17:11.61 LNrK7XBl.net
URLリンク(i.imgur.com)
10日間チェックインだけで5500P貰えます      

774:名前は開発中のものです。
24/06/30 18:48:28.16 LNrK7XBl.net
URLリンク(i.imgur.com)
10日のチェックインだけで5500P貰えます      

775:名前は開発中のものです。
24/06/30 18:52:05.14 LNrK7XBl.net
URLリンク(i.imgur.com)
10日間チェックインだけで5500P貰えます      

776:名前は開発中のものです。
24/06/30 19:15:32.76 GxRaJfZ5.net
URLリンク(i.imgur.com)
10日チェックインだけで5500P貰えます      

777:名前は開発中のものです。
24/06/30 19:31:56.06 px99UM2q.net
URLリンク(i.imgur.com)
10日チェックインだけで5500P貰えます。      

778:名前は開発中のものです。
24/06/30 22:34:18.75 znxAt2pj.net
URLリンク(i.imgur.com)
10日のチェックインだけで5500P貰えます      

779:名前は開発中のものです。
24/06/30 22:44:20.23 znxAt2pj.net
URLリンク(i.imgur.com)
10日間チェックインだけで5500P貰えます      

780:名前は開発中のものです。
24/06/30 23:33:24.46 znxAt2pj.net
URLリンク(i.imgur.com)
10日間のチェックインだけで5500P貰えます。      

781:名前は開発中のものです。
24/07/01 02:18:39.15 bTn92cv9.net
>>772-780
グロ

782:名前は開発中のものです。
24/07/01 04:08:58.67 bTn92cv9.net
URLリンク(tadaup.jp)
URLリンク(i.imgur.com)
この土日は主にチーム編成画面を作ってた(なお未完成)
メニューから各種画面の起こりうる遷移を図にしてみたけど、
この矢印をどの順序で辿っても一切バグらないよう入念にチェックしなくてはいけない
例えばチーム編成画面を開いた後にキャラ一覧画面を開くとフェードインが不完全でボタンがクリックできない、みたいのが恐らく山積み

783:名前は開発中のものです。
24/07/05 09:57:28.31 KvMzxD2V.net
URLリンク(i.imgur.com)
10日間連続チェックインだけで5000P貰えます

784:名前は開発中のものです。
24/07/05 15:51:40.29 GAkpiiSL.net
URLリンク(i.imgur.com)
10日連続チェックインだけで5000P貰えます

785:名前は開発中のものです。
24/07/05 17:16:29.38 RRcWiDsR.net
>>739
めちゃめちゃ今更だが顔のUVだけ別のマップに振り分けて、元の顔テクスチャを複製してミラーリング、新しく振り分けたUVマップを重ねるだけだから簡単と言えば簡単に出来るな
でもこれも改造禁止に触れるっちゃ触れるから規約違反になりそうだ

786:名前は開発中のものです。
24/07/05 19:23:55.75 4eThrGmb.net
URLリンク(i.imgur.com)
すぐに2500P+2500Pが手に入ります

787:名前は開発中のものです。
24/07/05 20:05:37.86 SW8ij6sX.net
>>783-784 >>786
グロ

788:名前は開発中のものです。
24/07/05 20:13:11.78 SW8ij6sX.net
>>785
ありがとう
そのアプローチも一度試してみて、完全なUVマップの新規追加はどうやら上手くいったらしい(素人並感)んだけど
肝心の影がうまく表示されなくて保留にしてた

規約だと改造改変に関してはここの6と7の(3)に記載してある
URLリンク(www.mmd.hololive.tv)
今回の影の変え方は元のキャラクターの特徴を変質させるわけではないから問題ない・・・のかな?

789:名前は開発中のものです。
24/07/05 21:10:05.12 as40aqzo.net
ポイントガイジたちはねずみ講受講料ぼられて騙されたバカだからあんまりいじめちゃ可哀そうでふよ(^^
無知は罪ともいいまふがね(^^

790:名前は開発中のものです。
24/07/06 07:12:21.40 uEUMFrsZ.net
URLリンク(i.imgur.com)
>>788
唇の部分だけ何故かUVマップの顔とは違う場所に配置されてて影の表示がおかしくなるモデルがあった
他にもUVマップの口が開いた状態になってて影の表示が崩れるものも・・・
余程この影のつけ方にこだわりを持ちたい理由ができるまでは保留かなあ

791:名前は開発中のものです。
24/07/06 11:44:09.03 J+Acfyg6.net
URLリンク(i.imgur.com)
すぐ2500P+2500P手に入ります

792:名前は開発中のものです。
24/07/06 11:56:09.15 J+Acfyg6.net
URLリンク(i.imgur.com)
すぐ2500P+2500P手に入ります

793:名前は開発中のものです。
24/07/06 12:19:56.90 fHGbmLk1.net
>>790
はあちゃまMMDモデルは開いてないけども、これ口のメッシュを別オブジェクトに分けられてるのかもしれんね...
blenderやPMXEでくっつけちゃえばいいのかもしれんけど、そうすると今度はテクスチャがおかしくなったりするかもしれんなぁ
となると今度はUVマップを再割り当てせんとならんし面倒だな

794:名前は開発中のものです。
24/07/06 13:16:09.89 MMhEo89R.net
URLリンク(i.imgur.com)
すぐ2500P+2500P手に入ります

795:名前は開発中のものです。
24/07/07 08:20:47.97 ERxcoYbF.net
>>793
まさにそれだった
この影のつけ方はSDFっていう種類の影らしいんだけどちょい難しすぎるので一旦諦める・・・(なんなら>>736も目の上の線が対応できてない)
BlenderでSDF用のテクスチャを作る方法もあるみたいだけどこっちも難しそうだし時間もかかりそう

796:名前は開発中のものです。
24/07/14 20:59:24.28 ocfnsx4i.net
URLリンク(i.imgur.com)
チーム編成機能ぽっちで3週間かかったのか・・・
あまり時間取れなかったのもあるけど開発ペース遅すぎ問題
今度は装備の取り外し機能のUIをできれば今月中に……

797:名前は開発中のものです。
24/07/15 10:47:44.03 iiDPUMzJ.net
URLリンク(qiita.com)
URLリンク(i.imgur.com)
これUIを設計するうえで死ぬほど意識してる
直感的に分かりやすいUI設計・・・できてんのかなぁ

798:名前は開発中のものです。
24/07/23 19:35:44.94 zJBNj0PY.net
URLリンク(i.imgur.com)
URLリンク(i.imgur.com)
顔の影をSDFにできたら嬉しい問題
こんな影のつけ方なら素人のシェーダ弄り程度でも何とかなったけど、こんなもんなら正直要らない
というかこの影のためにキーワードを1つ増やしたらシェーダのバリアント数が5000から1万になった・・・畏怖

799:名前は開発中のものです。
24/07/27 11:37:09.06 gQdSfpKm.net
がんばれ、応援してるぞ

800:名前は開発中のものです。
24/07/27 20:33:26.33 DN1Zmzxs.net
>>799
ありがとう、頑張ります!
バトルの基本的なシステムは簡素ながらほぼほぼできてるように見えて、
動画にして見返してみて初めて気づく不具合とかがあって先は長い・・・
この動画もよく見ると青い子が死んで退場する時に徐々に薄くなるフェードアウトのアニメーションが走ってないし
URLリンク(i.imgur.com)

801:名前は開発中のものです。
24/08/02 20:56:03.60 kdbVPc72.net
ココナラ辺りでMMDモデル約30体分のポリゴン数削減をお金出すから誰かやってくれないかなと一瞬思った
・MMDモデル側の規約的にどうなのか → キャラクターの個性を変化させる改変ではないので問題ない
・よそ様のモデルでお金のやり取りをするのはどうなのか → これがもうアウトっぽい
・そもGTX1650でも動作が安定してるのだからこのまま高品質を売りにすればいいのでは →これでいこう

802:名前は開発中のものです。
24/08/04 20:10:38.13 9xX+GU4t.net
URLリンク(i.imgur.com)
プレイヤー1人と控え2人のチーム構成で、控えと切り替えながらプレイヤーで戦うプレイスタイルの他に
プレイヤー1人とCPUの味方2人のチーム構成で3人同時に戦うプレイスタイルを実装した
ついでに各スキルのクールタイムも実装した

803:名前は開発中のものです。
24/08/04 20:11:48.12 9xX+GU4t.net
よくよく考えたらスキルのエフェクトを後でまとめて一気に実装しようと思ったところで都合よくポンポン作れるものでもないので、そろそろ30人分のスキルを用意し始めよう・・・

804:名前は開発中のものです。
24/08/06 20:50:01.81 TB+22z4M.net
イッチ確かあくたんあくたん言うてたからあくたん推しだったんよな
悲しいね
URLリンク(i.imgur.com)
卒業したメンバーをゲームに登場させるのって微妙かなあ
自分の作ったモデルじゃないし

805:名前は開発中のものです。
24/08/08 23:42:17.05 IO7bxJhE.net
>>804
イチや、今ちょこちょこ再開して頑張っとるで
あくたん卒業はこの三か月の配信時間でなんとなく察してたからそこまでダメージないわ

806:名前は開発中のものです。
24/08/08 23:44:11.00 IO7bxJhE.net
今はMMDモデルのボーンをなんとかUE5のマネキンと合わせられないか頑張ってる

807:名前は開発中のものです。
24/08/09 22:05:29.01 d1IqaxRF.net
>>805
おお生きとったんかワレ!
ゲーム開発に囚われすぎてて最近ホロライブ全然見れてない・・・この本末転倒感よ
806はどういう状況やねん

808:名前は開発中のものです。
24/08/09 23:22:07.28 8oUKnc9m.net
実際に開発中止で発表してるところも出てきたな、リスク高すぎるわ

809:名前は開発中のものです。
24/08/10 01:01:52.80 YOvXhxTQ.net
>>807
アニメーションの作成をするにしても、依頼するにしてもとりあえずゲーム用のモデルじゃないからワイの作りたい形に持っていけないねん
だから一回UE5のモデルとボーン構造を一致させるなりしてゲームで使える形にしたい

810:名前は開発中のものです。
24/08/10 07:12:53.30 I6ffsbhu.net
>>809
UnityはMMD4Mecanimでゲーム用のモデルに変換できてボーンとかも機能してるけどUEはそうもいかんってことかな?
pmxをBlenderで読み込ませてFBXなりUEが認識できるファイル形式に変換するとかできないかなあ
手作業でボーンを1つ1つ調整するのは2,3人くらいならワンチャン頑張れるけど30人くらいになってくると死ねる

811:名前は開発中のものです。
24/08/11 20:46:51.82 tVb2VV7J.net
作曲はじめました
正確には既存の曲のアレンジなのでゼロからの作曲ではない
本家MV
URLリンク(youtu.be)
本家インスト版
URLリンク(youtu.be)
今の進捗(2:50辺りからのサビのみ)
URLリンク(files.catbox.moe)

812:名前は開発中のものです。
24/08/11 20:47:47.29 tVb2VV7J.net
DTMどころか作曲もど素人で一発目の曲が上手くいくはずもないので
とりあえず今の技量で作れるとこまで作って、ゲーム開発の終盤で大幅にブラッシュアップする
BGMは最低5曲欲しい その5曲を某ファイアーエムブレムみたいに1曲で緩急2種類ずつ用意する

813:名前は開発中のものです。
24/08/13 21:23:55.23 9Amfg6wI.net
お盆休み終了のお知らせ
結局曲ばっか触っててスキルの実装全くできなかった
出せる音の種類が多すぎて把握しきれない、というかシンセサイザ系はプリセットだけじゃだめなのだろうな・・・

814:名前は開発中のものです。
24/08/17 00:07:57.39 LQEO1Ayj.net
ワイはようやく攻撃キャンセル実装できたわ
・ダメージ判定の実装
・敵の実装
の二つを今月はやるんや

815:名前は開発中のものです。
24/08/17 06:15:58.82 CvTlPDE3.net
30人分×3種類のスキルを用意するのは諦める
職業みたいな概念を5,6種類用意して1職業あたり3スキルとかならまあいける?
スキルはこのゲームの主賓ではないので、誰に装備させても違和感のない無味無臭な感じがいい
>>814
ダメージ判定は攻撃エフェクトに丸とか四角みたいな単純なコライダーを取り付けて行うことになるんやろなぁ・・・(昔のわい)

816:名前は開発中のものです。
24/08/17 17:50:39.32 LQEO1Ayj.net
>>814
これやろうとして全く別の事をやり始めちゃうから完成しないんだよな
オイラってホントバカ!

817:名前は開発中のものです。
24/08/17 17:50:40.36 LQEO1Ayj.net
>>814
これやろうとして全く別の事をやり始めちゃうから完成しないんだよな
オイラってホントバカ!

818:名前は開発中のものです。
24/08/17 23:10:25.17 CvTlPDE3.net
わいもゲームのシステム作ったりスキル用のエフェクトとにらめっこしたり音楽作ったり時々アニメに入り浸ったりひどいもんやで
UnityのHumanoidモーションはなんで回転をEulerじゃなくてQuaternionで保存するようにしたんだ・・・
VeryAnimation使っても微妙に手入れするとグルングルン回転しだすのつらい

819:名前は開発中のものです。
24/08/18 20:49:25.75 cRXq/3Zd.net
敵のAI作成どう考えても今月中に終わらないわ……
びっくりするほど全くわからん

820:名前は開発中のものです。
24/08/18 20:49:26.38 cRXq/3Zd.net
敵のAI作成どう考えても今月中に終わらないわ……
びっくりするほど全くわからん

821:名前は開発中のものです。
24/08/18 20:49:52.92 cRXq/3Zd.net
めっちゃ連投されるンゴ

822:名前は開発中のものです。
24/08/18 21:46:09.34 7hq/CFrW.net
まず簡素なロジックを組んでから後から肉付けしていく感じでどう
わいも最初は敵がプレイヤーに追従するだけの脳死プログラムとして

if (プレイヤーと敵の距離 > 0.5)
{
 敵の位置 += プレイヤーの位置 - 敵の位置;
}

みたいな雑なロジックを組むとこから始めた気がする

823:名前は開発中のものです。
24/08/19 01:17:32.06 cANsWwoK.net
>>822
マジで簡単なとこから手を付けていくと自信がついていいけど、残った作業が地獄すぎる
来年の4月までにはとりあえずプレイできるような形にしたいけど無理かもしれねぇ

824:名前は開発中のものです。
24/08/19 21:01:36.37 MEHZf65k.net
簡単なところから手を付けるというか、段階を踏む?
まずは敵がプレイヤーに追従するだけのロジック
そこに「一定距離以下ならデバッグログに"a"と出力する」ロジックを追加
それを「一定距離以下なら攻撃モーションAを再生する」に改変
その攻撃モーションAで手を振り払う瞬間にデバッグログ"b"と出力するロジックを追加
その攻撃モーションAで手を振り払う瞬間に当たり判定用のコライダーオブジェクトを生成する処理を追加
・・・みたいな

825:名前は開発中のものです。
24/08/24 06:19:31.28 jT9cLGpv.net
マテリアルの勉強マジでつまらなすぎてツライム


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

10日前に更新/289 KB
担当:undef