【UE4】Unreal Engine ..
[2ch|▼Menu]
146:名前は開発中のものです。
16/09/01 13:01:28.72 VdUdDjCP.net
>>143
レスありがとうございます!
そうです
60フレームに一回イベントが発生するなど
可変フレームでフレームが落ちたときにゲーム性が変わるのを防ぎたいです
1秒間隔で球をスポーンして転がしたときに
60fpsだと
URLリンク(i.imgur.com)
10fpsだと
URLリンク(i.imgur.com)
極端ですがこうなってしまうことを防ぎたいです
見辛くてごめんなさい

147:名前は開発中のものです。
16/09/01 14:13:30.31 19QkbroN.net
>>144
なるほど、可変フレームレート対応の話ね
とりあえずWorldDeltaSecondを掛けてあげるだけで解決すると思います
基本的なことはここで解説されています
URLリンク(unrealengine.hatenablog.com)
具体的な話ですが球を物理で転がしているのなら、転がる速度が変わっているわけじゃなくてスポーンの間隔が変わってしまうということですかね
5秒毎にスポーンさせたい、という話だったらTimerとかのほうが楽かもしれませんよ

148:名前は開発中のものです。
16/09/02 04:39:17.39 3PScrwdY.net
>>145
ようやっとdeltasecondを理解出来ました
Timer使って60fpsなら1秒毎30fpsなら2秒毎にスポーンさせること出来ました!ありがとうございます
よろしければこれを...
URLリンク(i.imgur.com)
URLリンク(i.imgur.com)
こんな感じに動かしてるアクタがあるのですがこれも同じように60fpsなら0.5秒、30fpsなら1秒というようにtimelineの長さを変えることが出来たらうれしいのですが...
フレームが落ちると動きが早くてコリジョンを飛び越えてしまいがちになるのを防ぎたいです

149:名前は開発中のものです。
16/09/02 04:54:54.21 ZPf7KlrN.net
コリジョン超えないようにするオプションがなかった?
どうしてもタイムライン使いたいなら、方法がなくもない
@タイムライン0秒に値0、1000秒に値1000をセット
Aデルタタイムと適当な値をかけたものをnewタイムにつなげる
Bシーケンスを利用。set new timeに繋いだあと、リバースにつなげる
Cタイムラインから伸びた値÷Aで使った値
こうすると何秒だろうとCの値はかならず1から始まり0になる。0から始めたいなら「1-タイムラインの値」とすればいい
ただしこれはフレームレートが作動中変動しないことが前提
タイムライン作動中もフレームレートが変動するなら
タイムラインなんて使わずティックタイムでやるべきだね

150:名前は開発中のものです。
16/09/02 11:37:24.19 oPxArgLg.net
>>146
俺も>>147さんの言うとおりコリジョン超えないようにするにはSweepにチェックいれるのが正解だと思う
その上でタイムラインを使う別の方法を一つ
タイムライン変数からノードを伸ばしてSetPlayRateを追加
NewRateにタイムラインの長さ÷DeltaSecond*移動に必要なフレーム数
タイムラインのUpdateに上記のSetPlayRateを


151:つなぐ これでタイムラインは指定したフレーム数で再生される あとできれば具体的に何をやりたいか書いてくほしいかな そのほうがアドバイスしやすいし



152:名前は開発中のものです。
16/09/02 15:22:50.40 ZPf7KlrN.net
へーそんなノードが…勉強になるなぁ。横からサンクス

153:名前は開発中のものです。
16/09/02 17:44:09.41 nThMFYjL.net
どうか教えてください。
ボックスをクリックするとマテリアルが変わる。
⇨両サイドに矢印がスポーンされる。
⇨矢印をクリックするとそっちに動く
と、したいんですが、矢印をクリックしても何も起きません。
下記のようなBPを組んだのですが・・・。
URLリンク(www.dotup.org)

154:名前は開発中のものです。
16/09/02 17:53:11.62 ZPf7KlrN.net
最後のターゲットの設定おかしくない?

155:名前は開発中のものです。
16/09/02 18:13:36.30 nThMFYjL.net
最後というとSetWorldLocationとつながってるやつですか?

156:名前は開発中のものです。
16/09/02 18:14:15.26 ZPf7KlrN.net
うんそれ
スポーンしたやつを動かしたいなら、それに繋げるべきでは。

157:名前は開発中のものです。
16/09/02 18:15:22.47 ZPf7KlrN.net
あ、ごめん勘違い
矢印の方に動かしたいのかな

158:名前は開発中のものです。
16/09/02 18:17:47.81 nThMFYjL.net
そうなんですよ、矢印の方にbox1を動かしたいんです。

159:名前は開発中のものです。
16/09/02 18:22:50.48 ZPf7KlrN.net
何処もおかしいところはないように見えるんだけどな
まさかこれ組める人がアクターをスタティックにするとか、
凡ミスする訳はないよね。

160:名前は開発中のものです。
16/09/02 18:26:03.09 nThMFYjL.net
してないんですけどねー。なんでしょう・・・。

161:名前は開発中のものです。
16/09/02 18:43:22.45 ZPf7KlrN.net
ちょっとテレポートのところにチェック入れてみてよ

162:名前は開発中のものです。
16/09/02 20:08:22.62 oPxArgLg.net
上記BPコピって作ってみたけどうまく動くからそこに間違いはないようだね
こういう動きがしたいんだよね?
URLリンク(www.dotup.org)
可能性一つ目 PlayerControllerのDefaultClickTraceChannelで指定したチャンネルを、YajiアクタのコリジョンプリセットにてBlockにしていない
可能性二つ目 クリックのトレースが何者かに遮られている
PlayerControllerからGetHitResultUnderCursorByChannelってノードが呼び出せる。
TraceChannelをPlayerControllerのDefaultClickTraceChannelに指定する。
HitResultからクリックを受け取ったアクタ名を取得できるので、ちゃんとYajiアクタをクリックできているか確かめられる
だけどどちらの可能性もレアケースだと思う・・・
parts1とYajiのブループリントうpってくれたらちょっと調べてみるよ

