[過去ログ] 【3Dゲームエンジン】Unity質問スレッド32 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
741(5): 2017/12/10(日)17:15 ID:51pDRWFr(1/2) AAS
>>737
>>738
>>740
ありがとうございます。
staticで構成するのはやめようと思います
話は変わりますが、っていうか変わってないんですが
Ascript:
public void Hoge(){
StartCoroutine(Bscript.Bfunction());
}
Bscript
public IEnumerator Bfunction(){
Debug.Log("hogehoge");
yield return null;
}
このスクリプトで「静的でないフィールド〜〜〜」というエラーが出るのはなぜでしょうか?
これがきっかけでstaticにするようになったのですが
742(1): 2017/12/10(日)17:20 ID:SGu7Clqn(1) AAS
>>741
その表記を見ただけでオブジェクト指向を微塵も理解してないと分かる
C#の基本を解説するサイトなんていくらでもあるから少なくともclassの存在くらい学ぼう
743: 2017/12/10(日)17:50 ID:s0gCGNcz(2/3) AAS
>>741
だから、あなたはプログラマーには向かないので
アセットを買って幸せになりましょう!
744(1): 2017/12/10(日)18:02 ID:s1u45m25(1/4) AAS
>>741
ゲットコンポーネントの事をもうちょっと理解した方が良いと思います。
745(2): 2017/12/10(日)20:14 ID:RELYBK2b(1) AAS
>>742
こういうとこで質問したことないんでどこまで省いていいか全然わからないです;;
クラスは何もいじっていないので
public class XXXX : MonoBehaviourのままです。
>>744
GetComponent?ゲットコンポーネントってどこからでてきました?
746: 2017/12/10(日)20:23 ID:hR3NFn4T(1/2) AAS
スクリプト(コンポーネント)は同じとこに書いてないもんは知りませ〜ん
747(1): 2017/12/10(日)20:46 ID:s1u45m25(2/4) AAS
>>745
とりあえず「他のスクリプトのメソッドを使う unity」で検索してみろ。それで理解できなかったら向いてない
748(1): 2017/12/10(日)21:11 ID:gqP0KwJW(1) AAS
>>745
言語知識がある程度でもあるならまだしもそうじゃないなら基本的には何も省略しないで
749: 2017/12/10(日)21:35 ID:s0gCGNcz(3/3) AAS
だから、アセットを買えばいいんですよ
スクリプト出来なんでしょ?
750(1): 2017/12/10(日)22:14 ID:s1u45m25(3/4) AAS
>>741
静的じゃないから〜ってエラーを見て、staticおじさんになっちゃったのか。
そのエラーの意味は「君が使おうとしているモノは最初から存在しない(静的でない)のでなんとかしてください」って意味だから「staicにしろ」って意味じゃないぞ
751(1): 2017/12/10(日)22:16 ID:51pDRWFr(2/2) AAS
>>747
>>748
>>750
ありがとうございます。
アタッチするオブジェクトに関連してないとアタッチしてはいけないと勝手に思い込んでいました。
>>741で言えば
カメラなりなんなりにBscriptをアタッチして
StartCoroutine(カメラ.GetComponent(Bscript).Bfunction());
って感じにすればよかったんですね
752: 2017/12/10(日)22:41 ID:s1u45m25(4/4) AAS
>>751
目標がありそれに向かってコーディングしてることは分かりますし、それは上達への近道です。しかしあなたの書いているコードはあまりにも支離滅裂なので簡単な内容からしっかり学習してください。他のスクリプトのコルーチン使うとかめんどくさすぎて頭おかしいです
753: 2017/12/10(日)23:01 ID:hR3NFn4T(2/2) AAS
まあプログラムなんて技量あげるうちに過去コードを色々短縮出来るのが楽しいから…
754: 2017/12/10(日)23:47 ID:CuU55Myq(1) AAS
もともとは、AsstesフォルダにあるPrefabを、スクリプト上で呼び出したかっただけだよね?
Sceneに配置していないPrefabを、GameObjectとして呼び出したいんだよね??
例えば、SceneにPlayerキャラクタが既にいて、ボタン入力に応じて、
Assets内にあるShotキャラクタを呼び出して、弾丸として発射するみたいな・・・
755: 2017/12/11(月)00:11 ID:SkZjimvo(1/4) AAS
<スクリプトAで、Assets内のプレハブBを、ゲームオブジェクトCとして取得する方法>
Scece上に配置したゲームオブジェクトXに、下記のスクリプトAを登録しておきます。
public class A : MonoBehaviour {
public GameObject B;
// Use this for initialization
void Start () {
GameObject C = (GameObject)Instantiate(B);
}
}
Inspector上でゲームオブジェクトBを登録できるので、
Assets内のプレハブBを登録しておきます。
「Assetss」を押すと一覧が出ます。
動的にBのインスタンスを生成して、ゲームオブジェクトCとして格納します。
以下、Inspector上で登録しておいたゲームオブジェクトBは、
ゲーム内ではゲームオブジェクトCとして実体化されているので、
移動させたり、回転させたり、いろいろできます。
756: 2017/12/11(月)00:30 ID:SkZjimvo(2/4) AAS
C = (GameObject)Instantiate(B)
だと、スクリプトを登録したオブジェクト上に生成されてしまいます。
生成される際の
位置を、Vector3 V = new Vector3(x, y, z)
向きを、Quaternion Q = Quaternion.Euler(angleX, angleY, angleZ)
親を、transform T = parent.transform
としたい場合は、
C = (GameObject)Instantiate(B, V, Q, T)
とします。
親Tの子として、向きQで、位置Vに、
Bのインスタンスが、オブジェクトCとして生成されます。
BにRigidbodyを登録しておけば、
Rigidbody D = C.GetComponent < Rigidbody2D >
によって、CのコンポーネントからRigidbodyを取得して、
変数DにRigidbodyを格納しておくこともできます。
以降は、物理演算ができるようになり、
D.velocity = new Vector3(vx, vy, vz)
のようにして速度を変更したりできます。
757: 2017/12/11(月)00:39 ID:SkZjimvo(3/4) AAS
誤
Rigidbody D = C.GetComponent < Rigidbody2D >
正
Rigidbody D = C.GetComponent < Rigidbody >
普段、2Dばっかりやっているから間違えた・・・
要するに、
?Hierarchyになくても、Assetsからでも呼び出せる
(GameObject.Findは、Scene内から探すためダメです)
?Staticにしなくても、Inspector上からPrefabを登録できる
(Inspector上で設定したかったら「public」です)
?スクリプトを登録する相手は、何でも良い
(カメラでも、空のオブジェクトでも・・・)
ただ、あるキャラクタから発射するつもりなら、
そのキャラクタにスクリプトを登録しておけば、
発射位置が、そのキャラクタの現在地になります。
758(1): 2017/12/11(月)07:52 ID:Lx/f51q7(1) AAS
レベルデザインしてるんですが、フリーでおすすめのアセットパックってないですか?
人工物や自然物がそれなりに入ってるのがほしいですが
759: 2017/12/11(月)11:46 ID:QvFVBkNr(1/2) AAS
>>758
フリーアセットではなく、有料アセットを購入しましょう
760(1): 2017/12/11(月)13:13 ID:xcDA2XWm(1/4) AAS
車の排気ガスでパーティクルを使おうと思ってます
車の後方から煙が出る形にしたいんですが、
1 車のオブジェクトにパーティクルをaddして良いのか
2 どうやってパーティクル位置を変更するのか(車の後方に)
の最初の2点で躓いてます
どなたか教えて頂きたいです。
761(2): 2017/12/11(月)13:18 ID:HEOTRILb(1/3) AAS
車に空の子オブジェクトを追加してそこにパーティクルを追加すればいいべ
そういうことじゃなくて?
762: 2017/12/11(月)13:52 ID:QvFVBkNr(2/2) AAS
>>760
車の排気ガスのアセットをかうと良いですよ
763(1): 2017/12/11(月)14:25 ID:xcDA2XWm(2/4) AAS
>>761
車とは別に新しくオブジェクト作って、
それにパーティクル追加してあとから車と同期(車と一緒に動くように)すればいいって事ですか?
764: ダーク王鍬大使 ◆SoVpkB15jY 2017/12/11(月)14:30 ID:V8qj051b(1/2) AAS
パーティクルを車の子オブジェクトにして位置と向きをインスペクターで変えてくらふぁい(^^
765: ダーク王鍬大使 ◆SoVpkB15jY 2017/12/11(月)14:31 ID:V8qj051b(2/2) AAS
ってよく見たら>>761に答えが書いてありまひた(^^
お節介失礼しまんこ(^^
ボッキング!(^^
766: 2017/12/11(月)14:58 ID:HEOTRILb(2/3) AAS
>>763
車の子オブジェクトにすればわざわざ同期なんて取らなくても相対位置と向きを保ったまま車と一緒に動いてくれるでしょう
767: 2017/12/11(月)16:02 ID:02QPz9bc(1/2) AAS
このスレの人ってまさか車のモデルをそのままヒエラルキーに配置してそこにスクリプト直付けしてるの?
普通Create Emptyで作った空のオブジェクトの下に作るよね?
768: 2017/12/11(月)16:34 ID:T/JrBtRm(1/8) AAS
全体的に、自分で色々工夫してみることをしないで人に答えを求める輩が多い気はするね。
プログラミングに答えはなくて目的の結果になる方法はいくつもあるのに他人のやり方を真似したがる人が多すぎるねここ。
769: 2017/12/11(月)16:36 ID:B36sEdco(1/2) AAS
人それぞれ。結果が満足なら中身なぞどうてもいい。
自分なりの作り易さを模索するだけさ。
770: 2017/12/11(月)16:38 ID:VIjb3sER(1/2) AAS
TanksにLeftDustTrailとRightDustTrailって入ってるじゃろ
上下前次1-新書関写板覧索設栞歴
あと 232 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.011s