- 1 名前:名前は開発中のものです。 mailto:sage [2012/07/28(土) 10:32:12.62 ID:2vSbb4cs]
- 3Dゲームエンジン「Unity」の質問に優しく答えるスレです。
Windows/Mac用。JavaScript/C#/Booといった汎用言語を使用できるのが特徴です。 フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。 プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3他 次スレは>>970を踏んだ方が建てること。ダメなら>>980か>>990が建てて下さい。 ■本スレ 【3Dゲームエンジン】Unity総合スレッド15 toro.2ch.net/test/read.cgi/gamedev/1340097261/ ■Unity 2ch Wiki(まとめ、過去ログ、リンク集) www24.atwiki.jp/unity2ch/ ●リンク ・Unity(日本公式サイト) unity3d.com/japan/ ・ユーザーガイド&リファレンス unity3d.com/support/documentation/ (日本語訳) ws.cis.sojo-u.ac.jp/~izumi/Unity_Documentation_jp/Documentation/Manual/ ・チュートリアル unity3d.com/support/resources/tutorials/ ・FAQ answers.unity3d.com/index.html ・Unityのスクリプト公式 unity3d.com/support/documentation/ScriptReference/index.html ・MSDN msdn.microsoft.com/ja-jp/ms348103←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。
- 42 名前:名前は開発中のものです。 mailto:sage [2012/08/01(水) 22:57:30.72 ID:81pqrVTL]
- 質問いいでしょうか。
Update内で、Quaternion.Slerpとか使用してキャラクターを回転させているのですが 360度以上回転させることってできますでしょうか? Quaternionとかrotation周りを調べているのですが、指定方向に回転等はあるのですが 単純にくるくると複数回転さすにはどうしたらいいでしょうか?宜しくお願いします。 (例えば、900(=360x2.5)を指定したら2.5回転してくれたりとか…)
- 43 名前:名前は開発中のものです。 mailto:sage [2012/08/01(水) 23:01:11.61 ID:B/JSzTKU]
- ちょっとわかりませんね…話がかみ合ってない気もするし
uploaderにアップしてくれたら、どこがだめか探してもいいけど? フォルダをzipにしてもサイズがでかいから、ゲーム制作板の
- 44 名前:名前は開発中のものです。 mailto:sage [2012/08/01(水) 23:04:53.30 ID:B/JSzTKU]
- 途中送信
ゲーム制作板のローダーがあるから、 gmdev.xrea.jp とかにアップしてみて
- 45 名前:名前は開発中のものです。 mailto:sage [2012/08/01(水) 23:08:42.58 ID:B/JSzTKU]
- >>43>>44は>>41あて
- 46 名前:名前は開発中のものです。 [2012/08/01(水) 23:36:52.21 ID:vzUV4+G4 BE:606447533-2BP(1)]
- sssp://img.2ch.net/ico/dokuo1.gif
>>45 gmdev.xrea.jp/big/index.php?no=49 アップロードしました。 DLしたら報告おねです なかにあるREADに一応少し書いてあります。 よろしくお願いします。
- 47 名前:45 mailto:sage [2012/08/02(木) 00:19:57.63 ID:z+uN7cKl]
- dlしました がファイル多すぎてどれかわからないです。
シンプルな条件で試してるのかと思った。 ここまで多いとどれがわるいかわかりづらいと思うんですけど。
- 48 名前:名前は開発中のものです。 [2012/08/02(木) 00:40:52.92 ID:IPIY/8oE BE:4851576498-2BP(1)]
- sssp://img.2ch.net/ico/dokuo1.gif
>>47 すみません。 本当にシンプルな方法で知りたいのですが、 InputManagerにFire1などの操作を登録してキーを割り当て、 scriptでそれを使うためには何をしたらいいでしょうか? script例:if(Input.GetButtonDown("Fire1")){} 長い時間ありがとうございます。
- 49 名前:45 mailto:sage [2012/08/02(木) 00:40:57.03 ID:z+uN7cKl]
- forum.unity3d.com/threads/81798-Input-not-found
GetKey とGetButtonじゃ違うってだけらしいよ inputのとこのnameで指定するならGetButtonだって こんなのに気づかずすみません
- 50 名前:名前は開発中のものです。 [2012/08/02(木) 00:57:38.47 ID:IPIY/8oE BE:269532522-2BP(1)]
- sssp://img.2ch.net/ico/dokuo1.gif
あ、できました! こんな単純なところでつまづいてるなんて。。。 ありがとうございます!!
- 51 名前:名前は開発中のものです。 mailto:sage [2012/08/02(木) 01:21:05.02 ID:z+uN7cKl]
- >>50
それは何よりです。 >50に気づかず、メール送ってしまいました。それは無視してください そこにも書いたけど、コンソールにエラーなり警告が大抵出ます。 window>コンソールで開きぱなしにして置いた方がいいですよ。 今回はGetKeyにしてたみたいですが、コンパイルは通るけどそんなキーないよってコンソール上で言ってくれますから。
- 52 名前:名前は開発中のものです。 [2012/08/02(木) 06:44:18.20 ID:rEpAXm8E]
- iOS用ゲーム作ってるんだが、なんかタッチ入力が
数フレーム遅れて感知されない? アクションゲームだとこの遅れはマズイなぁ。
- 53 名前:名前は開発中のものです。 mailto:sage [2012/08/02(木) 09:11:41.34 ID:ZJKkySgj]
- >>27
もう解決してるのかもしれんが一応 eの手前で丸めるってのが何をしてるのか分からんかったが e付いてるのって指数標記だから 2.091013e-05だったら数値としては0.00002091013ってところだろ 小数点以下3桁とかなら0でいいと思うんだが
- 54 名前:名前は開発中のものです。 mailto:sage [2012/08/02(木) 11:54:40.83 ID:0jUi//rM]
- >>42
試してないけどもMathf.Lerpで代用できるみたい? ttp://answers.unity3d.com/questions/29505/jerky-rotation-when-using-quaternionslerp-on-rotat.html さくっと見ただけなので、見当違いだったらすまん。
- 55 名前:名前は開発中のものです。 mailto:sage [2012/08/02(木) 12:54:35.16 ID:u7Ky33VI]
- 確実に見当違い
元々質問者も何を聞きたいのかわかってないっぽいが 毎フレーム現在の回転角に+60度ずつ足せばいいのに どこかの基準点から自分で60度xNを計算してるっぽい 無駄な努力
- 56 名前:名前は開発中のものです。 mailto:sage [2012/08/02(木) 14:47:26.29 ID:rhNtS2Ws]
- 複数のオブジェクトをくっつける場合ってどういう手法がありますか?
hinge joint っていうのがあるらしいんですが、オブジェクトの結合方法(方向とか)に関するパラメータが分かりません
- 57 名前:名前は開発中のものです。 mailto:sage [2012/08/02(木) 15:44:52.93 ID:2DAmCHok]
- >>54
>>55 レスありがとうございます。 自分のイメージとしては… Quaternion.Slerp( 現在のrotaion, 現在のrotaion+900度, deltaTime ); みたいなことがやりたかったのです。 調べてみたらそもそもQuaternionでは360度以上は表現できないっぽいので 上記のように一発でやるのは無理ぽいことがわかりました。 そこで >>54のリンクを参考にMathf.Lerpで小刻みに合成していく感じで実現できました! 基本的に >>55のような感じなのですが、対象オブジェクトが既に別回転かかっているためにQuaternionで合成処理しています。 function Update(){ rollDegree = Mathf.Lerp(rollDegree, 900, Time.deltaTime); childchild.transform.rotation *= Quaternion.AngleAxis( rollDegree-rollDegree_old, Vector3.up); rollDegree_old = rollDegree; }
- 58 名前:名前は開発中のものです。 mailto:sage [2012/08/02(木) 18:20:27.59 ID:+WCKY2Gf]
- >>57
それchildchildの親回転させれば楽じゃね?
- 59 名前:名前は開発中のものです。 mailto:sage [2012/08/02(木) 21:05:53.67 ID:2DAmCHok]
- >>58
ぶっちゃけ親回転にすれば、オイラー角でできるので考えかたは楽ですねw でも360度以上回転を考えるとやっぱり>>57と似た感じにはなってしまうかと。 (childchildって名前からして既に階層深めなので更に増やしたくない、って気持ちもありました…)
- 60 名前:名前は開発中のものです。 mailto:sage [2012/08/02(木) 21:28:22.57 ID:d5ejNeK9]
- Unity一通りいじってドラッグだけで色々動かせるのはわかったんですけど
初めてスクリプトに直面したのですが、JavaScriptとC#の2種類使えるらしいですが スクリプトはどっちを使った方がメリットが大きいとかあるのでしょうか?
- 61 名前:名前は開発中のものです。 mailto:sage [2012/08/02(木) 21:54:55.06 ID:CuYBLPxy]
- 迷わずC#
- 62 名前:名前は開発中のものです。 mailto:sage [2012/08/03(金) 12:07:52.27 ID:wlTzK8vF]
- >>59
一応参考までに言っておくけど 0度と360度の回転クオータニオンは同じ値で 今回の場合900度は180度と同じ意味だから0〜180度の補間という結果になっていたんだよ ついでに0〜360の値にするには value % 360.0f で C言語のfmodと同じ値が得られるよ >>61 簡単なテストならJavaScript がっつりやりたいならC# JavaScriptの方が楽だが、C#把握してたほうが効率のいいスクリプトを書けるので それだったら最初からC#でいいじゃんという結論に至ったよ
|

|