163:名前は開発中のものです。
16/09/02 20:12:02.23 oPxArgLg.net
いや申し訳ない、見逃してたわ
Sweepのせいです
Sweepしたいなら移動の前にYajiアクタをデストロイしましょう

164:名前は開発中のものです。
16/09/02 20:19:24.20 ZPf7KlrN.net
やっぱり移動関係で邪魔してたのか

165:名前は開発中のものです。
16/09/02 20:23:47.37 oPxArgLg.net
>>161
しかもsweepにチェックいれてたら床に接触しているだけでアウトなんだよね
これはうっかりしてたら俺も嵌りそうだわ
今のうちに気づけてよかった、質問者さんにも感謝だわ

166:名前は開発中のものです。
16/09/02 20:26:52.97 ZPf7KlrN.net
>>162
マジかよ

167:名前は開発中のものです。
16/09/02 20:28:37.89 ZPf7KlrN.net
テレポートにチェック入れててもだめなの?

168:名前は開発中のものです。
16/09/02 20:33:53.75 oPxArgLg.net
>>163
ごめん、別のアクタ作ってためしてみたら大丈夫だった
失礼しました

169:名前は開発中のものです。
16/09/02 20:56:48.42 oPxArgLg.net
勘違いじゃなかった
SweepHitResultがFloorになってたからHit扱いなんだな
床とキューブがZファイトしている状態って考えると当然なのかな
暇ある人がいたら検証してもらえると嬉しいです
テレポートにチェック入れても移動しなかったわ
テレポートって物理有効にしているときに物理無視して移動させるためのものっぽいね
スレ汚し失礼しました

170:名前は開発中のものです。
16/09/02 21:01:52.30 ZPf7KlrN.net
へぇ勉強になるな
調査サンクス

171:名前は開発中のものです。
16/09/03 10:15:44.69 Fwi0i3Ho.net
皆々様、ありがとうございます。
質問しといて先にいなくなってすいません。
YajiのコリジョンプリセットがOverlapAllになっていたのが原因だったようです。
Ph


172:ysicsBodyのみオーバラップにして残りをブロックにしたらいけました! ありがとうござました!



173:名前は開発中のものです。
16/09/03 18:51:09.12 uAcc5Ged.net
板ポリを読み込んだとき、背面から見ると透過しちゃうのを
どうやったら防げるんでしょう?

174:名前は開発中のものです。
16/09/03 18:57:03.01 GCpjSJaW.net
マテリアルに両面処理のオプションがある

175:名前は開発中のものです。
16/09/03 21:25:03.16 uAcc5Ged.net
wow!
サンクス

176:名前は開発中のものです。
16/09/04 18:25:18.50 lpQw97PX.net
>>147-148
ありがとうございました
いい感じになってきました

177:名前は開発中のものです。
16/09/05 07:07:30.25 G6tSolYQ.net
マーケットのアセット検索がどんなワードでも1件も引っかからないのだが理由わかりませんか?
ChromeとFirefoxでは試してるし
既存のアセット名を一致と部分一致のワードでも試してる。
アセット探したい

178:名前は開発中のものです。
16/09/05 12:23:03.92 ekJU6r9s.net
>>173
バグです
いつになったら治ることやら…

179:名前は開発中のものです。
16/09/05 12:42:19.00 tFDA7cXa.net
ランチャーの言語を英語にすれば検索できる

180:名前は開発中のものです。
16/09/05 14:12:56.15 np8OzsEV.net
Spriterstudioってどうよ

181:名前は開発中のものです。
16/09/07 21:49:32.38 6rHf2jNZ.net
ウィジェットをadd to viewportする時
画面上に既に同じものが表示されてる時にもう一回よぶと怒られるじゃないですか
ウィジェットが既に画面上に表示されてるかどうか調べられる変数とかってありますかね
今のところ自前で変数を用意してるんですけどウィジェットの数が増えてきて・・

182:名前は開発中のものです。
16/09/07 21:57:59.21 T2JWZsdA.net
質問です。UE4.12.5です。
ポストプロセスの効果がプレビューや「選択ビューポートでプレイ」で反映されないのですが、なぜでしょうか?
パーシスタントレベルに追加したPostProcessVomumeアクターの詳細から、unboundとenableにチェックは入れています。
スタンドアローンで立ち上げると反映されます。
プレビューでもポストプロセスを反映させる、などという項目がどこかにあるのでしょうか?

183:178
16/09/07 22:38:07.61 T2JWZsdA.net
追記です。
ビューポートの『表示』>『ポストプロセス』では、該当項目(含むすべての)チェックを入れています。
それでも反映されません。

184:名前は開発中のものです。
16/09/08 18:24:43.56 zLtzAtcv.net
>>177
当該Widgetの変数からノード伸ばしてIsVisible
>>178
うーん、再現できなかったわ
ContentExamplesのポストプロセスのマップでも同様の現象が起きます?
可能性があるとしたらビューポートの左上のShowの中にある各種ポストプロセスのチェックが外れているとかかなぁ
SettingのEngineScalabilitySettingでポストプロセスのクオリティがLowになっているために一部ポストプロセスの効果が見えてない可能性もあるかな

185:名前は開発中のものです。
16/09/08 19:01:45.83 zLtzAtcv.net
失礼、追記見てなかったわ
そこもいじってるならクオリティもいじってるだろうし…
そうなるとわからないなぁ

186:名前は開発中のものです。
16/09/08 19:15:34.51 zLtzAtcv.net
もう一個可能性
ProjectSettingsのRenderingのMobileHDRのチェックが外れているかもしれない

187:177
16/09/08 19:48:47.05 8TXa7Ai1.net
>>180
怒られなくなりましたthx!

188:178
16/09/08 20:29:03.21 F3YRo7A4.net
>>181
クオリティでした!(設定>エンジンの拡張機能)
設定や表示やプロジェクト設定、それらしいものはいじって試していたつもりですが、これはよくわからず見逃していました…。
助かりました、ありがとうございます。

189:名前は開発中のものです。
16/09/09 11:50:01.00 XLJGHKZf.net
教えてください。
4✖4のマス目に赤、青、緑、黄、紫の5色のボックスを3個ずつスポーンしたいです。
(ひとマスは空欄)
これをランダムにやるにはどうしたらいいでしょうか?
URLリンク(imgur.com)

190:名前は開発中のものです。
16/09/09 13:02:04.49 44hJIsYW.net
ズブの素人から
3Dアクションゲームを作りたいと思っており
blueprintを学習しようと思ってるのですが
初心者と銘打ってもc言語をかじっていることを前提としたものばかりで習得できません
英語のように単語の意味や、文章の作り方を体系的に理解できるお勧めのサイトや、参考書を教えてください

191:名前は開発中のものです。
16/09/09 14:09:38.85 oNjwfMdN.net
15個の箱アクターの配列変数用意してforeachループ
ループの内容は配列のサイズを取得してそれを最大値の乱数で
インデックスを指定して箱をスポーンさせたらそのまま配列からRemoveかしら

192:名前は開発中のものです。
16/09/09 14:11:59.39 oNjwfMdN.net
>>186
自分は>>1で勉強してなんとかなった

193:名前は開発中のものです。
16/09/09 14:15:46.98 oNjwfMdN.net
foreachちゃう、タダのForLoop15回じゃないとダメだった

194:名前は開発中のものです。
16/09/09 14:36:07.26 hP+uBLxC.net
>>185
どんなもんか作ってみてたら>>187さんが解決してくれてたでござる
一応参考までに置いときます
ほとんど>>187さんと同じなのでまずチャレンジしてみて、それで躓いたら見てください
URLリンク(25.gigafile.nu)
(RandomStream使える点で>>187さんのほうが使い勝手いいよなぁ・・・)
>>186
Youtubeの公式動画かな
本がいいならUnrealEngine4で極めるゲーム開発

195:名前は開発中のものです。
16/09/09 15:45:53.09 XLJGHKZf.net
>>187さん >>190さん
ありがとうございます!
素人ですいませんが190さんのファイルを見る方法がわからないのですが・・・。
ほんと素人質問でごめんなさい。

196:名前は開発中のものです。
16/09/09 16:05:02.93 hP+uBLxC.net
>>191
おっと失礼、解凍してプロジェクトおいているフォルダの中のContentってフォルダの中にそのまま入れるだけでオーケー

197:名前は開発中のものです。
16/09/09 16:20:27.05 XLJGHKZf.net
>>192
あれれ、すいません。見れない・・・。
バージョンですかね。当方4.12.5なんですが。

198:名前は開発中のものです。
16/09/09 16:54:48.14 hP+uBLxC.net
>>193
確かに4.13で作ってるから4.12じゃ開けないようだわ
それに加えて参照が切れてるところあったから上げ直しました
URLリンク(9.gigafile.nu)
4.13導入できない環境なら4.12版も作るかも

199:名前は開発中のものです。
16/09/09 17:08:51.23 4ZV1tcBz.net
参照切れるなら迂闊にアップデートできないじゃないか…

200:名前は開発中のものです。
16/09/09 18:06:46.95 XLJGHKZf.net
>>194
見れました!めちゃくちゃご丁寧にありがとうございます!
やってみます!

201:名前は開発中のものです。
16/09/09 22:28:08.10 u0ysAKya.net
>>194氏の例がすごすぎてなんも言えねえ!参考になります!
あ、でも子はアクタじゃなくてスタティックメッシュでもいいんじゃないかな…(微かな抵抗)

202:名前は開発中のものです。
16/09/09 23:22:05.24 hP+uBLxC.net
>>197
た、たしかに
作ってるとほんと視野狭くなるんだよなぁ

203:名前は開発中のものです。
16/09/10 11:59:58.00 eLlQJw7o.net
ぷちコン優勝してお願いすれば
バグ修正してもらえるのか
おぎまふ @ogimafu
UE4ドキュメントの日本語検索バグはほんとどうにかしてほしい…。
Unreal Engine Japan @UnrealEngineJP
ご指摘ありがとうございました。こちら修正いたしましたのでご確認いただければと思います。 twitter.com/ogimafu/status…

204:名前は開発中のものです。
16/09/10 12:11:04.91 TOgQH/Gi.net
>>199
いくらなんでもハードル高すぎw

205:sage
16/09/12 09:54:10.31 z78U1vS2.net
>>173
言語を英語にすれば、ちゃんとアセット検索できるよ

206:名前は開発中のものです。
16/09/12 14:08:29.38 fEmJ5FEg.net
日本語ランチャでも検索ヒットするようになってるよね今は

207:名前は開発中のものです。
16/09/13 11:08:44.66 hNuC4H9l.net
頼り切りで申し訳ないのですが・・・。
クリックした回数をクラスBPで変数に格納してウィジェットに表示したいのです。
キャストなるものを試してみたのですが、いまいち意味が分かっておらずできません。
どうかお助けください・・・。
URLリンク(imgur.com)

208:名前は開発中のものです。
16/09/13 12:03:01.37 7rOFQLm5.net
>>203
PlayWidget変数の種類がWidgetComponentだということから考えると・・・
たぶんCreateWidgetとかAddViewPortとか使っていないんじゃないかなぁ
URLリンク(docs.unrealengine.com)

209:名前は開発中のものです。
16/09/13 12:06:32.67 hNuC4H9l.net
ウィジェットはレベルBPでこんな感じで出してます。
変数の種類はどれがいいの変わらなくて、いろいろ試してみたんですが・・・。
URLリンク(imgur.com)

210:名前は開発中のものです。
16/09/13 12:26:26.38 7rOFQLm5.net
>>205
作るべきウィジェットの変数は「PlayWidgetBlueprintウィジェットを作成」のReturnValueを変数化したものだよ
上のURLの最初の画像の「MainMenuWidget」と同じようなつなぎ方になるね
具体的な種類はUserWidgetだったかな

211:名前は開発中のものです。
16/09/13 12:40:08.60 7TXI3lG9.net
そういうのってウィジェット側の表示テキストのバインド関数がキャストするもんだと思ってた
そのやり方ならボックスやレベルのBPでは何もする必要無いし

212:名前は開発中のものです。
16/09/13 13:22:14.94 hNuC4H9l.net
ウィジェットはレベルBPで出しているのですが
そこで変数化した物をどのようにしてクラスBPでうけとればよいのでしょうか?

213:名前は開発中のものです。
16/09/13 13:48:46.81 7TXI3lG9.net
レベルに保存してある変数を他のBPで利用する方法…かな
確かにわからん、どうするんだろう

214:名前は開発中のものです。
16/09/13 14:26:11.08 7rOFQLm5.net
レベルブループリントの変数を暮らすブループリントに送る方法
・ゲームモードとかゲームステートなどを経由させる
・GetStreamingLevelを対象にブループリントインターフェイスを使う
みたいな感じで方法はあるけど今回はわざわざコレしなくてもいいと思うわ
イベントディスパッチャーを使ってレベルブループリントにタッチ回数増えたよって通知して
それからレベルブループリントからウィジェットに通知したほうが簡単
その場合はウィジェットのバインド関数必要なくなるからちょっと軽くなるかな
まぁ、いろいろ方法はあるだろうけど>>207氏の方法が一番シンプルで良いと思うわ

215:名前は開発中のものです。
16/09/13 14:32:48.31 7TXI3lG9.net
独立してるはずのBPが、特定のレベルにお伺いを立てるってことは
実質そのレベル専用のBPになっちゃうってことで、それは結局レベルBPに内包すべきものなんかなって理屈が俺の脳内でできた

216:名前は開発中のものです。
16/09/13 14:40:51.42 7rOFQLm5.net
>>211
これが真理っぽいな

217:名前は開発中のものです。
16/09/13 15:21:07.10 hNuC4H9l.net
すいません・・・頭が爆発しそうなんですが・・・
ウィジェットのバインドした関数にIntegerのインプットをつけてボックスのBPで受け取ろうとしたら
ウィジェットの方にエラーが出て
イベントディスパッチャーは下の画像のように作ってみたんですが、よくわからなくなってしまいました。
URLリンク(imgur.com)

218:名前は開発中のものです。
16/09/13 15:22:27.61 hNuC4H9l.net
すいません、リンクが間違ってました
URLリンク(imgur.com)

219:名前は開発中のものです。
16/09/13 21:31:28.60 7rOFQLm5.net
>>214
まずはターゲットにイベントの呼び出し元のリファレンスをつなげてないね
うーん、僕自身も偉そうなこと言えないんだけど、たぶんもう一度基本的な機能をおさらいしたほうが幸せになれると思う
>>203はまだ解決していない感じなのかな
とりあえず自分ならどう作るかってのを一切自重せず作ってみた
URLリンク(16.gigafile.nu)

220:名前は開発中のものです。
16/09/13 21:33:25.10 7rOFQLm5.net
あ、4.13で作ってます

221:名前は開発中のものです。
16/09/13 21:37:37.55 XutTMWc5.net
つーかウィジェットの変数変えるだけで良くないですか
キャストの必要あるの?

222:名前は開発中のものです。
16/09/13 22:37:25.56 SZxCNxdh.net
>>215
>>203じゃないし本題と関連薄いけどこの例で列挙型とSelectを初めて知りました
今までInt型とSwitchで見づらいの作ってたから感動しましたありがとう

223:名前は開発中のものです。
16/09/14 00:41:35.44 NNupjGxe.net
Tick徹底的に削るマンの思考好き

224:名前は開発中のものです。
16/09/14 01:03:50.03 dnz3QkHN.net
やってみた。BlueprintはCubeのみ。
URLリンク(4.gigafile.nu)

225:名前は開発中のものです。
16/09/14 01:20:57.49 NNupjGxe.net
>>220
数字のバインドどうやったのかよければ教えてもらえます?

226:名前は開発中のものです。
16/09/14 01:51:03.46 ae2J9nPl.net
>>204
の言うとおり、実際に呼び出したウィジェットを変数に格納してないぽい
プレイウィジェットの変数地が空になってるし。

227:名前は開発中のものです。
16/09/14 01:58:36.00 dnz3QkHN.net
>>221
WidgetにCubeの変数が作ってあって、Bindボタンを押すとそのオブジェクトの
変数の一覧も出てそこから選択できる。
つーかWidgetも変数一つだけど微妙にBlueprint使ってることになるから
>>220の"Cubeのみ"ってのは訂正。

228:名前は開発中のものです。
16/09/14 02:05:45.51 5ueUV5Ml.net
オブジェクト内の変数を指定できたんだ
あ、ウィジェットとプレイヤーステートの連携周りがすごくシンプルにできそう・・・
これは便利、横からですがありがとうございます

229:名前は開発中のものです。
16/09/14 02:12:05.20 dnz3QkHN.net
もしWidgetComponent使ってるならGetUserWidgetObjectで中身を取り出してから
キャストが必要だけどそれだとそのコンポーネントの親のActorで処理するはずだから
レベルで作ってるとなるとやっぱり普通のWidgetだよなあ。

230:名前は開発中のものです。
16/09/14 11:15:17.19 GzbIlgGp.net
プロジェクト内でインベントリのウィジェットを作成し、
アイテムUSEボタンを押したらそのアイテムの効果が発動するようにしたくて
USEボタンOnClickedからBPインターフェースメッセージを繋げて、
使用したアイテムBP内にあるイベントインターフェースに伝達するように繋げたのですが、
メッセージノードを通過しても伝達処理がされません。
解決方法を教えてください。

231:名前は開発中のものです。
16/09/14 12:05:22.01 PDcmMOsl.net
インターフェイスの呼び出しはブロードキャストされるわけではないから宛先を指定しないと届かないよ
どう繋げてるか見てみないとわからないけど呼び出してるイベントの宛先がselfになってるんじゃない?

232:名前は開発中のものです。
16/09/14 12:17:07.93 5ueUV5Ml.net
>>226
チェックリスト
□アイテムBPにて当該BPインターフェイスを実装した
□メッセージノードのターゲットにアイテムBPのリファレンスをつなげた
スクショあるともうちょいわかるかも

