[過去ログ] 【3Dゲームエンジン】Unity質問スレッド32 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
727: 2017/12/09(土)21:53 ID:G7HaLFZX(2/3) AAS
3Dで基礎から勉強したければ、
難:「実例で学ぶゲーム3D数学」
中:「ゲーム開発のための数学・物理学入門」
易:「ゲームアプリの数学 Unityで学ぶ基礎からシェーダーまで」
2Dでアルゴリズムのアイデアを得たければ、
「アクションゲームアルゴリズムマニアックス」
「アクションゲームプログラミング」
728: 2017/12/09(土)21:59 ID:G7HaLFZX(3/3) AAS
>>723
Staticは他のオブジェクト間で共有したいものに使うので、
ただ他のオブジェクトのコンポーネントを使いたいだけだったら、
Staticを付けなくても、呼び出して利用はできます
729: 2017/12/09(土)22:47 ID:Ia5bSAGk(2/6) AAS
どうも。
気分がノッたら講義のお時間です。
"while文" の予定でしたが変更して "for文" の続きです。
"for文" は配列を扱う時に適しています。
例えば次のような文字列型配列があったとします。
例
string[] mes = {"ようこそ", "ねらーの町へ", "ゆっくりしていってね!"};
この中身を全て表示したい場合、"for文" を使わない場合は次のようになります。
例
string[] mes = {"ようこそ", "ねらーの町へ", "ゆっくりしていってね!"};
省5
730: 2017/12/09(土)22:48 ID:Ia5bSAGk(3/6) AAS
次に for文 を使用した場合の例です。
例
string[] mes = {"ようこそ", "ねらーの町へ", "ゆっくりしていってね!"};
for( int i=0; i<3; i++ ){
Debug.Log( mes[i] );
}
for文 を使用すると100個あってもこの4行だけで済みプログラムをすっきりとまとめられます。
例
string[] mes = {"ようこそ", "ねらーの町へ", "ゆっくりしていってね!"};
for( int i=0; i<mes.Length; i++ ){
省5
731(1): 2017/12/09(土)22:53 ID:Ia5bSAGk(4/6) AAS
また、配列処理に特化した専用のfor文といえる "foreach文" というのもありますが
for文で同じ事が出来る為講義ではあえて扱いません。
興味がある方は下のリンク先で確認してください。
今のあなたならリンク先の文章をなんとなく理解できる事でしょう。
配列での foreach の使用 (C# プログラミング ガイド)
外部リンク:docs.microsoft.com
本日は以上だクソども
732: 2017/12/09(土)23:01 ID:Ia5bSAGk(5/6) AAS
>>720
全13回の講座。
焦らずこれをじっくりやるといい。
外部リンク:hiyotama.hatenablog.com
733: 2017/12/09(土)23:07 ID:Ia5bSAGk(6/6) AAS
>>714
メトロイドヴァニアをYoutubeで拝見したがいきなりこれは難しいよ。
物理的な挙動に関してはUnityは物理エンジンが勝手にやってくれるので自分でプログラムする必要がない。
うまく伝わらない気はするが例えば
「このボールは1kg」「風の抵抗は受けない」「重力の影響は受ける」
みたいに画面を見ながら設定し
斜め上にむかって発射すれば勝手に本物のボールのように弧を描いて飛ぶ。
物理エンジンは、もともと自分でプログラムしないといけなかった事を勝手にやってくれる。
欠点として非リアル的な動きをしたい時に重力とかに逆らったりしなくちゃいけなくて
何度も何度もテストを繰り返さないといけないくなる。
省2
734: 2017/12/09(土)23:17 ID:0z0JcPwI(1) AAS
>>731
ありがとうございます!!!
735: 2017/12/09(土)23:28 ID:MExT9ytU(1) AAS
これでまた、staticおじさんが一人この世から消えたのか
736: 2017/12/10(日)09:21 ID:rk89KMyG(1) AAS
static変数にする
static関数にする
staticゲームオブジェクトにする
詰む
737(1): 2017/12/10(日)11:44 ID:ZDcJFyIw(1) AAS
>>723
そういう用途でstaticにするのは辞めたほうが……
シングルトンにしてDontDestroyと思う
それはそれとしてインスペクターのをstatic変数に反映させたいだけなら
責任は持ちません
public static GameObject hoge;
public GameObject hogehoge;
void awake(){
if(hogehoge != null) hoge = hogehoge;
}
738(1): 2017/12/10(日)11:48 ID:jcS8iLKb(1) AAS
staticをpublicでインスペクターから変更できるようにしてしまうと、
複数のオブジェクトで同時に同じstatic変数を変更してしまう恐れがあるから、
シングルトン機能がないと、どの設定値を参照するか不定になりそうで怖い・・・
設定値は複数オブジェクト間のインスペクター上で連動するのかな?
739: 2017/12/10(日)13:12 ID:s0gCGNcz(1/3) AAS
ここはプログラムの初心者ばかりなので
素直にアセットを買って作りましょう
740(1): 2017/12/10(日)13:34 ID:w46kXA82(1) AAS
・変更できない定数
・グローバルDBで管理(public)
・クラスの内部だけで決められた使い方だけをする構造上の黒子(private)
このうちのどれかに当てはまらないなら static はやめたほうがいい
741(5): 2017/12/10(日)17:15 ID:51pDRWFr(1/2) AAS
>>737
>>738
>>740
ありがとうございます。
staticで構成するのはやめようと思います
話は変わりますが、っていうか変わってないんですが
Ascript:
public void Hoge(){
StartCoroutine(Bscript.Bfunction());
}
省7
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
スクリプト(コンポーネント)は同じとこに書いてないもんは知りませ〜ん
上下前次1-新書関写板覧索設栞歴
あと 256 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.022s