14/07/07 18:27:13.35 XCqy4kdt.net
>>322
自分はカメラのpositionをターゲットに追従させながらrotationを向けている
positionはSmoothDamp、rotationはSlerpを使っているけど
Inspectorに何か表示されてるとガクガクなる(特に>>309の条件で確実に発生する)
Inspectorに表示されてることでどういった影響が出てるのかはよくわからない
332:名前は開発中のものです。
14/07/07 18:42:29.10 zFT18/Wd.net
バグっぽいのは公式に報告しましょう
333:名前は開発中のものです。
14/07/07 19:24:12.84 xmI8T3g4.net
>>317
>HideInInspectorよりSystem.NonSerializedの属性使う方が
>トラブルが少ないと書かれていたのでSystem.NonSerializedがいいのかなと思っていました
もちろんどっちが良いということはない。
ただし用途によって使い分ける必要はある。
その機能がなんのために提供さてれいて、どんなときに使うものなのか常に考えていこう。
>>319
ソースを右クリックしたらGo to declaration(宣言に移動)ってのがあるからそれ。自分の環境だとショートカットはF12になってたよ。
ちにみにその下のFind reference(参照を探す)ってのが選択したクラスやらメソッドやらが使われてる場所の一覧出すやつ。
334:名前は開発中のものです。
14/07/07 19:46:31.46 HFPJwFqU.net
>>325
ありがとうございます。
F12でいけました!
335:名前は開発中のものです。
14/07/07 20:10:33.03 AkErnja1.net
衝突判定についてご教示ください。
立方体をマウスクリックした際に、どの面がクリックされたかを取得したいのですが
Ray ray = Camera.main.ScreenPointToRay( Input.mousePosition );
if( Physics.Raycast( ray, out hit ){
// 立方体のどの面がrayと交わった?.
}
hitにオブジェクトのワールド座標等が格納されていることは理解したのですが
どの面がクリックされたのか判別の方法がわかりません。
立方体の頂点座標が算出できれば面もわかるのかも知れませんが、知識不足ですみません。
ご存知の方いましたらご教示をお願いいたします。
336:名前は開発中のものです。
14/07/07 20:13:26.02 Ljm9tBgH.net
失礼、自己解決です。
337:名前は開発中のものです。
14/07/07 20:15:20.63 hxC6zxXd.net
>>320の質問誰かお願いします
FBXファイルがレガシーでのインポートに対応してないのかと思ったらそんなことないし
よくわかりません
使ってるファイルは有名なフリーのアニメーションアセットです、たしかunity公式だったかな
338:名前は開発中のものです。
14/07/07 20:43:00.20 62bXAYEJ.net
スクリプトのエラーについて質問です。
先程まで普通に再生できていたのに突然NullReferenceExceptionという
エラーが出るようになり再生できなくなってしまいました。
どうしたら元に戻るでしょうか?
どなたかご教授宜しくお願いします。
339:名前は開発中のものです。
14/07/07 20:54:38.50 b1e9ZXbN.net
>>330
それがいわゆる有名な「ぬるぽ」というやつです。
340:名前は開発中のものです。
14/07/07 21:46:09.56 9cyM0yix.net
>>327
hit.pointで判定できると思うんだけど何か問題ある?
341:名前は開発中のものです。
14/07/07 22:03:54.63 T/C3A20J.net
>>330
そのエラーメッセージのとおりヌルを参照するとそうなる。
とりあえずそのエラーメッセージをダブルクリックすれば
MonoDevelopが起動してスクリプトのどこでエラーが起きてるのか
342:教えてくれる。 今まで何故動いてたのか、とかどうすれば動くようになるのかは みてみないことにはわからん。 >>329 とりあえずFBXで必ず起きるという現象ではない、とは言える。 手元にあるものはLegasyにしても表示されている。 ただ確かに表示されないという現象が起きたことがあるな~、 という記憶はあるな。
343:名前は開発中のものです。
14/07/07 22:32:23.90 YdReXL8o.net
該当のスクリプトをいじってないのに急にNullエラーを吐き出した時はUnityを再起動すると直ったりする
直らない時もあったりするからバックアップは必須
344:名前は開発中のものです。
14/07/07 22:54:39.38 WzLbsFo2.net
>>329
他のCGソフトに読み込んでアニメ確認が早い気もするがのー
345:名前は開発中のものです。
14/07/07 23:58:14.69 xmI8T3g4.net
( ・∀・) | | ガッ
と ) | |
Y /ノ 人
/ ) < >__Λ∩
_/し' //. V`Д´)/ ←>>331
(_フ彡 /
346:名前は開発中のものです。
14/07/08 01:10:11.26 6jeNO0ogg
大量のスプライトをそれぞれ個別にプレハブ化したいのですが
一括でできる方法はないでしょうか?
■環境 : Unity4.51 f3です。
■目的 : 2Dゲームのマップチップ用の画像(スプライト)を
テキストデータに記述したマップ作成用データを元にして
チップごとにInstantiateで作成・配置したいのですが
プレハブ化するために複数のスプライトをまとめて
hierarchyビューなどにドラッグ&ドロップしてしまうと
「Create New Animation」と表示されてアニメーション
作成になってしまいます。
ご存知の方がおられればアドバイスいただけませんか。
よろしくお願いします。
347:名前は開発中のものです。
14/07/08 09:25:06.86 NX4W3vdm.net
アセットを買えばいいんじゃね
348:名前は開発中のものです。
14/07/08 09:29:06.74 Qd6T63my.net
>>338
ダメに決まってんだろこのアスペが。
349:309
14/07/08 09:51:12.27 4qnhUGqB.net
>>332
ありがとうございます。
hit.pointは衝突した座標が取得できると思うのですが
そこから立方体の各頂点、面はどうすれば判別できるでしょうか?
見当違いなこと聞いてたらすみません。
350:名前は開発中のものです。
14/07/08 10:02:05.26 ZJvtMt/G.net
>>333-316
返信ありがとうございます。
今度からはちゃんとバックアップ取っておくように気をつけようと思います‥‥
エラーが出てる箇所は
if(transform.position.y < fallLimit || transform.position.x < cam.transform.position.x -8){
Application.LoadLevel("menu");
}
Destroy(gameObject);
}
↑の
if(transform.position.y < fallLimit || transform.position.x < cam.transform.position.x -8){
この部分なんですが、どこがおかしいのかよろしければ教えて頂けないでしょうか?
351:名前は開発中のものです。
14/07/08 10:28:29.63 ytRwZWLO.net
>>313
URLリンク(uwebkit.com)
これがWindowsで使えるWebViewを提供してる、ただしプラットフォームがWin,Mac,iOSのみ
Win側の実装は別プロセスでWebKitブラウザサーバが動いていてそいつにレンダリングさせた画像を取得する方式
俺はコレとGreeのWebViewのAndroidとをラッパーと#ifでAPIそろえてから使ってる。
uWebKit単体はテクスチャレンダリングとかも含んでるのでAndroidを捨てるなら3Dゲームのシーン内で看板にしたりとかもできる
352:名前は開発中のものです。
14/07/08 10:28:45.55 t1kUpUtT.net
>>340
恐らくだが、
コンタクトポイントは物理エンジンが
衝突検知したときに生成してよこしてくる。
URLリンク(docs.unity)
353:3d.com/ScriptReference/Collision-contacts.html The contact points generated by the physics engine. コリダー自体はメッシュコリダーだけではなくスフィアやカプセル、 キューブなんかもあるのでコンタクトポイント生成の仕組みに 頂点や面は常に関係している訳ではない。 ということはメッシュコリダーを使った時に頂点や面の情報を提供するには 特別にその為の機能が実装されていてその情報をストアするデータ構造が 用意されていなければならないはずだがそういうものはない。 てあたりから考えるにコンタクトポイント配列から一番近い面、頂点なりを 割り出す機能を自分で実装するしかない、のではないかな。
354:名前は開発中のものです。
14/07/08 10:33:31.76 t1kUpUtT.net
>>341
その中身だと多分cam、が割り当てられていないとか
実行時に消滅しちゃってるとかそんな話じゃない?
355:名前は開発中のものです。
14/07/08 11:08:22.80 ZJvtMt/G.net
>>344
ご指摘通りcamが割り当てられていなかったみたいでした‥‥。
助かりました。ありがとうございます!
356:名前は開発中のものです。
14/07/08 12:18:46.50 QX88T4yM.net
>>333
>>335
ありがとございます
Raw Mocap Dataってアセットを使ってたんですが、
どうやらここのFBXデータは軒並みレガシー化が出来ないようです
理由はよくわかりませんがメカニム専用に作られてるんでしょうね
他のアセットでは出来ました
使いたいモーションはここのやつだったので残念です
357:309
14/07/08 12:42:36.02 4qnhUGqB.net
>>343
ありがとうございます。
そうですよね……
そもそも衝突したオブジェクトが立方体かどうかなんて
エンジン側には関係ないわけで、自分で計算するしかありませんよね。
その計算方法がいまいちピンとこないのですが……数学がんばっとけばよかったな。
また質問させていただくかもしれません。
回答くださった方、ありがとうございました。
358:名前は開発中のものです。
14/07/08 12:43:59.96 Qd6T63my.net
>>338
ダメに決まってんだろこのアスペが。
359:名前は開発中のものです。
14/07/08 12:48:54.92 t1kUpUtT.net
>>346
ちょっと開いてみたがこのデータはモデル(メッシュ)が入ってないんだわ。
なのでレガシーにしてプレビューしたいならまずRawMocapDataの
一番上の階層のDefaultAvatarのリグをレガシーに設定した上で
Animationsの中のクリップをレガシーにしてプレビューの右下にある
人マークをクリックしてotherを選べばFBXやPrefabの一覧が出てくるので
そこでさっきレガシーに設定したDefaultAvatorを選べばプレビューできる。
少なくとも俺のところではできた。
360:名前は開発中のものです。
14/07/08 13:23:17.22 xirEgGux.net
>>349
アセットをかったほうがいいよ
361:名前は開発中のものです。
14/07/08 13:57:39.34 ddu7OeuU.net
RPG、SRPG系ゲームのセーブ・ロード機能を作りたいです。
ググってみるといくつかサイトが見つかったのでバイナリでデータを
保存するという処理を見つけました。
URLリンク(github.com)
これってRPG、SRPG系ゲームのセーブ・ロード機能として使えますか?
あと実際ちょっとこの処理を使ってセーブをやってみたのですが、この処理の使い方に
「セーブしたい時はコードから"SaveLoad.Save();"とするだけです」と書いてありました。
なので、SaveLoad.Save();と書いてコールしてみましたが、以下のエラーが出ました。
IOException: Sharing violation on path C:\Users\user\Documents\RPG test\Save\SaveData.dat
デバッガで追ってみると上記コードの137行目bf.Serialize(fs, data);でdataの中身がnullでした。
おそらくこれが問題だと思うのですが、dataの格納処理はCrateSaveFileメソッドでのみやっています。
しかし、SaveLoad.Save();と記述してコールするとCrateSaveFileメソッドはコールされないようです。
これではどうやってもdataに値は格納されないと思うのですが、これは上記の元コードが
間違っているのでしょうか?それとも私の解釈が間違っているのでしょうか?
362:名前は開発中のものです。
14/07/08 14:07:46.08 baCtLp31.net
>>348
回転していない原点中心の立方体だったら点がどの面上か判定するのは簡単でしょ
逆に言えば逆行列を掛けてその状態までもっていけばいいんじゃないのかな
力技でいいなら立方体のコリジョンを面ごとに分割してもいけそうな気がする
試してないからうまくいくかは知らん
363:名前は開発中のものです。
14/07/08 16:59:41.35 XshOldtu.net
>>351
見る限りは初回のみCreate、以降はSaveで呼び出すみたい。
364:名前は開発中のものです。
14/07/08 18:29:48.19 ddu7OeuU.net
>>353
確かにその分岐で起動するとエラーメッセージは出なくなりました
この処理ってどう見てもsettingsクラスとconfigクラス内のものだけを
バイナリファイルにセーブする、っていう意味ですよね?
つまり主人公のパラメータだのセーブ時の主人公の位置だの
シーン名だの敵の位置だのイベントフラグだの、それら全部を
settingsかconfigクラスに列挙してdataの対象にする必要がある、という事ですよね?
365:名前は開発中のものです。
14/07/08 18:43:34.20 t1kUpUtT.net
そりゃそうだ。俺が何をセーブしたいか自動で判別してくれる
セーブロードクラスとか怖すぎるだろw
まぁゲームコントローラーで作った独自クラスの中身を
セーブするように改造してもそれほど面倒ではなさろうだけど
366:309
14/07/08 18:45:16.78 4qnhUGqB.net
>>352
私へのレスかな?(違ったらスミマセン)
実はその立方体は絶えず向きを変えながら動きまわってまして。。。
衝突点(RaycastHit.hit)と立方体の原点(RaycastHit.transform.position?)は取れると思うので
どうにか導きたい。
考えてみます。ありがとうございます。
367:名前は開発中のものです。
14/07/08 19:02:51.92 F4NuZqsK.net
>>354
俺もその投稿みたとき「何をセーブするの?」って思ったよw
そのアセットは触ったこと無いけど、
C#はクラスデータをserialize化する機能があるから、それでパックしてるんだろうね
となるとポインタ的な何かが必要で、それが無くてNULLなんじゃね?
368:名前は開発中のものです。
14/07/08 19:33:47.74 ddu7OeuU.net
>>357
単純にdataインスタンスにシリアライズしたsettingsクラスとconfigクラスを
入れるメソッドを経由してなかったからみたいです
これって例えばパラメータとかフラグ管理してるコンテナクラスとか
色んなマネージャークラスや敵クラスとか、ロード時読み出したいクラス全部に
System.Serializable ()]属性付けないといけないって事ですよね?
369:名前は開発中のものです。
14/07/08 19:42:19.15 GK/wakWz.net
>>349
ありがとうございます!
確かにおっしゃる通りで、DefaultAvatarをコピってDefaultAvatarLegacyってのを作って
それをLegacyに設定すると表示されるようになりました、感激です!
ただ
Raw Mocap Dataのうち例えば
Idle/Idle_Neutral_1
Idle/Idle_Neutral_2
など、表示はされるもののTポーズのまま動かない、みたいな状態になるものが多いですね
Idle/IdleR_To_IdleL_1
Idle/IdleR_To_IdleL_2
とかはピボットの位置と大きくずれてたり
でもだいぶ核心に近づいてきました!
370:333
14/07/08 21:23:19.99 baCtLp31.net
>>356
レス番号間違えたけどさっきのは329へのレスね
立方体が動き回っていても位置(position)と回転行列(rotation)が分かれば問題ないはず
衝突点と立方体中心の差分を取って回転行列の逆行列を掛ければ333に書いた状態になる(多分)
371:314
14/07/08 22:38:42.03 A3tN0KUo.net
>>356
難しく考えすぎだと思う
hit.pointはワールド座標ですが
372:transform.InverseTransformPoint(Vector3)でキューブオブジェクトのローカル座標に変換できます 後は(1,0,0),(-1,0,0),(0,1,0),(0,-1,0),(0,0,1),(0,0,-1)との内積を計算して1に最も近いのがヒットした面の法線方向です 立方体なら簡単に分かる問題 void Update () { if(Input.GetMouseButton (0)) { Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit hit; if(Physics.Raycast(ray,out hit)) { var hitPointLocal = transform.InverseTransformPoint(hit.point); var faces = new Vector3[] { Vector3.right, -Vector3.right, Vector3.up, -Vector3.up, Vector3.forward, -Vector3.forward, }; var face = faces.OrderBy((c) => Mathf.Abs((1.0f - Vector3.Dot(c,hitPointLocal)))).First(); Debug.Log (face); } } } こんな感じでどうでしょうか?(Linq使ってるのでusing System.Linq;を頭に追加してください)
373:名前は開発中のものです。
14/07/08 22:43:57.76 A3tN0KUo.net
あ、すまん。hitPointLocalは正規化したほうがいいかも
374:名前は開発中のものです。
14/07/08 23:47:44.77 GNYY4mLA.net
>>358
自前でやるのが筋。
とか思っちゃうおれはオールドタイプなのか?
ゲームシーンをごっそりセーブするなら、
Save Game-JSON+Binary
っていうアセットはどう?
375:名前は開発中のものです。
14/07/09 00:59:16.29 w8x3TA41.net
>>363
ありがとうございます。
そのアセット知らないので、ちょっと調べてみます
376:名前は開発中のものです。
14/07/09 06:19:09.35 qEp+Q++O.net
Unity2Dでsin cosを使ってオブジェクトを滑らかにカーブ移動させるのに、
参考になるようなサイトはないでしょうか?
377:名前は開発中のものです。
14/07/09 10:09:57.48 kwPBdcPP.net
>>365
普通に使えばええやん
ゲームで滑らかにカーブ移動させたいならスプラインとかエルミート曲線の方が良くないか?と思わないでも無いけど
どんな移動させたいのか具体的に書いてくれれば幾らでも参考サイトや有用Assetやらコードやら示してやれるがこの質問だけだとどもならんよ
378:名前は開発中のものです。
14/07/09 11:28:06.03 CEnQGpTX.net
>>366
アセットを買えばどもなるよ。
379:名前は開発中のものです。
14/07/09 11:32:48.63 kwPBdcPP.net
>>367
今回の質問には私の知っているAssetがあるが、使っても居ない君には示すこともできないだろうwwww
380:名前は開発中のものです。
14/07/09 12:10:31.54 CEnQGpTX.net
>>368
アセットを買わないと知っているから持っているに変わらないよ。
381:名前は開発中のものです。
14/07/09 12:23:24.35 pJQ0Abwo.net
今日のアセット担当は日本語レベルが低いな
382:名前は開発中のものです。
14/07/09 12:29:16.04 UnwO4uOl.net
だいぶあせっとるんだろう
383:名前は開発中のものです。
14/07/09 12:30:02.63 CEnQGpTX.net
>>370
アセットを買えば理解できるようになるよ。
384:名前は開発中のものです。
14/07/09 12:58:05.82 waqeFJ7J.net
必死にレスしてるw
385:名前は開発中のものです。
14/07/09 15:23:38.35 H9+HAVhV.net
天安門事件
386:309
14/07/09 15:44:09.25 bOZmpXlN.net
レス遅くなり申し訳ありません。
>>360
>>361
あ、ローカル座標に変換できるのですか。
確かにそうであれば動き回ろうと関係無い……
お二人はそれ前提で話されてたんですね、難しく考えすぎていました。
コードまで載せてくださってありがとうございます。
実装の参考にさせていただきます。
Linqは知りませんでした。SQLをそのまま書けるイメージでしょうか。
面白そうです。
ありがとうございました!
387:名前は開発中のものです。
14/07/09 16:44:41.03 CEnQGpTX.net
>>375
アセットを買えばもう少し人生の余裕が出来るよ。
388:名前は開発中のものです。
14/07/09 17:05:38.35 69aPN37H.net
>>376
アセットおじさん。
彼女ができるアセットを教えてください。
389:名前は開発中のものです。
14/07/09 17:16:02.29 c/2zjphJ.net
アセットおじさん
オレが寝てても妖精さんが勝手にコードを書いてくれるようになるには
具体的にどのアセットを買えばいいのか教えてください。
390:名前は開発中のものです。
14/07/09 17:20:08.47 kwPBdcPP.net
おじさんの弱いところは358の返しに
URLリンク(www.assetstore.unity3d.com)
これを貼らないところかww
391:名前は開発中のものです。
14/07/09 18:00:23.83 K5w5Fazd.net
うにてぃちゃん、えらくすさんだトコ住んでるんやな
誰か可愛い部屋つくったれや
392:名前は開発中のものです。
14/07/09 18:09:35.30 g5+qSqKX.net
>>379
3枚目のSSで、もうほとんど
M字開脚&アヘ顔ダブルピースを喚起
393:名前は開発中のものです。
14/07/09 18:27:00.09 yYdGlLLJ.net
ちょっと待って、>>371がなんか言ってる
394:名前は開発中のものです。
14/07/09 18:41:53.55 69aPN37H.net
>>380
とりあえず、これ置こか?
URLリンク(www.assetstore.unity3d.com)
395:名前は開発中のものです。
14/07/09 19:55:30.85 ly6OeI7iU
マルチレンダしたいのですが、カメラ1つ増やさないと絶対にできないんでしょうか。
カメラのSetTargetBuffersやグラフィックのSetRenderTargetを使ってマルチレンダ自体は
しているのですが、マルチレンダをしたカメラの出力先がレンダテクスチャになってしまうので
仕方なくもう1つのカメラを使って画面に出力結果を出している感じです。
ドローコールが2倍になるのは避けたいです。
あとカメラとグラフィックの2つの関数の違いがわかりません。
396:名前は開発中のものです。
14/07/09 19:33:46.82 CEnQGpTX.net
>>380
アセットを買えば部屋もつくってもらえると思いますよ。
397:名前は開発中のものです。
14/07/09 19:44:59.75 He9lO1nK.net
珍しくアセットおじさんがまともなこと言った
398:名前は開発中のものです。
14/07/09 19:50:35.88 4BHyJEoT.net
作成した飛行系キャラクターに歩くモーションを適用したら
地面に降りて歩くようになってしまったんですけど
これは足のIKとかが関係してるのでしょうか?
どうやったら浮くようになりますか?
399:名前は開発中のものです。
14/07/09 19:56:04.45 X3K0xNpT.net
animatorコンポーネントの
ApplyRootMotionの項目のチェックをはずす。
400:名前は開発中のものです。
14/07/10 03:37:17.91 xx5UL/cu.net
AというオブジェクトのTransform(ポジションとローテーション)を
BというオブジェクトのTransformに近づけていくのに簡潔な書き方ってないでしょうか
下記のように書いたんですが
float x = Mathf.Lerp(A.transform.position.x, B.transform.position.x, t);.
float y = Mathf.Lerp(A.transform.position.y, B.transform.position.y, t);.
float z = Mathf.Lerp(A.transform.position.z, B.transform.position.z, t);.
float rotationX = Mathf.Lerp(A.transform.rotarion.x, B.transform.rotarion.x, t);.
float rotationY = Mathf.Lerp(A.transform.rotarion.y, B.transform.rotarion.y, t);.
float rotationZ = Mathf.Lerp(A.transform.rotarion.z, B.transform.rotarion.z, t);.
A.transform.position=new Vector3(x,y,z);
B.transform.rotation=new Vector3(rotationX,rotationY,rotationZ);
これだとちょっと冗長すぎて、もっと簡潔な書き方があると思えてなりません
どなたかアドバイス願えますでしょうか
401:名前は開発中のものです。
14/07/10 03:40:59.03 xx5UL/cu.net
あ、コードの最終行は
× B.transform.rotation=new Vector3(rotationX,rotationY,rotationZ);
○ A.transform.rotation=new Vector3(rotationX,rotationY,rotationZ);
でした
というか欲を言うと
A.transform += (A.transform-B.transform)*0.1f
みたいに一行で全て済むのが理想ですが、さすがにこれはないですよね…
402:346
14/07/10 05:46:31.66 xAErvCZm.net
>347
レスありがとうございます
2D横シューティングでよくあるような雑魚敵が画面真ん中くらいまで直進した後、
画面内側へ向かってカーブしていく動きを作ろうと思っています
403:名前は開発中のものです。
14/07/10 05:52:23.17 2vomgG9s.net
iTweenを覚えたらいいのに
404:名前は開発中のものです。
14/07/10 07:29:03.59 bIU8XwO6.net
移動中に攻撃したり撃破されたりする処理を書くことを考えたら
自分で移動処理書いたほうがいい気もする
405:名前は開発中のものです。
14/07/10 08:00:45.27 9ExPOmiK.net
>>388
おおっ
そんなに簡単に出来るんですか
ありがとうございました
406:名前は開発中のものです。
14/07/10 09:1
407:4:32.54 ID:eKSeBp7C.net
408:名前は開発中のものです。
14/07/10 09:14:35.97 U1Yt5b0K.net
>>389
positionに対してはVector3.LerpとかVector3.SmoothDampを使えばいい
rotationはQuarternionだからVector3は使えないし、xyzを線形補間してもスムーズに変化しない
Quarternion.SLerpを使おう
409:名前は開発中のものです。
14/07/10 09:17:10.37 /MrudUJp.net
>>391は>>392が答えてくれてるけどiTweenってAsset買うか
URLリンク(www.google.co.jp)
をググると良い
Unity上の実コードだと
URLリンク(wiki.unity3d.com)
ここに実サンプルがある
410:名前は開発中のものです。
14/07/10 12:19:31.02 zK1oDZ7N.net
iTweenってタダだろ
411:名前は開発中のものです。
14/07/10 14:31:24.08 YqQyc3Kt.net
>>392,375,376,367
ありがとうございます!
全部参考にさせて頂きます!
412:名前は開発中のものです。
14/07/10 17:44:54.12 1NZl2Q51O
四次元のQuaternionと三次元のVector3が何故掛け算出来るのか理解出来ません
例えばtransform.rotation * Vector3.forwardをすれば
ローカル座標のz軸をワールド座標に変換して出力する。
結果がこうなるもんだと覚えるしかないと思ってます
413:名前は開発中のものです。
14/07/10 20:19:25.24 Ntyozi8+.net
レースゲームを作りたくて移動のキー入力まではしたんですが
キーを離した瞬間物体がビタッと止ります。
車のような制動距離や遠心力を付けるにはここからどうすればいいでしょうか。
void Update () {
if (Input.GetKey (KeyCode.UpArrow)) {
transform.Translate(transform.forward* 1f);
}
if (Input.GetKey (KeyCode.DownArrow)) {
transform.Translate (transform.forward * -1f);
}
if (Input.GetKey (KeyCode.RightArrow)) {
transform.Translate (transform.right * 1f);
}
if (Input.GetKey (KeyCode.LeftArrow)) {
transform.Translate (transform.right * -1f);
}
414:名前は開発中のものです。
14/07/10 20:27:57.36 2vomgG9s.net
Rigidbodyでしょうね
415:名前は開発中のものです。
14/07/10 20:32:16.10 mOHUqZSy.net
>>401
ホイールコライダー使うのもいいかも
416:名前は開発中のものです。
14/07/10 20:41:35.99 KpRwf/VL.net
>>401
アセットを買って使えばいいかも
417:名前は開発中のものです。
14/07/10 21:02:10.49 eKSeBp7C.net
>>401
とりあえずColliderとRigidbodyつけて
if (Input.GetKey (KeyCode.UpArrow)) {
rigidbody.AddForce(transform.forward*0.1f)
}
とかやっていけば多少それっぽくなる。
勿論このままだと無限加速してとんでもないことにはなるし
横滑りも収まらないのでアレだが。
無料のアセット配ってるのでみてみれば?
URLリンク(www.assetstore.unity3d.com)
418:名前は開発中のものです。
14/07/10 21:26:22.26 Ntyozi8+.net
>>402
>>403
>>404
さっそくの返答ありがとうございます。
wheel colliderとRigidbodyをつけてみますスクリプトを書き換えてみます。
419:名前は開発中のものです。
14/07/10 23:24:40.19 ZuKA9b6a.net
>>401のレースゲームみたいなので制動距離つけるには3DにしてFrictionつければいいと思うのだけど、
もしそれをRigitbody2Dで実現するとしたらどうしたらいいと思います?
updateで速度と反対方向にaddForceをかけ続ける感じになるでしょうか。
それならそもそもUnity使うより他の2Dエンジン使ったほうがいい、ってのはあるかもしれませんが…
420:名前は開発中のものです。
14/07/10 23:58:50.73 Z7LGASn7.net
ご存知の方がいたら教えていただきたいです。
Facebook SDK for Unityについて。
FB.AppRequestで送ったリクエストは、
スマホ用Facebookアプリのお知らせエリアに
表示できないんでしょうか?また、何か表示させる方法はありますか?
Webブラウザ版のFacebookでは問題なく確認できました。
421:名前は開発中のものです。
14/07/11 00:33:28.98 numCCkDS.net
>>407
それじゃダメなん?w
そもそも自動車の場合進行方向と横方向では
挙動自体が違う訳で本当にそれっぽくしようと思ったら
そんな単純にはいかんと思う。
422:名前は開発中のものです。
14/07/11 02:22:02.11 z/FG1Lf53
2Dゲーム作っているんですが
SpriteEditorでアトラスの切り出し&中心設定が面倒なんで
テキストデータかなんかから一気にスプライト作れませんか?
423:名前は開発中のものです。
14/07/11 01:45:42.27 RH+BKqCS.net
物理演算が必要なMMOを作ろうとした場合、敵の座標計算や物理演算などをサーバー側でやってもらいたいのですが、unity の物理演算をこなしてくれるサーバーシステムってあるのでしょうか?
可能であれば、Unityでプログラミングしたものをサーバー側(Linux)で画面ナシで動かせるど有り難いのです。
424:名前は開発中のものです。
14/07/11 02:13:53.43 numCCkDS.net
>>411
この辺?
URLリンク(docs-jp.unity3d.com)
425:名前は開発中のものです。
14/07/11 02:18:08.01 numCCkDS.net
特別なサーバーシステムといったものはないと思う。
サーバー的に動くプレイヤーをNoGraphicsで動かすとか?
426:名前は開発中のものです。
14/07/11 02:28:50.92 LjXj+et2.net
>>407
お答えありがとうございます。現在3Dで製作しています。
>>402 、>>403 、>>404
までのを参考にSphereColliderとRigidbodyを付けてスクリプトを書き換え
その後、Frictionをいじったらビタ止りはなくなりました。(ブレーキ付けないといけないですね汗)
現在
void Update () {
if (Input.GetKey (KeyCode.UpArrow)) {
rigidbody.AddForce(transform.forward*=10f);
}
if (Input.GetKey (KeyCode.DownArrow)) {
rigidbody.AddForce (transform.forward*=-10f);
}
if (Input.GetKey (KeyCode.RightArrow)) {
rigidbody.AddForce (transform.right *=10f);
}
if (Input.GetKey (KeyCode.LeftArrow)) {
rigidbody.AddForce (transform.right *=-10f);
}
教えてもらったやつそのままですが(´;ω;`)
>>409
言われてみれば横方向と進行方向ではだいぶ違いましたw
もう少し調べて進行方向どブレーキを追加できるようがんばってみます。
427:371
14/07/11 02:29:14.38 Ndb5x14T.net
>>392 373 377
ありがとうございます
428:名前は開発中のものです。
14/07/11 02:57:51.08 /uldMMue.net
あらら
名前残ってるじゃんw
かっこわりぃorz
特に意味は無いんでお気になさらないでくださいまし。
429:名前は開発中のものです。
14/07/11 06:13:13.30 gotoO2+E.net
物凄く初歩的な質問で申し訳無いんだけど、
playmakerで『扉を1度クリックすると90度だけ開けて、もう一度クリックすると90度閉まる』
みたいな動きって、アクションブラウザのどの機能をどう設定したら出来るのかな
TransformのRotateを使うと90度で止まらずにいつまでもぐるぐる回転し続けてしまって上手くいかない……
430:名前は開発中のものです。
14/07/11 07:46:59.09 h0v6u8eB.net
>>417
そういうときはQuaternion.Lerpを使うといい
使用例はググればすぐに出る
もしくはiTweenを使うか
431:名前は開発中のものです。
14/07/11 10:02:08.17 4wDtwqZb.net
>>417
普通はアセット買って使うと思います
432:名前は開発中のものです。
14/07/11 11:41:34.25 3PaAgeVz.net
unityでゲームアプリ作ってます。
ios版だとロード時間が18秒なのに、
android版だとロードに82秒もかかります。
android版は何か特別な設定がいるのでしょうか?
ちなみに、テスト機種はiphone4sとnexus7(2012)です。
433:名前は開発中のものです。
14/07/11 12:35:10.29 IsWzNpN0.net
多分Texture周りじゃないかなぁ
減らしてみるといいかも
434:名前は開発中のものです。
14/07/11 12:53:38.30 3PaAgeVz.net
>>421
テクスチャ周りが原因だとすると
ios版もロード時間がかかるのではないでしょうか?
あるいはandroidはテクスチャの数や大きさに極端に弱いのでしょうか?
元々はios版でもロード時間が50秒ほどかかってましたので、
ドローコール対策も含め、テクスチャの
435:圧縮、サイズ減少、 数そのものを減らすなどの対策はして、現在のロード時間に 持っていきました。 この状態でandroid版も作れば問題ないだろうと思ってましたが、 まさかのロード時間4倍強に驚き、今回質問させて頂きました。
436:名前は開発中のものです。
14/07/11 13:16:41.05 IsWzNpN0.net
apk内にandroid非対応な画像形式でもってると、
起動するときに再圧縮したような記憶があるよ
調べもしないでてきとーなこといってっけどなw
これが原因かどうかはETC圧縮を始めから持ってるとかでやるといいと思う。
437:名前は開発中のものです。
14/07/11 14:02:32.00 peacAnX5.net
>>422
アセット買って使うと早いと思いますよ
438:名前は開発中のものです。
14/07/11 14:32:43.51 3PaAgeVz.net
>>423
起動時に再圧縮していれば
android版だけロード時間遅いのも納得できますね。
ちなみに自作のテクスチャは全てPNG形式で、
Unity上で各画像に対して「Override for Android」に
チェックを入れ、アルファ無し画像に関しては
「RGB Compressed ETC 4 bits」を、アルファ有り画像は
「Compressed」を選択するようにしています。
ただ、アセットストアで購入したものも多数あり、
それらの圧縮が漏れてる可能性もあるので、
もう少し調べてみます。
>>423
ロード時間を短くするようなアセットがあるのでしょうか?
少し調べてみましたが、それらしいのが見つけられませんでした。
よろしければ、お勧めのアセットを教えて頂けますでしょうか。
439:名前は開発中のものです。
14/07/11 17:22:11.52 /EkrBbsZO
>>417
iTweenで行けた!ありがとう!
440:名前は開発中のものです。
14/07/11 17:47:16.34 gotoO2+E.net
>>418
iTweenで行けた!ありがとう!
441:名前は開発中のものです。
14/07/11 19:08:07.87 F1C1ztkp.net
質問良いですか?
c#でVector3の配列を作ってインスペクタで入力したいのですがどう宣言したらいいですかね?
public Vector3[] hairetu=○○○○;
ググり方が悪いのかこの○○○○の部分をどう宣言したらいいのかわかりません
442:名前は開発中のものです。
14/07/11 19:17:46.48 F1C1ztkp.net
今は一個一個Vector3を作ってStart()関数内でVector3[]の配列に移動させるという
やり方でちゃんと動いているのですがどうみてもこれは違うだろと思い質問しました
443:名前は開発中のものです。
14/07/11 19:24:58.03 vZ0nnfC1.net
単純に
public Vector3[] hairetu;
ではあかんの?
444:名前は開発中のものです。
14/07/11 19:29:01.28 F1C1ztkp.net
>>430
おおおぉ
出来たようです!
サイズの指定なしでは配列の宣言なんて無理だと思い込んでました
インスペクタでサイズの指定も出来ます
どうもありがとうございます
こんなシンプルで良かったんですね~
445:名前は開発中のものです。
14/07/11 19:36:54.95 DF7rDM9S.net
最初からサイズまで指定したければ
public Vector3[] test = new Vector3[10];
とか書く方法もある。
446:名前は開発中のものです。
14/07/11 19:55:37.74 rjhmR5tU.net
なぜVector系はnewでインスタンス化する必要があるのか
その理屈が分かりません。なぜですか?
447:名前は開発中のものです。
14/07/11 20:10:53.00 rq/v5QCI.net
>>433
ポールがそう作ってしまったから
448:名前は開発中のものです。
14/07/11 20:18:50.89 DF7rDM9S.net
むしろその質問の意味がわからんw
Classである以上コンストラクターを呼び出して
インスタンスを生成するってのはそういうるーるなんじゃねぇのかw
449:名前は開発中のものです。
14/07/11 20:50:32.36 Bika1xz9.net
Unityからプログラミング始めた人はクラスとかわからないし、
UpdateとかStartがどのプログラミング言語にもあると思い込んでると思うんだ。
ちなみに揚げ足取るわけじゃないけどVector3はクラスではなく構造体なんだ。
450:名前は開発中のものです。
14/07/11 20:59:52.23 DF7rDM9S.net
メソッドもったり演算子オーバーロードしてるのに構造体なわけねぇだろw
451:名前は開発中のものです。
14/07/11 21:32:16.05 GhL2obWA.net
>>436
C#の構造体って値固定じゃ無かったっけ?
452:名前は開発中のものです。
14/07/11 21:57:41.37 DF7rDM9S.net
って宣言見てみたら構造体やった…。すまんかった。
てかC#の構造体って殆どクラスと同じなんや…。
今までC系の構造体と同じものとしてしか使ってなかったわ…。
453:名前は開発中のものです。
14/07/11 22:03:51.64 /zzya8j3.net
>>439
C#の構造体はローカルに宣言されているとnewで生成してもヒープじゃなくスタックに生成してくれる優れものと思っておくとちょっと得するかもしれない。
454:名前は開発中のものです。
14/07/11 22:12:31.53 3PaAgeVz.net
js使ってるけどVector3の宣言にnew付けたことない・・・付けるべきなんだろうか
455:名前は開発中のものです。
14/07/11 22:24:56.15 4wDtwqZb.net
>>441
アセットを買ったら付けなくてもいいと思いますよ
456:名前は開発中のものです。
14/07/11 22:30:56.72 hZitemvU.net
逆に付けても構文エラーになるんじゃないのかJSだと
457:名前は開発中のものです。
14/07/11 22:43:28.10 rjhmR5tU.net
>>435
クラスだったんですね、なら当然ですよね・・・
すみませんクラスという事を知りませんでした
458:名前は開発中のものです。
14/07/12 00:02:19.44 NpK5hahF6
SKETCHUP使ってモデル作ってるんだけど
サイコロとかプレステ1のゲームみたいな建物なら普通にインポート出来るんだけど、
ちょっとポリゴン数増やすと(と言っても、1100エッジ、490ポリゴン程度)
テクスチャが表示されなかったり表示されてもむちゃくちゃナナメってたりするんだよね。
同様のトラブル事例があるなら、解決方とか教えて貰えると嬉しいので、よろしくお願いします。
ちなみに手順としては「SKETCHUPでモデリング+テクスチャ貼り付け」→「daeでエクスポート」→
「AutodeskのFBXConverterでfbxに変換」→「Assets→Import New Assetで取り込み」
って感じにやってる。
Assetの中のMaterialフォルダにも、テクスチャはちゃんと入ってるし、
テクスチャ張ったオブジェクトのInspector見ても正しく指定されてる感じなんだけど。
SKETCHUPはVer8。Unityは最新バージョンです。
459:389
14/07/12 01:01:23.55 dGHiydMC.net
>>412-391
なるほど、というわけでCentOS6.5 64bit上で
「-batchmode -nographics」オプションで実行してみました。
-----------------------------
"-batchmode" command line argument is only available when publishing using Unity Pro.
-----------------------------
オーマイガッ!!Proじゃないとダメなのかよ!!
と、絶望に暮れたものの、
Pro版の30日間試用アクティベートを実行していなかったことを思い出しガッツポーズ。
今週末にPro試用版で試してみます。
460:名前は開発中のものです。
14/07/12 09:41:02.80 MznMnlQW.net
>>436の補足
//【C#構造体の挙動】
var vec1 = new Vector3( 1, 2, 3 );
var vec2 = vec1;
vec2.x = 10;
vec2.y = 20;
vec2.z = 30;
Debug.Log( vec1 );
Debug.Log( vec2 );
//////////////////
//上のvec1とvec2は違う値になる。
//vec2 = vec1で行われたのはコピー(値渡し)なので、
//Vector3が構造体なのがわかる。
//////////////////
461:名前は開発中のものです。
14/07/12 09:42:35.91 MznMnlQW.net
>>436の補足2
//【C#クラスの挙動】
var transform1 = gameObject.transform;
transform1.position = new Vector3( 1, 2, 3 );
var transform2 = transform1;
transform2.position = new Vector3( 10, 20, 30 );
Debug.Log( transform1.position );
Debug.Log( transform2.position );
//////////////////
//上のtransform1とtransform2は同じ値になる。
//transform2 = transform1で行われたのは共有(参照渡し)なので、
//Transformがクラスなのがわかる。
//////////////////
462:名前は開発中のものです。
14/07/12 11:50:59.39 tHzLBeeu.net
c#講座ワロタ
言語の質問するレベルで
unityさわってどーすんだ
463:名前は開発中のものです。
14/07/12 11:53:24.90 MznMnlQW.net
プログラム書けなくてもゲームが作れるのがUnityのウリでもあると思うの。
Unityからプログラム始めると変な癖がめちゃくちゃ付いちゃう気もするけど、それはもう副作用だと思うの。
あ、アセット買えばプログラミングしなくて良いかも(おじさんに便乗)
464:名前は開発中のものです。
14/07/12 13:01:53.29 VhoejcNi.net
>c#講座ワロタ
>言語の質問するレベルで
>unityさわってどーすんだ
むしろ、完全にゲーム制作素人でこれからunity始めようという人なら
そういう人って多いと思うけどなー
visualStudio環境と違ってunityは構文チェックがリアルタイムでインスペクタで値が視認できるから
むしろunityでC#勉強する方が良いと思う時がある
便利なものはガンガン使って先人の技術者に追いつくのが若者の義務だろ
465:名前は開発中のものです。
14/07/12 13:05:21.70 VhoejcNi.net
>プログラム書けなくてもゲームが作れるのがUnityのウリでもあると思うの。
ちなみにそれ幻想だから
無理っすよ
466:名前は開発中のものです。
14/07/12 13:19:07.16 E2/tpFdC.net
新しい開発環境に移行する時には
持ち越せるものなんて一部なんだから
考えるだけ無駄
プログラムを仕事にして
モリモリ飯を食いたいならC++覚えときなさいよとしかいえない
467:名前は開発中のものです。
14/07/12 13:34:11.84 WzHyMOXs.net
>>450
COBOLじゃだめなん?(´・ω・`)
468:名前は開発中のものです。
14/07/12 13:35:34.80 CD50KUS/.net
>>448
C#スレだとvar使うなカスって言われるけど
unity的には使っていいの?
469:名前は開発中のものです。
14/07/12 13:43:21.82 ICQ1CTK2.net
ちょっとど忘れしたんだけどいいですか
FBXをインポートしたところにあるanimationのタブのことなんですけど
前までそこにwrap modeを選択する項目があったと思うんですけど無くなったんでしょうか?
バージョンは4.5です
一体どこでwrap modeの設定をしたらいいんですかね?
470:名前は開発中のものです。
14/07/12 14:00:26.19 VhoejcNi.net
>>455
void Start ()
{
var unity的には使っていいの = false;
if (unity的には使っていいの) {
print ("知るかボケ");
} else {
print ("使えるものは親でも使え");
}
}
471:名前は開発中のものです。
14/07/12 14:29:15.37 UPU10c7n.net
言語の問題か unity の問題か 切り分けできるようになってからじゃないと
余計な面倒でつまずきまくって挫折しそうな気もする。
デカルト先生も困難は分割しようぜって言ってたぜ
varは慣れの問題じゃないのか
個人なら好きに使えばいいと思う。
472:名前は開発中のものです。
14/07/12 14:32:20.52 E2/tpFdC.net
var を使うと、
PCと開発者が
この変数の型はなんじゃろなと判断するのに、
余計な処理時間がかかるというだけの話
473:名前は開発中のものです。
14/07/12 14:42:45.67 HbltqQ2e.net
>>455
var xxx = new XXX();
みたいにインスタンスの型が一目瞭然なら使って問題ない。長い型名なら使った方がいい
var ccc = aaa.GetBBB().GetCCC();
みたいなのだとvarじゃなくて型を書いた方が可読性はいい
474:名前は開発中のものです。
14/07/12 14:58:28.61 MznMnlQW.net
>>460その例わかりやすい
そうやってわかってる上で使い分けるのは問題ないよね。
475:名前は開発中のものです。
14/07/12 15:26:02.77 ICQ1CTK2.net
>>456の質問ですけどどうやら解決法がみつかったようです
どうもwrap modeというのはレガシーアニメーションのみで使える項目でmecanimでは
ないようです
アニメーションの一回だけ再生というのをやりたかったのですがmecanimのanimator controllerで
そういう風に作ろうと思います
476:名前は開発中のものです。
14/07/12 16:26:59.61 /cMX2NQ8.net
3Dはやってないけど..animファイルのインスペクタで設定できるLoop timeってやつじゃないの
477:名前は開発中のものです。
14/07/12 19:05:15.45 GgpyiUPf.net
ステンシルバッファってAndroidとiPhoneで環境問わず使えます?
478:名前は開発中のものです。
14/07/12 19:08:06.42 /X2ZqE8P.net
多分、影が使えてれば使えると思うよ
479:名前は開発中のものです。
14/07/12 21:31:49.87 SPaxiS5O.net
>>464
アセットを買ったら簡単ですよ
480:名前は開発中のものです。
14/07/12 23:44:32.48 WVEKrOy4.net
んなわけねーだろクズ
481:名前は開発中のものです。
14/07/13 00:03:22.18 yybQhyfv.net
>>466
どのアセットです?
482:名前は開発中のものです。
14/07/13 01:42:55.59
誰か助けてください!!
3日前からずっとPhysics2D.OverlapCircleAllの使い方を調べているのですが、
どうしてもエラーをなくすことが出来ません。
Googleで検索してすべてのページを検索してもエラーが出てしまう記述しか
見つかりません。
以下の文で何が足りないのでしょうか?
#pragma strict
var Collider2D = new Array();
function Update () {
Collider2D[] colliders = Physics2D.OverlapCircleAll (transform.position,10);
}
エラー文は
(6,19):UCE0001: ';' expected. Insert a semicolon at the end.
と出て、どこに問題があるのかわかりません。
初心者な質問で受け身な姿勢で申し訳ないのですが、
ご教授のほどお願いいたします。
483:名前は開発中のものです。
14/07/13 04:44:03.60 O+nKtuFE.net
背面カリングって自前のシェーダー以外にUnityで設定できますか?
484:名前は開発中のものです。
14/07/13 06:38:32.41 zdkzLhGH.net
メッシュフィルターやレンダラーには
カリングの設定はないんでないんじゃないかなぁ。
485:名前は開発中のものです。
14/07/13 07:40:39.46 O+nKtuFE.net
>>471
そうですか
モデルの法線を調整する方が早そうですね
ありがとうございます
486:名前は開発中のものです。
14/07/13 12:09:34.81 Qr6w5KgR.net
>>472
アセット買ったほうが早いですよ
487:名前は開発中のものです。
14/07/13 14:02:54.78 hOTnF1V9.net
昨日の>>456で質問したものですがwrap modeの場所はわかりました
URLリンク(i.imgur.com)
アニメーションクリップをデバッグビューで表示すると出てきます
でもこのように表示された項目が灰色の半透明になってて編集できません
アニメーションクリップのインスペクタの項目を編集するにはどうしたらいいでしょうか?
488:名前は開発中のものです。
14/07/13 15:14:35.00 YPuktG6+.net
#pragma strict
public var door : GameObject;
function OnTriggerEnter(col:Collider){
Debug.Log("アタリマシタ");
if(col.tag =="Player"){
door.transform.position = Vector3(door.transform.position.x,
door.transform.position.y+2.5,
door.transform.position.z);
}
Destroy(gameObject);
}
これでドアがしまるのですが「じょyじょにしまっていくようにするにはどうすべきでしょうか」
489:名前は開発中のものです。
14/07/13 15:16:00.39 9oSv9nSA.net
>>474
RigタブでAnimationTypeをLegacyにしてないとか
490:名前は開発中のものです。
14/07/13 15:22:21.15 luR7wExU.net
>>475
door.transform.position.y+1,
491:名前は開発中のものです。
14/07/13 15:39:53.45 hOTnF1V9.net
>>476
やっぱりレガシーが必須なんでしょうか
一日目の結論と同じですね
二日間悪戦苦闘しましたがレガシーが必須ならもう諦めたいと思います
492:名前は開発中のものです。
14/07/13 15:56:58.50 Qr6w5KgR.net
>>478
アセットを購入したら解決しますよ
諦めるのは早いでしょう
493:名前は開発中のものです。
14/07/13 16:05:57.21 OyPqFWy5.net
アセットアセットアセットアセットアセットアセットアセットアセットアセットアセットアセットアセットアセット
494:名前は開発中のものです。
14/07/13 21:20:45.27 34qkE2Ni.net
Animatorでwrapmodeは無理かなあ
でも使えなくなるのはPing-Phongだけだし
どうしてもやりたいならアニメーションクリップの先頭と末尾にイベントを仕込んで
再生スピードを先頭では1に、末尾では-1に変更するようにすればなんとかならんか
試してないのでわからんけど
495:名前は開発中のものです。
14/07/13 22:25:38.17 hOTnF1V9.net
>>481
そうですそうです
そのpingpongってのが引っかかってwrap modeに固執してたんですが
pingpong以外のモードに代替方法があるなら別に良いですよね
496:名前は開発中のものです。
14/07/14 01:34:30.26 dIdsie32d
rigidBodyとtransform、のrotationの違いが分かりません。全く一緒ですか?
497:名前は開発中のものです。
14/07/14 01:49:10.75 dIdsie32d
unityのスクリプトリファレンスを読んでも意味変わらん。
そのサンプルプログラムを実際に動かしてみないと理解出来ないからウェブプレイヤーで実行出来たら便利。
どうか調べたらすぐに理解出来るようにページを改変して欲しい。
498:名前は開発中のものです。
14/07/14 01:49:57.31 vwXVr9J1.net
オブジェクトに対して、今のrotationからy軸だけ180度回転させたいと思ったので下記のように書きました
transform.rotation = Quaternion.Euler(transform.rotation.eulerAngles.x, transform.rotation.eulerAngles.y+180, transform.rotation.eulerAngles.z);
しかしこれだと180度回転できる時もあれば、全然回ってくれない時もあるしで、何が悪いのかよくわかりませんでした。
どなたか良い方法ありましたらご教授いただきたく、よろしくおねがいします
499:名前は開発中のものです。
14/07/14 02:20:40.26 2bX0nnrh.net
>>485
アセットを購入すればできると思います
500:名前は開発中のものです。
14/07/14 02:23:32.94 ZIoHdMpu.net
>>485
必ず一回呼ばれるのか?
二回以上呼ばれたら180+180で元通りだ
501:名前は開発中のものです。
14/07/14 02:32:06.77 vwXVr9J1.net
>>487
なるほど、それは盲点でしたが確かに
後で検証してみます
502:名前は開発中のものです。
14/07/14 02:47:00.40 vwXVr9J1.net
>>487
確認してみたところ確かに場合によっては二回以上呼ばれてましたのでそれを直すと解決しました
回転系はややこしいので角度の求め方・文法に問題があると思い込んでました、
ナイスフォローありがとうございます
503:名前は開発中のものです。
14/07/14 02:49:08.66 729LSe1l.net
ほんとうにそこかよw
504:名前は開発中のものです。
14/07/14 02:50:28.15 ZIoHdMpu.net
マジかww
当たったw
505:名前は開発中のものです。
14/07/14 03:11:45.86 6OPlBEFh.net
エスパーがいると聞いて飛んできました
506:名前は開発中のものです。
14/07/14 03:28:36.82 2FgZyXyP.net
てす
507:名前は開発中のものです。
14/07/14 03:29:06.93 2FgZyXyP.net
iTweenを落としてみたので取り合えずオブジェクトにアタッチして、
iTweenTest.csで
public class iTweenTest : MonoBehaviour {
/*
* ローカル座標系で指定座標へ移動・回転
* 第1引数:ターゲットGameObject, 第2引数:移動に関する各種パラメータのハッシュ
* iTween.Hashでキーバリュー形式のハッシュ作成
*/
508:名前は開発中のものです。
14/07/14 03:29:42.63 2FgZyXyP.net
public GameObject gameobject;
void Start() {
iTween.MoveTo(this.gameObject, iTween.Hash(
"position", Vector3.zero,
"time", 5.0,
"oncomplete", "complete",
"oncompletetarget", this.gameObject,
"easeType", "easeInQuad",
"loopType", "loop"
//"space", Space.worldでグローバル座標系で移動
));
/* iTween.RotateTo(this.gameObject, iTween.Hash(
"y",180,
"time", 5.0
));
*/
}
509:名前は開発中のものです。
14/07/14 03:30:07.01 2FgZyXyP.net
//終了時実行メソッド
//iTween.Stop(gameobject, アニメーションタイプ(オプション);
//ターゲットのTweenを終了する
public void complete() {
iTween.Stop(this.gameobject, "move");
}
}
と設定して実行したら
NullReferenceException: Object reference not set to an instance of an object
iTween.RetrieveArgs () (at Assets/Assets2/Plugins/Pixelplacement/iTween/iTween.cs:6811)
iTween.Awake () (at Assets/Assets2/Plugins/Pixelplacement/iTween/iTween.cs:6559)
ってエラー出たんですが何か設定が足りなかったのでしょうか?
510:名前は開発中のものです。
14/07/14 05:40:42.39 1o9oiTSA.net
>>496
あまり役に立つかわかりませんが
インスペクタからオブジェクトを指定するときアセットのオブジェを指定していないでしょうか?
もしそうでしたらシーンのオブジェクトを選択すれば解決するかと…。
iTweenについてあまり詳しくないのですが…
iTween.Stop(this.gameobject, "move");
のgameobjectの小文字のoが大文字のOである可能性が…?
これが原因とは思えないですがtimeの数値にf(浮動小数点)が足りないということはないでしょうか。
"position",0を簡単なレベルの"x",0にしてみるなど…。
"loop"はiTween.LoopType.loop
"easeInQuad"はiTween.EaseType.easeInQuadと略さないで書いてみたり…なんて(笑)
話がそれますが、利便性を重視(?)したオブジェクトの取得方法を書いときます
private GameObject obj;
public string objname = "";
void Awake (){
obj = GameObject.Find(objname);
}
インスペクタで任意のオブジェ名を指定する方法にし
this.gameObjectの部分をこの場合だとobjに書き換えれば
名前だけでオブジェクトを指定できるのでちょっと便利です。
コードも少し節約?
あと生成されたオブジェクトにも対応できる利点があります。
あれ、ちょっと適当なこと言ってるかも…直接取得でもできるかな…この話はスルーしてください…。
511:名前は開発中のものです。
14/07/14 05:58:33.97 1o9oiTSA.net
先週あたりに質問したばかりなのですがエアコンが壊れて限界なのでついでに質問させてもらいます…。すみませんorz
長いですが質問までの経緯も載せておきます…
質問の内容は文字数オーバーだったので次スレを読んでもらえればと…
【出来事】
先日Blender(3Dモデリングソフト)を使ってキャラのアクション(モーション)までを作ってUnityでうまい具合に意図した動きをしてくれたのですが
Unityで3Dのキャラが扱う剣の軌跡エフェクトについて試行錯誤しています。
標準コンポーネントのTrail Rendererではタイプがビルボード(なのかな…?)なのでうすっぺらさを感じます。
数種類組み合わせれば少しはいいのですがチャージなどや振った時のみ軌跡を適用するといったスクリプトでの制御もやりにくいと思い
このさいBlenderのアクション制作時に追加でエフェクトを入れようかと思ったのですが
ブレンダーの「エフェクトを作る」参考サイトには軌跡の様なエフェクトはなく
そもそもレンダリングを前提としている話でパーティクル(Blender特有機能?)などを多用した物が多く
FBXで書き出して付いてくるような品物ではないので悩んでいました。(一度ダメ元で作ったのですがパーティクルで作ったのでUnity上ではなにもおこらず…)
そんな時にあるサイトでMayaという3Dソフトでモーションにエフェクトを追加しているブログを見かけ
Mayaをインストールして半日かけて基本操作などを覚えてきたのですが
Blenderから作ったキャラをFBX形式で読み取らせるとオブジェはメチャクチャ巨大、個別にした武器とキャラは離れているわ
ボーンの設定がところどころ(ハンドル用ボーン)消えているわ、さらにはボーンの操作は回転しかできないのっ!?IKを付ければどうにかウウゥゥゥンモウイヤン
資源の共有は難点が多いと知りやる気も薄れそもそも初心者が3Dソフトを2つも扱おうとすること事態おかしかったんだ(´・ω;`)でもMayaに魅力を感じたんです。
っと、結局マヌケなことにまたBlenderに戻っていい方法はないか探している次第です。
これ以上無駄な労力を使い変な方向に進むのも危ないと思い(熱さ的にも)
質問をすることにしました。
512:名前は開発中のものです。
14/07/14 05:59:09.34 1o9oiTSA.net
【質問】
そもそも剣に対して軌跡を付けるいい方法はどのようなものがあるのでしょうか?
やはり3Dソフトでエフェクトを加えておくべきなのでしょうか?
みなさんはいったいどのように軌跡を実装しているのかを教えていただければ嬉しいのですが
このひと手間をどうかよろしくお願いします…
513:名前は開発中のものです。
14/07/14 06:35:33.12 KntiLZet.net
武器の持ち買えとかないなら最初から作っといちゃってもいいけどな。
アセットちゃんじゃないがアセット使えば?
フリーのが二つほどある。
まぁどれくらい使えるかは知らんが
URLリンク(www.assetstore.unity3d.com)
URLリンク(www.assetstore.unity3d.com)
プロシージャルにメッシュ生成するという方法もある。
上のアセットも似たようなことはしてるかもしれん
URLリンク(forum.unity3d.com)
514:名前は開発中のものです。
14/07/14 07:59:53.54 h1Bdtly/.net
アセットプロに聞きたいんだが
アセットDLしてコードとか使い方理解するの難しくないの
515:名前は開発中のものです。
14/07/14 09:53:13.04 2bX0nnrh.net
>>501
アセットを買えば難しくないですよ
516:名前は開発中のものです。
14/07/14 11:55:17.46 cd1uIHF5.net
人気あるやつは日本語で解説してるサイトとかチュートリアル動画とかがあるから簡単
人気出るってことはそれなりに使いやすいってことでもあるし
517:名前は開発中のものです。
14/07/14 12:29:26.59 ux/6sItE.net
チュートリアル動画はともかく
日本語の解説あるところ利用しないとダメな人って
本当にいるのか?
518:名前は開発中のものです。
14/07/14 14:37:56.43 ZIoHdMpu.net
一つ質問です
今アニメーションクリップ付きのプレハブを作ったんですけどそれをシーンに配置します
そしたら思い通りのアニメーションが再生されてこれはこれでオッケーなんです
で、そのプレハブを実行時に動的にinstantiateしたんですけどアニメーションが再生されません
それで実行中にその実行中に生成されたものをチェックしてみたらanimator controllerの所が
空になってるわけです
これは仕様なのでしょうか?
実におかしな挙動だと思うのですが
プレハブを動的に生成した場合は生成した時にいちいちanimator controllerをくっつけて
やらないと駄目なんでしょうか?
519:名前は開発中のものです。
14/07/14 15:09:11.21 KntiLZet.net
そんなことはない。手元ではできてる。
なにかがおかしいだけ。
520:名前は開発中のものです。
14/07/14 16:49:36.68 ZIoHdMpu.net
すいません
完全解決しました
まずジェネレーターオブジェクトのようなものを作ってそこに生成したいオブジェクトを
登録してたわけですね
そしてそのジェネレーターが実行時にinstantiateで生成するというやり方だったんですが
その登録してたオブジェクトがanimator controllerがついてない古いバージョンだったんです
だから何度生成してもanimator controllerがついてないバージョンが生成されたというわけです
単なる凡ミスでした~
521:名前は開発中のものです。
14/07/14 18:53:03.26 dIdsie32d
UnityのツールバーからAssets→SyncMonodevelepProjectをクリックして、Monodevelopに
ブレークポントをつけてからデバッグしようとしたのですが、うまくデバッグが出来ずブレークポイント
でちゃんと停止してくれません。
今までは問題なくデバッグが出来ていて、そのときのデバッグ中のブレークポイントは赤色だった
のですが、デバッグ出来ない今は白色に変わっています。
手順を動画に収めましたのでどうか見てください。
URLリンク(youtu.be)
522:名前は開発中のものです。
14/07/14 19:06:04.16 729LSe1l.net
しってた
523:名前は開発中のものです。
14/07/14 19:32:20.74 6WQo2nmC.net
UniWiiのwindows版ってどこかにないですか?
UniWiiCommunity行ってもエラーでダウンロードできないです
524:名前は開発中のものです。
14/07/14 21:20:38.61 1o9oiTSA.net
>>500さん
ありがとうございます。
早速試してみようと思います!
525:名前は開発中のものです。
14/07/14 22:46:46.13 h1Bdtly/.net
キャラコン使ってモノを操作するとき左右に動いてる時オブジェクトやカメラの向きを変えるのってどうやりますか
526:名前は開発中のものです。
14/07/14 23:23:12.05 85QOXmxl.net
>>512
アセットストアで検索しましょう。
527:名前は開発中のものです。
14/07/14 23:57:20.77 29nUKgyp.net
もうちょい具体的に書いてくれ
オブジェクトやカメラをキャラに向けるならLookAtを使うが
528:名前は開発中のものです。
14/07/15 03:04:00.93 ZRDIQswu.net
>>497ありがとうございます
アセットのオブジェとはiTweenがアタッチされているオブジェクトの事でしょうか?
シーンビューにあるTestオブジェクトにiTweenとiTweenTest.csを付けて、
インスペクターでiTweenTest.csのGameObjectにTestオブジェクトを指定しています
それと指摘頂いた
public GameObject gameobject;
iTween.Stop(this.gameobject, "move");
を小文字のoから大文字のOに修正しました
public GameObject gameObject;
iTween.Stop(this.gameObject, "move");
529:名前は開発中のものです。
14/07/15 05:06:43.85 8i3QXvER.net
>>515
自分が引っかかった単純なところなのであまり解決に繋がるかわかりませんが
インスペクターでiTweenTest.csのGameObjectにオブジェクトを指定するウィンドウを出したとき
その画面の左上あたりにAssetsとSceneと2つのタブがあると思いますが
もしTestオブジェクトのプレハブなどを作っていたり
アセットにオブジェクトを読み込んでからシーンに配置した場合
アセットにもTestオブジェクトという名前のものが存在し
シーンにもTestオブジェクトが存在するかと思います
この時誤ってアセットにあるTestオブジェクトを指定していると
シーン上に存在するオブジェクトではないので受け取れないという感じです。
しっかりシーン上のオブジェクトを選択してあげればOKかと。
もしそれが原因でしたら
NullReferenceException: Object reference not set to an instance of an object
このエラーは消えると思いますが
残りの2つのエラーもそれが原因だといいのですが…
530:名前は開発中のものです。
14/07/15 06:08:22.64 ZRDIQswu.net
>>516
なるほど!
あまり考えずにシーンから選択していましたが気をつけます
エラーは消えなかったんですがuntyAnswersをgoogle翻訳したら
難解な日本語訳の中に「オブジェクトには直接iTween.csはアタッチしない」という文だけ
理解できたので外したらエラー消えました
>>516さんのアドバイスも色々参考になりました
ありがとうございました
531:名前は開発中のものです。
14/07/15 08:47:19.59 10V7SkVq.net
>>517 解決したようだけど… iTweenは適切な引数でスタティックメソッドを呼ぶだけででおk。インスペクタ上の操作は必要ない。 iTweenインスタンスはiTween自身が必要なタイミングで生成破棄を行うので、アタッチしたiTweenインスタンスは本来生成時に内部的に行われているはずの操作が正しく行われていないのが例外の原因ではないかと。
533:名前は開発中のものです。
14/07/15 09:08:30.28 /3JuiaOh.net
まとめると
iTweenは悪くない、君の使い方が間違っているだけだ
ということになります
534:名前は開発中のものです。
14/07/15 10:28:21.92 RsaDysOO.net
↓の配置でNav Meshを使ってオブジェクトを移動させようとすると
障害物と障害物の間に挟まって目的地に辿りつけないのですが
対策をご存知の方、おりませんでしょうか……。
★
■
■
●
★ = SetDestinationで設定した目的地
■ = Nav Mesh Obstacleを適用した障害物
● = Nav Mesh Agentで移動するオブジェクト
AgentとObstacleに設定しているRadiusだと
絶対に間を抜けられないはずなので迂回してくれると思ったのですが…。
535:名前は開発中のものです。
14/07/15 12:32:43.27 e0wLQq5g.net
>>520
違うアセットを買えばいいと思いますよ
536:名前は開発中のものです。
14/07/15 12:35:18.49 9BFzjjQL.net
>>520
障害物にstaticつければいけると思うよ
537:名前は開発中のものです。
14/07/15 12:38:27.22 1Y4H5R4U.net
>>520
アセットを買えば迂回してくれるようになりますよ
538:名前は開発中のものです。
14/07/15 13:02:34.38 RsaDysOO.net
>>521
ありがとうございます。
ただ、今回使用していたのは購入したアセットではなく
標準で用意されている機能でした。
>>522
ありがとうございます。
staticを適用したところ、迂回してくれるようになりました。
ただ、staticを適用したあとでBakeをし直す必要があり
障害物はPrefab化して動的に生成する予定であるため
この方法ですと解決できませんでした。
前提の説明が足りず申し訳ないです。
>>523
アセットの追加も検討してみます。
539:名前は開発中のものです。
14/07/15 13:56:01.41 71xzcfVJ.net
一つ質問なんですが
mecanimのアニメーションイベントのことなんですけど
追加できるイベントってそのアニメーションクリップの1ループの範囲内ですよね?
例えばそのアニメーションが0.25秒のものだったとしてそれをループさせて0.75秒の
地点でイベントを呼び出すというのはどうやったらいいですかね?
今はやり方がわからなくてタイマーを作ってやってみようと思ってるのですがもっと
エレガントな方法があったら教えて下さい
540:名前は開発中のものです。
14/07/15 13:58:35.28 e0wLQq5g.net
>>525
アセットを購入するのが一番エレガントです。
541:名前は開発中のものです。
14/07/15 14:19:20.18 W+veCJPE.net
アフタヌーンからエスプレッソを飲みながらやってはどうか
542:名前は開発中のものです。
14/07/15 14:44:36.42 YpNJfnBq.net
>>525
エレガントかはわからないけれど、
呼び出し先のメソッドで何回呼び出されたかのカウントを取るっていうのはどうかな?
0.25秒で1ループなら、0.75秒目に3回目の呼び出しが来るはず。
543:名前は開発中のものです。
14/07/15 14:49:52.61 71xzcfVJ.net
>>528
そうですね
秒で直接指定できないならそういう方法がいいんじゃないかと俺も思ってました
ありがとうございます
544:名前は開発中のものです。
14/07/15 17:10:50.41 qV5tIR+q.net
>>525
元々の3ループをつなげて1ループにしたアニメーションクリップを使うとか。
545:名前は開発中のものです。
14/07/15 17:56:55.77 71xzcfVJ.net
>>530
その方法も考えましたがちょっと力技過ぎますね
いちいちアニメーション付けまで作業工程を遡らなければならないのが
良くないです
やっぱりunity単体で完結させたいですから
546:名前は開発中のものです。
14/07/15 18:08:08.22 e0wLQq5g.net
>>531
アセットを買えばUNITY単体で完結しますよ
547:名前は開発中のものです。
14/07/15 21:14:13.29 /XGBxAHL.net
なんだろうこのなんか嫌な感じ
548:名前は開発中のものです。
14/07/15 21:16:14.25 /XGBxAHL.net
あれ?番号飛んでる
ああ、アセットおじさんは普通に糞なんだけどね
549:名前は開発中のものです。
14/07/15 22:41:16.24 rm+4PMZC.net
テキパキ過ぎる返答のせいだな。
550:名前は開発中のものです。
14/07/15 22:56:56.50 dqlghbh0.net
if(Input.GetButton("Vertical")){
if(Input.GetButton("Fire1")){
transform.eulerAngles.y += anglesSpeed;
}
if(Input.GetButton("Fire2")){
transform.eulerAngles.y -= anglesSpeed;
}
}
こんな感じに「a」「d」を押すとカメラの方位が変わるようにしてるのですが、
これを見る通りFire1.,2にad設定しています
すでに設定してあるverticalだけでやる方法はありますか
551:名前は開発中のものです。
14/07/15 23:14:06.16 F83bfZXz.net
if(Input.GetAxis("Vertical")>0)transform.eularAngles.y+=anglesSpeed;
else if(Input.GetAxis("Vertical<0)transform.eularAngles.y-=anglesSpeed;
とでもやっておけばいいんじゃね?
設定の仕方にもよるが端的に
transform+=Input.GeaAxis("Vertical")*anglesSpeed;
だっていいと思う。
あと普通Verticalに設定してあるのはswではないか?
552:名前は開発中のものです。
14/07/15 23:15:11.94 W+veCJPE.net
よくわからないけど
やりたいことは if( x> 0){}else{}
やない?
553:名前は開発中のものです。
14/07/15 23:15:15.32 F83bfZXz.net
すまん、下の式、
transform.eularAngles.y+=Input.GeaAxis("Vertical")*anglesSpeed;
だった。
554:名前は開発中のものです。
14/07/16 03:56:21.25 qweM4gzw.net
宙返りするアニメーションをプレビューで見てたら、ピボットの赤い矢印がY軸上で一回転してますが、
このピボットの回転をしないで、アニメーション上の回転(宙返り)をさせることって出来ないんでしょうか。
Root Transform Position(Y) のBake Into Poseにチェック入れたら出来るだろうと思ったのですが、
出来なかったので質問します
用途はラグドールとメカニムを力技で合成させる時に、宙返り中だとY軸で(意図しない方向に)180度回ってしまう問題を解決するためです
555:名前は開発中のものです。
14/07/16 04:21:45.04 BkB0VUOA.net
Root Transform RotationのBakeIntoPoseにチェック入れればいいんじゃね?
556:名前は開発中のものです。
14/07/16 04:52:23.62 qweM4gzw.net
>>541
あ、そっちはすでにチェック入ってましたがだめでした
557:名前は開発中のものです。
14/07/16 05:23:57.01 BkB0VUOA.net
それでもダメなんだ。っていうかそれよくわかんないな。
ラグドールってその状態の元ボーンのTransformの状態を
コピーして置き換えていくんだからそれでずれるっておかしくね?
558:名前は開発中のものです。
14/07/16 05:35:30.29 BkB0VUOA.net
あ~、合成した時になんか思った軌道にならない、って話かな~。
オイラーとかじゃなくてQuatenionの合成とかでやってもダメなんだろうか。
回転自体はどうにもならんと思う。だってそういう動きなのだからw
559:名前は開発中のものです。
14/07/16 10:02:11.74 i8dJnKLi.net
>>542
アセット買えばいいと思います
560:492
14/07/16 14:57:49.20 qR5GXcPG.net
Obstacleを設定したオブジェクトを迂回させるには
Curveオプションの設定が必要でPro版でないとできないようでしたので、
ちょっと動きがぎこちないですがA*Pathfindingを導入し
障害物を生成する都度Scanし直す方法で対応しました。
答えてくださった方々ありがとうございました。
561:名前は開発中のものです。
14/07/16 21:34:31.63 CiLXwGWt.net
proの30日トライアルにはビルド等に制限があったりするんでしょうか?
購入した場合と全くかわらない機能を30日試せると思っても大丈夫?
562:名前は開発中のものです。
14/07/16 22:12:30.85 NJUdCish.net
>>547
えっ?違うの?!
563:名前は開発中のものです。
14/07/16 22:44:57.86 NJUdCish.net
初歩的なことなんですが、
よく、教本では、キャラクターのjump操作にCharacterControllerのMoveで、y軸を引数に呼び出すと……動きが
チープなんですが、良い案あるでしょうか?
やっぱり、フラグ管理で毎フレーム動かすのが、すまーとなんでしょうか?
564:名前は開発中のものです。
14/07/16 23:43:22.61 FQwk5+9m.net
チープってのは等速で上昇してるとかそんな感じ?
y軸方向の速度をジャンプ時に与えて、速度に重力加速度を毎フレーム加えればおk
565:名前は開発中のものです。
14/07/17 00:15:09.93 wTGBPqxd.net
>>549
アセットを買うのがもっともスマートだと思いますよ
566:名前は開発中のものです。
14/07/17 01:34:26.70 uNHBv2H0.net
>>547
そう。
でも成果物は販売してはいけない、という規約がある。
567:名前は開発中のものです。
14/07/17 01:55:12.25 vMu5f4aL.net
でも別に黙って売ってもバレないっしょ?
568:名前は開発中のものです。
14/07/17 01:58:22.75 oGA7hd9n.net
デスヨネー
569:sage
14/07/17 02:07:43.17 HH5o0zav.net
>Unity 5.0 の正式リリースはいつですか?
>発売日は近日中に発表されます。
FAQでずいぶん前に見たのですが、発売日発表はいつごろになりそうでしょうか?
570:名前は開発中のものです。
14/07/17 02:11:58.72 uNHBv2H0.net
>でも別に黙って売ってもバレないっしょ?
右下にtrial versionの表示が出てるのですぐわかる。
571:名前は開発中のものです。
14/07/17 02:46:20.90 jBI9XT1H.net
>>550
キャラクターが、上へ瞬間移動してその後、重力に従って落ちるような挙動が、少しチープかなと思ったのですが、アニメーションとかで、誤魔化せるものなんでしょうか?
572:名前は開発中のものです。
14/07/17 02:49:10.54 uNHBv2H0.net
ジャンプモーションがチープなんじゃ?
動画どこかにアップできんの?
573:名前は開発中のものです。
14/07/17 02:55:37.08 2ftianM+.net
>>557
そりゃいっぺんにy軸移動してからgravityで落下するならそうなるんじゃ?
16歳
574:以上なら高校生の物理でこの辺習ってるはず
575:名前は開発中のものです。
14/07/17 03:03:17.78 jBI9XT1H.net
>>559
こう、jumpさせたら、幾秒間は上昇動作させたいなって考えていたのですが、move関数は、1フレームで、Vector分移動処理しちゃうんで、瞬間移動に見えちゃうんですね……
やっぱり、タイマー関数とかで、上昇時間を管理するか、いっそ物理演算かitweenでうまくやってみようと考えていたのですがいい手はありますでしょうか、
初心者なんで、知らずうちに性質を理解せずに場違いなSCRIPTをくんでしまいそうで
576:名前は開発中のものです。
14/07/17 03:13:14.75 2ftianM+.net
>>560
URLリンク(unity3d-study.seesaa.net)
ここのデモとかみてみそ
Moveを使うときに移動量ではなく速度をつかった情報に変換しているのがミソ
577:名前は開発中のものです。
14/07/17 16:23:56.72 Xf5QGzbQ.net
>>560
アセットを買えばいいとお思いますよ
578:名前は開発中のものです。
14/07/17 16:53:42.69 wiA9wkED.net
unity5.0とりあえず日本語対応してくれればいいなぁ…
579:名前は開発中のものです。
14/07/17 17:14:29.45 Lxq+ngC8.net
インターフェイスA定義
インターフェイスB定義
public コンポーネント型 cmp; //フィールド
int tes; //フィールド
Start(){
インターフェイスA{
cmpにGetComponentでコンポーネント格納
tes = cmp.test;
}
}
OnCollisionEnter(){
インターフェイスB{
ここでcmpを参照してもnullになっている
}
}
となってインターフェイスB起動時にはStart内で取得したcmpがnullになるのですがなぜですか?
これはインターフェイスB内でも再度GetComponentで再度取得するしかないですか?
580:名前は開発中のものです。
14/07/17 17:49:23.72 Xf5QGzbQ.net
>>564
アセットストアをかえばいいよ
581:名前は開発中のものです。
14/07/17 18:10:27.56 hEK26ORI.net
>>564
通常であればcmpが勝手にNULLになったりはしない。
ゲームオブジェクトが破棄されたか、
Startが呼ばれる前にOnCollisionEnterが呼ばれているか、
そもそも取得に失敗しているか(tes=cmp.testでヌル参照エラーが出ていないようなので取得はできていると思われる)
まずは君の言うインターフェイスが何なのか説明せよ。話はそこからだ。
582:名前は開発中のものです。
14/07/17 18:26:13.37 fnThG9Fp.net
インターフェースの実態をインスペクタで設定してるんだとしたらStartよりAwakeの方がいいだろうな
583:名前は開発中のものです。
14/07/17 19:17:38.41 4SRZvdEY.net
エスパーすると
newで作ってるからstartが呼ばれてない
エラーをはいてるのはどこかで新しく生成されたもの
584:名前は開発中のものです。
14/07/17 20:48:44.64 Lxq+ngC8.net
皆様、レスありがとうございます。
>>566様の仰る通り、LoadLevelを別オブジェクトでやっていて
処理順序の関係でLoadLevel実行(シーン切り替えのため全オブジェクト破棄)
→>>564の処理、という順序になっていたため、破棄されてnullになっていたようです。
すみませんでした。
585:名前は開発中のものです。
14/07/17 20:50:21.89 HX4r5DgB.net
このスレのエスパー最強っぷりときたら…
586:名前は開発中のものです。
14/07/17 21:07:48.78 Lxq+ngC8.net
何度もすみません、
A (GetButtonで十字キーを取ってrigidbodyで(物理演算で)移動し、Bに衝突する)
B (Aに衝突される側)
AがBに衝突した場合、Bにアタッチされているコードが先発で実行され、ぶつかるAのコードが
後発で実行される、という実行順になるのですが、スクリプトを持った
複数のオブジェクトが同時に処理の条件を満たした場合、どちらが先発で実行されるか
っていうのは、なにかルールがあるのでしょうか?
587:名前は開発中のものです。
14/07/17 21:32:33.41 xixtOXJK.net
この辺
URLリンク(docs.unity3d.com)
URLリンク(docs-jp.unity3d.com)
あとこの辺
588:とか ttp://docs.unity3d.com/Manual/ExecutionOrder.html
589:名前は開発中のものです。
14/07/17 21:46:17.36 Lxq+ngC8.net
ありがとうございます。
見てみます
590:名前は開発中のものです。
14/07/17 22:35:21.66 Xf5QGzbQ.net
>>571
アセットを買って使えばルールも気にならなくなるでしょう
591:名前は開発中のものです。
14/07/18 00:42:34.80 huwzbbpi.net
このアセット連呼してる人は楽しいと思ってやってるの?
いわゆる専門板に出没するキチガイ?
592:名前は開発中のものです。
14/07/18 01:17:12.35 /DogE5jk.net
アセットに出品してるから買って欲しいんだろ
こういう所で宣伝するしかないしな
目障りだが中途半端に気持ちもわかるわ
593:名前は開発中のものです。
14/07/18 01:18:46.07 9Y3bOHpV.net
いや~、昔からいた荒らしの人じゃないの?
アセットちゃんに成り果てたのはいつごろからか、
なんで戦略転換したのかはよくわからないけど。
594:名前は開発中のものです。
14/07/18 02:05:51.46 tCmJHDVE.net
質問なんですが条件つきでTextureを表示するにはどうしたらいいですか?
たとえばNPCに話しかけたらクリア!ってテクスチャ出てくるとか
クイズで正解なら正解!不正解なら不正解!とか。
595:名前は開発中のものです。
14/07/18 02:11:37.85 9Y3bOHpV.net
空のオブジェクトにそういう管理するスクリプトつけておいて
正解なら正解!ってGUIテクスチャ表示させればいいんじゃね?
596:名前は開発中のものです。
14/07/18 04:22:22.53 M6ZbkjfR.net
特定の条件を満たした時particleSystem.Play()で画像を表示しているのですが
起動するのに一秒ぐらい掛かってしまいます。
すぐに起動できないものなんでしょうか?
597:名前は開発中のものです。
14/07/18 04:43:10.26 9Y3bOHpV.net
正直パーティクルでやるという発想はなかったが
Prewarmとかにチェック入れとけばそんなに時間かからんかもね。
598:名前は開発中のものです。
14/07/18 04:53:51.74 AzyJZxGj.net
>>580
自分も同じことで悩んだことがあった
EmissionタブのRateを0にしてBurstsをTime0、Particles1で設定したら成功した
なんか納得いかないが
599:名前は開発中のものです。
14/07/18 05:35:25.55 M6ZbkjfR.net
>>581
チェックは入れていたんですが、もっと早くしたいという感じでした。
画像を正面から状態を維持するのにパーティクルシステムが丁度よかったんですが、問題あったりするんでしょうか?
>>582
イメージ通りにできました。
ちょっと変測的なんですね。ありがとうございました!
600:名前は開発中のものです。
14/07/18 09:55:27.54 72YdEWAB.net
やっぱ基本のできとらん子はどうにもならんな
601:名前は開発中のものです。
14/07/18 11:25:02.21 TJoonMiY.net
>>583
アセットを買えばできると思いますよ
602:名前は開発中のものです。
14/07/18 11:50:03.03 8OY/hcjx.net
自分の知ってる知識を組み合わせて自分の作りたいものを作る。
それができるやつは応用力があるから、後から知識を入れても十分伸びる。
勉強勉強と言いながら知識ばかり貯めこんで、ゲームが完成しなかったら意味がない
まずはパーティクルでもなんでも使って、作りたいゲームを作るといいよ
という持論(・ω・)
603:名前は開発中のものです。
14/07/18 12:23:25.45 /oNhM106.net
>>586
仰るとおり、アセットを買って作りたいゲームを作るのがUNITYだと
私も思います。
まずはアセットで検索して買うのがUNITYの近道です
604:名前は開発中のものです。
14/07/18 12:30:55.05 /lzsj1C8.net
ニコニコが「東京ゲームショウ」に初出展
ユーザー発の文化「自作ゲーム」「ゲーム実況」をブース展開
~出展に向けて「ニコニコ自作ゲームフェス4」の開催も決定~
URLリンク(www.4gamer.net)
605:名前は開発中のものです。
14/07/18 14:01:45.24 4kJlcQLw.net
山肌を電車が走るゲームを作っているのですが、
山肌にの勾配にそって線路のオブジェクトを綺麗�
606:ノ等間隔で配置する方法はあるのでしょうか
607:名前は開発中のものです。
14/07/18 16:12:47.09 /oNhM106.net
>>589
アセットを購入すればできると思いますよ
608:名前は開発中のものです。
14/07/18 17:20:31.77 9Y3bOHpV.net
>>589
Unity自体にはそのような固有機能はない。
自分で全部実装は可能。
609:名前は開発中のものです。
14/07/18 17:22:01.98 /DogE5jk.net
>>589
結構、しっかりしたプログラミング技術ないと出来ないんじゃない?それ
今後、電車動かす事とか考えると尚更…
ヒントになる考え方は「Unityで覚える遊びのアルゴリズム」本で見かけたよ
良い本なので読んでみると良いと思う
610:名前は開発中のものです。
14/07/18 17:45:17.75 E/+clVjm.net
>>589
線路がテクスチャベースならEasyRoads 3D ProってAssetが使えるAssetStoreで検索してチュートリアルビデオが5個ほどあるから見てみると良い
Asset買わなくてもTerrainにそってSplineを作りテクスチャを貼るだけならUnityの英語Wikiにサンプルがあるが
TerrainにSplineでテクスチャ貼り付けるだけだと地面側との前後関係で割と破綻するので実際に作り込むならSplineの直下のTerrein情報も操作するようなEditorScript作らないと辛いよ。
3Dモデルな線路を張り込むようなAssetは無いし実際モデルをMatrix Blendでこねるのでも無理
611:名前は開発中のものです。
14/07/18 17:47:39.18 PvmDoNWL.net
unityでゲームを作ってるのですが、
手軽に使えるモーション作成ソフトを探しています。
だれかおススメのソフトはないでしょうか?
できれば無料のものでお願いします。
612:名前は開発中のものです。
14/07/18 18:47:44.34 9Y3bOHpV.net
そういう話ならBlender一択だと思う。
Blender自体は超多機能ソフトだけど
モーション作成の機能だけ覚えればいいので。
2.7でFBX入出力もかなり改善されたという話だし。
ちょこまかしたのは色々あるんだが多分手軽に使えるってほど出来上がってない。
MMD4Unityと連携しながらMMD系使うってのもありっちゃありだろうが。
5千円ならToyStudioというソフトもある。
これはMMDの開発者が「MMDなんてToyStudioに比べりゃ玩具みたいなもん」
っつったくらいでそれなりに長いこと開発もされてるので割と使えるのではないかと思う。
(FBX出力しないならタダでも使えるんだが)
FBXなんだからFBX本家本元MotionBuilderを使うのがいいんだろうけど
まぁ何せ60万だからどうしようもねぇやねw
613:名前は開発中のものです。
14/07/18 19:06:59.23 YnmWShyC.net
ま、機能やコスト面からも本命はBlenderだろうな。癖が強いからとっつきにくいけどどうせ何を使っても最初は勉強あるのみ。
614:名前は開発中のものです。
14/07/18 19:26:03.34 /oNhM106.net
>>594
アセットをこうにゅうすればいいと思いますけど
615:名前は開発中のものです。
14/07/18 19:28:23.63 va52ZBR4.net
>>589
そういうときこそAssetかなー
MegaShapesとか
616:名前は開発中のものです。
14/07/18 19:38:22.75 wk/vfHmf.net
PC用でビルドすると下記のようなエラーが出ます。
エラーの箇所を特定するには、どういうところから調べて行ったら良いでしょうか。
failed to create 2D texture
allocation 0x00000000 already registered @ C:/BuildAgent/work/aeedb04a1292f85a/Runtime/GfxDevice/d3d11/TexturesD3D11.cpp:l466 size 45028; now calling from C:/BuildAgent/work/aeedb04a1292f85a/Runtime/GfxDevice/d3d11/TexturesD3D11.cpp:l466 size 45028?
!texture.texture
環境
・Windows7
・エラーが出ているパスは存在しないパス(C:/BuildAgentすらない)
・PlayerSettingでDirectX11を使用しないようにしても同じエラーが出�
617:� ・NGUIを使用 ・Androidでビルドするとエラーは出ない(実機でも動く) ・Playボタンを押してデバッグするときも正常に動作しエラーも出ない ・CSVファイル(1と0の羅列)を読んで、1だったら特定座標にCubeを、0だったらPlaneをInstantiateする (3Dダンジョンみたいな構造を作る)
618:名前は開発中のものです。
14/07/18 19:54:38.01 /oNhM106.net
>>599
アセットを買えば解決すると思いますよ
619:名前は開発中のものです。
14/07/18 20:13:04.09 hKpLTGml.net
友人に勧められて早速無料版DLしたんだけど、
セットアップウィザード?を起動したら
「NSIS Error」
Installer integrity check has failed. Common causes include
incomplete download and damaged media. Contact the installer's
author to obtain a new copy.
と出てくるんだけどこれ一体どういう事?
620:名前は開発中のものです。
14/07/18 20:20:00.06 7g3GGoUb.net
>>601
そんな難解な英語でもなかろ
「なんかデータぶっ壊れてるっぽいのでもっかい落とし直して」ってこと
621:名前は開発中のものです。
14/07/18 20:21:48.11 9Y3bOHpV.net
そのエラーメッセージに書いてあるとおりファイルが壊れてるだけじゃね?
アセットストアもそうだがどうもUnityのWeb周りは
弱い感じがあって俺も何度かDLしたインストーラーが壊れてたことはある。
622:名前は開発中のものです。
14/07/18 20:24:12.49 hKpLTGml.net
>>602、>>603
ありがとう。気長にDLしていこうと思います。
623:561
14/07/18 20:33:23.86 4kJlcQLw.net
答えてくれた人ありがとうー
薦めてくれたAssetとか本とか参考にしてみるよー
624:名前は開発中のものです。
14/07/18 20:59:12.53 5CQjtfzN.net
>>594
ほかの人も進めてるけど、Blenderお勧めだよ
モーションキャプチャーもできるとおもった
625:名前は開発中のものです。
14/07/18 21:09:29.37 ugSPjNdD.net
うちの環境だと何故かblenderのポーズモードでボーンが動かせないんだ
ボーン動かしてもスキンが動かないとかじゃなくてボーン自体が動かない
626:名前は開発中のものです。
14/07/18 21:34:37.45 7g3GGoUb.net
今手元にないけどレストポジションになってるとか?エラー出たはずだしさすがに違うかな
一応たしかプロパティのアーマチュアタブ
627:名前は開発中のものです。
14/07/18 21:41:57.63 E3cz1NQx.net
unityでゲームを作成する時、exeファイル1つにまとめたり、
exeファイル+dataファイル1つのようにシンプルにまとめることは可能でしょうか?
628:名前は開発中のものです。
14/07/18 21:53:23.43 /oNhM106.net
>>609
アセットを買うとできると思いますよ
629:名前は開発中のものです。
14/07/18 22:17:57.70 PvmDoNWL.net
>>594です。
皆さんありがとうございます!
やはりblender一択ですか・・・
地道に使い方を覚えるとします!
ありがとうございました!
630:名前は開発中のものです。
14/07/18 23:04:43.99 DtLEcxCa.net
一つ質問なんですけど
MicrosoftのsurfaceProでunityを使ってる人はいますか?
使用感を教えて欲しいです
631:名前は開発中のものです。
14/07/18 23:32:46.68 DtLEcxCa.net
バージョンは123なんでも良いです
632:名前は開発中のものです。
14/07/19 00:03:30.09 5QLuHNxh.net
>>608
rest positionとpose positionの話しならずっとpose positionでした
633:名前は開発中のものです。
14/07/19 00:49:47.88 MrfyLpS8.net
将棋のようなボードゲームを作るとして、
描画とゲームロジックは分離させることはできますか?
プロトタイプとして、今CUIでコマンドを打ってゲームをするような感じにしているんですが、
それをUnity側と接続させるうまい方法というか、
イメージがあればお聞かせください。
634:名前は開発中のものです。
14/07/19 01:08:08.03 bXbU1jhL.net
つーか描画はエンジンがやるので最初から分離されてる。
ロジックの入出力部を別に作ればいいんじゃね?
635:名前は開発中のものです。
14/07/19 01:37:52.43 MrfyLpS8.net
ロジックの入出力とはどういったものでしょう?
また、盤面上にある駒(Unity側�
636:jとロジックが持っている駒の位置情報などはどういって結びつける感じですか?
637:名前は開発中のものです。
14/07/19 02:00:43.94 x9+tGG3Z.net
>>617
大枠のGamePlayスクリプトを作ってそのGamePlayにコマのゲームオブジェクトを持たせる
GamePlayがターンなどのゲームの流れを管理して個々の駒にメッセージを
送るなりコマのスクリプトにアクセスするなりして動かす
というのでどうか
638:名前は開発中のものです。
14/07/19 02:11:36.63 bXbU1jhL.net
簡単にやるならロジックの中での駒の種類・位置・状態(成)・陣営の情報を監視できるようにして
それを3D上の座標に変換して描画オブジェクトの駒を動かしてやる機能をつくればいい。
入力はどうしてるのかわからんけどどの駒をどの位置に動かす、って関数はきっとあると思うので
動かした駒とその位置をロジックで使っている形に変換してその関数に渡せばいい。
処理を軽くするようにするならCOM側が手を打ったならその情報だけを
変更情報として渡すようにしてやるとかありえるけど一番単純なところでいえばそんなところじゃない?
そういう構造ならCUI用のロジックはほぼ変換いらんでしょ?
639:名前は開発中のものです。
14/07/19 02:31:59.17 dH/4qyVd.net
MVC
640:名前は開発中のものです。
14/07/19 02:49:04.82 vP5ff9W/.net
>>594
ここであえてmmdといってみる
641:名前は開発中のものです。
14/07/19 03:01:13.63 dH/4qyVd.net
めんどくさいときはマキシアモでモーション買ってる。
642:名前は開発中のものです。
14/07/19 03:23:19.52 e/afiuZH.net
>>615
アセットを買えばいいと思うけど、どうかなあ?
643:名前は開発中のものです。
14/07/19 03:46:14.91 zFiOj//f.net
>>615
問題なく分離できるが?
Threadベースでも何でも良いんじゃないのとしか言えない。
644:名前は開発中のものです。
14/07/19 04:03:56.44 dP02e2t2.net
RPGの町の中にいくつも家があり、入る家によってシーンが分岐する
というように1シーン内に複数のloadlevelがある場合、例えば
シーンA内の家1に入る → 家1から出る → キャラクターはシーンA内の家1の前に表示される
シーンA内の家2に入る → 家2から出る → キャラクターはシーンA内の家2の前に表示される
という感じで同じシーンの複数の特定場所に分岐してオブジェクトを表示させるには
どうしたらいいでしょうか?
645:名前は開発中のものです。
14/07/19 04:04:57.86 e/afiuZH.net
>>625
いいアセットがありますよ。アセットストアで検索しましょう
そして、かいましょう
646:名前は開発中のものです。
14/07/19 04:28:28.93 vP5ff9W/.net
>>625
面倒くさいけどシーン変更後の保持ようオブジェクトに、キャラクターの位置か、フラグで場所を特定するのが一番かな?
ただ、3Dゲームなら家の中も一つのステージでまとめた方がいいと思う。
何度も頻繁にシーンチェンジするのはNPCの位置保持とか、フラグ管理の手間と、レスポンスの悪さが目立つかと
647:名前は開発中のものです。
14/07/19 04:36:22.98 bXbU1jhL.net
>>625
それ一々ロードレベルしないとだめ?
同じレベルに作っといてフェイドで移動しちゃえば?
家に入った時別シーン(的)になるのは屋外マップと
屋内マップでスケールが違うからであって
同じレベルに作っとけばいいじゃん。
まぁどうしてもロードレベルしたいなら
管理用のオブジェクトをDontDestroyOnLoadにでも
しとけばいいとは思うけど。
URLリンク(docs.unity3d.com)
648:名前は開発中のものです。
14/07/19 08:00:34.25 MrfyLpS8.net
>>618,591
ありがとうございます。
なんとなく分かった気がします。
そこらへんって、インターフェース、アダプター、デリケート、コールバック
とか呼ばれるものを利用するんですかね?
ここらへんが難しいです。
勉強しよう。
649:名前は開発中のものです。
14/07/19 08:22:57.26 bXbU1jhL.net
デリゲートやでw
使わなければできないとも思えないけど使えるだろうし
使えば便利なことは多いだろうな~と思う。
650:名前は開発中のものです。
14/07/19 09:00:41.34 bXbU1jhL.net
>>609
この辺とかか?
URLリンク(docs.unity3d.com)
モバイル系はわからんけどMac版だと一ファイルに、PC版だと
exeとデータフォルダがいる、とか書いてあるな。
651:名前は開発中のものです。
14/07/19 11:32:07.14 wERfnOIb.net
このソフトで作ったゲームとMysqlって合体できますか?
652:名前は開発中のものです。
14/07/19 12:11:07.92 zFiOj//f.net
>>631
ApplicationName.appはフォルダーや
653:名前は開発中のものです。
14/07/19 12:30:09.09 3Tb1kqQU.net
>>632
ggればいいと思うよ
654:名前は開発中のものです。
14/07/19 12:35:27.89 q4gzDzqN.net
クライアントかサーバかも示さずに合体とか言ってる時点で見込みなさそう
655:名前は開発中のものです。
14/07/19 16:58:27.80 dP02e2t2.net
>>627
ありがとうございます。
それをまず考えたんですが、
家1に入ったらフラグ1を立ててpositionをxxに、
家2に入ったらフラグ2を立ててpositionを○○に・・・
とする事になると思いますが、家などシーン変更のポイントが多いと
分岐も膨大になりますよね
なので、他に手段はないかな、と思って質問させて頂きました
でもやっぱりloadlevelするのであれば、こう処理するのがセオリーですよね
>>628
その方法は全く思いつきませんでした。
同一シーンの離れた場所に町フィールド、家1の中、家2の中などを作り
フェード中に行きたい場所のpositionにキャラクターオブジェクトを移動させる、
という事ですよね?
明らかにこの方法の方がよさそうなので、やってみます
ありがとうございました。
656:名前は開発中のものです。
14/07/19 17:29:02.70 zFiOj//f.net
>608
普通に家の中を作り込んでおくだけだよ、家の外に居るときは家の中のオブジェクトを不可視(gameObject.SetActive(false)する)にしておく
逆に家の外にいるときは各家の中のオブジェクトを不可視化して描画への負担を減らしている。
AssetStoreで大きめの街を含んだファンタジー系のアセットにそういうロードレベル制御込みのがあって
一つくらい買って勉強代だと思えば安い部類に入るとは思う、具体的には
URLリンク(mindscape3d.com)
ここの作品でFanasy Villageシリーズがまさにそれ。
外から見える煙突の煙とかも部屋の中に入ると抑制されるので構造の勉強としては非常に役立つと思う。
$40なので高めの技術書籍一個分くらいだし。