233:名前は開発中のものです。
16/09/14 12:31:47.98 GzbIlgGp.net
メッセージにはアクターリファレンスを繋げてて、
マップ内に配置しているアイテムはチャイルドbpなのが問題ですかね?

234:名前は開発中のものです。
16/09/14 13:01:24.94 kcxS7mP/.net
203です。
で、で、で、出来ました・・・。
もはや自分で作ったとは言えないレベルのものになってしまいましたが
皆様には大感謝です。本当にありがとうございます。

235:名前は開発中のものです。
16/09/14 13:33:49.19 gc174NwS.net
>>229
そのアクターにはメッセージきてるの?
きてるなら子アクターにメッセージだす必要があるんじゃない

236:名前は開発中のものです。
16/09/14 13:44:37.19 GzbIlgGp.net
メッセージきてないですね

237:名前は開発中のものです。
16/09/14 14:54:59.70 NNupjGxe.net
>>223
試したらできました!ありがとうございます
複数の変数が一致した時だけひっそり沸いてくるとか隠し要素みたいで面白いな

238:名前は開発中のものです。
16/09/14 19:07:59.79 5ueUV5Ml.net
>>232
繋げているアクタリファレンスとマップにおいてあるアクタが別物って気がする
BPインターフェイスのターゲットに繋げているアクタリファレンスはどうやって取得したものなの?

239:名前は開発中のものです。
16/09/14 19:12:59.18 ae2J9nPl.net
状況がよくわからんが
子アクター使ってるならchildなんたらって命令を使わないとアクセスできないよ

240:名前は開発中のものです。
16/09/14 19:22:49.43 5ueUV5Ml.net
手軽に使えるチャット欲しいな
たぶんほとんどの質問は10分かからず解決できそう

241:名前は開発中のものです。
16/09/14 20:02:21.48 GzbIlgGp.net
インターフェースメッセージ周りの繋ぎ方は公式プロジェクトの「InventoryUIwithUMG」
と同じです。

242:名前は開発中のものです。
16/09/14 20:39:36.41 5ueUV5Ml.net
>>237
InventoryUIWithUMGにおけるCanPickUpブループリントのPickUpItemEventも同じように作ってる?
そこのInventory配列へ要素を追加するあたりとかが一番あやしいのかなぁ
考えられる原因が多すぎる・・・
でも正直スクショなりプロジェクトなり無いと原因特定時間かかりそうなんでできる範囲で公開してもらえませんか?

243:名前は開発中のものです。
16/09/14 21:15:57.48 GzbIlgGp.net
URLリンク(iup.2ch-library.com)
URLリンク(iup.2ch-library.com)
URLリンク(iup.2ch-library.com)
URLリンク(iup.2ch-library.com)
とりあえず関係してそうなものです。

244:名前は開発中のものです。
16/09/14 21:38:34.84 5ueUV5Ml.net
>>239
僕の見落としがなかったら原因はウィジェットのEventConstruct
解決方法はインベントリ内容に変化があるたびにClearChildren以下の処理を走らせるようにする
InventoryUIWithUMGのGameHUDウィジェットにおけるRefreshInventoryが必要ってことね
ウィジェットのEventConstructってAddViewPortする度に処理が走るわけじゃなくて
CreateWidgetした時に一度だけ実行されるので
ゲームプレイ中にキャラクターブループリント内のBagItem配列が変更されても、その変更内容が伝わっていない
・・・ような気がする

245:名前は開発中のものです。
16/09/14 22:25:10.94 GzbIlgGp.net
RefreshInventoryのほぼ同じものをそのまま作って
最後のForEachLoopからClearChildに繋げる形でいいですかね?

246:名前は開発中のものです。
16/09/14 22:42:21.29 5ueUV5Ml.net
>>241
InventoryUIWithUMGと仕様が違うようなのでRefreshInventoryと同じようにする必要はないかと
RefreshInventoryの機能が上記アップロード画像の機能と重複するのではないでしょうか?
それと、最後のForEachLoopからClearChildrenに繋げると無限ループになってしまうような・・・
難しく考えないでとりあえず原因箇所特定したいなら
EventTickをClearChildrenに繋げてみて動くかどうか確かめてみるのをオススメします
それでうまく行ったらCustomEvent作ってClearChildrenに繋げる
アイテム取捨、アイテム使用などインベントリ内容が変わる時にそのCustomEventを実行させるといいと思います

247:名前は開発中のものです。
16/09/14 23:32:56.17 GzbIlgGp.net
EventTickで動いたので、CustomEventを繋げてみたのですが
相変わらずメッセージをスルーして、インベントリから使用アイテムが消える処理だけされます。

248:名前は開発中のものです。
16/09/14 23:41:12.03 5ueUV5Ml.net
>>243
>EventTickで動いたので
動いたっていうのはアイテム効果発動までいけたってこと・・・ではなさそうだなぁ
じゃあ他に原因あるのかなぁ
プロジェクトかuassetアップできないです?

249:名前は開発中のものです。
16/09/15 00:01:41.83 CoqRj2hG.net
URLリンク(24.gigafile.nu)
関係してそうなアセットです

250:名前は開発中のものです。
16/09/15 01:02:39.62 6T9VYaA2.net
アセット間の依存関係切れててノードもいろいろ切れててApple開けばエンジン落ちるし眠いし心折れた
わるい、明日作るわ

251:名前は開発中のものです。
16/09/15 06:34:41.04 6T9VYaA2.net
>>245
いじってみました
URLリンク(9.gigafile.nu)
何が原因かわからずにいろいろ弄くってしまいました、申し訳ない
原因が見つかればコメントなどで補足しようと思ったのですが、これだっていう原因がつかめませんでした
参照しているアセットがなかったりで色々想像しながら見てたのですが
可能性としてあるのは2つ
スクリーンショットの一枚目のBagItemInventoryはBagItemStackingItemsじゃないかなという点
これに関しては開けなかったブループリントとかに理由がありそうなんで、なんとも言えないです。
もう一つの可能性はItemData構造体のUseItemにチャイルドブループリントのSelfを持たせていない点
コレに関してはAppleブループリントがエラーで開けなかったのでなんとも言えないのですが、親ブループリントでそのような形跡がなかったので怪しいなと思いました
とりあえずブループリントインターフェイスの部分はほとんどいじらなくても上手く動作したので、問題はウィジェットの方にあると思います

