[過去ログ] 【ゲームエンジン】Unity初心者質問スレBuild4 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
121: 2020/04/13(月)17:34 ID:W8iFMn3H(2/2) AAS
>>120
ありがとうございます !
122(1): 2020/04/13(月)17:56 ID:Zl6mUABL(1) AAS
紐状のオーラを体に巻き付けて動きをアシストさせて、身体機能を向上させる、
みたいな演出をしたいのですが、パーティクルで可能でしょうか?
それともBrenderで作るべきでしょうか
紐を巻き付けるという演出上、頂点数がすごいことになるのでそれにさらにアニメーションをつけるとかなり重くなりそうなので
何かもっと軽く作る方法はないものかと
123: 2020/04/13(月)18:07 ID:1IyWOLTh(4/4) AAS
>>122
外部リンク:flypot.jp
124: 2020/04/14(火)01:19 ID:OujM5m2J(1) AAS
当たり判定の際、相手のパラメータをGetComponentせずに参照するやり方を教えて下さい。
■前提
攻撃側と防御側でコライダーが接触した際、攻撃側の攻撃力を参照して、防御側の防御力と差し引き、防御側のHPを減らしたいです。
コライダーの検知は防御側の当たり判定をつけた子オブジェクトにアタッチしたスクリプトでOnTriggerしています。
防御側のパラメータは、Startで親のパラメータをキャッシュできるのですが、攻撃側のパラメータは都度誰に攻撃されたか変わるので、
collisin..gameObject.GetComponentで相手のスクリプトを取得しています。
しかしGetComponentは重いので接触の度に行うのはパフォーマンスに不安があります。
省2
125: 2020/04/14(火)07:27 ID:F0R42j3I(1) AAS
接触時だけなら重くないはずですが。
そうでなければ、全て管理するしかないかと。
126: 2020/04/14(火)07:55 ID:pPWIKZgS(1) AAS
ゲームオブジェクトとコンポーネントを紐付けたディクショナリ作って
呼び出し時はそこからコンポーネントを取得するとか
127: 2020/04/14(火)08:55 ID:voGt/nBP(1) AAS
解像度によってPostProcessingのBloomがかなり見た目変わりますけど、皆さんどうやって対処してますか?
128: 2020/04/14(火)22:29 ID:IG2pgGi+(1) AAS
RPGのスキルの説明文やカードゲームのカードの効果のテキスト部分などは皆さんどうやって管理してますか?
一つ一つをプレハブ化して無理やりやる事も出来るのですが、もう少しスマートな方法が無いものかと模索しています。
129(1): 2020/04/15(水)06:11 ID:W4OTEmGD(1) AAS
エクセルで管理
130(1): 2020/04/15(水)10:19 ID:aOIdAe/5(1) AAS
rigidbody2dで水泳の蹴伸びみたいな反力を再現したいのですがうまく跳ねてくれません
どうすれば再現できますかね。。。
131: 2020/04/15(水)11:55 ID:UUYKPDdG(1/3) AAS
現在どうなっているのか、そこからどうしたいのかをもっと詳しく書かなきゃ答えられるはずなかろうにw
132: 2020/04/15(水)12:15 ID:yVr1KOQK(1/2) AAS
>>129
例えば説明文が「敵に5ダメージ」だとして、
5の部分を変数にしてバフ等の効果によって変更可能にしたい場合どう管理すれば良いのかが思いつきません。
今はひとつひとつを関数にして表示しています。
public string Attack(int playerAttack)
{
var text = $"敵に{playerAttack}ダメージ";
省5
133: 2020/04/15(水)12:24 ID:yVr1KOQK(2/2) AAS
>>130
物理挙動の話なら的外れかもしれませんが、
外部リンク:qiita.com
外部リンク:qiita.com
アニメーションの緩急はEasingと言うみたいです。
解決のヒントになれば良いですが。
134(1): 2020/04/15(水)13:15 ID:lnHW68ZC(1/7) AAS
質問です
カメラを矢印キーで上下に動くようにしたいのですが…
下のスクリプトにtransform.Translate(0,1f,0)のように書き足してみたのですが、カメラが1f上を写すだけで移動しませんでした。
2Dです。
public GameObject Player;
void Update()
{
省3
135(1): 2020/04/15(水)13:29 ID:UUYKPDdG(2/3) AAS
>>134
カメラのスクリプトじゃないのか?
136(1): 2020/04/15(水)13:40 ID:lnHW68ZC(2/7) AAS
>>135
カメラのスクリプトです
このスクリプトだとプレイヤーのx軸を追従するようになってます
137: 2020/04/15(水)14:00 ID:UUYKPDdG(3/3) AAS
>>136
なら、合ってるよ。
キャラの座標を毎回カメラに入れてるでしょ。
138(1): 帝王 2020/04/15(水)14:02 ID:PFjTS2Tn(1/4) AAS
いや違うだろw
カメラを十字キーで上下だぞ
x座標をプレイヤーポジションに合わせているだけで
入力すらとってないじゃないか
139(1): 帝王 2020/04/15(水)14:08 ID:PFjTS2Tn(2/4) AAS
よくわかんないから
きちんと書いてくれないか?
x軸はいいからy軸をどうしているのか
140: 2020/04/15(水)14:08 ID:lnHW68ZC(3/7) AAS
>>138
一応
if(Input.GetKey(KeyCode.UpArrow))
{
transform.Translate(0,1f,0)
}
のような形でキー入力は入れてみたんですが、これだと上キーを押した時にカメラが1フレーム上に移動するだけでした…
141: 2020/04/15(水)14:09 ID:lnHW68ZC(4/7) AAS
>>139
プレイヤーをジャンプさせたときに一緒にカメラが移動してしまうので0にしています
0のままだと動かないそうですが、どう変えればいいのかわからず…
142(1): 2020/04/15(水)14:17 ID:PFjTS2Tn(3/4) AAS
毎フレームy座標が0に戻ってるのでは?
yもプレイヤーに合わせるからなるんじゃないのかな
transform.position.xでx座標だけプレイヤーのx座標にしたらどうだ?
143: 2020/04/15(水)14:28 ID:lnHW68ZC(5/7) AAS
ありがとうございます
transform.position.xはどこに入れるのが正しいんでしょうか…
いろいろと試してみたのですがことごとくエラーを吐かれてしまいまして
144(1): 2020/04/15(水)14:31 ID:JTV4iwjm(1) AAS
>>142
これやると何故かエラー出るんだよなぁ
var x = Player.transform.position.x;
var y = transform.position.y;
if(Input.GetKey(KeyCode.UpArrow))
y+=1;
else if(Input.GetKey(KeyCode.DownArrow))
省3
145: 2020/04/15(水)14:38 ID:lnHW68ZC(6/7) AAS
>>144
ああああああできました!!
ありがとうございます!!
146: 2020/04/15(水)14:39 ID:lnHW68ZC(7/7) AAS
お二方ともご丁寧にありがとうございました!
147: 2020/04/15(水)15:48 ID:bwJYFlmz(1) AAS
simulationライブラリで純粋な関数式プログラミングをする
外部リンク[aspx]:x0000.net
UIライブラリ (C#, 2D) を作ったよ
外部リンク[aspx]:x0000.net
連続と離散を統一した!
外部リンク[aspx]:x0000.net
4Dエンジン
省7
148(1): 2020/04/15(水)20:56 ID:8YH6OY1K(1) AAS
rigidbodyにおいて、質量(密度?)を不均一にしたい(おきあがりこぼしのように一部は重く、一部は軽いというような)のですがやり方を御教授頂けないでしょうか。
149(1): 帝王 2020/04/15(水)22:58 ID:PFjTS2Tn(4/4) AAS
フリーズローテーションとかじゃダメな気がするので
blender等でならオブジェクトのピボット中心点を移動できる
でもrigidbodyをつけるなら形の通りに動くのだろうか
マトリョーシカ(ロシアの人形ね)みたいな卵型を使うとして
オブジェクトを5分割とかにしてみて別々(もとは同じ)のオブジェクトを装備しているような感じにして
fbxで一緒にくっつけて書き出して
メッシュコライダー入れてリジットボディでmassでそれぞれの部位に重さを設定すれば
省8
150: 2020/04/16(木)01:37 ID:TrwSK5Ca(1) AAS
UNITYの教科書って本には、
プレファブ作ってスクリプトから生成するとき
GameObject obj=Instantiate(prefab) as GameObject;
と記述するとあるのですが、
これの「as GameObject」付けなくても生成してくれるんですが、
省略してもいいんでしょうか?
151(2): 2020/04/16(木)06:07 ID:f9bKhCih(1/5) AAS
staticのシングルトンで作ったDataクラスに GameObject型のenemy1を宣言し、
別のスクリプトからプレハブをロードしてインスタンスしたところ、シーン上ではプレハブが表示されたもののなぜかnullエラーが出てしまいます。
同じプレハブをstaticでない通常の変数で宣言してインスタンスするとエラーは出ないのですが何が原因でしょうか?
//========■シングルトンのDataクラス↓
public class Data : MonoBehaviour
{
public static Data btdata = null;
省17
152(2): くまじょ 2020/04/16(木)07:28 ID:RAGlvlvv(1) AAS
>>151
シングルトンが不完全
どこよりも先にこいつのawakeが実行されるわけではないのでは?
153: くまじょ 2020/04/16(木)07:38 ID:/YRdqyfH(1/3) AAS
>>151
別のスクリプトのawakeで実行してるとか
※個人の感想
個人的には複数シーンを使うときこのやり方は俺の好みではない
154(1): 2020/04/16(木)07:39 ID:f9bKhCih(2/5) AAS
>>152
Awake使ってるの今のところここしかないです…
155: くまじょ 2020/04/16(木)07:39 ID:/YRdqyfH(2/3) AAS
>>152
不完全というのは不適切でした
156(1): くまじょ 2020/04/16(木)07:43 ID:/YRdqyfH(3/3) AAS
>>154
このシングルトンのオブジェクトを
このシングルトンを使うすべてのシーンに
一つ置いてますか?
このシングルトンのawakeが実行されていないと思われるのでスクリプトがあるだけでこのシングルトンのゲームオブジェクトが存在しないのではないかと思う
157: 2020/04/16(木)08:00 ID:f9bKhCih(3/5) AAS
>>156
すみません。テストをしているシーン上にDataをアタッチしたオブジェクトを置かれていませんでした…
シーンに配置したところエラーが出なくなりました。ご指摘ありがとうございます!
158(1): 2020/04/16(木)08:09 ID:f9bKhCih(4/5) AAS
すいませんもう一つだけ教えてください。ついさっきDataがシーン上にない時に試行錯誤しているうち
シングルトンの public GameObject enemy1 = null; を public staticに変えて、
Data.btdata.enemy1 = ... の部分を Data.enemy1 = ... という記述に変えたことでもエラーが出なくなった事に気づいたのですが、
これは普通のpublicだとbtdataをシーン上に配置してインスタンスしないとアクセスできないけど、
public static だとインスタンス無しでアクセスできる、ということなのでしょうか?
159(1): くまじょ 2020/04/16(木)08:36 ID:8aea26m5(1) AAS
>>158
正確にどういうスクリプトになったのか曖昧なので俺にはわからないのでわかりません
staticつけたものはインスタンスとは独立してるからね
インスタンスがいくつでも0個でもstaticは一つ存在する
でもシングルトンのインスタンスを一つ作ることになるけどね
シングルトンの中身の全てにstaticをつけるとかしないから
160: 2020/04/16(木)08:51 ID:f9bKhCih(5/5) AAS
>>159
ありがとうございます。シングルトンの解説をしているサイトでメンバ変数にstaticがあるものとないものがあるのはなんでだろうと思ってたんですが、少し理解できました。
161: 2020/04/16(木)09:07 ID:kHeNh8ng(1) AAS
>>149
unity上で部品のように固定する感じですか、ありがとうございます☺
162(1): 2020/04/17(金)05:57 ID:VOQWR+Wk(1/2) AAS
ゲームオブジェクトのプレハブを動的に切り替える事はできないのでしょうか?
共有のゲームオブジェクトを一つ作り、その中に複数のprefabをアタッチしておき、ゲームの状況に応じてprefabを切り替える…ということをやりたいのですが、上手くいきません。
instantiateをするとクローンの別オブジェクトは生成されるのですが、別オブジェクト生成ではなく自分自身のprefabを切り替えたいです
163(1): 2020/04/17(金)08:33 ID:qsxXwaDY(1) AAS
>>162
2つ既にくっついてるなら、
gameObject.setactive(false)
で、消しては?
164: 2020/04/17(金)11:32 ID:VOQWR+Wk(2/2) AAS
>>163
SetActiveの存在をすっかり忘れてました…ありがとうございます
165: 2020/04/17(金)11:50 ID:ZJBJxQUO(1) AAS
アニメーションクリップを作るときに、
imageをまとめてSceneビューにドラッグ&ドロップして作るときと
アニメーションウィンドウに画像をドラッグ&ドロップして作るときとで
アニメーションの速度が全然違うのですが、どうしてでしょうか。
タイムラインの秒数は同じはずなのに速度が全然違います。
166: 2020/04/17(金)17:22 ID:SVOeOAOE(1) AAS
3Dのゲームなのですが、避雷針のようなものを設置して、それを中心に一定範囲内で発動した魔法はすべて避雷針に向かってしまい、
実質魔法が無効化される、というシステムを考えています
スフィアコライダを使ってその範囲を作り、接触した魔法を中央の避雷針に飛ぶように軌道修正させようとしましたが、
魔法自体何かに接触すると効果を発動して消えるものであるため、スフィアコライダに接触した時点で消えてしまいました
魔法を無力化する効果自体はこれでも十分ではあるのですが、できれば軌道が変わることで意外な場所に着弾したり、
魔法を受け続けた避雷針が破裂するか何かして周囲に被害をもたらしたりとかしてみたいので、消えてほしくはありません
何か良い方法はありませんでしょうか
167: 2020/04/17(金)21:00 ID:5qCFijOz(1) AAS
特定の名前とかタグ名で判別すれば良いのでは?
168: 2020/04/18(土)06:19 ID:cZRvWLJz(1) AAS
お前らどんなゲーム作ってんの?
動画リンク[YouTube]
169: 2020/04/18(土)07:04 ID:aB+KxVXg(1) AAS
無料版unityで作ったアプリをGoogleplayに出して遊んでみたらmade with unityのロゴが出なくなったんですが仕様ですか?
170: 2020/04/18(土)09:07 ID:ctOwdfD6(1/4) AAS
>>103
ありがとうございます。
WebViewを表示したときにAdMobを消して
WebViewを消したときにAdMobがまた出るようにしたくて、
まずAdMobのスクリプトで
public static BannerView bannerView;
にして
省14
171: 2020/04/18(土)09:13 ID:ctOwdfD6(2/4) AAS
(続き)
そして、以下のWebViewのスクリプトに
-----------------------------------------------------
void Start()
{
〜 (略)WebViewを表示させる部分 〜
webView.OnShouldClose += (view) =>
省21
172(1): 97 2020/04/18(土)09:14 ID:ctOwdfD6(3/4) AAS
(続き)
自分で色々試してこれを追加すると、
void ShowBanner()
{
if (webView == null)
{
AdMob.bannerView.Show();
省6
173: 2020/04/18(土)14:06 ID:ctOwdfD6(4/4) AAS
>>172は間違いでした。訂正です。
このUpdateの方を追加すると、
void Update()
{
if (webView == null)
{
AdMob.bannerView.Show();
省3
174(2): 2020/04/18(土)14:11 ID:z8IRbjj0(1/2) AAS
if (Random.Range(1, 4) == 1 && 2)
{
Debug.Log("三分の二で入る");
}
と書くと
エラー CS0019 演算子 '&&' を 'bool' と 'int' 型のオペランドに適用することはできません
というエラーが出てしまうのですが、これと同じような処理をしたい場合どのように記述すればいいのでしょうか。
175(1): 2020/04/18(土)14:38 ID:hYM46Tv/(1) AAS
>>174
if (Random.Range(1, 4) <3)
176: 174 2020/04/18(土)16:03 ID:z8IRbjj0(2/2) AAS
>>175どうも有難うございます!
177: 2020/04/18(土)17:40 ID:LRtmG8cA(1) AAS
simulationライブラリで純粋な関数式プログラミングをする
外部リンク[aspx]:x0000.net
UIライブラリ (C#, 2D) を作ったよ
外部リンク[aspx]:x0000.net
連続と離散を統一した!
外部リンク[aspx]:x0000.net
4Dエンジン
省7
178(3): 2020/04/19(日)04:12 ID:1PPWw4FK(1/3) AAS
キーを押したら平行ライトの角度が変えられるスクリプトで質問したいです。
元のライトの角度が(50,-30,0)とかになっていてたとします。
リセットキーをつけようとQuaternion.identityをつかうと0,0,0
になってしまいます。
もとの(50,-30,0)にもどす(リセット)するにはどうしたらいいでしょうか?
よろしくお願いいたします。
-------------------------------
省20
179: 2020/04/19(日)07:08 ID:g5SC/sTa(1/2) AAS
>>178
俺は初心者なので詳しいことは知らんが
角度って難しいね
回転(相対変化)じゃなくて角度を指定したいとか
検索しても話がかみ合わない
180: 2020/04/19(日)07:17 ID:g5SC/sTa(2/2) AAS
>>178
平行ライトは知らんので使えるか知らんが
eulerAnglesとかlocalEulerAngles
181(1): 178 2020/04/19(日)09:29 ID:1PPWw4FK(2/3) AAS
ありがとうございます。
いろいろ試して
最後のリセットさせようとする文を
transform.rotation = Quaternion.Euler(50, -30, 0);
にしました。
初期値を自分で書いてそれに戻してるだけですが機能しました。
正しいやり方ではないと思いますが。
182: 2020/04/19(日)10:03 ID:VkHE7jHb(1) AAS
>>181
リセット時に向く方向を変数にして、
インスペクタから指定できるようにするとか、
start関数内で現在の向きを変数に格納しておく、
とかにすると使い勝手がいいかもしれません。
183: 2020/04/19(日)12:03 ID:iMvDFyAq(1) AAS
位置とスケールは簡単なのに角度になると急に面倒に…
0〜180、0〜 -180、0〜360とかぁ〜
184(2): 2020/04/19(日)18:44 ID:XRjxy4OE(1) AAS
他オブジェクトにつけたスクリプトを参照できるようなスクリプトを書きたいのですがどのように書けばいいんでしょうか…
プレイヤーキャラのスクリプトから向きの情報を得て弾の進行方向を変えるような感じをイメージしているんですが。
185(1): 2020/04/19(日)20:06 ID:+eR6EvBT(1) AAS
>>184
以前自分も全く同じ疑問持ちました
自分的にこのサイトが一番わかりやすかったです
外部リンク:htsuda.net
186(1): 2020/04/19(日)20:26 ID:NPwmi6aX(1) AAS
animatorについてなんだけど、3dモデルに他のキャラのアニメーション付けてもちゃんと動いてくれるの?
VRMとかにモーションつける時とか違うキャラの付けてもちゃんと動いてるのが不思議で
187: 2020/04/19(日)23:55 ID:1PPWw4FK(3/3) AAS
>>186
ボーンがUnityの指定しているHumanoidの仕様で、ある程度ちゃんとつけられた
キャラなら他から持ってきた動きでも動いてくれると思います。
188(1): 2020/04/20(月)13:43 ID:u07mKJre(1/2) AAS
Youtubeの画面下の横長動画プレイヤーみたいなのを作ろうとしているのですが、うまくいきません。
1.空オブジェクト(A)を作成。各種UI Buttonをその子として入れる。
2.別途UI Panelオブジェクト(B)を作成。Aには入れない。
3.Bに「イベントトリガー」コンポーネントをつけ、Pointer EnterでAのSetActiveをONに。Pointer ExitでOFFに。
4.BをAよりも画面手前に置くと、Aのボタンが反応しなくなる
5.BをAよりも画面奥に置くと、AのボタンにマウスーオーバーしたときABともに高速点滅する
189: 2020/04/20(月)14:32 ID:u07mKJre(2/2) AAS
>>188自己解決しました。
BをAに被せず、3のオンオフを逆にしたらOKでした
190(1): 2020/04/20(月)14:42 ID:zd2flDEV(1/7) AAS
>>184です
参照する方法は分かったのですが、弾を発射した後にプレイヤーの向きを変えるとそれに伴って弾の進行方向まで変わってしまうようになりました…
(右に発射したあと左を向くと弾の方向も左に変わってしまう…というような感じです)
発射した時点で進行方向を固定する関数などあれば教えていただきたいです。
>>185
一度は思いつくものの形にするには時間かかりますよね…
レスありがとうございます😊
191(1): 2020/04/20(月)14:46 ID:7TeDGIGu(1/5) AAS
>>190
角度取得をstartじゃなく、updateにでもいれてるんだろうね。
192(1): 2020/04/20(月)15:01 ID:Z9e9J0rW(1) AAS
ゲームにはよくパワーアップやパワーダウンの効果をもつバフ、デバフがあると思います
こういったものというのは、先に計算を行って置き、実数を変更しておくのが一般的なのでしょうか
それとも、効果を発揮する状況になったとき(たとえば攻撃時、攻撃力の値が必要になったとき)に毎回算出するのが一般的なのでしょうか
前者の場合だと計算は完了しているため後は値を参照すればパワーアップ状態での行動に反映でき、負荷が軽くなるとは思うのですが、
パブ、デバフの効果切れの際に、特に乗算等で計算していた場合、パワーアップ中にレベルアップや装備変更などで元の値が変化してしまうと
効果切れの処理のときに元の値が狂ってしまうバグが発生してしまいます
後者の場合だと前述のバグは発生しにくいとは思いますが、攻撃のたびにパワーアップ分を計算しなくてはならず、
省4
193(2): 2020/04/20(月)15:10 ID:zd2flDEV(2/7) AAS
>>191
Startに入れて実行したら弾が進まなくなりました…
なぜなんでしょうか…
194: 2020/04/20(月)15:49 ID:BqIKHtjL(1) AAS
>>192
前者でも元の値が変わったときに再計算をはさんでおけばバグは起きないだろうし、攻撃のたびに単純な計算するくらいの負担を気にする必要があるとも思えないです。
攻撃速度が1秒間に100回で複数の敵に多段ヒットしまくる様な特殊なゲームでなければですが。
>>193
方向の決定をStartでして、その方向にupdateで進めればいいんじゃない?
195(1): 2020/04/20(月)16:27 ID:hAG3HiSQ(1/2) AAS
scriptを用いて指定オブジェクトの色をGetComponent<Image>().material.color で変更しようとしたところ
指定したオブジェクト以外の色も変更されてしまいます。
指定したオブジェクトのみ変更させたい場合どうしたらよいでしょうか
Default UI Material というのが指定した色になっていました。
196(1): 2020/04/20(月)16:35 ID:7TeDGIGu(2/5) AAS
>>193
おい!w
関数理解して組んでるのか?
197: 2020/04/20(月)16:36 ID:7TeDGIGu(3/5) AAS
>>195
確か、マテリアルカラーはパレットだから、ほかのオブジェクトでも使ってたら変わったよ。
それが嫌なら専用のマテリアルを作るのが1番かな。
198: 2020/04/20(月)16:46 ID:hAG3HiSQ(2/2) AAS
返答ありがとうございます。
指定したImageオブジェクト(ほかのオブジェクトも)のmaterialを設定していませんでした。
指定オブジェクトのmaterialを「Sprites-Default」に設定したところ
指定したオブジェクトのみ色を変えることができました。ありがとうございます。
199(1): 2020/04/20(月)17:10 ID:zd2flDEV(3/7) AAS
>>196
GameObject Player;
SpriteRenderer Renderer;
void Update()
{
bool left =Renderer.flipX //左向きのときtrue
if(left==true)
省10
200(1): 2020/04/20(月)17:33 ID:QzIkkg0M(1) AAS
unity(2D)って、ひょっとしてそれほど画像の大きさは気にしなくていいですか?
カメラサイズとかで調整して、カメラで見えたものがそのまま映像として出る感じ?
201(1): 2020/04/20(月)17:40 ID:5Q+qVe+b(1) AAS
>>199
leftをメンバ変数にしてstart()で向きを代入すればいい
上下前次1-新書関写板覧索設栞歴
あと 801 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.023s