[過去ログ]
【3Dゲームエンジン】Unity質問スレッド32 (1002レス)
【3Dゲームエンジン】Unity質問スレッド32 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
1: 名無し@キムチ [] 2017/10/30(月) 05:05:35.00 ID:xnHTCaF3 フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。 プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3、PlayStation 4、PS Vita他 次スレは>>950以降にできるだけ早く(できれば回答者が回答した後にでも余裕を持って)建てて下さい。 ■Unity 2ch Wiki(まとめ、過去ログ、リンク集) http://www24.atwiki.jp/unity2ch/ ●リンク ・Unity(日本公式サイト) http://unity3d.com/jp ・
マニュアル http://docs.unity3d.com/ja/current/Manual/index.html ・チュートリアル http://unity3d.com/jp/learn/tutorials ・スクリプトリファレンス http://docs.unity3d.com/ja/current/ScriptReference/index.html ・FAQ http://unity3d.com/jp/unity/faq ・MSDN http://msdn.microsoft.com/ja-jp/ms348103←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。 前スレ 【3Dゲームエンジン】Unity質問スレッド31 https://mevius.5ch.net/test/read.cgi/gamedev/1504366121/ http://mevius.5ch.net/test/read.cgi/g
amedev/1509307535/1
922: 名前は開発中のものです。 [sage] 2017/12/17(日) 17:18:37.08 ID:CBpPFu99 回転するステージを作ってます ステージにspawn位置を子オブジェクトとして設定して、そこから敵を出現させようと思ってるんですが spawn位置がステージに追従して回転せず、固定されたままになってしまいます オブジェクトをそのままステージの子にすると回転に追従できるんですが、 Spawnにスクリプトを設定してそこからオブジェクトを選んでくっつけるとどうもうまく行かず… なにか解決方法はありませんか? http://mevius.5ch.net/test/read.cgi/gamedev/15093
07535/922
923: 名前は開発中のものです。 [sage] 2017/12/17(日) 17:19:26.92 ID:CBpPFu99 >>909 遅レスすいません、詳しくありがとうございます。試してみます。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/923
924: 名前は開発中のものです。 [sage] 2017/12/17(日) 17:21:12.36 ID:anx13erV >>921 すみません自己解決しました。 edge collider2dを使用するか、box collider2dのedge radiusを0.001に設定することで、 タイルとの衝突(及びOnCollider系イベントの誤発生)はなくなりました。 参考:ttps://forum.unity.com/threads/rigidbody-getting-stuck-on-tiled-wall.220861/ ありがとうございました。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/924
925: 名前は開発中のものです。 [sage] 2017/12/17(日) 17:28:31.76 ID:0i7oG1oj >>885 どういう原理なんだこれ???? http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/925
926: 名前は開発中のものです。 [sage] 2017/12/17(日) 20:19:28.23 ID:Vn9M2BoC position とかと同じように代入できるんだね。リードオンリーだとばかり思ってた http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/926
927: 名前は開発中のものです。 [sage] 2017/12/17(日) 20:36:30.69 ID:MPKxHq38 Unityの人達がどれほど「技術の民主化(デモクラタイズ)」とい うものに心を払っているかは、多分外部の人達には想像できな いと思います。この一点においいて、Unityは、世界中に沢山の ファンを生み出し、そしてエバンジェリズムを行うチームのメンバ ーも国境や政治制度を越えてひとつになれるのです。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/927
928: 名前は開発中のものです。 [sage] 2017/12/17(日) 20:43:06.69 ID:ttDBRzWh その思想は非常に危険 それは即ち低賃金労働者の搾取がゲーム業界においても世界的に起こるようになるということと同義だからだ http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/928
929: 名前は開発中のものです。 [sage] 2017/12/17(日) 21:44:56.77 ID:FNxE37S9 キケンかどうかは立ち位置によるし、資本主義では当たり前の話。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/929
930: 名前は開発中のものです。 [sage] 2017/12/17(日) 22:07:45.00 ID:K2bL8mhm >>925 transform軸の座標は、自分のpositionをVector3.zeroとした時の相対座標で設定されている 自分のpositionが原点の場合は、transform軸の座標に目標のpositionを入れれば、 それが勝手に単位ベクトル化されて、方向ベクトルになるみたい でも、自分のpositionが原点でない場合は、 transform軸の座標に「target - trans.position」で自分の座標を引いておく必要がある だから、「target」だけを入れれば良いLookAtの方が簡単にできる(forward軸限定だけ
ど) あと、LookAtは第2引数で、up軸の方向も指定できる (forward軸をtagetに向けた状態で、可能な限りup軸を指定方向に合わせてくれる) http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/930
931: 名前は開発中のものです。 [sage] 2017/12/17(日) 22:12:13.99 ID:K2bL8mhm >>922 Instantiateで生成する時に、ちゃんと親を指定してる?? 動的に生成したオブジェクトは、ステージとの親子関係が切れてない? Instantiate(Object, Position, Parent) http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/931
932: 名前は開発中のものです。 [sage] 2017/12/17(日) 22:14:47.35 ID:K2bL8mhm >>921 >>924 edge radiusなんて便利な機能が付いて、 矩形の判定枠の角を丸められるようになったんだね いつも、足の前後に円形判定をおいたり、 カプセルを横にして置いて、地形判定専用にしてたわ http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/932
933: 名前は開発中のものです。 [sage] 2017/12/17(日) 22:57:38.86 ID:SNj3ir+c ダメージを受ける毎に敵オブジェクトとかモデルが足元から徐々に(段階的に)赤くなって行くっていうのって、どういう原理で出来るんですか? 色々考えたんですけど思い付かなくて http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/933
934: 名前は開発中のものです。 [sage] 2017/12/17(日) 23:29:09.88 ID:tMMchmwv けーすばいけーす http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/934
935: 名前は開発中のものです。 [] 2017/12/18(月) 04:52:21.33 ID:B3OUJM41 歩くアニメーションがあってそれは実行すると前進するのですが これをその場で足踏みだけさせるように簡単に変更はできますか? http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/935
936: 名前は開発中のものです。 [sage] 2017/12/18(月) 08:05:53.43 ID:vc4Z0s4x アニメーション再生するだけで前に動くことは無い 別のスクリプトでオブジェクトを進行方向に動かしているはず http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/936
937: 名前は開発中のものです。 [sage] 2017/12/18(月) 08:48:59.47 ID:WoyHjqZj >>877 position等を直接いじったらそれはワープしてるのと同じだからね 移動や回転は事象に応じて物理エンジンがするものと考えれば、いろいろ扱いやすくなると思うよ http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/937
938: 名前は開発中のものです。 [sage] 2017/12/18(月) 09:27:02.70 ID:mba+3hiD >>935 apply root motion http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/938
939: 名前は開発中のものです。 [sage] 2017/12/18(月) 10:23:29.76 ID:B3OUJM41 >>938 apply root motionを指定しても動いてるんですよね。 >>936 歩く以外にもジャンプのアニメーションも上に飛び上がらないようにしたいとかです。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/939
940: 名前は開発中のものです。 [sage] 2017/12/18(月) 10:32:53.07 ID:vc4Z0s4x >>939 モーション自体の中で位置が動いてるなら簡単に動かないようにするのは無理 アニメーション編集してルートのトランスフォーム移動のキーを全部削除するしかない http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/940
941: 名前は開発中のものです。 [sage] 2017/12/18(月) 10:40:39.28 ID:B3OUJM41 >>940 やっぱりそれしかないんですね。 自分で削除することにします。ありがとうございました。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/941
942: 名前は開発中のものです。 [sage] 2017/12/18(月) 12:00:11.97 ID:jBsoCflG LateUpdateでモーション適用後のトランスフォームを変更できる ルートのボーンにLateUpdateで位置をlocalPosition=0,0,0にするコンポを付ければいい。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/942
943: 名前は開発中のものです。 [sage] 2017/12/18(月) 12:43:15.93 ID:B3OUJM41 >>942 ありがとうございます。やってみます! http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/943
944: 名前は開発中のものです。 [sage] 2017/12/18(月) 13:36:58.58 ID:B3OUJM41 >>942 完璧に動作しました!ありがとうございました!! http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/944
945: 名前は開発中のものです。 [sage] 2017/12/18(月) 14:32:15.73 ID:B4iwR6Ld https://twitter.com/SpaceBackyard/status/898870157979811840 リンクすみません。 こういうカーソル位置?というか左右にしたら画面が切り替わるのってどうやれば出来るんでしょう? マスクみたいな感じですか? http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/945
946: 名無し@キムチ [] 2017/12/18(月) 19:51:23.56 ID:iM2CjGiv >>885や>>942は優良回答者ですね。 しったかのヘタレ回答者が多い中で、すごいです!!! http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/946
947: 名前は開発中のものです。 [sage] 2017/12/18(月) 20:19:13.70 ID:AjgZuUm6 >>946 貴方も回答者に成るんだよこれから。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/947
948: 名無し@キムチ [] 2017/12/18(月) 22:22:26.73 ID:iM2CjGiv >>947 ホントですね。頑張ります! http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/948
949: 名前は開発中のものです。 [sage] 2017/12/18(月) 22:24:40.54 ID:zA/nszQ4 好きなオッパイは何カップですか? http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/949
950: 名前は開発中のものです。 [sage] 2017/12/18(月) 22:39:17.53 ID:9Bga0q6S 越後製菓! http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/950
951: 名前は開発中のものです。 [sage] 2017/12/18(月) 23:04:07.96 ID:x75jC3YN 最近、質問-回答がちゃんとなされて、質問スレとして機能していて、ビックリ! ちょっと前なら、アセットで解決!で終了だったのに・・・ スレで出た有用なQ&Aは、誰かどこかにまとめてくれないかね〜 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/951
952: 名前は開発中のものです。 [sage] 2017/12/18(月) 23:11:37.88 ID:x75jC3YN 2DはLookAtが使えなくて今まで諦めてたけど、 まさかtransform.rightやtransform.upに直接代入して、 LookAtもどきができるとは、凄く役になったな〜 タイルチップで2D背景を作ってたけど、 左右移動時にタイルのつなぎ目で引っかかるから、 高さが同じタイルは、colliderを統合して、 高さが変わるところだけ、別colliderにしてたけど、 これからは、タイルチップ敷布でいけそうだな〜 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/952
953: 名前は開発中のものです。 [sage] 2017/12/19(火) 00:07:08.24 ID:4Od9SmbT ネトウヨ老害死ねばいいのに ゲ製コミュの印象悪くして皆の足引っ張りやがって 死ねよ不細工メタボ引き篭もりネトウヨ http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/953
954: 名前は開発中のものです。 [sage] 2017/12/19(火) 00:27:04.18 ID:MvhMRTwq まーた、ネトウヨキムチがコミュとか言っちゃって http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/954
955: 名前は開発中のものです。 [944] 2017/12/19(火) 03:06:23.03 ID:Ih0Nk694 一応言っておきますが>>946は自分じゃないですよ… 回答頂いた方には皆感謝してます。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/955
956: 955=944 [sage] 2017/12/19(火) 03:07:20.95 ID:Ih0Nk694 名前欄ということです。すみません。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/956
957: 名前は開発中のものです。 [sage] 2017/12/19(火) 07:37:16.79 ID:4Od9SmbT >>954 は?なんで俺が「キムチキムヨナ」連呼のネトウヨの最底辺メタボのゴミおっさんなんだよ?糖質が絡んでくるなや 「キムチキムヨナ」連呼のネトウヨの最底辺のゴミおっさんがどこで「コミュニティ」とか言ってやがるんだ? ゲ製コミュをネトウヨコミュニティと一緒にするなやカス共が >>955 「!」の使い方といい、文体といい、同じに見えるんだが? ネトウヨの最底辺のゴミおっさんが、わざわざ文体を真似てるってことか? http://mevius.5ch.net/
test/read.cgi/gamedev/1509307535/957
958: 名前は開発中のものです。 [sage] 2017/12/19(火) 09:35:09.05 ID:VZwsAqll なんか面倒な人に絡まれてるなぁ955 新スレ作るか。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/958
959: 名前は開発中のものです。 [sage] 2017/12/19(火) 09:36:44.16 ID:VZwsAqll 新スレビルド完了です... 【3Dゲームエンジン】Unity質問スレッド33 http://mevius.5ch.net/test/read.cgi/gamedev/1513643755/ http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/959
960: 名前は開発中のものです。 [sage] 2017/12/19(火) 10:04:53.30 ID:4Od9SmbT なぜ <準コテ「キムチ」で「キムヨナ」連呼> みたいなゴミを、素朴に「ゴミ」と言うことや ぱっと見で文体が同じに見えることを、素朴に「同じに見える」「一方が真似てる」と言うことが 面倒がられなければならないのか? 素朴な書き込みを面倒がり、ゴミ廃棄を面倒がる奴の方が、よっぽど面倒だぜ? http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/960
961: 名前は開発中のものです。 [sage] 2017/12/19(火) 10:13:49.21 ID:hldyKkrz unityにマップを作るtile機能ってあるけど一つのチップセットに対してBoxColliderとかの情報を付けるのってどうすればええんやろ http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/961
962: 名前は開発中のものです。 [sage] 2017/12/19(火) 12:04:43.40 ID:m7Eb2COO >>961 アセットをかうしか無いですよ! http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/962
963: 名前は開発中のものです。 [sage] 2017/12/19(火) 14:27:52.29 ID:SpU5jUlI >>950 正解 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/963
964: 名前は開発中のものです。 [sage] 2017/12/19(火) 15:16:13.61 ID:ZiJMGaxN キチガイがいると迷惑だから分類しないとね http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/964
965: 名前は開発中のものです。 [sage] 2017/12/19(火) 15:56:19.98 ID:O0snqTpx >>951 お前が幼稚園や保育園をお望みならそれでいいんじゃない? まともな小学生以上は自分でググって調べて解決してる そんな内容ばかりだ http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/965
966: 名前は開発中のものです。 [sage] 2017/12/19(火) 16:33:46.69 ID:4R8uUpaI アセットガイジはなんか売ってるんかなぁ… http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/966
967: 名前は開発中のものです。 [sage] 2017/12/19(火) 18:11:13.26 ID:OC9tHkfS >>952 むしろ2DでLookAtさせたいだけならオブジェクトAとBの角度を取って画像をRotateさせるだけでいいんじゃないん?w http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/967
968: 名前は開発中のものです。 [sage] 2017/12/19(火) 19:22:46.77 ID:Jz5wVrA6 >>967 そんな難しいことしたくないじゃん http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/968
969: 名前は開発中のものです。 [sage] 2017/12/19(火) 19:29:46.21 ID:oc7hao2D >>967 自分をオブジェクトA Aのposition = transform.position 目標をオブジェクトB Bのposition = target とした場合に、 transform.right = target.position - transform.position と同じ作用になるようにするには、 >>957の方法ではどうなる?? http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/969
970: 名前は開発中のものです。 [] 2017/12/19(火) 19:59:39.02 ID:IygWzju3 >>969 オブジェクト間の角度とる関数あるからしらべて http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/970
971: 名前は開発中のものです。 [sage] 2017/12/19(火) 20:25:38.60 ID:v4JsSdmj ベクトル間の角度を出す関数じゃなくて? ベクトル間の角度だと、原点を中心にした角度になるけど しかも、それで角度を出すと回転の向きがわからないから、 ベクトルの外積を求める必要もあるよね http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/971
972: 名前は開発中のものです。 [sage] 2017/12/19(火) 22:09:39.44 ID:v4JsSdmj >>967 自分でコードを出してみなよ〜 命題:オブジェクトAの向きを、オブジェクトBの方向へ向ける オブジェクトAの座標は任意(原点とは限らない) オブジェクトAの向きは任意(0度とは限らない) オブジェクトBの座標は任意(原点とは限らない) オブジェクトBの位置はVector3で「target」とする 2Dだから、forward軸をtargetへ向かせるLookAtは使用できない さて、969のコードを超える簡略化ができるのか?!どうか http://mevius.5ch.
net/test/read.cgi/gamedev/1509307535/972
973: 名前は開発中のものです。 [sage] 2017/12/19(火) 22:16:40.59 ID:m7Eb2COO アセットを購入すれば簡単簡単 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/973
974: 名前は開発中のものです。 [sage] 2017/12/19(火) 22:17:29.27 ID:v4JsSdmj そもそも角度って言っても、 それぞれのベクトルの偏角なのか、2つのベクトルのなす角なのか・・・ Rotate(0, 0, θ)で入れるには、 オブジェクトAからオブジェクトBへ向かうベクトルの偏角じゃないとダメだから、 オブジェクトAのベクトルとオブジェクトBのベクトルのなす角を求める Vector3.Angleを使っても、それじゃA→Bへの原点中心の公転角になっちゃうよ! rotationに入れるにはQuaternionである必要があるし、 オブジェクトAの最初の向きが0度じゃない場合
も考慮しないといけないし・・・ どう考えても面倒じゃない?? http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/974
975: 名前は開発中のものです。 [sage] 2017/12/19(火) 22:59:56.79 ID:v4JsSdmj アセットおじさんは、 なんていうアセットで、いくらで、どの機能を使うとできるのかも明記して欲しいね〜 「探せばあるかもよ」じゃね・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/975
976: 名前は開発中のものです。 [sage] 2017/12/20(水) 00:34:43.35 ID:TUVA4DF6 >>969 考えてみました。 Aに下記のスクリプトをセットします。 public class A : MonoBehaviour { GameObject obj; Vector3 target, position, direction; void Start () { obj = GameObject.Find ("B"); target = obj.transform.position; position = transform.position; direction = target - position; Invoke ("Rotate", 1.0f); } void Rotate(){ transform.right = direction; ←ここを置き換
えるコードです。 } } http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/976
977: 名前は開発中のものです。 [sage] 2017/12/20(水) 00:39:41.23 ID:TUVA4DF6 ?Quaternion.FromToRotationを使用する方法1 transform.rotation = Quaternion.FromToRotation (Vector3.right, direction); ?Quaternion.FromToRotationを使用する方法2 transform.rotation = transform.rotation * Quaternion.FromToRotation (transform.right, direction); ?Vector3.Angleを使用する方法1 transform.rotation = Quaternion.Euler(0, 0, Mathf.Sign(Vector3.Dot(Vector3.forward, Vector3.Cross(Vector3.right, direction))) *Vector3.Angle
(Vector3.right, direction)); ?Vector3.Angleを使用する方法2 transform.rotation = transform.rotation * Quaternion.Euler(0, 0, Mathf.Sign(Vector3.Dot(transform.forward, Vector3.Cross(transform.right, direction))) *Vector3.Angle(transform.right, direction)); http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/977
978: 名前は開発中のものです。 [sage] 2017/12/20(水) 00:44:36.57 ID:TUVA4DF6 ?Vector3.Angleを使用する方法3(Rotateを使用) transform.Rotate (0, 0, Mathf.Sign(Vector3.Dot(Vector3.forward, Vector3.Cross(transform.right, direction))) *Vector3.Angle(transform.right, direction)); ?Mathf.Atan2を使用する方法1(Rotateを使用) transform.Rotate (0, 0, Mathf.Atan2(direction.y, direction.x) * Mathf.Rad2Deg - transform.rotation.eulerAngles.z); ?Mathf.Atan2を使用する方法2 transform.rotation = Quaternion.AngleAxis
(Mathf.Atan2((direction.y, direction.x) * Mathf.Rad2Deg, Vector3.forward); うーん、どうやっても元よりも長いコードになってしまいます。 オブジェクトAの位置が原点だとか、オブジェクトAの向きが無回転だとか、 条件を付ければ、もう少し簡略化できますが・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/978
979: 名前は開発中のものです。 [sage] 2017/12/20(水) 01:00:49.24 ID:TUVA4DF6 Quaternion.FromToRotation(A, B)では、 回転方向を含めた回転状態を得られますが、 Vector3.Angle(A, B)では、 ベクトル間の角度しかわからず、向きがわかりません。 また、取得される角度は180度以下に限定されるため、 左向きに270度は、右向きに90度かもしれないということです。 回転方向は、Vector3.Cross(A, B)のZ成分が正か負かで判定します。 2Dでは、Mathf.Sign((Vector3.Cross(A, B)).z)でも良いのですが、 3Dでは、回転面がXY平面上とは限らないため、外
積ベクトルと 正の向きにしたい軸との内積をとってから符号判定した方が確実です。 Atan2関数は、戻り値がradのため、度に直す必要があります。 また、相対回転であるRotateを使用する場合は、 求めた偏角から、現在の向きの回転角を引いておく必要があります。 rotationはQuaternionのため、eulerAnglesでオイラー角に戻しておき、 Z軸回転成分だけを取り出して減算します。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/979
980: 名前は開発中のものです。 [sage] 2017/12/20(水) 08:42:36.26 ID:XTZUI7pU 969です >>976-979 詳しく解説ありがとうございました! やっぱり、角度から行こうとすると結構面倒ですね〜 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/980
981: 名前は開発中のものです。 [sage] 2017/12/20(水) 18:29:13.04 ID:XTZUI7pU 汎用性を考えると、Quaternion.FromToRotationは良さそうですね これは、あるベクトルを別のベクトルにする回転を返すわけだから、 自分の向きを、自分のベクトルから目標とするベクトルへ向ける回転にするわけですか・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/981
982: 名前は開発中のものです。 [sage] 2017/12/20(水) 22:49:28.74 ID:TUVA4DF6 >>980 テラシュールブログ http://tsubakit1.hateblo.jp/entry/2014/08/02/030919 ここに、Quaternion.FromToRotationの使い方がうまくまとまってました。 >>var diff = (target.position - transform.position ).normalized; >>transform.rotation = Quaternion.FromToRotation( Vector3.up, diff); このサイトでは、diffは正規化されているようですが、 基本的に内部で強制的に単位ベクトルになるようなので、 target.position - transform.po
sitioだけで大丈夫そうです。 なお、外積ベクトルを利用する場合は、大きさも影響してきますので、 方向ベクトルは単位ベクトルにしておいたほうが無難です。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/982
983: 名前は開発中のものです。 [sage] 2017/12/20(水) 22:56:36.28 ID:TUVA4DF6 なお、私の方法では、外積ベクトルとZ軸の内積をとっていますが、 最終的に符号のみを取り出しているので、大きさが影響しません。 Vector3.Reflect,Vector3.Project,Vector3.ProjectOnPlaneなど、 単位ベクトルに内積を乗算するタイプの関数では、 必ず正規化して単位ベクトルにしてから代入しないと、 計算結果が変わってきますので、注意が必要です。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/983
984: 名前は開発中のものです。 [sage] 2017/12/21(木) 12:35:15.03 ID:rQmWRShb /⌒ヽ く/・? ⌒ヽ すうがくのことわからない | 3 (∪ ̄] く、・? (∩ ̄]  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/984
985: 名前は開発中のものです。 [sage] 2017/12/21(木) 13:03:49.54 ID:nBeZymLn 算数だぞ。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/985
986: 名前は開発中のものです。 [sage] 2017/12/21(木) 14:22:23.93 ID:8qhc65N4 確実に高校数学 中学算数でベクトルは習わない(特定進学校は除く) http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/986
987: 名前は開発中のものです。 [sage] 2017/12/21(木) 14:52:32.83 ID:nBeZymLn >>986 つhttps://www.google.co.jp/amp/s/laurier.press/a/E1405072653842 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/987
988: 名前は開発中のものです。 [sage] 2017/12/21(木) 17:37:17.76 ID:mWsXZ6ft 年がいくつでも何処からでも学べるんちゃうんか http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/988
989: 名前は開発中のものです。 [sage] 2017/12/21(木) 17:41:22.45 ID:ogJEBcpf 年寄りは観念が固まってるから、4*4=4+4+4+4とか切り口を変えた柔軟な発想が出来ない http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/989
990: 名前は開発中のものです。 [sage] 2017/12/21(木) 17:49:58.06 ID:uW9gzElK 柔…軟…??? http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/990
991: 名前は開発中のものです。 [sage] 2017/12/21(木) 18:12:39.26 ID:p4DyS94v なんだかんだと言ってもITはそれなりの頭がないと出来ない 中学、高校で数学が苦手だった奴にプログラミングはむかない そんな理由で糞IT専門学校卒の底辺IT奴隷だって素質があって他の業種からみれば高給与 まあ糞IT専門学校に逝っても半分以上は素質がなくて資格も取れずIT関連企業にも就職できないんだけど http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/991
992: 名前は開発中のものです。 [sage] 2017/12/21(木) 18:43:55.99 ID:d8WQwc80 Unityのプログラムを、コピペじゃなくて、 自分で考えて、組み立ててコードを書けるってことは、 それなりに数学的な素養があると思うんだよね〜 何も行列とかクォータニオンとかを数学的にきちんと理解していなくても、 「そのメソッドで何ができるか」を理解していれば、 たとえメソッドの内部はブラックボックスでも、それを組み合わせて、 ちゃんと機能するコードが書けるから・・・ ある意味、クラスによるカプセル化と一緒で、 オブジェクト指向の根幹に
なるんじゃないかな? http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/992
993: 名前は開発中のものです。 [sage] 2017/12/21(木) 18:52:38.72 ID:d8WQwc80 もちろん、そのクラスや構造体の中で、 「数学的に何が行われているのか?」を理解していれば、 それを応用して、別のクラスを作ったり、 他の処理に応用することができるようになるとは思うけど・・・ 3D処理(描画じゃなくて動作)で必要なのは、 ベクトル、行列、複素数の拡張であるクォータニオン、 極座標、関数(特に、三角関数)、初等幾何学、 古典物理学(力学)くらいじゃないかな・・・ Unityでは、行列は基本内部処理だけで表に出ないから、 高校の数学?
Bくらいまでのレベルじゃなかろうか? http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/993
994: 名前は開発中のものです。 [] 2017/12/21(木) 19:26:27.42 ID:J5wOBApL >>988 >年がいくつでも何処からでも学べるんちゃうんか それを聞く時点でキミはすでに学べない。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/994
995: 名前は開発中のものです。 [sage] 2017/12/21(木) 20:31:14.43 ID:MUjb87iC そんなんいらね。 三角関数を何となく使えるぐらいで十分。 あとはunityがやってくれる。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/995
996: 名前は開発中のものです。 [sage] 2017/12/21(木) 20:41:57.83 ID:m2pWnfBj >>988 高校卒業してから20年くらい、今年初めからUnityを始めましたが、 独学でベクトルの外積やクォータニオン演算まで辿り着けたので、 興味さえあれば、何とかなるもんですよ。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/996
997: 名前は開発中のものです。 [sage] 2017/12/21(木) 20:52:09.10 ID:m2pWnfBj 例えば、物理演算を使用する場合、Unityで設定できるのは、 速度velocityと力AddForce、角速度angularVelocityとトルクTorqueだけです。 (位置positionや角変位rotationは原則いじらないほうが良いです) すると、直線移動や自転だけなら設定が簡単ですが、 公転のような円運動を行うには、物理法則に準じた命令を与える必要があります。 物理演算では、transform.RotateAroundを使えないので、 そういう場合に自分で工夫して実装できるかどうかに関わってくると思
います。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/997
998: 名前は開発中のものです。 [sage] 2017/12/22(金) 00:21:49.04 ID:ko83+b2p 一番とっつきにくいのは回転運動だと思います。 Rigidbodyでは、ForceMode.Accelerationがあるので、 加速度Vector3 a(m/s/s)を得たい場合は、 AddForce(a, ForceMode.Acceleration)とするだけ、 角加速度Vector3 aa(rad/s/s)を得たい場合は、 AddTorque(aa, ForceMode.Acceleration)とするだけですが、 Rigidbody2Dでは、ForceMode.Accelerationがないので、 加速度Vector2 a(m/s/s)を得たい場合は、 AddForce(a * mass)としたり、 角加速度float aa(度/s/
s)を得たい場合は、 AddTorque(aa * inertia * Mathf.Deg2Rad)とする必要があります。 要するに、ニュートンの運動方程式や、 オイラーの回転運動方程式を使う必要が出てきます。 速度は、2DはVector2 v(m/s)、3DはVector3 v(m/s)で分かりやすいですが、 角速度は、2Dはfloat w(度/s)、3DはVector3 w(rad/s)と単位が変わります。 Torqueではrad単位で入れないと、inertiaと乗算できないので面倒です。 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/998
999: 名前は開発中のものです。 [sage] 2017/12/22(金) 02:24:21.72 ID:BHuKTyia オイラーは、ドラマー♪ http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/999
1000: 名前は開発中のものです。 [sage] 2017/12/22(金) 10:39:11.64 ID:GTvlornd 10年は 夢のよう 100年は 夢また夢 1000年は 一瞬の光の矢 過ぎてく時間は怖くない 輝きを失う事が嫌なのです http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/1000
1001: 1001 [] ID:Thread このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 53日 5時間 33分 36秒 http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/1001
1002: 1002 [] ID:Thread 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。 運営にご協力お願いいたします。 ─────────────────── 《プレミアム会員の主な特典》 ★ 5ちゃんねる専用ブラウザからの広告除去 ★ 5ちゃんねるの過去ログを取得 ★ 書き込み規制の緩和 ─────────────────── 会員登録には個人情報は一切必要ありません。 月300円から匿名でご購入いただけます。 ▼ プレミアム会員登録はこちら ▼ https://premium.5ch.net/ ▼ 浪人ログインはこちら ▼ https://login.5ch.net/
login.php http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/1002
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.020s