[過去ログ] 【3Dゲームエンジン】Unity質問スレッド29 [無断転載禁止]©2ch.net (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
299: 名前は開発中のものです。 [] 2017/06/13(火) 18:28:57.71 ID:K7hS8obO(3/3) AAS
 次スレからワッチョイ入れるか 
300: 名前は開発中のものです。 [sage] 2017/06/13(火) 22:18:53.18 ID:zSkxxv6I(1) AAS
 今から入れろよボケ 
301: 276 [] 2017/06/13(火) 22:52:11.91 ID:AdsyBo0X(2/4) AAS
 >>277元から平面ポリゴンでやってるのですが、トリガーにした時点で実際にポリゴンのない余白部分までもがあたり判定の範囲に含まれてしまいます。 
 川ポリゴンをterrainで作った溝の中に埋め込んでポリゴンのない部分にはプレイヤーが入れないようにするなどで 
 対処するしかないのかなぁ 
302(1): 273 [] 2017/06/13(火) 22:53:59.21 ID:AdsyBo0X(3/4) AAS
 レス版間違えたので再投稿ですw汚しちゃってすいません 
  
 >>274元から平面ポリゴンでやってるのですが、トリガーにした時点で実際にポリゴンのない余白部分までもがあたり判定の範囲に含まれてしまいます。 
 川ポリゴンをterrainで作った溝の中に埋め込んでポリゴンのない部分にはプレイヤーが入れないようにするなどで 
 対処するしかないのかなぁ 
303(1): 名前は開発中のものです。 [sage] 2017/06/13(火) 22:58:59.23 ID:zfyIvA2/(2/3) AAS
 >>302 
 MeshColliderのConvexプロパティはどうなってます? 
 true? 
304(1): 名前は開発中のものです。 [] 2017/06/13(火) 23:26:13.82 ID:AdsyBo0X(4/4) AAS
 >>303 
 trueです。 
 というか、MeshColliderのisTrigerをtrueにしたいならConvexをtrueにしないと 
 isTrigerのチェックボックスが解放されませんよね 
305(1): 名前は開発中のものです。 [sage] 2017/06/13(火) 23:52:35.63 ID:zfyIvA2/(3/3) AAS
 >>304 
 あ、そうなんだ 
 MeshColliderの経験少ないから知らなかった 
 軽く調べたらMeshCollider側で制約を回避するのは難しそうだね 
 川のMeshCollider側のIsTrigger&Convexはfalseにして、プレイヤー側のColliderで工夫したほうがいいのかも 
 プレイヤー側のColliderは簡単な形なのかな? 
 プレイヤー側で工夫したほうが楽チンな気がする 
 ただの勘だけど 
306(2): 名前は開発中のものです。 [] 2017/06/14(水) 00:07:37.13 ID:KLD2ljQF(1) AAS
 >>305 
 アドバイスありがとうございます 
 色々試してみます 
  
 実際にunity使ってみると仕様上かゆいところに手が届かないというか、もどかしい部分がいくつか出てきますね。 
 パフォーマンス優先してこういう仕様になってるんだろうけど 
307: 名前は開発中のものです。 [sage] 2017/06/14(水) 01:20:45.16 ID:aj4pCFI6(1) AAS
 MeshColliderでConvex有効にしないとOnTriggerEnter取れないのは5.xから 
 physicsはNVIDIA PhysX SDKに丸投げだから、PhysX SDKのver違いによる 
 仕様変更の可能性はある 
  
 PhysX SDKは開発者泣かせなSDKだからPhysXが原因でも不思議はないかなと思う 
308(1): 名前は開発中のものです。 [sage] 2017/06/14(水) 02:33:52.50 ID:1sRsdZ3W(1) AAS
 >>306 
 こ、これは乙じゃなくてConvexなんだからね 
 画像リンク
 
 
  
 DCCソフト側でキューブを並べておいたらConvex入れても変形はしないみたい 
 Unityでやるよりちょっとマシ程度だけど、手間はどっちでやっても大差ないかもね 
309: 名前は開発中のものです。 [sage] 2017/06/14(水) 02:39:49.10 ID:26YMgC2v(1/2) AAS
 >>306 
 もう、アセットを買えばいいと思いますよ、そのレベルじゃ 
310: 名前は開発中のものです。 [sage] 2017/06/14(水) 03:32:22.45 ID:lWyAf2s4(1) AAS
 そのもどかしさわかるわー 
 MeshCollider + Rigidbody の組み合わせも CoverX=true強制になっててふざけんな状態だし 
 選択肢として可能にしておいてほしいもんだ 
 処理落ちどうのはこっちでカバーするし 
311: 名前は開発中のものです。 [] 2017/06/14(水) 03:34:49.78 ID:+ijmGWca(1) AAS
 >>308 
 それだと変形しないんですね 
  
 自分でアセットストアから小物(野菜とか)のメッシュデータ落としてconvexつけてみたんですが、やはり川の時と同じように変形してしまいます。 
 何が違うのかな... 
312(3): 名前は開発中のものです。 [] 2017/06/14(水) 07:15:07.65 ID:haEDSL54(1/2) AAS
 public static class GameObjectExtensions 
 { 
 public static void transformM(this Transform t){ 処理 } 
 } 
 void Start () { 
         gameObject.transformM (gameObject.GetComponent<Transform>()); 
 } 
  
 このコードだとエラーになるんですが、Transform型の引数ってどうやって渡せばいいんですか? 
313(1): 名前は開発中のものです。 [sage] 2017/06/14(水) 09:22:06.14 ID:B7+VHkXF(1) AAS
 >>312 
 スクリプトが割り当てられたゲームオブジェクトなら 
 transformで取得できるよ 
 関係ないゲームオブジェクトなら 
 GameObject.Find("ゲームオブジェクト名").transform 
  
 あとMonoBehaviourを継承してないとStart()は呼び出されない。 
  
 public class Test : MonoBehaviour { 
  void Start () { 
   ChangeTransName(transform); 
   StaticTest.ChangeTransName(transform); 
  } 
  
  void ChangeTransName(Transform t) { 
   t.name = "ttt"; 
  } 
 } 
  
 public static class StaticTest { 
  public static void ChangeTransName(Transform t) { 
   t.name = "test"; 
  } 
 } 
314: 名前は開発中のものです。 [sage] 2017/06/14(水) 10:05:33.54 ID:26YMgC2v(2/2) AAS
 >>312 
 アセットを買えばいいと思いますが 
315: 名前は開発中のものです。 [] 2017/06/14(水) 13:44:33.17 ID:haEDSL54(2/2) AAS
 >>313 
 出来ました。ありがとうございます。 
316: 名前は開発中のものです。 [sage] 2017/06/14(水) 14:21:39.03 ID:ip2y4rWT(1) AAS
 >>312 
 拡張メソッドの話ではなかったみたいだが一応拡張メソッドの話を書いておこう 
 拡張メソッドのthis修飾子が付いた第1引数は呼び出し元のオブジェクトのように指定する 
 これはコンパイル時にstaticメソッドの呼び出しとして展開される 
  
 >>312のコードなら呼び出しは以下が正しい。 
 gameObject.transform.transformM (); 
  
 ただまあGameObjectExtensionsという名前に反してTransformを拡張してるとかツッコミどころは多い 
317: 名前は開発中のものです。 [] 2017/06/14(水) 19:17:17.67 ID:7PoPt8+e(1/3) AAS
 UNITYってC#とJavaScriptで記述するって言われたけど 
 JavaScriptどんな時必要になるの? 
318(1): 名前は開発中のものです。 [] 2017/06/14(水) 19:19:42.12 ID:S/j3wJfD(1) AAS
 C#分からないやつが使うとき・・・・。 
319: 名前は開発中のものです。 [] 2017/06/14(水) 19:26:51.44 ID:7PoPt8+e(2/3) AAS
 >>318 
 じゃあC#だけでいいのか 
320: 名無し@キムチ [] 2017/06/14(水) 20:16:58.67 ID:1f23pPXc(1/6) AAS
 本日は晴天なり 
321: 名無し@キムチ [] 2017/06/14(水) 20:20:50.84 ID:1f23pPXc(2/6) AAS
 あ、書き込めました。 
 しばらく書き込めない期間が続いていたので、ちょっとテストしてみました。ごめんなさい。 
 えっと初歩的な質問ですが、モノビヘイビアのスタート関数には行数制限があるのですか? 
 何か下のほうの行に書くと、その処理は無視されるみたいで、コピペして上のほうに持ってくるとちゃんと処理してくれるのですか? 
 これはいかなる理由に基づく現象なのでしょうか? 
322(4): 名無し@キムチ [] 2017/06/14(水) 20:41:49.68 ID:1f23pPXc(3/6) AAS
 これが主人公につけた当方のスタート関数です。 
  
 // Use this for initialization 
     void Start() 
     { 
         ・・・長すぎるため省略・・・ 
         MainCam = GameObject.Find("MainCamera(2)"); 
         SubCam = GameObject.Find("Camera(2)"); 
          
         animator1 = GetComponent<Animator>(); 
         audioSources = GetComponents<AudioSource>(); 
         sound01 = audioSources[0]; 
         sound02 = audioSources[1]; 
         sound03 = audioSources[2]; 
         sound04 = audioSources[3]; 
         sound05 = audioSources[4]; 
         //sound06 = audioSources[5]; 
         particle = GetComponent<ParticleSystem>(); 
         MainCam.SetActive(false); 
         SubCam.SetActive(true); 
         InfoBox.SetActive(false); 
         ・・・長すぎるため省略・・・    } 
  
 この関数 InfoBox.SetActive(false);のところまでしか処理されません。 
 それはsound06 = audioSources[5];を消しているからで、 
 この//sound06 = audioSources[5];をつけるとInfoBox.SetActive(false);も処理されなくなってしまいます。 
 行数にすると24行目までしか処理されないようです。 
 Unityの規約にスタート関数は24行までという規約でもあるのですか? 
 当方理由がわからず途方にくれています。 
 よろしくお願いします。 
323(1): 名前は開発中のものです。 [sage] 2017/06/14(水) 20:52:09.23 ID:akYjCxEY(1) AAS
 >>322 
 24行目までしか実行されないというのはどうやって確かめました? 
 デバッガでステップ実行? 
上下前次1-新書関写板覧索設栞歴
あと 679 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.035s