[過去ログ] 【UE4】Unreal Engine 4 初心者質問スレッド part6 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
801: 名前は開発中のものです。 [] 2020/06/01(月) 16:53:19.88 ID:2YwcA0uT(1) AAS
IT掲示板群 外部リンク[aspx]:x0000.net

学術の巨大掲示板群 - アルファ・ラボ 外部リンク:x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など

simulationライブラリで純粋な関数式プログラミングをする
外部リンク[aspx]:x0000.net
UIライブラリ (C#, 2D) を作ったよ
外部リンク[aspx]:x0000.net
連続と離散を統一した!
外部リンク[aspx]:x0000.net
4Dエンジン(画像有り)
外部リンク[aspx]:x0000.net
matrixのライブラリ
外部リンク[aspx]:x0000.net
ある強力なFor関数
外部リンク[aspx]:x0000.net
SQLライブラリ
外部リンク[aspx]:x0000.net

PS malloc / free を実装してみた (C#)
外部リンク[zip]:up.x0000.net
802
(1): 名前は開発中のものです。 [sage] 2020/06/01(月) 19:00:51.80 ID:FDjrl3dm(1) AAS
>>800
800(1): 名前は開発中のものです。 [] 2020/06/01(月) 16:42:45.80 ID:RfByEgKr(1/2) AAS
「アクターオブジェクト参照の配列」で複数のアクターをセットした変数からは、インデックスを指定することで特定のアクターを取得することができますが、それと同じように
「アクターオブジェクト参照からベクターへのマップ」で複数のアクターをセットした変数から、ベクターを指定して、特定のアクターを取得する方法はありますでしょうか。
ActorをキーとしてるVectorのマップを逆引きするってこと?
もしそうならVectorは誤差の出るものなので一見同じ値でも見つからない場合があるだろうから別の方法を模索したほうが良い
何をしようとしてるのか分かればアドバイスできると思うよ
803: 名前は開発中のものです。 [] 2020/06/01(月) 20:03:14.77 ID:RfByEgKr(2/2) AAS
>>802
なるほど。やはり座標はずれてしまうものなんですね。
おっしゃる通り別の方法でやってみます。ありがとうございます。
804
(1): 名前は開発中のものです。 [sage] 2020/06/01(月) 21:01:13.75 ID:aPyoGv0f(1) AAS
Xinputコントローラー、Bボタンを決定、Aボタンをキャンセルにしたいのですが、
プロジェクト設定で一切コントローラーの設定をしていない状態でも、Aボタンで決定が実行されてしまいます。
このAボタンで決定が実行されてしまうデフォルト設定を、解除、もしくは変更する方法はありませんか?
805
(1): 名前は開発中のものです。 [sage] 2020/06/02(火) 02:57:31.37 ID:XKJxIaOe(1/5) AAS
>>804
おそらく、UMGのボタンに対しての話だとはおもうけど
C++の場合は、対応するプラットフォームのInput.cpp内でGetGamepadAcceptKey、GetGamepadBackKeyを実装することで可能
BPではどうやるのか不明、ソース見る限り変更する口がないのでできなさそう
806: 名前は開発中のものです。 [sage] 2020/06/02(火) 14:22:22.98 ID:EkV76gxl(1) AAS
>>805
プロジェクト設定やBPの範囲で設定を変更するのは難しいのですね。
C++でそれらしき箇所を入れ替えてみたのですが、私の触り方がおかしいらしく上手くいかなかったので(プログラムは全く無知なので)ここは後回しにすることにします。
ありがとうございます!
807
(1): 名前は開発中のものです。 [] 2020/06/02(火) 17:07:19.20 ID:gGtZrXya(1/8) AAS
「Cast to」 でとあるアクターブループリントから変数だけ参照したいだけのですが、「Cast to アクターBP名」ノードで変数を呼び出そうとするとObjectになにかつなげと言われます。
試しに「GetOwner」をつないでみたのですがうまく機能しませんでした。なぜでしょうか。
808
(1): 名前は開発中のものです。 [sage] 2020/06/02(火) 17:22:18.38 ID:BPNUgDnM(1/4) AAS
>>807
Castは何者かわからないオブジェクトを何者かにする物なので
目的のアクターのインスタンスオブジェクトが分かっているなら使う必要ない
809: 名前は開発中のものです。 [] 2020/06/02(火) 17:39:25.87 ID:gGtZrXya(2/8) AAS
>>808
他のBPの変数を参照すために使うものじゃないってことですかね。
他のBPの変数を参照するにはどうしたらいいのでしょうか。
810
(1): 名前は開発中のものです。 [sage] 2020/06/02(火) 17:55:11.37 ID:45dfXXt8(1/3) AAS
オーバーラップしたアクターとかを繋いでみて、そのアクターとキャストしたいBPが一致すればキャストできて、そのアクターの変数とかいじれる
811
(2): 名前は開発中のものです。 [] 2020/06/02(火) 19:51:38.88 ID:gGtZrXya(3/8) AAS
>>810
AというアクターBPとBというアクターBPががあったとして、AとBが接触しないとキャストできないということでしょうか。
812
(1): 名前は開発中のものです。 [sage] 2020/06/02(火) 20:13:00.44 ID:45dfXXt8(2/3) AAS
>>811
そのBP使っているアクターを特定できればいい。他から操作キャラクターをいじるならGet player pawnとか、重いらしいけどすべて見つけるならGet All Actors of Classとか
813: 名前は開発中のものです。 [sage] 2020/06/02(火) 20:13:14.11 ID:BPNUgDnM(2/4) AAS
>>811
そんなことはないよ
Actorは抽象クラスといわれるような存在で、そのまま使われることはなく基本的には継承して扱われる
Castに関してはC++の継承とポインタの話なのでそこを調べたほうが正しい、が
例えばActorを継承したMyActorをレベルに配置し、そのアクターをレベルブループリントで参照
(アクターを選択した状態で、ブループリントエディターの右クリックメニューで参照を出すやつとか)する場合は何者かわかっているので、MyActor自身が持ってる変数にアクセスできる

つづく
814: 名前は開発中のものです。 [sage] 2020/06/02(火) 20:13:43.58 ID:BPNUgDnM(3/4) AAS
GetActorsなどで取得した場合は、Actorとして参照するので、Actorが持ってる変数にはアクセスできるがMyActorとはわかっていないのでMyActorがもってる変数にはアクセスできない
ここで、Actorを入力としてMyActorとしてCastが成功すればMyActorと認識できてMyActorの変数にアクセスできるようになる
もちろん違うActorを入力に渡すと失敗する

例でGetActorsを出したけど基本的には使わないように
815
(1): 名前は開発中のものです。 [sage] 2020/06/02(火) 20:15:26.54 ID:BPNUgDnM(4/4) AAS
このへんは文章で説明してもすごいわかりにくいからどうしたものかね?
816
(1): 名前は開発中のものです。 [sage] 2020/06/02(火) 20:18:22.48 ID:V3oBoznY(1) AAS
アセットブラウザからアニメーションシーケンスを開くとスケルトンツリーが見れますが
ボーンを選択すると詳細タブにそのフレームでのボーンのトランスフォームが表示されると思います
0フレーム地点でいいのですが、このトランスフォームの値をブループリントかC++で取得する方法はありますでしょうか
プレーヤーのトランスフォームではなくアニメーションアセットのボーンのトランスフォームが必要なのでインターフェースが見つからず苦戦しています
817
(1): 名前は開発中のものです。 [] 2020/06/02(火) 21:23:10.64 ID:gGtZrXya(4/8) AAS
>>815
とても丁寧に解説いただきありがとうございます。完全に理解したわけではありませんが、なんとなくはわかりました。
プレイヤーポーンとかプレイヤーコントローラーとかレベルブループリントとか、そういうアクセスしやすいところにグローバルで使いたい変数を集めてそこで管理するとかのほうがいいんですかね。
818
(1): 名前は開発中のものです。 [] 2020/06/02(火) 21:24:12.82 ID:gGtZrXya(5/8) AAS
わからないことが次から次に出てくるんで個人レッスンしてもらいたい。
819
(2): 名前は開発中のものです。 [] 2020/06/02(火) 21:32:29.10 ID:gGtZrXya(6/8) AAS
>>812
Cast to A がプレイヤーならかんたんなんですけどね。
プレイヤーではないのでObjectにつなぐものがないんですよね。Cast to A をしてる時点でObjectに何も繋がなくてもAだよわかってよ。って思うんですけどね。
820
(1): 名前は開発中のものです。 [sage] 2020/06/02(火) 21:45:35.99 ID:45dfXXt8(3/3) AAS
>>819
どんな感じがわからんけど、変なやり方だと、BeginplayでAがplayerをキャストして自分自身を渡せばいい
playerにActorの変数作っとけば、Selfとかでぶちこめるでしょ
色々とやってみるが吉
821: 名前は開発中のものです。 [sage] 2020/06/02(火) 21:59:16.23 ID:XKJxIaOe(2/5) AAS
>>817
グローバルで使いたい変数などはゲームの内容によって異なってくる
GameInstanceがよかったりGameModeがよかったりGameStateがよかったりもする
822: 名前は開発中のものです。 [sage] 2020/06/02(火) 22:02:15.28 ID:XKJxIaOe(3/5) AAS
>>819
なにか抽象的に扱われているオブジェクトを具象化するのに必要なのがCastなのだから
指定されないとわからないのは必然なのだが
823
(1): 名前は開発中のものです。 [sage] 2020/06/02(火) 22:03:37.93 ID:XKJxIaOe(4/5) AAS
>>818
自分で調べて解決する能力をつける努力をするべき
824
(1): 名前は開発中のものです。 [sage] 2020/06/02(火) 22:24:00.60 ID:XKJxIaOe(5/5) AAS
>>816
答えは知らないのだけどUAnimSequence::GetBonePoseあたりから辿れそうな気はした
825
(2): 名前は開発中のものです。 [sage] 2020/06/02(火) 22:49:17.76 ID:0eY/8b3g(1) AAS
すみません質問させていただきたいです。
プレイヤーや敵にヒットした矢やボールなどが引っ付くようにしたいのですが、ヒットしたメッシュ位置にくっつけるようなことは可能なのでしょうか。
ヒット位置はライントレースなどで取れますし、ボーンやソケットに対してであれればアタッチできるので
ざっくりとくっつけることはできるのですが、腕や足など大きく動く位置にヒットした場合に見た目が変になります。
メッシュの特定の位置に対して(法線基準のようなイメージ?)しっかりと引っ付く仕組みが作りたいのですが、
何か良い方法はありませんでしょうか。

方法や、参考情報などわかる方がいましたらよろしくお願いいたします。
1-
あと 177 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.015s