252:名前は開発中のものです。
16/09/15 08:57:24.48 NMSRRMa0.net
ComponentHitEventで判定取ろうとしてるんですけど、正常に動作したCharacterを作れたからそれをコピーして2P3P4P分と作ったんだけど、それらだとEventが通らないんです。設定の面で注意しておくところとかありますかね?

253:名前は開発中のものです。
16/09/15 09:24:29.92 7KXkbAhN.net
>>248
コピーした後何も変えてないのに複製されたクラスだとイベントが発生しないってこと?
Hit判定取ってるクラスでキャストに失敗してるとか
似た仕様を持つならコピーじゃなくて子ブループリントクラスを作成でやるのはどうでしょう

254:名前は開発中のものです。
16/09/15 10:54:32.91 CoqRj2hG.net
>>247
わざわざ時間かけて頂いてありがとうございます。

255:名前は開発中のものです。
16/09/15 11:33:12.59 NMSRRMa0.net
>>249
カプセルコンポーネントの判定が取れてないので、カプセル大きくしたりもしてみたのですが、何も判定出来ないので何がいけないのか…キャスト等をする以前の問題かもしれません

256:名前は開発中のものです。
16/09/15 12:16:47.31 R98REjB3.net
教えてください。
ヒストリアさんの以下のサイトを参考に動画撮影をしようとしたのですが
2の方法が何も保存されません。フォルダも作られません。
URLリンク(historia.co.jp)
なぜなんでしょう・・・。
ちなみにスクリーンショットは保存できました。
GPUはQuadroです。
宜しくお願いします。

257:名前は開発中のものです。
16/09/15 12:26:24.41 6T9VYaA2.net
>>250
力になれ無かったようで申し訳ない
原因わかったら教えてもらえると嬉しいです
>>251
キャラクターのカプセルコンポーネントに「何か」がHitした時にイベントを発行したいということですね
その「何か」は具体的にどのようなものでしょうか?
例えばその「何か」がSimulate Pysicsを有効にしたアクタならば
カプセルコンポーネントのコリジョン内のSimulateGeneratesHitEventにチェックを入れないと当たり判定が取れません

258:名前は開発中のものです。
16/09/15 12:34:29.72 6T9VYaA2.net
>>252
こちらの環境ではExecuteConsoleCommandのSpecificPlayerにGetPlayerControllerを接続してみたら録画されました

259:名前は開発中のものです。
16/09/15 12:41:20.35 R98REjB3.net
>>254さん
返答ありがとうございます。
やってみたんですが出来ませんでした・・・。

260:名前は開発中のものです。
16/09/15 12:44:13.53 NMSRRMa0.net
>>253
SimulatePhysicオフのCollisionPresetはPawnのスタティックメッシュが元のBPです。GenerateOverlapEventをオンにしてBeginOverlapも試したところ、同じ結果でした

261:名前は開発中のものです。
16/09/15 12:51:42.11 jkrcGX73.net
録画はしたことないけど今はマチネよりシーケンサーってのがナウいんじゃないっけ

262:名前は開発中のものです。
16/09/15 13:01:19.26 6T9VYaA2.net
>>255
それから何度か試行してみたのですが
LevelBlueprintに当該ExecuteConsoleCommandを置いている場合 GetPlayerControllerを接続しないと撮影されない
プレイヤーキャラクターにExecuteConsoleCommandを置いている場合 GetPlayerContorollerを接続しなくても撮影される
どちらの場合もたまに撮影されないときもあった
ちなみにGTX760使ってます
環境ですかねぇ
力になれず申し訳ないです・・・

263:名前は開発中のものです。
16/09/15 13:07:51.87 R98REjB3.net
>>258さん
いろいろと試していただいてありがとうございました。
シーケンサーなるものも試してみようと思います。

264:名前は開発中のものです。
16/09/15 13:09:13.22 6T9VYaA2.net
>>256
何度も確認するようで申し訳ないのですが
当たる方 キャラクターのカプセルコンポーネント CollisionPresetはPawn
当てる方 CollisionPresetはPawnのアクタ
でいいでしょうか?

265:名前は開発中のものです。
16/09/15 14:15:42.10 CoqRj2hG.net
>>247
さっき思い出したんですが
「Create a Crafting & inventory system in Unreal Engine 4」という動画を見ながら
作ったので、動画内でUSEボタンのところだけはPrintStringで終わってました。
なのでUSEアクションはインターフェース以外でも良いので、別のいい方法を教えてもらえると有難いです。

266:名前は開発中のものです。
16/09/15 14:34:36.08 6T9VYaA2.net
>>261
動画のどの部分か分からないからなんとも言えないのですが
インターフェイスを使わない方法としては
1.BagItemData構造体のUseItemの型をBagItemMasterにする
2.BagItemMasterのブループリントのConstructionScriptにてItemData変数(型はBagItemData)のItemDataUseItemにSelfをセットする
3.BagItemMasterのブループリントにCustomEvent(ここでは例としてTestUseItemと名づけます)を作る
4.InventoryにてクリックしたアイテムのItemDataのUseItemからノードを伸ばしてTestUseItemを呼び出します
5.AppleにてTestUseItemをオーバーライドして「UseItem!」とでもPrintStringします
仮にPrintstringされなかったのなら4で間違ったアイテムの指定をしていることなんだと思います

267:名前は開発中のものです。
16/09/15 15:13:03.75 CoqRj2hG.net
>>262
教えていただいた方法を試しましたが、エラーがでました
アイテムデータテキスト一式も表示されなくなりました

268:名前は開発中のものです。
16/09/15 15:23:25.88 6T9VYaA2.net
>>263
どんなエラーでしょうか?
テキストデータが表示されなくなったのはConstructionScriptでItemData変数にセットしてないだけなので今は置いておいていいでしょう。

