【C#】木構造の中のフィールドに親やルートの参照を注入する

C#

XMLのデシリアライズ等で得られた木構造を解析する際、あるノードから親やルートを見たくなることありませんか…? 例えばこういう木構造があったとして、 あるNodeが別のNodeへの参照を持ってますが直シリアライズではなくidを持ってる形とか考えられます。 …

【Unity】PlayerLoopのタイミングをシリアライズしてInspectorから指定

PlayerLoop便利です。昔はイベント拾うためだけのMonoBehaviourを生成したりしてましたが、もう要りません。 tsubakit1.hateblo.jp UniTaskでもめちゃ使ってるようです。多分YieldやDelayの終了通知だと思う neue cc - C#のasync/await再考, タイムアウト処…

【Unity】クソ雑に使えるオブジェクトプール

Unityでエフェクトやらを出すときってオブジェクトをプーリングすると思います。 Unity向けのオブジェクトプールの実装はいろいろありますが、雑に拾って雑に返せるものを用意して使ってます。 コード クソ雑に使えるオブジェクトプール つかいかた プレハブ…

【Unity】.blendのインポート挙動を上書きするスクリプト

Unityは.blendのインポートに対応しています。 その挙動がUnityの仕様変更によって大破壊されてます。 キレちゃった。 何が問題なのか .blendをインポートすると従来は各Actionを別々のAnimationとしてインポートできてました。 好きな数だけAnimationClipを…

【Unity】数式からメッシュアセット生成くん

エフェクト作るときに単純なメッシュ形状を作りたくなることあると思います。 例えば円錐台とか… こういうシンプルなメッシュ達のためにfbxやその元ファイルを管理するのが面倒…というお気持ちがあります。 そこで、今回はC#の式を評価して簡単なメッシュを…

【Unity】ShaderGraph焼き込みくん

ShaderGraph便利ですよね。プロシージャルテクスチャみたいなこともできちゃいます。 「みたいな」と言ってるのはこれがテクスチャではなくGPUで生成されているからです。 ある程度複雑な処理だとテクスチャにしてサンプリングしたほうがマシな場合もあるで…

ゲームのデータが毎日更新されるようにした話.GitHub Actionsでdotnet-scriptを走らせる話.

このまえ変なゲームを作りました. friendsea.hateblo.jp ゲームジャム版は9/25で一旦頒布終了なのですが,10/15からの博麗電脳試遊会向けに「集計データを毎日更新するバージョン」を作りました. この「集計データを毎日更新する」っていうのををGitHub Ac…

【東方ゲームジャム2022】アリスのドキドキ人形ラブトレイン

東方ゲームジャム2022に参加しました。 東方好きな人は遊んでみてください。 東方好きじゃない人はなんもおもんないので遊んじゃだめ。 #東方ゲームジャム に投稿した限界みたいなゲームが公開されてます.遊んでほしいけど東方Projectとその二次創作への理…

ゲンソウフロードフロント

ゲームを公開しましたhttps://t.co/pv91DmIHFd pic.twitter.com/IYJRrzjQXM— FriendSea (@friendsea95) 2019年12月21日 そういうわけでゲームができました. その所感です. パズルアクションとは パズルアクションを作りたかったんですが, 1ギミックに1ス…

【Unity】弾幕を張る

見て.弾幕です. これもゲーム制作の副産物を整理したものです. github.com 弾幕を張りたい つかいかた マネージャを置く 弾源の設定 被弾するもの いろんな弾幕 いろんな弾 弾源を書く やってること 当たり判定 描画 おしまい 弾幕を張りたい これは人の…

【Unity】なんでもReorderableList

Unity Editorではシリアライズされた配列のインターフェイスとしてReorderableListが使われている部分があります. これが便利なので全部ReorderbleListで編集できるEditor拡張を書きました. 面倒なのでAttribute等も用意せず無条件で置き換えます. ソース…

Shaderで顔を動かそう

久々の更新ですが今回はいつも以上に利用機会が少なそうな話です. 製作中のゲームでようやくキャラクタの表情を動かせるようになりました. ざっくり紹介します. つまりこれの続き friendsea.hateblo.jp Blend Shapeでの表現がちょっと難しかったので代わ…

uGUIの上で本をめくる

ゲーム内のUIで本をめくりたくないですか? 僕はめくりたかったんです. github.com 本みたいなUI 使い方 BookUI PageSelector BeseMeshEffectと頂点シェーダ テッセレーション 問題点 マウス/タッチで操作できない Maskを使えない 負のスケールを使えない …

ゴリ押しキャラモデル

これみて.かわいいよね? 東方projectの二次創作ゲームを作ってます.その主人公のモデルです. モデリングはあまり得意ではないので色々妥協してこんな見た目になってます. デフォルメ シェーディング・テクスチャ テクスチャ シェーディング 陰マップ 顔…

2.5D Platformer Rails for Unity

前に2.5Dプラットフォーマー向けのキャラクター制御について紹介しましたが,扱いづらい点もありました. 動的に経路の追加・削除ができない GC Allocがデカイ これを直そうとしたら結局ほとんどを書き直すことになった. いい感じにコードを整理できてしま…

インボリュート曲線

下記の記事で現在制作してるゲームの中でのキャラクターの経路制御について書きました. friendsea.hateblo.jp この中での曲線の定義にインボリュート曲線を使っています. 理由は 端点の指定によって制御可能 曲線の長さが近似なしに求まる 曲線上の最近傍…

2.5Dアクションゲームの経路制御

こんなゲーム作ってます 例大祭にこんなの持っていくよ pic.twitter.com/qhrS70zdtf— FriendSea (@friendsea95) 2018年5月4日 秋例大祭で体験版頒布予定だよ pic.twitter.com/OFxDKZQHVo— FriendSea (@friendsea95) 2018年10月8日 「風のクロノア」や「星の…

シーンからCubemap用テクスチャを作る

Unityで既存のシーンを撮影したcubemapを用意したい場合があります. 今作っているゲームでも遠景用のシーンを作って撮影してskyboxを作ってたりします. 今回はCamera.RenderToCubemapで作ったCubemapを1枚の画像に変換して保存するウィザードを用意しまし…

プロシージャルインタラクティブ草

Unity上で草を生やすシェーダを書きました. github.com コリジョンに応じて倒したり,草を刈ったりできます. 草を生やす Geometry Shader 草ポリゴン 密度を上げる 不揃いにする 風になびくようにする シェーディング 草を動かす 仕組み 草シェーダ 草マッ…