arXiv探訪

興味の赴くままに数学するだけ

UE4

レイマーチングテスト

UE4

UE4のマテリアルエディタでcustomノードを使うとforループが組めるのでレイマーチングができる。 見よう見まねで組んでみたが悪くない。しかし遠景だと問題ないが近づけると崩壊する。 レイを原点から逐次的に飛ばすのではなく、少ない繰り返しで済ませる特…

アセットのサイズ感

UE4

先日ある方に協力してもらい、マルチのテストプレイを実施し、概ね想定通りに動きました。いやあすごいですねUE4、ほんのわずかなノードを組んだだけでプログラムを1行も書くことなくマルチが動くんですから。プラグインを実装して無料で公開してくれた人に…

土管を作ってみた

UE4

コンクリート製の土管。某青猫ロボアニメに出てくるような。 Blender 2.8でモデリングして、シェーダー作って、UVmapとlightmapを展開して、Diffuse/Normal/AOをベイクして、コリジョン用のUCX作って、fbxにエクスポート、UE4でインポートしてマテリアル作っ…

インベントリが形になった

UE4

一週間くらい悪戦苦闘していたインベントリが一応形になりました。マルチの仕様が良く分かっていなかったのと、ブループリントを組み直したのが敗因でしたが、色々勉強になったので良かったです(小学生並の感想) インベントリ一つ取ってみても、世にある動…

インベントリを作り直した

UE4

タイトル通りインベントリを作り直しました。アクターの参照を持つようにしてたんですが、レプリケートでカオスになるので止めました。アイテムはクラスで持つことにして、保持したまま落ちたときとかは諦めます。まだ装備・取り外しを実装していないので、…

Physicsの同期

UE4

ちょっとブループリントをいじったら物理が同期しなくなりました。どうにか直した結果分かったことは、どうも動きをレプリケートできるのはルートにあるスタティックメッシュ類のみっぽい。PhysicsHandleの動きも謎だし、説明も書いてないし、解説も古いしで…

プロシージャルな梯子

UE4

昨日は具合が悪くて寝込んでました。今日も本調子でないので、簡単に。blenderで作った梯子をue4にインポートして梯子を作ってみました。これ一段あたり1000頂点超えてるので、実際動かす時はLODとか設定した方がいいのかもしれない。コリジョンは設定してな…

Blenderで梯子のステップを作った

UE4

こんな感じの梯子のステップを作って、ue4でproceduralに梯子を作ろうとしたんだけど、テクスチャのベイク方法が良く分からないので今日はここまで。この後ue4にexportしたかった。

円形メニューをそれっぽく

UE4

昨日の続き スマートな設計じゃないので色々とごり押しになってるけど、とりあえず動くの精神が大事。 メニュー全体と外側のピースはバラバラに作っていて、前者が後者を持つ形にしている。このときAddChildを使うのだが、これだとGetしたときにコピーしか取…

装備システムを作った

UE4

今日はソシャゲのイベが始まったので、簡易的な装備システムもといインベントリ機能を加えただけ。ろくにチェックを入れてないからそのうちバグるかもしれない。 あらかじめ0番目(一番上)にアイテムが加わってて、それを選ぶと文字が出力されるだけ。選ん…

ダメージ処理

UE4

今日はオブジェクトを火に近づけたらダメージを与えて、ゼロになったら破棄する処理を追加してみた。ダメージ処理の動画はいくつか見たんだけど、UE4にあるDamageTypeクラスを使うより自前で実装した方が小回りがいいし、色々と応用が利く気がする。 ところ…

オブジェクトのスポーンと同期

UE4

物を掴むのとは違い、オブジェクトの生成/消滅はサーバー側で行うだけで良い。Replicateにチェックを入れておけば全部自動で同期を取ってくれる。あとはボタンを押したら生成に必要な情報をサーバーに送り、HasAuthorityでチェックしてからスポーンさせたも…

UE4のマルチプレイでPhysicsHandleを動かす

UE4

ぐちゃぐちゃ弄ってたら一応形にはなった。最初はカクカクしてたんだけど、PhysicsHandleを一度クライアント側で移動させてから、サーバー側に同じ処理をマルチキャストしてもらうことで比較的滑らかに移動してくれた。二度手間になってるけど…動けばええね…

マルチプレイってどうやるの

UE4

昨日述べていた炎の周期は、マテリアルでTimeノードを使っていたことが原因でした。ParticleTimeを使うことで解決して煌々と燃え上がる篝火ができました。発光する何かを加えてもいいかもしれない。 今日はマルチプレイについて調べたけどよく分からなかった…

物を掴んで回転させる

UE4

昨日に引き続き、UE4の成果物を記録しておく。 右トリガーで物を掴んで、左トリガーで離す機能を作った。物を掴む機能自体は色々な動画でチュートリアルがあって簡単だった。ただし物理が働いてくるくる回ってしまうので、掴んだ物の座標と回転を覚えておい…

UE4でパイメニューを作った

UE4

生存報告というわけではないが、放置気味だったのを戻そう。 モンハンワールドなど、アイテムを使用するときにパイメニューを使うゲームがある。どうやら他のソフトでも採用が増えてるらしい。そこで自分もためしに作ってみた。 一応形にはなっていて、ステ…

UE4.13でボロノイノイズ

UE4のv4.13でVoronoiノイズが追加されたと聞いたので、公式のブログを参考にしつつひび割れた土を作ってみたのだが、 濡れた サンプルと違うけど、これはこれで良い気もする。なおBlueprintでRenderTargetにベイクする方法はEmissiveColorを通して行うらしい…

UE4で遊んだ結果

UE4

最近アンリアルエンジン4(以下UE4)を触り始めて、その強力さに感銘を受けている。実際ゲームなりのコンテンツを作るにはそれなりの労力が必要かもしれないが、ノードベースのブループリントが手軽過ぎて、実験的な内容なら割と簡単に作れてしまう。 それで…