[過去ログ] 【ゲームエンジン】Unity初心者質問スレBuild4 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
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()で向きを代入すればいい
202(1): 2020/04/20(月)17:55 ID:zd2flDEV(4/7) AAS
>>201
public bool left を文頭に付け加えればメンバ変数になりますか?
それと向きの代入はどのように書けばいいのでしょうか?
203: 2020/04/20(月)19:41 ID:7TeDGIGu(4/5) AAS
>>202
そんで、left=render…をスタートにね。
204(1): 2020/04/20(月)20:05 ID:vPtvjXeA(1/2) AAS
インスペクターの変数表示を折りたたみしたくて、
「InspectorFoldoutGroup」というのを見つけたのですが導入方法がわかりません。
やり方教えてほしいです。
205(1): 2020/04/20(月)20:50 ID:bEPCXYQk(1) AAS
>>204
Homebrewフォルダを自分のプロジェクトのAssetsに置く
折りたたみを使いたいスクリプトの一番上の部分に
using Pixeye.Unity;
を追加
あとは添付されてる
README.md
省2
206(4): 2020/04/20(月)21:03 ID:zd2flDEV(5/7) AAS
GameObject Player;
SpriteRenderer Renderer;
public float x;
public bool left;
void Start()
{
left = Renderer.flipX;
省17
207(1): タワー ◆j2ZL4YtpzY 2020/04/20(月)21:16 ID:IQn62GFy(1/2) AAS
>>206
xの値変わって無くないですか?
方向はStart()で決めてるんでその後のxの加算減算はUpdate()内で行えば動きませんか?
208: 2020/04/20(月)21:28 ID:vPtvjXeA(2/2) AAS
>>205
おかげさまで導入することができました
ちなみに自分がひっかかってたのはダウンロードの仕方からわからなかったのですが
サイトの Clone or download → Download ZIP から落とせました。
たぶんダウンロード出来てたとしても導入でつまづいてたと思うので(英語わからない)
助かりました ありがとうございます!
209(1): 2020/04/20(月)22:10 ID:zd2flDEV(6/7) AAS
>>207
Startでxに代入している-0.5fや0.5fは方向を決めるだけのものなんですか?
であればUpdate内にxと書いただけでは動かないのは納得です…
210: 2020/04/20(月)22:15 ID:j+CwVrdp(1/2) AAS
>>206
これでどうだ
GameObject Player;
SpriteRenderer Renderer;
public float x;
public bool left;
void Start()
省18
211(1): 2020/04/20(月)22:26 ID:j+CwVrdp(2/2) AAS
発射後には方向動かしたくないのか 失礼
212(2): 2020/04/20(月)22:30 ID:zd2flDEV(7/7) AAS
>>211
そうなんです!
これだとプレイヤーの向きを変えるたびに弾の方向も変わってしまうんです…
わざわざ書いてくださってありがとうございます
213(1): 2020/04/20(月)22:47 ID:7TeDGIGu(5/5) AAS
>>212
206で動かない?
そもそもこのスクリプトは弾についてますか?
あとxの値が小さすぎるかもしれませんので、おおきくするとか。
214(2): タワー ◆j2ZL4YtpzY 2020/04/20(月)23:01 ID:IQn62GFy(2/2) AAS
>>209
あ、分かった二ヶ所です
まずStart()にある
if(left == true)
…
をUpdate()へ移動
んで加算減算ですが
省4
215(1): 2020/04/21(火)00:16 ID:VK5HUOlH(1) AAS
>>206
GetComponentする前にRendererを参照してるからぬるぽ出てるんじゃないの?
Renderer=の部分をleft=の上に移動してみては
216(2): 2020/04/21(火)01:34 ID:TxUS3yyD(1) AAS
>>212
外部リンク:imgur.com
こういう感じ?弾はプレハブをinstantiateで生成してるでいいのか?
GameObject Player;
SpriteRenderer Renderer;
public float x;
public bool left;
省18
217(1): 2020/04/21(火)02:35 ID:eGonr+6D(1/3) AAS
>>213
このスクリプトは弾についてるやつです
これだと生成された場所で弾が止まってしまいます…
transform.Translate(0.5f,0,0)でいい感じだったので数値はこれでいいはずなんですが…。
218: 2020/04/21(火)02:39 ID:eGonr+6D(2/3) AAS
>>214
>>216
お二方ともご丁寧にありがとうございます。
そうですね。弾はInstntiateで生成してます。
試してみます。
>>215
謎エラーが出てたのはこれが原因かもしれません…
省1
219: 2020/04/21(火)07:56 ID:lxHdAL0J(1) AAS
>>217
ほな違うかー。それやと>>206で動くはずやもんな。
なんやろなー、一度update内をtranslate(1,0,0)だけにしてまず動くか試してみぃ。
220(1): 2020/04/21(火)10:03 ID:eGonr+6D(3/3) AAS
>>216
この方のスクリプトで試したところ、理想通りの動きをしてくれるようになりました
>>214さんのスクリプトも試してみようと思います
数日にわたり本当にありがとうございました!
しっかり勉強します…!
221: タワー ◆j2ZL4YtpzY 2020/04/21(火)10:10 ID:NfJnlsa5(1) AAS
>>220
あ〜ごめんなさいtranslateですね、少し勘違いしてたのでお気になさらず
私もまだまだ勉強中なのでお互い頑張りましょう!
222: 2020/04/21(火)11:36 ID:K2oy6SXi(1) AAS
androidでrun and buildしようとしてgradleでエラーが出る
gradleのアップデートしようにもexportの仕方がわかんねえ…
223(1): 2020/04/21(火)22:53 ID:csf8LLL0(1) AAS
使い方がイマイチわからないところがあるので質問させてください
AオブジェクトにスクリプトAを接続
スクリプトAでパブリックGameObject Bを宣言
すると
AオブジェクトのインスペクタにGameObject Bの項目が追加されますが、
スクリプトAのインスペクタにもGameObject Bの項目が追加されています。
AオブジェクトのインスペクタのGameObject Bには他のオブジェクトをドラッグドロップで
省5
224(1): 2020/04/21(火)23:37 ID:UQ97M8GL(1) AAS
>>223
スクリプトAのインスペクタ
というのは、プロジェクトタブ内でスクリプトを選択したときに表示されるもののことでしょうか?
であれば、設定できるのはプロジェクト内にあるゲームオブジェクトだけです。
プロジェクト内にあるプレハブを初期値として持たせておきたい場合はそこで設定するといいと思います。
225(1): 2020/04/22(水)01:06 ID:KbfCVKCs(1/4) AAS
>>224
そうです Projectタブ内のスクリプト選択時に表示されるものです
おっしゃるとおりAssets内のプレファブからならドラッグドロップで登録できました
でもこれって
ゲームオブジェクト選択時に表示されるインスペクタのほうからでもプレファブ登録ってできますよね?
初期値に違いが出るんでしょうか?
226(1): 2020/04/22(水)01:27 ID:sLe2iYSZ(1/3) AAS
スクリプトをアタッチした時点での初期値、という意味です。
227: 2020/04/22(水)01:43 ID:KbfCVKCs(2/4) AAS
>>226
すみません 理解力が足りなくてよくわかりません・・・
どういう風な使い方ができるか具体例とかあれば教えていただけないでしょうか?
228(1): 2020/04/22(水)02:29 ID:sLe2iYSZ(2/3) AAS
ただ単純に手間を省ける場合があるってだけです。
例えばプレハブに8割の確率で同じものを使う、という場合で、
100回スクリプトをアタッチしたとします。
初期値が空なら、100回プレハブを設定しなければなりません。
初期値に80回使うプレハブがすでに設定済みなら、
設定するのは20回ですみます。
229: 2020/04/22(水)07:29 ID:idLW19fL(1) AAS
やばいずっと何言ってるかわかんねえ
230(3): 2020/04/22(水)11:29 ID:VQM8R+FC(1/3) AAS
プレハブについての質問です。
すでに存在するオブジェクトに子としてプレハブを複製しようとしたときの座標がうまく設定できません。
スクリプトではこんな感じ記載しています
------------
ParentObject = GameObject.Find("ParentCanvas"); //すでに用意しているキャンパス
var parent = ParentObject.transform;
// プレハブをGameObject型で取得
省9
231(1): 2020/04/22(水)13:03 ID:UU/VXGyk(1) AAS
>>230
最後のlocal posで、100じゃなくて、0.0.0でいいんじ「ないの?
232: 2020/04/22(水)13:10 ID:VQM8R+FC(2/3) AAS
>>231
最後のlocalPosition の位置に設定をしたいのですがワールド座標の原点に設定されてしまう状態です
233(1): 2020/04/22(水)13:29 ID:sLe2iYSZ(3/3) AAS
>>230
Instantiate(obj, parent.position + new Vector3(1.0f, 1.0f, 0.0f);, Quaternion.identity, parent);
234: 2020/04/22(水)13:36 ID:KbfCVKCs(3/4) AAS
>>228
説明で全くピンとこなかったのですが
実際UNITYで試してみて言葉の意味がようやく理解できました
「スクリプトをアタッチした時点での初期値」
ほんとそのとおりですね 複製するときに使えそうです
ありがとうございます!
235(2): 弟子 ◆rZPPjYuxmQ 2020/04/22(水)13:37 ID:kYRnjPG5(1) AAS
>>225
画像リンク[png]:i.gyazo.com
まずこれがオブジェクトにスクリプトをアタッチし、public変数に設定した例
画像リンク[png]:i.gyazo.com
こちらがProject欄にあるスクリプトのPublic変数、ここへは「シーン上」のオブジェクトは設定できない
画像リンク[png]:i.gyazo.com
こちらが同じスクリプトにPrefabを設定した例、Prefabなら設定できる
省19
236: 2020/04/22(水)13:54 ID:KbfCVKCs(4/4) AAS
>>235
詳しい解説ありがとうございます!
参考にして理解を深めたいと思います
237: 2020/04/22(水)13:54 ID:NXwZj8K9(1) AAS
タッチの差だったな
238: 2020/04/22(水)14:37 ID:VQM8R+FC(3/3) AAS
>>233
>>235
返答ありがとうございます。
ローカル座標への設定ができました。ありがとうございます。
239: 2020/04/22(水)14:44 ID:Fjzhn+DL(1) AAS
サイズが100メガ越えちゃってアップロードできないので
一部のシーンを自サーバに置こうと思うんですが
どうやればいいのでしょうか
240: 2020/04/22(水)17:24 ID:v683vmMZ(1) AAS
無料のFBX Exporterって無くなったんですか?
241: 2020/04/22(水)17:54 ID:fzmr7DOF(1) AAS
ゲーム作ってる場合じゃない!
BEアイコン:1na9e.png
242(1): 2020/04/23(木)18:03 ID:h7v1P4FQ(1/2) AAS
関数名には、スペースと頭を数字にしてはいけないというのを知ったのですが、
「-」短いハイフンを含めても問題ないのでしょうか?
後で不具合が起こることはないでしょうか?
243: くまじょ 2020/04/23(木)18:36 ID:mFtLrFD8(1) AAS
>>242
しては行けないというか
できるの?
244: 2020/04/23(木)19:54 ID:VZYcAFmQ(1) AAS
エディタに怒られる
245: 2020/04/23(木)22:11 ID:B+z5addE(1) AAS
Unityが壊れた
AndroidのBild settingのplayerの項目が表示されなくなった
最初は表示されていたのに項目の入力中におかしくなってそれっきり
心当たりがあるとすれば入力中にIMEの入力切り替えがおかしくなって半角入力できなくなっていたことくらい
別のプロジェクトファイルを開いても同じ不具合と同じエラーメッセージが出るからunityのファイルが壊れたのか
一旦アンインストールしてから入れ直した方がいいのかなあ
それとも新バージョンを上書きしていいのか
省2
246(1): 2020/04/23(木)22:40 ID:YqrHMQSi(1/3) AAS
基本的な操作がわからないのでしつもんさせてください
関数とかif文とかのカッコ }
がよく変な位置に行ってしまいます。(うっかり無駄にエンター押したりしてしまう)
DELETEキー長押しでカーソル位置まで動かして戻してるのですが
スマートに戻す方法とかもしありましたら教えてくださいm(_ _)m
247: 2020/04/23(木)22:47 ID:h7v1P4FQ(2/2) AAS
アニメーションクリップが複数あるオブジェクトを非表示から表示に切り替えた時に
特定のアニメーションクリップから始めることはスクリプトで出来るでしょうか?
248: 2020/04/23(木)22:51 ID:KKg8jFzb(1) AAS
>>246
変な位置って具体的にどうなってて理想はどういう風にしたいの
visual studio使ってるんだったら設定いじるかフォーマットの拡張好きなの何か入れるとか
249: 2020/04/23(木)23:16 ID:YqrHMQSi(2/3) AAS
具体的に言うとよくこんな感じになってしまいます
if(a==0){ 処理
}
この2パターンが理想です(場合によって使い分けています)
if(a==0){ 処理 }
if(a==1){
処理
省2
250: 2020/04/23(木)23:20 ID:YqrHMQSi(3/3) AAS
間違えました
この2パターンが理想です(場合によって使い分けています)
if(a==0){ 処理 }
if(a==1){
スペース 処理
スペース }
251(1): 2020/04/24(金)02:47 ID:kDHtLuLX(1/2) AAS
プロジェクト内のフォルダを誤って消してしまい、ゴミ箱から元に戻してもscriptがエラーから戻らない場合は復元出来ないのでしょうか……?
252: 2020/04/24(金)02:48 ID:kDHtLuLX(2/2) AAS
拙い文ですみません、試してみて?という感じのアドバイスで良いのでお願いします…
253: 2020/04/24(金)03:32 ID:Yn/wujOk(1/2) AAS
submesh単位で分割する方法ないですかね...
外部リンク:onoty3d.hatenablog.com
このスクリプトだとエラーが出て分割できません
254: 2020/04/24(金)03:52 ID:Yn/wujOk(2/2) AAS
自己解決
255(1): 2020/04/24(金)07:49 ID:mqgYLk8R(1/2) AAS
>>251
裏で作ってるファイルがあるから、それだけでは何とも。エラーをみながらコツコツと直すしかない。
私だけかもしれんが。
256(1): 2020/04/24(金)13:11 ID:TSbisyMR(1) AAS
1日の作業が終わったらプロジェクトフォルダごとバックアップ
NASなんかに保存するのが最高だけど
下手すると年単位の苦労が消し飛ぶから考えた方が良いよ
257(1): 2020/04/24(金)13:39 ID:e94QvqHL(1) AAS
自分も一日の終わりにプロジェクトフォルダごとバックアップしてる
Zip圧縮したファイル名の末尾に日付を入れて一定期間保存
大きな変更を加える直前のフォルダは長期保管してる
258: 2020/04/24(金)15:11 ID:9IIgbh3E(1/4) AAS
プレハブについての質問です
1つのプレハブに↓のようなスクリプトをセットして複製し動かそうとすると
複製したオブジェクトが1つしか動いてくれません
-------
public class prefabMoveScript : MonoBehaviour {
public static GameObject prefabObject;
public static int iNow, jNow;
省14
259: 2020/04/24(金)15:29 ID:hbCzfYWk(1/2) AAS
staticじゃなくする
260(1): 2020/04/24(金)15:54 ID:9IIgbh3E(2/4) AAS
すいません一部コードが間違っていました
-------
public class prefabMoveScript : MonoBehaviour {
public static GameObject prefabObject;
public static int iNow, jNow;
public static void move()
{
省13
上下前次1-新書関写板覧索設栞歴
あと 742 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.028s