[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 1101- 2ch.scのread.cgiへ]
Update time : 03/13 00:44 / Filesize : 345 KB / Number-of Response : 1101
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【3Dゲームエンジン】Unity質問スレッド10



1 名前:名前は開発中のものです。 mailto:sage [2014/06/26(木) 23:02:03.72 ID:t35CWy1R.net]
3Dゲームエンジン「Unity」の質問に優しく答えるスレです。

Windows/Mac用。JavaScript/C#/Booといった汎用言語を使用できるのが特徴です。
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。
プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3、PlayStation 4、PS Vita他

次スレは>>970を踏んだ方が建てること。ダメなら>>980>>990が建てて下さい。

■前スレ
【3Dゲームエンジン】Unity質問スレッド9
peace.2ch.net/test/read.cgi/gamedev/1399506271/

■本スレ
【3Dゲームエンジン】Unity総合スレッド22
toro.2ch.net/test/read.cgi/gamedev/1395140574/

■Unity 2ch Wiki(まとめ、過去ログ、リンク集)
 www24.atwiki.jp/unity2ch/
●リンク
・Unity(日本公式サイト)
 unity3d.com/japan/
・ユーザーガイド&リファレンス
 japan.unity3d.com/developer/document/
・チュートリアル
 japan.unity3d.com/developer/document/tutorial/
・スクリプトリファレンス
 docs-jp.unity3d.com/Documentation/ScriptReference/
・FAQ
 answers.unity3d.com/index.html
・MSDN
 msdn.microsoft.com/ja-jp/ms348103←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。

92 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 01:45:56.31 ID:A3spulFo.net]
俺は親のPanelにSendMessageするなりメソッド直接呼ぶなりしてDestroyしてる
そういうエラーは出てないからこれでいいはず…いいよね?

93 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 01:59:32.14 ID:gCDT1VPE.net]
>>78
それ質問じゃないですよアセットおじさん

94 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 02:04:49.85 ID:Q4WnWElN.net]
>>92
Assetを購入すれば質問になりますよ

95 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 02:17:23.83 ID:1W4uEawq.net]
>>90-86
ありがとうございます。

NGUIって、普通に文章を表示する、ボタンを付けるという
凝った使い方しない場合はNGUI -> Scripts内のスクリプトって
弄る必要ないですか?
インスペクタだけ弄ってれば一般的なUI機能は使えますか?