269:名前は開発中のものです。
16/09/15 15:24:47.41 6T9VYaA2.net
もう一個確認
アイテムを取得した後に、そのアイテムをデストロイしてませんか?

270:名前は開発中のものです。
16/09/15 15:25:05.57 NMSRRMa0.net
>>260
当たる方(プレイヤー)は、カプセルコンポーネントのCollisionPresetはBlockAllでした!他はその通りです。

271:名前は開発中のものです。
16/09/15 15:39:42.71 6T9VYaA2.net
>>266
うーん、なんでだろ
また基本的な確認になって申し訳ないのですが
URLリンク(imgur.com)
キャラクターブループリントのOnComponentHitの対象が↑みたいな感じでCapluelComponentになっている確認してもらえますか?
あと、ただEventHitでもHitを感知しませんか?

272:名前は開発中のものです。
16/09/15 15:46:09.04 CoqRj2hG.net
>>264
エラー画像
URLリンク(iup.2ch)


273:-library.com/i/i1710713-1473921752.png http://iup.2ch-library.com/i/i1710715-1473921752.png http://iup.2ch-library.com/i/i1710714-1473921752.png >>265 アクタートレイス処理の最後にデストロイノードが入ってますね



274:名前は開発中のものです。
16/09/15 16:03:49.92 6T9VYaA2.net
>>268
そこだったかー
アクタートレイス処理ってことはライントレースしてあたったアイテムを取得って感じですかね?
デストロイしちゃうとアクタのリファレンスが消えてしまいます
つまりレベル上に無いものを呼びだそうとしてしまっているわけです
とりあえずデストロイノードを消して代わりにSetActorHiddenInGameを置いてみましょう
NewHiddenにはチェックを入れてください
エラーに関してはセーブとかコンパイルとか再起動して、各種ブループリントやウィジェットにおいてあるBagItemData構造体をリフレッシュすれば治ります

275:名前は開発中のものです。
16/09/15 16:18:17.95 CoqRj2hG.net
>>269
いけたみたいです。ありがとうございます。
ただ、変更を加えたことによってDROPアクションをした際にアイテムがスポーンしなくなってしまいました。
URLリンク(iup.2ch-library.com)
この配列のどこを変えないといけないかわかりますか?
あと、ConstructionScriptにセットするアイテムデータはマスター内で新規にVariablesを作ってセットすればいいんですか?

276:名前は開発中のものです。
16/09/15 16:28:27.62 6T9VYaA2.net
>>270
たぶんBagItemDataのClassがセットされてないんじゃないかな
>あと、ConstructionScriptにセットするアイテムデータはマスター内で新規にVariablesを作ってセットすればいいんですか?
これはその通り
チャイルドブループリントのClassDefaultでそのVariablesを変更すればいい
話は変わるけどInventoryUIwithUMGのチュートリアルってほんと勉強になるんだけど
アイテムをデストロイしないでその場に置いておく方法ってレベル遷移との関係でどうなんだろうなぁって思ってた
仮にアイテムをデストロイする方法だとアイテムを使用したときの処理をどこに書くかが問題になるんだよなぁ
キャラクターブループリントやPlayerStateやGameModeに書いておくとか
アイテム使用処理専用のブループリント作ってEventBeginPlay後にConstructObjectするとかいくつか方法はあるんだろうけど
みんなはどうしてるんだろ

277:名前は開発中のものです。
16/09/15 17:12:30.48 CoqRj2hG.net
>>271
ありがとうございます!ようやくできました。
最後に一つ質問なんですが、インベントリに最大所持重量を設定する方法を教えてもらえますか?

278:名前は開発中のものです。
16/09/15 18:42:51.20 6T9VYaA2.net
>>272
BagItem構造体にItemWeight変数(型はFloat)を追加します
URLリンク(imgur.com)
Inventoryの最後のForEachLoopですべての所持アイテムの合計重量を計算します
BagItemMasterでアイテム追加する前にInventoryから合計所持重量を取得。
今から拾おうとしているアイテムと合計所持重量の和がMaxWeight変数以上ならアイテムを追加しないようにします

279:名前は開発中のものです。
16/09/15 23:00:06.55 7KXkbAhN.net
AddActorWorldRotationってバグってるんかーい
ノードにマウスオーバーする度にクラッシュするからアセットのデータが破損したのかと思った

>>271
アイテムの処理はアイテムブループリントに収めたいのであれば、
取得した時にデストロイして使う時に見えない状態でスポーンさせて使用処理だけさせる
っていうのはどうでしょうか

280:名前は開発中のものです。
16/09/15 23:59:13.05 6T9VYaA2.net
>>274
ほんと息の長いバグだよな、それw
あー、なるほど。そういう方法もありますね
スポーン、イベント呼び出し、デストロイ
この3つだけで実装できるから実用的ですね

281:名前は開発中のものです。
16/09/16 03:26:48.59 6E89zCYu.net
誰か助けてくだされ・・・
コンストラクションスクリプトで
child actor Componentを追加。
事前に親ブループリント内の変数を設定しておくことで
子ブループリント内のスタティックメッシュの色に反映されるようにしたいんですが
全然やり方がわからない…
一応 子ブループリント内で
get parent component →castとか
get owner→castで
親ブループリント内の変数を取り出そうと努力したんですが一向にうまく行きません

282:名前は開発中のものです。
16/09/16 03:32:17.37 6E89zCYu.net
追記
子コンストラクションスクリプト内で add call to parent Functionというノードを呼び出せることは分かりましたが
ついてくるのは実行ノードのみで、これと関係あるかどうかがわかりません。

283:名前は開発中のものです。
16/09/16 05:23:59.66 6E89zCYu.net
たった今自己解決しました。子ブループリント内のクラス設定→クラスオプションで
親クラスを親ブループリントに設定して
子ブループリント内でget owner→castを使えば親の数値がちゃんと参照できます。
スレ汚し失礼しました。

284:名前は開発中のものです。
16/09/16 09:03:42.48 cLGtFVlC.net
>>274
見えない状態でスポーンってどのノードを使えばいいんですか?

285:名前は開発中のものです。
16/09/16 23:11:23.77 bIlFKZl9.net
>>279
スポーンアクターの直後にSet Actor Hidden In Gameというノードを繋げてチェックボックスをオンにすれば見えなくなります
もしくはクラスのデフォルトでActor Hidden In Gameの項目オンにすれば普通に配置しても見えません

286:名前は開発中のものです。
16/09/17 08:14:13.81 3wbjta3D.net
>>280
アイテム使用時のみスポーンさせたい場合の
SpawnLocationはどういう組み方をすればいいんですか?

287:名前は開発中のものです。
16/09/17 08:42:29.23 sMdoL25B.net
>>281
MakeTransformかMakeVectorで好きな座標にスポーン出来ます
雑ですが地中とか絶対ゲームに影響しない場所にスポーンさせればHiddenさせる必要もないかも知れません
スポーンと同時にコリジョンやエフェクトも切れる


288:謔、にしておけば場所はどこでもよくなると思います



289:名前は開発中のものです。
16/09/17 16:37:10.03 3wbjta3D.net
>>282
取得したときにデストロイする設定にすると
URLリンク(iup.2ch-library.com)
このエラーが出ます。
それから取得した時にデストロイではなく隠す方法にして
URLリンク(iup.2ch-library.com)
この組み方にすると
URLリンク(iup.2ch-library.com)
このエラーが出ます。
原因わかりますか?
因みにアクターを取得するときに隠す設定にすると、
同じ所で取得ボタンを押し続けた場合、無限にアイテムが手に入ってしまいます。

290:名前は開発中のものです。
16/09/17 17:26:44.81 9zr49/H3.net
なんか臭うな

291:名前は開発中のものです。
16/09/17 18:18:52.90 yhi7zG62.net
>>278
自己解決おめでとう!
一応参考までに別のやり方として親ブループリントから直接子ブループリントにアクセスして色(スクショではマテリアル)を変えることもできますよ
URLリンク(imgur.com)
>>283
>取得した時にデストロイする場合
デストロイの後にアイテムを使ったときの処理を書いていませんか?
そのアイテムで行うすべての処理が終わった後にデストロイしてはどうでしょうか?
>デストロイするのではなく隠す方法にしたとき
隠す方法なのにスポーンする理由、その処理をチャイルドブループリントに書いている理由がちょっとわからないです
原因としては、UseItemの時に呼び出そうとしているAppleのインスタンスはレベル上に存在しないというのが考えられます
>隠す設定にすると
ただ見えなくしているだけなのでアクタは存在し続けます
InventoryUIwithUMGでは隠した後にコリジョンを無くして、コリジョンがない場合は取得できないようにしています
もう一度InventoryUIwithUMGを見てみることをおすすめします
あと前提としてクラスとインスタンスの違いを調べたり
インベントリのYoutubeのチュートリアルをアレンジせずに、まずまるごと再現してみてはどうでしょうか
誰でもいきなり応用しようとすると躓いてしまいます
>>284
まぁまぁ、例の彼みたくマルチしているわけでも暴れているわけでもないしこれぐらいいいだろw

292:名前は開発中のものです。
16/09/17 18:29:46.89 3l7k7it/.net
>>285
ありがとうござぃす。見る限り子のクラスを変更してるんですかね
へぇ、こんな方法がねぇ…
ありがとうございます

293:名前は開発中のものです。
16/09/17 19:17:06.69 3wbjta3D.net
>>285
UE4に関しては右も左もわからない状態で・・・
質問ばかりになってしまって申し訳ないです。
丁寧な回答ありがとうございます。

294:名前は開発中のものです。
16/09/17 19:57:23.83 yhi7zG62.net
>>287
いえいえ
何かとっかかりさえ掴めればあとは早いと思うのでそれまで頑張ってみてください
何かあれば気軽にまたどうぞー

295:名前は開発中のものです。
16/09/18 22:50:11.65 2yOO37q4.net
PC移行でランチャーとか落とし直してもアカウントでログインするとダウンロードしてたアセットとかデモがそのままあって助かった
あとは旧HDDからプロジェクトファイル持って来るだけか…
なぜかダウンロード速度出なくて困る…

296:名前は開発中のものです。
16/09/18 23:10:11.83 KjbIJcKN.net
APEX-ClothのImportについて助けてください・・・
Blenderでエクスポートしたメッシュに適用しようとすると、メッシュが巨大化&プルプルする現象に困ってます。
UEは4.11.2、Blenderはv2.77、APEXSDKは1.3.2です
Blenderのエクスポートは特にスケールとか弄ってませんが、
MeshImportまでは問題なくできました。特にエラーも出ません。
Apexを適用するマテリアルも1つにまとめて、UVも作ってあります。
2つのサブメッシュは外側と内側です。
URLリンク(iup.2ch-library.com)
URLリンク(iup.2ch-library.com)
URLリンク(iup.2ch-library.com)
URLリンク(iup.2ch-library.com)

それと、上記とは別の問題かもしれませんが、
pukiwikiに置かれていたサンプルファイルをImportしてもメッシュが切り裂かれたようにグチャグチャになってしまいます・・・
URLリンク(iup.2ch-library.com)
書いてる途中でサブメッシュが2つあるせいで上手く行かないのかと思ったんですけど、
1つにしてもこんな感じです・・・
URLリンク(iup.2ch-library.com)
よろしくお願いします。

297:名前は開発中のものです。
16/09/19 00:19:22.25 cKiphHqm.net
4.13.0をインストールしたらEドライブにディスクがないとか出たけど、普通に起動したが
これは…何ですか?

298:名前は開発中のものです。
16/09/19 01:19:14.57 OAWfPjyT.net
>>291
俺も最近のランチャーのアップデートで出るようになってググったら
SDカードとかのドライバが云々でウィンドウズの問題だとか書いてあったけど
どうみてもランチャーのせいだろと思いながらとりあえずEドライブの
ドライブを別のHとかにしたらでなくなった。
ランチャーのプログラマはあんまり腕がよろしくないようだからしゃーない。


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

317日前に更新/269 KB
担当:undef