【UE4】Unreal Engine 4 初心者質問スレッド part5
■ このスレッドは過去ログ倉庫に格納されています
ショットガンの様なバラける弾の実装をしたいのでマルチライントレースを同時に出したいのですがどの様な方法がありますか? バラける角度分のランダム数値ぶっこんで弾の数だけforloopしろ >>263
ありがとうございます
pointdamageでボーン名がHeadだった場合に敵が消えるという処理を組んだのですがHeadボーンが小さいので首元にしか判定がありません
頭全体にボーンを追加設定したいのですが方法等ありますか? >>261
色使いすごい上手いね
カラースクリプトとか調べるといいかも unrealにblenderでいうjoinという概念はなかったでしょうか?
joinしたり分離したということができないと思うのですが >>266
Blender使ったこと無いけど、Actorのマージの事かな? 公式チュートリアル動画見てるけどわからん…
大分変わったりしてるのかな スタティックメッシュの事かな?
分離は分からんけど、一つのスタティックメッシュにまとめる事は出来る WeaponBP配列のLengthをプリントすると2のはずが3帰って来てしまうのですが何が何が原因でしょうか?
Lengthの値は子の数だと思っていたのですが..(WeaponBPを親として子の武器BPを二種類用意しています)
https://i.imgur.com/j1nYQeZ.jpg C++で書いたときはNum()が3を返している行でブレークして配列の中身を見れば一発でわかるが、
Blueprintでそういうデバッグは出来ないのだろうか? 同じようにF9でブレークポイントはって止まったら配列変数にカーソル当てれば中みれるよ >>270です
https://youtu.be/DhkP8gdKRE0
この動画を参考に作っています。この動画では武器Actorを2つ用意した状態でLengthが2と出ているのですが何故でしょうか・・? >>275
自己解決しました
ビューポート場に配置したアクターが検出されていました 破壊のためにapexdistractionというプラグインを入れたらパッケージできない 開発元のnVidiaで開発終了して非推奨になって本体からプラグインに格下げされたが、パッケージ化はできるはずだと思う。何かのバグを仕込まれたか。 できるのか…
4.192バージョンが悪いのかな
4.172で作り直そうとしたけどちょっと調べてみるかな AnswerHubにもパッケージのビルドに失敗する報告あったけど、エラーログをみると基本的なライブラリのlinkに失敗している。
試していないので確実ではないが、エンジンがEGL版だとしたらそれが問題ではないかと思う。エンジンをソースからビルドするのを試してみてほしい。 visual2017を2015に変更してみたらうまくいったようだ
ソースビルドも再インストールもしたからわからんけど
あきらめなくてよかったありがとう リリースノート見るとUE4.19はVS2017対応していない。
多分コア部分は対応済と思うが(コンソールでVS2017対応済のプラットフォームがある)、APEXはビルドの扱いが特殊な上にdeprecatedなpluginと来れば、2017対応がされていない可能性はわりとある。 公式のドキュメントの検索が機能していないのですが、おま環でしょうか?
何を検索してもTArray、FVector、UStaticMeshComponentなど、同じのが出てきます
あと、BP上でノードを右クリックすると出てくる「ドキュメントを表示」が
グレーになっていて選択できないのですが、何故でしょうか? 長文ですが、お助け下さい。レベルを2つ作りました。一つはスタート画面用で、もう一つは1面用です。
まずスタート画面を作りました。その後新規レベルから、1面用のマップを作りました。すると、1面用のアクタがスタート画面用レベルにも現れてしまいました。試しにスタート画面にあるアクタを消したら、1面のアクタも消えてしまいました
つまり、スタート画面用レベルと、1面用レベルで、アクタが共有化してしまったのです。この共有化を辞めさせたいのですが、どのようにしたらいいでしょうか? 全部のアクタがそうなの?別のレベルでもそうなの?新しくプロジェクト作ってもそうなの? 1面のアクタだけがスタート画面にでてきました。(その逆は無い)
ステージ1をコピーした後、ステージ1を消したらスタート画面から消えましたが、そのコピー品をステージ1と同じ名前に改名したら復活しました すいません自決しました。ウィンドウのレベル管理の所で、スタート画面と1面との親子関係を断ち切ったら、大丈夫になりました。
レベル管理の所でミスをしてたようです。ありがとうございました 出荷時にデバッグ用に作成していたprint文とか非表示にする方法とかありますか?
毎回パッケージ化した時に実行に不要なものを探すのが面倒なので... print文というのがなんのことかがよくわからないが、
PrintStringノードはShippingビルドでは画面出力されない あまり物事を単純化しすぎるのもよくない。ゲームは複雑系だ。 >>292
まじか、書き出し前にわざわざprintノード消してた 知らんかったわ
俺が質問したわけじゃないけど感謝するわ 現在制作しているマルチ対応予定のゲームについて質問です
手に入れた弾の弾数をゲームを落としても次回起動時に引き継げる様なシステムにしようと考えているのですがどこに変数を保有したらいいのでしょうか?
現在武器BPに変数をセットしてあるのですが、この状態では毎回リセットされてしまいます
引き継ぎたい変数はGameInstanseを利用するのですか? セーブで検索して。ゲームインスタンスはたんなるグローバル変数
ちなみにセーブデータは一度作ったら上書きできないらしいから、上書きしたくなったら一度セーブデータ消して マップ内にランダムでアイテムをスポーンさせたいのですが
AIの移動可能範囲の用意に、Nav BoundsVolumeの様な物はありませんか? navmeshboundsvolumeをレベルBPで参照してgetActorboundsで範囲を取得するくらいしか思い付かないなー
まだ初心者なんで >>307
Delayをかけなければ表示されないのですがどの様な処理になっているのでしょうか・・ シチュエーションがわからないが、UMG Widgetの非表示化はVisibilityをCollapsedに設定するのが基本だと思う。
VisiblityにはHidden もあるが、こっちは非表示のくせにCPUを消費する(非表示でもそこに存在はしている扱いで、サイズ計算等が走るので)。 >>308
そういうバグっぽい事はUE4では良くある
左端はTickに繋がっているのかも関係する このサイトを見ながらアイテム名を表示する処理を組んだのですが
SetTextのItemNameText 変数をどう用意したのかがどうしてもわかりません
settextのターゲットを変数に昇格して実行した所アイテム名は表示されますがエラーを吐いてしまいます
https://goo.gl/v3xG3s 複数のレベルに共通の処理(終了やスコアーボードなどの表示)を行いたいです
現在「Game Mode Base」に終了などの処理を書いてワールド設定でBPを割り当てています
処理自体は行えるのですが、キーボードからの処理は受け付けない状態です
他のPawnBPなどのように「Auto Receive Input」の設定など出来ませんか? Controller→Gamemode→Widgetのやり取りはInterFace使うのでは? >>313
7年かけて2Dゲーム作る人や、短期間でアセットとテンプレートを使って3Dゲームを
リリースする人もいるから個人の取り組み次第かも >>316
ありがとうございます
InterFaceについては使ったことがないのでよく把握していないのですが、
クラスBP間で処理のやり取りをするものになるのでしょうか?
元の質問がもう少し単純にすると、「Esc」キーを押したときにゲーム終了(quit game)
するという処理を行う場合に、複数(たくさん)のレベルがあった場合、各レベルの
レベルBPに終了処理を書かないといけないと思うのですが
その場合、別のレベルでも共通の処理をまとめておく方法がないものかとと思いまして… PrayerControllerでやればいいのでわ InterFaceはわかりにくいから初心者向けの本にもControllerとGamemodeとWidgetのやり取りをCastを使って
解説してあったけど、GamemodeにInterFaceつけてControllerとWidgetからGet Gamemodeで
引っ張れるし依存度も少ないからおすすめ 横からだけど
ゲットゲームモードの使い方がいまいちピンとこなかったけど
あんたのレスを読んでようやくピンときたサンクス 質問なんですが、
ue4でゲームアプリを作って見ようかと思っているんですが、アプリのapiレベルを26以降にする方法ってご存知ですか?
24には出来るんですが、
ue4じゃまだ対応出来ないって聞いたんですが。
プレイストアで公開するには26以降が必須みたいで困ってます。
(https://answers.unrealengine.com/questions/796077/android-apiレヘルの変更について.html) >August 2018: New apps required to target API level 26 (Android 8.0) or higher.
>November 2018: Updates to existing apps required to target API level 26 or higher.
8月になるまでまだ大丈夫っぽいけど? >>324
そうなんですか?
知人はもう上げれなかったって言っていたんで、信じてました。
でも、どのみち既存のアプリもレベル上げないといけなくなるみたいなんで、対策出来るなら早めにしておきたいってのもあります。 >>323
良いのか分かりませが、解決方分かりました。
見てくださっ方ありがとうございました。
ue4の用意したインストーラで入れたngkを使わず、通常のngk(最新版)を設定したら、特に問題なくレベルあげれました。
そして、良く調べたらレベルが低くても、まだ上げれる見たいでした。
お騒がせしました。 PlayerCharacterのBPにdatatableから必要なものを取り出すようなのを組んでるけど、ゲームスタート時にdatatableの中身を全部読み込んだりしてますか? 弱参照にして読み込み処理を実装してなければ読み込んでるよ あぁ、今後のこと考えるとソフトなやつとアセットマネージャ使わないとだめなやつですなぁ そのアセットポインタとやらは
c++じゃないといじれないんですか 規模が大きくなるとBPオンリーでは保守が困難になり開発効率が悪化する。
単純な参照だけ使って、全部メモリに読み込める範囲で作るのが良いのではないか。 レベル移動しても取ったコインの事を覚えておきたいんだけど大量のコインのことを記憶するのにいい方法はありますか? 心に刻んでおく …じゃなくてgameinstanceにカウンター仕込んでおくだけでおk いえそうではなく…
もう一度同じレベルに戻ってきたときに取ったコインは存在しないことにしたいんです なるほど、じゃあコインアクター又はスポーナーに取得ブーリアンを付けておいて、それをインスタンスに渡すのはどうかな コインアクターに取得ブーリアンですか
意味は理解できるんですが同じブループリントのコインアクターに異なる変数を持たせるにはどういうBP配置にすればいいのかがわかりません… レベルに置きっぱのものなら何もしなくても個別の変数になるんじゃね?
まあコインの管理ってより「それを置いてるレベル」の管理だし、レベルBPでやるのがいいのかもな できた
できたけどブーリアン配列を手動で増やすのが簡略化できそう… いい感じだな自分の思うようにどんどん最適化していくといい いろいろありがとうございます
しかしプレイと起動で挙動が違うのはマジ勘弁
修正できたけど心臓止まるかと思った まあ序の口で、Launch/パッケージでの実行もまた違ってくる。
Playはエディタプロセスのままの実行、
Standaloneはエディタのexeをゲームモードで新たに起動、
Launch/パッケージはゲーム専用のexeを別に作って起動。
さらにPlayのなかにも内部でPIE実行フラグが立つもの(New window等)と立たないもの(Selected viewport等)があり、挙動が異なることがある。
片方にエディタがあり、もう片方の対極に最終出力となるパッケージがあり、作業のイテレーションを早くするためには出来るだけエディタに近いところで実行したほうが良く、一方で挙動を製品に近づけるにはパッケージに近い必要があり、
用途に合わせて起動形態を増やしていったら、いっぱい実行モードが出来ちゃった感じ。 スクリーンポジションもエディタじゃ位置がバグるんだよな Editorとパッケージで挙動が違うのは困るけど有料サブスクの頃からずっとだから仕様なのだと思う・・・ 仕様というか、エディタとゲームを同じエンジンで作り同じプロセス内で動かす設計からくるやむを得ない差異ではないかと思われる。
プロプライエタリ系エンジンだと、エディタはWindows依存の別実装とし、エンジンを別プロセスで動かして、通信でデータを流し込んでビューワとして動作させる構成が多いと思う。この方が差異を少なくしやすい。
どちらの設計も一長一短ある。 はじめて質問します。
何か失礼があったら申し訳ございません・・。
初歩的なことなのですが、先ほどからシーケンサをレンダリングしようとすると、
シーケンサ内のcameraactorと、moviepreviewが違うものになってレンダリングできません。
一体どこの設定を間違えているのでしょうか・・・・
かなり困っているので教えていただけるとありがたいです・・orz シーケンサーはUE4の中でも進化が激しい部分なので
使ってるバージョンも書いたほうがいいかも。 gamemodoってinterface使ってダメージ計算とかデータテーブル管理でこき使っていいの? はじめて質問します。
何か失礼があったら申し訳ございません・・。
初歩的なことなのですが、先ほどからシーケンサをレンダリングしようとすると、
シーケンサ内のcameraactorと、moviepreviewが違うものになってレンダリングできません。
一体どこの設定を間違えているのでしょうか・・・・
かなり困っているので教えていただけるとありがたいです・・orz シンプルなシーンでNvidia Play shadowplay録画とかで手順録画してfast-uploader.comとかにアップロードするとダウトしやすいけど・・・ ご返答ありがとうございます!!
http://fast-uploader.com/file/7086683670877/
こちらに動画をあげたので、ご確認よろしくお願いいたします。
バージョンは4.12.5です。
多分すごくしょうもないミスをしてるとは思うんですけど、見つけられないっていう・・・ 初歩的なことならすみません。
初めてUe4で作ったゲームをWindowsでパッケージ化したんですが
「UATHelper: パッケージ化 (Windows (64ビット)): ERROR: System.ArgumentException: 同一のキーを含む項目が既に追加されています。」
というエラーが出て出来ませんでした。
検索してみてもこれがどういったエラーかわかりませんでした。
誰かご存知の方おられましたらご教授いただきたいです。 >>352
4.12.5はものすごく古くてシーケンサーもExperimental取れたばかりのバージョンなので、まともに動かなくても不思議はないなという印象。
>>353
そのエラーだけではシステムのライブラリでエラーが出ているとしかわからない。そのシステムのライブラリの呼び出し元がどこかに原因の手掛かりがある。UEのバージョンとエラーログ全体を見ればわかるかもしれない。 >>352
緑色の+Trackのボタン押してカメラカットトラック追加
カメラカットトラックのタイムラインを右クリックしてカメラ変更でカメラを指定する 4.12だと+Addボタンでcamera cut Trackか HDRIの画像でIBLをしたいのですが、どのようにしたら良いのでしょうか?
現在スタジオライティングのHDRIを用意しています
ExponentialHeightFogに設定したら背景は変わるのですが影が落ちません・・・ >>354
緑色の+Trackのボタン押してカメラカットトラック追加
カメラカットトラックのタイムラインを右クリックしてカメラ変更でカメラを指定する
↑こちらの方法で解決しました!
ご返答ありがとうございます^^*
バージョンが古いのもよくないので、
今後アップしておきます!!
またわからないことがあれば質問すると思うので、
その時はご返答いただけると嬉しいです! >>356
書かれていたやり方で解決しました!!
本当にありがとうございます・・・!( ノД`)
またわからないことがあれば投稿すると思うで、
ご回答いただけると嬉しいです! いまだに4.12使ってるというのは、専門学校か何か? 引き続きまた質問です。
ライトビルドが上手くいかない原因ってなにがありますか? 使う人間の無能さ加減
というような答えしか出しようのない舐めた質問だな ■ このスレッドは過去ログ倉庫に格納されています