96 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 02:28:54.98 ID:mwLmwaX9.net]
>>94
Assets/NGUI/Scripts/*/*.csの事?
余程特殊(継承したクラスで継承元のprotectでない変数見たいとか)な事しないかぎり普通変更しないよ

97 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 02:30:18.33 ID:1W4uEawq.net]
>>95
はい、その事です

通常はやはりインスペクタで調整するのですね
ありがとうございました。

98 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 02:51:01.55 ID:1W4uEawq.net]
すみません、>>90を実行してみたのですがやはり同じエラーが出て
すんなりとはUIが消えてくれません。
デバッグ見るとNGUITools.csの

static public void DestroyImmediate (UnityEngine.Object obj)
{
  if (

99 名前:obj != null)
  {
    ★if (Application.isEditor) UnityEngine.Object.DestroyImmediate(obj);
    else UnityEngine.Object.Destroy(obj);
  }
}

★でエラーが出ていました。
これはNGUIどうのではなく、UIの呼び出し条件、もしくは消去条件のif文あたりが
問題あるのでしょうか?
[]
[ここ壊れてます]

100 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 02:56:27.05 ID:Q4WnWElN.net]
>>97
Assetを購入することでエラーも出なくなりますよ



101 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 04:27:24.95 ID:PlJB/HNp.net]
このレベルの人間がアプリ作る時代だもんな
Unityは罪深いソフトだよ

102 名前:名前は開発中のものです。 mailto:aaa [2014/06/30(月) 05:17:10.38]
現在2Dで開発しています、
壁に当たった際に、キャラを右移動から下移動に切り替えるようにプログラム
していますが、よく見ると下だけではなく跳ね返って左側にも少し移動しています。

これは仕様なのでしょうか?
跳ね返り係数は0にしているはずですが、壁に当たり摩擦したように
速度が落ちることがあるのでないようにしたいです。

ちなみに、移動のための文は以下の一文の向きを変えてます。
transform.Translate(Vector3.right * 3 * Time.deltaTime);

103 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 06:06:06.66 ID:xbMO5WXk.net]
裾野が広がるのはいいことだけど
何でもかんでも質問する人には困るよな

ヒントもらったら自分で何とかしろ

104 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 06:26:37.61 ID:PlJB/HNp.net]
教えて君はダメだな

105 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 09:08:37.35 ID:A3spulFo.net]
とりあえずNGUIを入れ直した方がいいんじゃないか

106 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 09:22:50.74 ID:PtdaEyYt.net]
敵をtransform.LookAtでこちらを向かせ
transform.forwardでこっちに向かって来るというようにしたいのですが、
床に沈んでしまいます。

colliderの調整、rigidbodyのconstraintsのfreeze positionのYにはチェックを入れています。
床に沈まないようにするためにはどのようにすればよろしいのでしょうか?

107 名前:98 mailto:sage [2014/06/30(月) 09:32:55.86 ID:PtdaEyYt.net]
>>104
自己解決いたしました。
ありがとうございます。

108 名前:名前は開発中のものです。 [2014/06/30(月) 12:04:32.92 ID:tC9m33Xe.net]
◎2chスレッド勢いランキングサイトリスト◎

★+ニュース板
・ 2NN (推薦)
・ 2chTimes
★+ニュース板新着
・ 2NN新着
・ Headline BBY
・ unker Headline
★+ニュース板その他
・ Desktop2ch
・ 記者別一覧
★全板
・ 全板縦断勢いランキング (推薦)
・ スレッドランキング総合ランキング
・ ログ速
★全板実況込み
・ 2勢 (推薦)
・ READ2CH
・ i-ikioi

※ 要タイトル名検索
※ 2chブラウザ併用推奨

109 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 14:20:06.55 ID:ALw2LC0O.net]
アセットを買おうとしたらガムロードに誘導されたんですが
ここはPayPalは使えないんでしょうか?
アセットストアから買ったほうがいい?常に最新ではないみたいだけど

110 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 19:35:37.91 ID:UQ1OJf+x.net]
maかfbxからライトのデータを取り込むことってできますかね
ライティングはunity内で調整するしかない?



111 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 19:40:15.99 ID:MG2Qxsma.net]
>>108
アセットを買えばできるとおもいますよ

112 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 21:54:47.32 ID:mwLmwaX9.net]
>>97
遅延評価しても駄目って事?(遅延評価の意味わかんないとちょっと論外)
エラーが自分を起点にしている呼び出しの中でImmidiate(即時)のDestroyは駄目って言う事を理解している?

ゲーム用のUIコードをUnity以外で書いた事あればすぐに何が悪いかわかるんだけど、コレは説明が難しいかもしらん。

113 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 22:42:41.46 ID:1W4uEawq.net]
>>110
すみません、ゲーム制作した事ないので初心者です・・・
完全に知識不足のようなので、とりあえずこの問題は後回しにしようと思います
ボタン連打すれば一応、閉じる事はできるのでゲーム進行不能になるわけではないですし

>エラーが自分を起点にしている呼び出しの中でImmidiate(即時)のDestroyは駄目って言う事を理解している?
半分は理解しているつもりです
「自分を起点」というところがちょっと理解できてないです

114 名前:名前は開発中のものです。 [2014/06/30(月) 23:03:48.33 ID:PlJB/HNp.net]
あきらめろん

115 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 23:07:26.15 ID:mwLmwaX9.net]
>>111
ボタンスクリプトのイベント拾ってその中でDestroy呼んでるのが駄目って事(発生元と消失が一緒)
そうなってない?

116 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 23:08:14.89 ID:MG2Qxsma.net]
>>111
アセットを買えばそんなの気にしなくてすむよ

117 名前:名前は開発中のものです。 mailto:sage [2014/06/30(月) 23:38:22.83 ID:1W4uEawq.net]
>>113
なるほど
でも発生元はオブジェクトAのInstantiateで消す時は
同じオブジェクトA内で>>90ですね

Instantiateしてからオ同じブジェクトAでDestroyしても
発生元と消失が同じとなるんでしょうか

118 名前:85 mailto:sage [2014/07/01(火) 03:55:59.52 ID:nHreHfmg.net]
>>115
そりゃ君の書いたコードに依存してるので僕からは何とも言えない。
どうしても添削して欲しいならどこかでコードを晒す以外に無いよ。

119 名前:名前は開発中のものです。 [2014/07/01(火) 11:11:04.26 ID:85UR2RLR.net]
javascriptで作業しています。

"open_switch"が"false"の場合
"motion_00"を再生します。
2秒したら再生としたいのですが、
下記のように書くとエラーが出てしまいます。
どのように書けばよいでしょうか。。。
宜しくお願いいたします。

var obj:GameObject;
var script:window_control;
function Start () {
if(!obj){
obj=GameObject.FindGameObjectWithTag("untagget");
}
script=obj.GetComponent("window_control");
}
function Update () {
if(script.open_switch==true){
animation.Play("motion_01");
}
else{
yield WaitForSeconds(2.0);
animation.Play("motion_00");
}
}

120 名前:名前は開発中のものです。 [2014/07/01(火) 11:12:58.80 ID:85UR2RLR.net]
111 です。
説明が足りませんでした。
2秒後ということで、
”yield WaitForSeconds(2.0);”と書くとエラーがでます。
こちらを書かないと、実行可能です。
宜しくお願いします。



121 名前:名前は開発中のものです。 mailto:sage [2014/07/01(火) 12:14:02.96 ID:wmLFBxvR.net]
天安門事件

122 名前:名前は開発中のものです。 mailto:sage [2014/07/01(火) 12:30:14.74 ID:pEsB09th.net]
そのyieldはどこに制御を返してるんだよ

123 名前:名前は開発中のものです。 mailto:sage [2014/07/01(火) 13:33:09.43 ID:SbtrGu4q.net]
>>116
// ==================
// コリジョン
// 機能:プレイヤーヒット時に会話UIメソッドをコールする
// ==================
void OnCollisionStay2D ( Collision2D col ){

 // 衝突相手がプレイヤー
 if(col.gameObject.tag == "Player")
 {
  if(GameObject.FindWithTag ("UI") == null &&
  PlayerFlag == 1) //PlayerFlagは操作プレイヤー側のフラグ。プレイヤーがボタンを押した場合にON
  {
    // 会話UI表示メソッド
    Kaiwa();
  }

 if(GameObject.FindWithTag ("UI") != null &&
  PlayerFlag == 0) //UI表示時にプレイヤーが再度ボタンを押した場合にクリア
  {
    // 会話UI消去メソッド
    KaiwaDel();
  }
 }
}

124 名前:名前は開発中のものです。 mailto:sage [2014/07/01(火) 13:51:18.75 ID:SbtrGu4q.net]
続きです

// =================================================
// 会話UI表示メソッド
// =================================================
void Kaiwa (){

  // 会話ウィンドウ表示
  Instantiate(Resources.Load("6.prefabs/UI_1"), windowPos, Quaternion.identity);
}

// =================================================
// 会話UI消去メソッド(開始)
// =================================================
void KaiwaDel (){

  // UIを非アクティブ
  GameObject.FindWithTag("UI").SetActive(false);

  // 消去メソッド本体コール
  StartCoroutine("DelMessage");
  }

IEnumerator DelMessage (){

  yield return null;
  Destroy(GameObject.FindWithTag("UI"));
}

というコードをコリジョンされる側に書いています(される側毎に別メッセージを表示するため)
何かおかしな箇所などありますでしょうか

125 名前:名前は開発中のものです。 mailto:sage [2014/07/01(火) 18:34:44.20 ID:6DDxUZVh.net]
つか・・・もうそろそみんなGitHub使おうよ

126 名前:名前は開発中のものです。 [2014/07/01(火) 19:36:17.39 ID:85UR2RLR.net]
>>120
"yield"は、このスクリプトが
当てはめられている、ゲームオブジェクトに流れている

127 名前:モーション
”if”部分の”motion_00”
を2秒待って、次のモーションを流したいと考えています

まだ勉強初めたばかりで、上手く伝えられず申し訳ないです。
また"yield"を使わないでも、制御できるなら、
その手法も教えていただけるとありがたいです。
[]
[ここ壊れてます]

128 名前:名前は開発中のものです。 mailto:sage [2014/07/01(火) 19:37:02.27 ID:nHreHfmg.net]
>>122
そのコードだけ見てる分には原因がつかめないね。
エラーが起きたときのスタックトレース(コンソールでエラーをクリックして表示される詳細)も付けてくれると少しは見えてくるかもしれない。

129 名前:名前は開発中のものです。 mailto:sage [2014/07/01(火) 19:37:45.45 ID:nHreHfmg.net]
>>124
void Updateの中でyieldしちゃだめじゃないのかな

130 名前:名前は開発中のものです。 mailto:sage [2014/07/01(火) 19:53:51.32 ID:SbtrGu4q.net]
>>125
レスありがとうございます。こちらになります。
i.imgur.com/TPLQJEH.png

もしかしてコードの問題ではなく、NGUIで構成したUIオブジェクトの作り方に
問題があるんでしょうか
正直、一つのサイトだけでは意味不明だったので色んなサイトを参考にして
つぎはぎのような感じで作ったので・・・

UI_1:子を含めた全ての管理(詳細は理解できていません)
Camera:UIのみを映すカメラ(画面に対する位置はこれで決める?)
Sprite:UIの背景画像オブジェクト(画面に対するUI本体の大きさとかはここで決める?)
Label:UIに表示する文字であるフォントオブジェクト(フォントの種類や大きさはここで決める)

という認識で作りました。



131 名前:名前は開発中のものです。 mailto:sage [2014/07/01(火) 19:59:02.35 ID:ld0xYEoC.net]
>>126
多分これ
例えばhanteiって関数を作って、update内を移植
でupdate内でhanteiを実行する

132 名前:名前は開発中のものです。 [2014/07/01(火) 22:52:30.64 ID:OEeCJUKWv]
>>128
アドバイスありがとうございます。
ちなみに、2秒後に("motion_00")を再生させるには、
具体的にはどのように関数を入れればよいでしょうか。。。
宜しくお願いします。

var obj:GameObject;
var script:window_control;
function Start () {
if(!obj){
obj=GameObject.FindGameObjectWithTag("untagget");
}
script=obj.GetComponent("window_control");
}
function Update () {
if(script.open_switch==true){
animation.Play("motion_01");
}
else{
yield WaitForSeconds(2.0);
animation.Play("motion_00");
}
}

133 名前:名前は開発中のものです。 [2014/07/01(火) 22:38:10.43 ID:85UR2RLR.net]
>>128
アドバイスありがとうございます。
ちなみに、2秒後に("motion_00")を再生させるには、
具体的にはどのように関数を入れればよいでしょうか。。。
宜しくお願いします。

var obj:GameObject;
var script:window_control;
function Start () {
if(!obj){
obj=GameObject.FindGameObjectWithTag("untagget");
}
script=obj.GetComponent("window_control");
}
function Update () {
if(script.open_switch==true){
animation.Play("motion_01");
}
else{
yield WaitForSeconds(2.0);
animation.Play("motion_00");
}
}

134 名前:名前は開発中のものです。 [2014/07/02(水) 00:36:45.57 ID:hSzZV3yyk]
unityでFPSを作っているものです。
ネットで見つけたサンプルのスクリプトを改良して、
以下のような弾を発射するスクリプトを書いたのですが、
インスタンス化をする場所の、座標の指定をどのようにして行うのかわかりません。
どなたかご教授していただけませんか?
#pragma strict
var bulletPrefab:GameObject;
var kankaku:float;
var shotSE : AudioClip;
var startTime:float;
var owaruTime:float;
var zikan:float;
var initialVelocity:float;
function start () {
owaruTime = Time.time;}
function Update () {
startTime = Time.time;
zikan = startTime - owaruTime;
if(zikan>kankaku)
if(Input.GetButton("Fire1")){

audio.PlayOneShot(shotSE);


var bullet:GameObject=Instantiate(bulletPrefab,transform.position,transform.rotation);

var direction:Vector3=transform.forward;
bullet.rigidbody.velocity=direction*initialVelocity;

owaruTime = Time.time;}
}

135 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 00:39:34.86 ID:QoBd/2mX.net]
>>130
具体的に言うとアセットを買えばいいと思うよ

136 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 00:47:38.76 ID:pKyuPS5V.net]
どうやったら2秒後に特定の処理を走らせるか なんて
誰が書いても大して変わらないし初心者には良い練習問題だと思うけどな

137 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 01:17:15.93 ID:N3YXxu3x.net]
>>130
この辺とかは参考になると思う
ttp://gamesonytablet.blogspot.jp/2012/12/unity.html

とりあえずコピペすれば動くコードよこせとかやってちゃ
進歩はない。

138 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 01:37:55.46 ID:wjodTEe/.net]
>>130
function Update () {

  if(script.open_switch==true)
  {
    animation.Play("motion_01");
  }
  else
  {
    yield StartCoroutine("Wait");
  }
}

function Wait () {

  yield WaitForSeconds(2.0);
  animation.Play("motion_00");
}

これでいけるのでは?
私も上で質問しまくってる初心者ですしCSで書いてるので
保証できませんが今コンパイルしたらエラーは出ませんでした。
yield StartCoroutine("Wait");はWait();でもいいのかもしれません
JSはStartCoroutineでコールしなくてもいいような記述がありましたので

139 名前:名前は開発中のものです。 [2014/07/02(水) 01:45:44.05 ID:+FRMTuKVe]
>>134
実はそちらのページも見ていて、
"Invoke"を利用して書いてみたのですが、
動きませんでした。
下記の形だと"else"の場合も2秒後になってしまいます。。。


var obj:GameObject;
var script:window_control;

function Start () {
if(!obj){
obj=GameObject.FindGameObjectWithTag("untagget");
}
script=obj.GetComponent("window_control");
//2秒後にモーションを再生
Invoke("Motiontimer", 2);
}

function Motiontimer () {
if(script.open_switch==true){
animation.Play("motion_01");
// }
}
else{
animation.Play("motion_00");
}
}

140 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 01:39:58.83 ID:N3YXxu3x.net]
それでも多分動くけど延々コルーチン呼び出すよねw



141 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 01:44:47.69 ID:wjodTEe/.net]
script.open_switchをtrueにしなければそうなりますが
恐らく判定を省略しているのでは?
私も全部は行数オーバーで1回でレスできないので略す事が多いので・・・

142 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 02:03:19.53 ID:N3YXxu3x.net]
でもscript.open_switchをtrueに戻しちゃうと即
animation.Play("motion01");
が効いてmotion00は1フレームだけしか再生されなからな〜。

まぁきっと色々省略してるんだよなw

143 名前:名前は開発中のものです。 [2014/07/02(水) 02:25:46.30 ID:+FRMTuKVe]
>>136
アドバイスありがとうございます。
下記のような形で書いてみましたが、
"motion01"が再生されないですね。。。
自分でも調べてみます。
また、"motion00"はもともと静止モーションなので
1F再生でも大丈夫です。

var obj:GameObject;
var script:window_control;

function Start () {
if(!obj){
obj=GameObject.FindGameObjectWithTag("untagget");
}
script=obj.GetComponent("window_control");
}

function Update () {
if(script.open_switch==true){
animation.Play("motion_01");
}
else{
yield StartCoroutine("Wait");
}
}

function Wait () {
yield WaitForSeconds(2.0);
animation.Play("motion_00");
}

144 名前:名前は開発中のものです。 [2014/07/02(水) 02:33:39.23 ID:+FRMTuKVe]
>>135
140です。
実行自体は出来ますが、
"Script error (panel_control): Update() can not be a coroutine."
コールーチン出来ないと出てしまいます。

145 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 04:51:39.34 ID:uZr6i5PP.net]
C#とjsどっちで書いたらいいんよ
差はあるんか?

146 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 05:08:09.00 ID:QoBd/2mX.net]
>>142
アセットを購入すると差がなくなったりすると思います

147 名前:名前は開発中のものです。 [2014/07/02(水) 05:09:48.86 ID:VPrZ3A9M.net]
まあC#だろうな

148 名前:名前は開発中のものです。 [2014/07/02(水) 05:55:10.24 ID:+FRMTuKVe]
140です。
コルーチンというものを、
一通り読ましていただき、
下記のように記入し無事解決しました。
アドバイスを色々いただき、ありがとうございます!

function Update () {

if(script.open_switch==true){
StartCoroutine("Wait");
}
else {
animation.Play("motion_00");
}
}

function Wait(){
yield WaitForSeconds(2.0);
animation.Play("motion_01");
}

149 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 07:24:57.54 ID:Q9Mkocfr.net]
処理速度の差はないという話は何度か出た
あとこのての話は、回答者の自分が好きな言語を勧めてくる展開になるので決着はない。

Booこそ至高。

150 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 08:06:04.92 ID:EWc2yUWa.net]
黄色い本にはUnityはJスクが一番効率が良くなるように作られてるとか書いてあったな
俺は単に読み慣れてるからC#



151 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 13:08:50.30 ID:uZr6i5PP.net]
C#で攻めるぜありがとう

152 名前:名前は開発中のものです。 [2014/07/02(水) 16:06:45.90 ID:hSzZV3yyk]
すいません・・・
>>131です。
書き忘れていましたが言語はjavascriptです。
おそらく↓の行を変えればいいのだろうというのは分かるのですが、
どのサイトを見ても具体的に解説してくれている場所がありませんでした。
var bullet:GameObject=Instantiate(bulletPrefab,transform.position,transform.rotation);

153 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 18:21:25.12 ID:lJtkd36h.net]
javaスクリプトじゃ結局やりきれないしな
c#がいいよ

154 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 19:49:19.17 ID:ASPst2OS.net]
C#はいちいちクラス書かないとだめだから糞

嘘 jsのほうが簡単だと思ってjsから始めただけです

155 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 20:16:41.09 ID:zCy25au/.net]
javascriptで出来ないことってあるのか?

もし無いならjsで始めちゃったしそのまま行きたいんだが・・・・

156 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 20:35:37.36 ID:QlXU2+TL.net]
俺もパッと見シンプルなJSで始めちゃって今更移ろうとしても違和感が
GetComponent<type>()の<>てなんだよ・・・いやわかるけど、JSに慣れてると納得いかんことが多くて困る
C#のが機能が多いらしいけどインターフェースの継承とか自分は使わんしなあ
ほんと、どっちがいいかは人によると思う

157 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 20:40:01.71 ID:zLf1ED1q.net]
無能の言い訳じゃねぇかw

158 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 20:45:09.76 ID:JKcw5LB+.net]
>>152
できない事はない
MonoBehaviourからのデフォルト継承以外にも一応独自クラスから継承もできる(class宣言いるけど)
ただC#のコードと混ざるような事をするときにコンパイル順序の問題で困る事がある(C#のクラスにJavascriptのクラスを保持したり継承したりするとき)

159 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 20:50:41.98 ID:zojBDLQs.net]
javascriptでもある程度慣れればC#は推測で読めるようになってくると思います。

確かにGetcomponentの<>に最初首を傾げてしまいましたが

それと、GameObject(3dモデル)を複数のスクリプトのStart内から、参照させたらその内の一つが存在しないcloneを参照しちゃったのですが、その原因が未だに分かりません……

tagで参照したのですが、参照させる数に制限はあるのでしょうか?

取り敢えず今は救済処置で、ゲームコントローラーで、モデルを生成して、そいつの名前を参照させたら旨く行きました。

160 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 20:53:52.24 ID:QlXU2+TL.net]
あれ、調べたらUnityのjsならinterface使えるらしい javaと同じimplementsで継承



161 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 21:49:19.58 ID:lJtkd36h.net]
>>155
どんどん、本来のjava scriptから外れていくから、
それなら最初からc#使った方がいいよ。
c#もなれれば面倒じゃないし難しい事は何も無いから、jsに逃げない方がいい

162 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 22:03:14.15 ID:JKcw5LB+.net]
>>158
俺に言われても

163 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 22:05:08.83 ID:lJtkd36h.net]
>>159
できない事はないって言ったのおまえじゃん
無責任に最初だけ優しい言語覚えてもしょーがないから、c#覚えた方がいい。

そもそもc#は面倒でも難しくもないし、だったらいんちきjs使わずにc#使ったほうがいい

164 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 22:10:36.25 ID:JKcw5LB+.net]
>>160
jsに逃げるとか俺に言われてもこまるじゃんよー
実際できないこたぁねぇんだし。

自前でC#のクラス書くようになったり、C#コード持ち込むならコンパイル順序で困る事になるとはちゃんと書いたぢゃんよ。

165 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 22:43:07.29 ID:uZr6i5PP.net]
プログラミング本のおすすめ
C#の絵本の方がやさしくてソッチのほうがいいと思う

166 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 22:43:56.08 ID:eDSrZ3VE.net]
https://store-jp.unity3d.com/
このページのiOS ProやAndroid Proって何なんですか?
これがないとモバイル向けのビルドができない…わけじゃないですよね?

167 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 22:47:05.39 ID:N3YXxu3x.net]
Proの機能を使わなければできる。

168 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 22:57:16.71 ID:zCy25au/.net]
なるほど。
後々のことも考えてC#やるかな・・・・

www.amazon.co.jp/dp/4798040479
今これ見つけたんだけど、もっとお勧めの本ってある?

169 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 22:59:22.34 ID:eDSrZ3VE.net]
最適化とか書いてあるので初心者には関係なさそうですね
ありがとうございました

170 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 23:05:23.81 ID:JKcw5LB+.net]
>>165
C#覚えたいならUnityでの製作とは遠回りになるけどMicroSoftのVisualStudio使った開発の本読むのおすすめ。
プログラムができてC#固有の部分だけを知りたいのならMSの言語仕様書関係の黄表紙の高い本一通り通読しておくと良い。
プログラミング自体が初心者ならまず解る言語から手を付けるのが良いけど、UnityはC#,JS(クラスベースでWebのプロトタイプベースでは無い),Python(BOO)しかないからなぁ
なんだかんだでUnityの事を知る前にプログラミングの素養が必要なのでちょっと遠回りするのをおすすめするしか。



171 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 23:08:16.43 ID:uZr6i5PP.net]
結局何を使おうがプログラミング能力が必要なんですよ

172 名前:名前は開発中のものです。 mailto:sage [2014/07/02(水) 23:18:18.40 ID:Q9Mkocfr.net]
まとめるとJSで困る事って何?

173 名前:名前は開発中のものです。 [2014/07/02(水) 23:19:13.85 ID:VPrZ3A9M.net]
プロパティとかコルーチンとかいろいろとたいへんな言語だからなあ

174 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 00:49:54.68 ID:ZCqb1W0E.net]
>>166
最適化こそ、初心者向きだと思うわけです。
適当にコード書いても、最適化でそこそこ処理が速くなるんだから。

175 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 00:53:41.02 ID:ZCqb1W0E.net]
>>169
> まとめるとJSで困る事って何?

Unityの変態JSをマスターして、「ぼくJSできます!」っていうと恥をかくかもしれない。

というか、独自言語すぎて、その知識が使い回せないのが欠点かと。
せっかく覚えた知識を他で生かせないのは悲しいぞ。

176 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 01:20:36.92 ID:barvXINQ.net]
ぼく jsとできてます*^-^*

177 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 01:24:11.36 ID:NvXSP48Q.net]
アセットを買ったら言語に悩みませんよ

178 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 01:41:35.35 ID:4afSdlgg.net]
C#だと.net系のコード資産やライブラリを流用出来るのも利点かな
NPOIとEditor拡張でExcel読み込みとか捗った。C#の資産って結構なんでもありな感じに物が揃ってて素敵

UnityScriptでもコンパイル順序とか気を付ければ使えるようだけど、結局ライブラリのソースコード読むことになると手間
巣のJavaScriptの資産を使うには手直しが多いし、ブラウザ言語として伸びたものだけにUnity上で旨味を感じられるものもないし

179 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 01:59:00.18 ID:hF02YIgz.net]
3Dマリオ風ゲーム作りたいだけの俺には分かり易いjsで十分
クラスすら不要

180 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 01:59:47.86 ID:BXVgkkU+.net]
なんかC#信者がウッザイんですケドー



181 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 02:11:14.41 ID:Qm05RdKY.net]
unityに限ればmonoでc#言語が基本になってるから、c#がいいかもしれないね

182 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 06:26:02.13 ID:Y+BAfGHD.net]
というよりずっと初心者のままでいるつもりなのは流石に笑えるw
何年経ってもうだつが上がらない人って、最初から言い訳ばっかりだよな

183 名前:名前は開発中のものです。 [2014/07/03(木) 08:10:17.15 ID:JsOF4d9mI]
Collision DetectionをContinuousにしていてもオブジェクトに衝突せずに貫通することがあるのは何故でしょうか。

184 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 07:31:08.63 ID:hF02YIgz.net]
使う言語でゲームの質も決まったらいいのにな

185 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 07:34:33.20 ID:wlt3xY7j.net]
ここまで見るとC#だと他からのコードコピペで動くから便利! と言う事でOKでしょうか?

186 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 08:13:16.04 ID:bmzuMbOZ.net]
blogs.msdn.com/b/somasegar/archive/

187 名前:2014/07/02/microsoft-acquires-syntaxtree-creator-of-unityvs-plugin-for-visual-studio.aspx

UnityVSの開発元をマイクロソフトが買収
無料になるかもしれん
VSがPRO以上必要だけどね
[]
[ここ壊れてます]

188 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 12:45:44.36 ID:uH9OJX93.net]
>>167
なるほど、まぁそれもそうか。
ありがとう。その本使って一から頑張るわ

189 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 13:52:04.89 ID:ymCV/AeW.net]
C# も JavaScript も両方読み書きできるおれには関係ないな(キリッ

190 名前:名前は開発中のものです。 [2014/07/03(木) 14:03:29.65 ID:hZA6WLl6.net]
すみません、質問なのですが
透明要素のないシェーダーを使ったマテリアルを透明にするには
シェーダーの中に透明にする要素を追加するしかないのでしょうか?
コンポーネントにそのような機能も見当たらないので困っています…



191 名前:名前は開発中のものです。 mailto:sage [2014/07/03(木) 14:04:16.46 ID:wUj4bRGx.net]
UnityScriptはJavaScriptを知ってる人には、出来るはずのことが出来なくて辛い

192 名前:名前は開発中のものです。 [2014/07/03(木) 14:37:46.46 ID:PM9QpSUP.net]
>透明要素のないシェーダーを使ったマテリアルを透明にするには
>シェーダーの中に透明にする要素を追加するしかないのでしょうか?
基本的にはシェーダーをいじるのが一番いい。

Pro版ならばカメラで映した内容をレンダーテクスチャに描画して、
レンダーテクスチャを透過可能なシェーダーを指定したマテリアルに設定して、
GUIテクスチャなり平明ポリゴンなりに貼って透過するという手もあるけれど、
コスパ最悪だしProじゃなきゃだめだしおすすめしない。

多分他に方法があってもシェーダー書き換えるのが一番お得。
シェーダーの記法まで覚えると面倒だから、
Unityプリセットシェーダーが配布されてるとこ見つけて、
透過できるシェーダの中身見て、それっぽいとこコピペすれば良いよ多分






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<345KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef