【3Dゲームエンジン】Unity質問スレッド8
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2014/03/10(月) 20:41:34.44ID:xK0J6QXwWindows/Mac用。JavaScript/C#/Booといった汎用言語を使用できるのが特徴です。
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。
プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3他
次スレは>>970を踏んだ方が建てること。ダメなら>>980か>>990が建てて下さい。
■前スレ
【3Dゲームエンジン】Unity質問スレッド7
http://toro.2ch.net/test/read.cgi/gamedev/1389102625/
■本スレ
【3Dゲームエンジン】Unity総合スレッド21
http://toro.2ch.net/test/read.cgi/gamedev/1388200821/
■Unity 2ch Wiki(まとめ、過去ログ、リンク集)
http://www24.atwiki.jp/unity2ch/
●リンク
・Unity(日本公式サイト)
http://unity3d.com/japan/
・ユーザーガイド&リファレンス
http://japan.unity3d.com/developer/document/
・チュートリアル
http://japan.unity3d.com/developer/document/tutorial/
・スクリプトリファレンス
http://docs-jp.unity3d.com/Documentation/ScriptReference/
・FAQ
http://answers.unity3d.com/index.html
・MSDN
http://msdn.microsoft.com/ja-jp/ms348103←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。
0523名前は開発中のものです。
2014/04/08(火) 12:52:15.63ID:c6gCqAFg0524名前は開発中のものです。
2014/04/08(火) 13:18:12.67ID:sdKjTBL00525名前は開発中のものです。
2014/04/08(火) 13:54:30.43ID:Nsc11Wqn丁寧にありがとうございます(つω;`)
0526名前は開発中のものです。
2014/04/08(火) 14:20:14.39ID:8wAj/XZJ0527名前は開発中のものです。
2014/04/08(火) 14:46:53.81ID:5kwFitDq0528名前は開発中のものです。
2014/04/08(火) 16:21:44.07ID:6pHi/JlU0529名前は開発中のものです。
2014/04/08(火) 16:52:34.05ID:aS/6RxSj0530名前は開発中のものです。
2014/04/08(火) 21:31:49.95ID:qX+zFtuJmecanimでモーションを動かしてるんですけどそのモーションには移動も含まれてます
このモーションの移動以外のポーズ部分だけを使って移動は自前のスクリプトで
やりたいと思うのですがモーションの移動をオフにする設定とかあるでしょうか?
0531名前は開発中のものです。
2014/04/08(火) 22:04:24.48ID:okmHo5vOもしくはOnAnimatorMove()を書けば
HandledbyScriptになる、のかな?w
0532名前は開発中のものです。
2014/04/08(火) 22:35:07.80ID:qX+zFtuJApplyRootMotion切ったら出来ました
ありがとー
0533名前は開発中のものです。
2014/04/08(火) 23:45:34.22ID:jf1a0QKahttp://docs-jp.unity3d.com/Documentation/Components/animeditor-MultipleParts.html
ドキュメントの「複数の動作パーツがあるオブジェクト」のページでは、AnimationView内のリストに複数のオブジェクトが表示されていますが
実際にAnimationウィンドウを開いてみると、選択中のオブジェクトが(アニメーションコンポーネントをもつオブジェクトを複数選択したとしても)
一つだけしか表示されません。
実際に複数のオブジェクトを表示させるにはどうしたら良いのでしょうか?
0534533
2014/04/09(水) 00:01:39.51ID:HfHmEghJ複数編集したいオブジェクトを階層化して、親オブジェクトでAdd curveするとそこから子オブジェクト群の要素(position、rotation等)が追加でき、
追加した要素が、リストに表示されるようです。
リストを整理するために、追加した要素だけを表示するように変更されたのかもしれません。
0535名前は開発中のものです。
2014/04/09(水) 00:08:00.57ID:NkM/CncBうわ、こんな便利なのあったんですね…
横から申し訳ないのですがお聞きしたいことが。
結構基本なことなのでしょうか?
もしそうなら、ネット見てかいつまんでなんとなく勉強するのはやめて本を買いたいと思います。
0536名前は開発中のものです。
2014/04/09(水) 00:08:32.08ID:uf6S7lJX0537名前は開発中のものです。
2014/04/09(水) 01:49:55.41ID:pMmMuCgWUnityに関する限り公式のリファレンスで十分だと思う。
プログラム自体はちゃんと勉強した方がいい。
0538名前は開発中のものです。
2014/04/09(水) 04:47:24.27ID:AypaeFDXうまくいきません。
敵キャラの正面とプレイヤーとの間の角度を出して、差分を埋めてゼロにするようなスクリプトなんですが、
敵キャラとプレイヤーが近づけば近づくほど角度がカクカクと高速で変わってしまいます。
angleの値を見るとマイナスとプラスが交互に切り替わってたりするみたいです。(-6 → +6 → -6 → +6みたいな)
Vector3 targetDir = target.position - transform.position;
Vector3 forward = transform.forward;
float angle = Vector3.Angle (targetDir, forward);
Vector3 cross = Vector3.Cross (targetDir, forward);
if (cross.y < 0)
angle = -angle;
float targetAngle = transform.eulerAngles.y - angle;
transform.eulerAngles = new Vector3 (0, targetAngle, 0);
後々角度範囲で条件を切り替えたりスムースに動かしたりしたいのでLookAt関数は使わない方向で考えてます
どなたかよろしくおねがいします
0539名前は開発中のものです。
2014/04/09(水) 04:51:39.46ID:AypaeFDXこれがないと、全部右回り?で回って最悪ほぼ360度回転してしまうんで。
0540名前は開発中のものです。
2014/04/09(水) 05:29:15.62ID:pMmMuCgWVector3 targetDir = target.position - transform.position;
Vector3 forward = transform.forward;
targetDir.y=forward.y=0;
float angle = Vector3.Angle (targetDir, forward);
Vector3 cross = Vector3.Cross (targetDir, forward);
if (cross.y < 0)
angle = -angle;
float targetAngle = transform.eulerAngles.y - angle;
transform.eulerAngles = new Vector3 (0, targetAngle, 0);
とでもしてみたら?
0541名前は開発中のものです。
2014/04/09(水) 05:51:58.39ID:AypaeFDXうお、できました!すごい、聞いてよかったです。
プレイヤーと敵の高さ(身長)の差が悪影響を与えてたみたいな感じでしょうか。
自分じゃ気づけなかったと思います、ありがとうございます
0542名前は開発中のものです。
2014/04/09(水) 05:57:34.41ID:rjro2ciT0543名前は開発中のものです。
2014/04/09(水) 06:07:41.92ID:AypaeFDXな、なめらかに回転させるにはMathf.LerpAngleを使うつもりですが、そういうことでしょうか…
0544名前は開発中のものです。
2014/04/09(水) 06:14:32.94ID:pMmMuCgW敵を1000体出す時には最適化も
考えるべきだろうけど。
0545名前は開発中のものです。
2014/04/09(水) 06:18:08.56ID:rjro2ciTまぁ、速度面でアレだから自前で長々と実装したかったらすればいいけど、Angle()使ってる
時点で殆ど変わらんか逆に遅いと思う
0546名前は開発中のものです。
2014/04/09(水) 12:36:07.31ID:BbXIM9W9今チュートリアルのシューティングゲームを作ってるんですけどsliceした画像をドラッグ&ドロップ出来ません。禁止マークが付いてしまいます。
どうすればドラッグ&ドロップ出来るようになるんでしょう?
0547名前は開発中のものです。
2014/04/09(水) 12:40:13.84ID:80LCqOyD0548名前は開発中のものです。
2014/04/09(水) 12:40:53.43ID:80LCqOyD▲の横向きのマーク
0549名前は開発中のものです。
2014/04/09(水) 12:58:24.15ID:BbXIM9W9再起動しましたが変わりありませんでした
0550名前は開発中のものです。
2014/04/09(水) 13:11:21.08ID:80LCqOyD画像の横にマークあるだろ
0551名前は開発中のものです。
2014/04/09(水) 15:19:33.82ID:BbXIM9W9http://i.imgur.com/DZ1KmYL.png
0552名前は開発中のものです。
2014/04/09(水) 15:40:39.65ID:pMmMuCgWままD&Dできるなぁ。
それほど手順が進んでる状態でもないし
スプライトのデータの状態がどうであれ問題なさそう。
とりあえずそのゲームタブの中に放り込むのではなく
ヒエラルキー、もしくはシーンに放り込むべき、
と言えるのはその程度か。
0553名前は開発中のものです。
2014/04/09(水) 19:14:09.50ID:Q//SSKEv0554名前は開発中のものです。
2014/04/09(水) 19:21:23.45ID:waP/+/4bモデラーで普通に作ればいいじゃないか
0555名前は開発中のものです。
2014/04/09(水) 19:22:11.08ID:pMmMuCgW0556名前は開発中のものです。
2014/04/09(水) 19:22:26.70ID:LqbxGKZqSpriteはゲームオブジェクトではない
まずは画像を扱えるGameObjectを作るのだ
さすがに基礎すぎるので次の質問をする前に公式なり検索なりしてね
0557名前は開発中のものです。
2014/04/09(水) 19:26:16.47ID:pMmMuCgWやってての話っぽいんだよ。
ttp://japan.unity3d.com/developer/document/tutorial/2d-shooting-game/01.html
なので多分なんか勘違いしてるだけだと思う
0558名前は開発中のものです。
2014/04/09(水) 20:50:25.30ID:LqbxGKZq撮ってある画像にメインカメラしかないのでとりあえず指摘したw
0559名前は開発中のものです。
2014/04/10(木) 04:23:11.80ID:E3I/Y4syuniSWFで再生できた方はいらっしゃいますか?
公式に記載されているaddAssetBundleへのセットと
new MovieClipだけでは、取得できなくて。。
0560名前は開発中のものです。
2014/04/10(木) 07:54:08.30ID:CNj3F1jNuniSWFのFAQにまんま "How do I load a SWF from an asset bundle?"
とか言うのがあるよ
0561名前は開発中のものです。
2014/04/10(木) 21:20:12.95ID:a0xSm23BUnityでSTAP細胞は作れますか?
ASSETでもいいです
0562名前は開発中のものです。
2014/04/11(金) 09:05:36.06ID:52b8dthd0563名前は開発中のものです。
2014/04/11(金) 13:04:15.04ID:+Afxf3IO作れないんですか?
レシピはないんですか?
200回以上作った人はいないんですか?
いないのでしたら小保方さんはアセットストアで売っていますか?
0564名前は開発中のものです。
2014/04/11(金) 13:11:41.19ID:K59Kcu4P0565名前は開発中のものです。
2014/04/11(金) 13:42:53.46ID:j3flvUAGバーカ
0566名前は開発中のものです。
2014/04/11(金) 13:50:09.06ID:fWPSi3nx0567名前は開発中のものです。
2014/04/11(金) 14:02:13.97ID:DTJXNaS+0568名前は開発中のものです。
2014/04/11(金) 14:15:37.03ID:fWL5CfLS俺も面白いと思うけどな
「俺は笑わないぜ? 知性の高い者は笑いの基準も高いのさ」
みたいなスノッブを気取った君の発言も面白い
0569名前は開発中のものです。
2014/04/11(金) 14:33:24.45ID:52b8dthdそんな下品なゴシップとか全く興味ない人が多そうなこんなスレでわざわざやらなくても。
0570名前は開発中のものです。
2014/04/11(金) 14:50:15.36ID:id95k5a7ToString国士様がいるみたいだから仕方ないか
0571名前は開発中のものです。
2014/04/11(金) 17:46:53.71ID:+Afxf3IO質問スレなのに質問にも答えずに揶揄するばかり
クズしかいないんですね、Unity関連の人というのは
ところでToString国士様ってなんです?
0572名前は開発中のものです。
2014/04/11(金) 20:30:37.73ID:nL28ANAkunityではこの順序はどうやって設定するのでしょうか
DirectXやOpenGLでは単にMatrixの掛け算の順番変えるだけだったので勝手が分からず困っています
0573名前は開発中のものです。
2014/04/11(金) 20:42:16.94ID:Kf/brypJtransformのpositionとrotationを設定するだけ
Vector3とQuarternionは使うけどMatrixは使いません
0574名前は開発中のものです。
2014/04/11(金) 20:48:28.35ID:nL28ANAkやりたいことは回転(rotation)→平行移動(position)という順番の座標変換です
もしかしてunityでは順番は固定?
0575名前は開発中のものです。
2014/04/11(金) 21:02:58.09ID:9uxMHVf10576名前は開発中のものです。
2014/04/11(金) 21:05:40.93ID:nL28ANAkどうもunityでは明示的には変えられなくてユーザに対しても順序があること自体を考えさせないようにしてるみたいですね
順番を変更する方法が見つからなかったので
代替手段として親オブジェクトに対するlocalRotationを指定してひとまず目的の動作は出来ました
しかしネイティブ開発に慣れているとこんな基本的なことも自分でいじれないとは・・・
とちょっと驚きますね
0577名前は開発中のものです。
2014/04/11(金) 21:16:49.48ID:Kf/brypJいや最終的な座標と向きを計算してpositionとrotationに入れるだけです
間違ってるのはあなたのコーディングではないかと
0578名前は開発中のものです。
2014/04/11(金) 21:19:27.55ID:pje5xyzAむしろそれを教えてくれ〜w
何かイチイチTranslate、Rotateとかやるのメンドクサイw
0579名前は開発中のものです。
2014/04/11(金) 21:53:35.07ID:9uxMHVf1やりたいんなら行列使うしかないだろ、アホかと
0580名前は開発中のものです。
2014/04/12(土) 10:48:48.93ID:u5FusNceUnity 2Dで脱出ゲームを作っています
視点毎の画像をシーン毎に作り
void OnMouseDown() {
Application.LoadLevel ("シーン名");
}
で画面遷移をしているのですが、シーン上にあるアイテムを取得するにはどうしたらいいでしょうか?
シーンAは、背景画像と、その上にアイテム画像を置いたレイヤーにしており
アイテムをタップするとDestroy(gameObject)で消すようにしている状態です
これだとシーンBからシーンAに遷移するとアイテムを取得していてもまたアイテムがある状態に戻ってしまいます、
0581名前は開発中のものです。
2014/04/12(土) 11:29:37.39ID:TsNyzcCQもちっとScript Class Referenceよもうや。
Matrix使いたければ普通に使えるし、回転移動の制御もlocalとworld向けに個別に用意されてる。
自分のしってるやりかたと異なるから間違ってるみたいな思い込みは捨てないとだめだぞ。
0582名前は開発中のものです。
2014/04/12(土) 11:33:55.70ID:C7GpygEa>>580
dontDestroyOnLoadを使う。
この辺
ttp://docs.unity3d.com/Documentation/ScriptReference/Object.DontDestroyOnLoad.html
この辺からonloadを検索
ttp://docs-jp.unity3d.com/Documentation/printable.html
あとこの辺とか
ttp://terasur.blog.fc2.com/blog-entry-87.html
ttp://gamesonytablet.blogspot.jp/2013/01/unitystatic.html
0583名前は開発中のものです。
2014/04/12(土) 12:29:42.28ID:C7GpygEa変換の話ではなかろうか?
UnityはDCCツール、要するに
デザイナーが使うツールを元にしてるんで
まぁ無理もない。
一般的にDCCツールでのマトリクスの掛け合わせは
変更できない、と思う。子供付け、という概念が
複数できるようになって混乱するから。
その辺自分でライブラリとか組んでると
なんだよ子供にしたときのマトリクス指定できねぇの?
とかなる人もいるかもなぁw
0584名前は開発中のものです。
2014/04/12(土) 23:22:11.76ID:iFAsmdAQシーンわけないほうが楽じゃないか?
同じシーンでカメラを移動させるなり、切り替えるなりする
どうしても切り替えたいならシーン切換しても残り続けるオブジェクトにデータ管理させるとか
0585名前は開発中のものです。
2014/04/13(日) 00:10:05.23ID:yq8VwimK□ □ □ 背景
↑ ↑ ↑ カメラ
□ □ □ 背景
↑ ↑ ↑ カメラ
0586名前は開発中のものです。
2014/04/13(日) 03:10:11.21ID:AK7n41Lmスタート画面→オプション
→移動画面→戦闘画面
→アイテム画面
って
感じで使うもの
0587名前は開発中のものです。
2014/04/13(日) 12:54:39.04ID:K73MnDUXUnity 脱出ゲームとかで調べてたらシーン切り替えていく方法にたどり着きまして
同じシーン内に画面を沢山置いてカメラを切り替えていくほうが簡単ですかね?
dontDestroyのやつにするとオブジェクトが残り続けてしまって上手くできませんでした、
シーン内でカメラを切り替えるとしたら
画面Aから始まり画面Bのカメラに移動する場合なんですが
最初に全部のカメラを変数として定義するんでしょうか?
var cameraA : camera;
var cameraB : camera;
var cameraC : camera;
.
.
.
void start () {
cameraA.enabled = true
cameraB.enabled = false
cameraC.enabled = false
以下カメラfalse
画面Aから画面Bに画面遷移するボタンにカメラの切り替えをするときは
OnMouseDown(){
cameraA.enabled = false
cameraB.enabled = true
cameraC.enabled = false
とするんしょうか、
それとも単に画面を横に作っていってカメラのX座標を変えるだけの方がいいでしょうか?
0588名前は開発中のものです。
2014/04/13(日) 13:02:18.24ID:FBEyKD1m>dontDestroyのやつにするとオブジェクトが残り続けてしまって上手くできませんでした、
そういうのは空のゲームオブジェクト(GameObject->Create Empty)に専用のデータ保持スクリプト書いてヒエラルキーのトップに置いておく。
名前も分かりやすくMyGameDataとかにしておく
そうするとGameObject.Find("/MyGameData")見たいな検索呼び出しでレベル切り替えの最初に取り出せる。
0589名前は開発中のものです。
2014/04/13(日) 13:02:20.70ID:XgfyP78c1つのシーンで作った方が初心者はラクダと思う
0590名前は開発中のものです。
2014/04/13(日) 13:12:01.68ID:K73MnDUXボタンにそれやってました!
オブジェクトでデータ管理するっていう概念が慣れないです、
残る空のオブジェクトでデータを管理してシーン切り替えで最初に呼び出せば
例えばRPGでHPやMPが減った状態で次のマップいっても初期化されないってことですかね?
今の状態だとそれこそシーン移動で初期化?最初の状態で読み込んでしまって
1つのシーンで作ってみます
0591名前は開発中のものです。
2014/04/13(日) 13:12:26.48ID:eB0U3huu自由度を考えたらカメラごと切り替えた方がいい
横に並べる形式だとあとからサイズ変えたりしたい時とかめんどくさい
あと、各画面のオブジェクトはカメラの子供にしとくと切替時にSetActiveでまとめて切り替えられるから便利
0592名前は開発中のものです。
2014/04/13(日) 14:29:21.27ID:4oC/XA6Gインポートしたいのは2Dゲームに使おうと思っている、テクスチャを貼ったPlaneです
Blender側でfbxファイルにエクスポートして、出力されたファイルをUnity側の適当なアセットフォルダに入れているのですが
メッシュ・マテリアルが共に真っ黒になってしまいます
fbxにエクスポートする際に全選択もしていますし、テクスチャに日本語も使っていないので、ググったら直ぐ出てくる原因ではないようです
この現象はどうしたら回避できるでしょうか
0593名前は開発中のものです。
2014/04/13(日) 14:43:09.59ID:V3hvkaXQ0594名前は開発中のものです。
2014/04/13(日) 15:13:33.13ID:ibO2MvdT自動でやりたきゃマニュアルをしっかり読むんだな
0595名前は開発中のものです。
2014/04/13(日) 15:49:52.76ID:/lEw+9x20596名前は開発中のものです。
2014/04/13(日) 16:18:15.16ID:sU50br37今のところマテリアル、というかテクスチャは
現状自分で設定するしかなかったんじゃなかったかな。
ttp://docs-jp.unity3d.com/Documentation/Manual/HOWTO-ImportObjectBlender.html
0597名前は開発中のものです。
2014/04/13(日) 16:44:11.93ID:V7K5DU+A所謂ネットゲームの様に 沢山の情報ウィンドウを作るのですが、
Unityを使っていなかった頃は
1ウィンドウ1テクスチャでテクスチャのピクセルを直接描き変えて作っていました。
Unityでもこうした事は可能なのでしょうか?
それともパーツ毎(画像素材毎)に何十何百のGUITextureを用意し組み合わせて
作った方が無難なのでしょうか?
0598名前は開発中のものです。
2014/04/13(日) 17:41:13.58ID:FBEyKD1m>1ウィンドウ1テクスチャでテクスチャのピクセルを直接描き変えて作っていました。
ここまでアホな実装マジでやったん?
BitBltで描画領域操作の意味で言ってるならわからんでもないけど、Unityで同じ事するとピクセル単位アクセスしかできないよ?
RenderTextureに書き込んでって話になるかもしれないが、そんなことするくらいなら普通にUI系のアセット(NGUIとか)で処理した方が遙かに楽だよ。
0599名前は開発中のものです。
2014/04/13(日) 18:06:17.32ID:V7K5DU+Aアホな実装だったんですね。重かったのはそれでなんでしょうか。
NGUIの無料版も商用作品に使っても大丈夫なのかよくわからないので
とりあえず自力でパーツ分けてどうにかしてみようと思います。 教えてくれてありがとうー
0600名前は開発中のものです。
2014/04/13(日) 18:13:06.29ID:2rVinYcD条件付きで商用利用OKだったと思う
ググればすぐ出てくるんじゃない?
0601名前は開発中のものです。
2014/04/13(日) 18:21:05.15ID:FBEyKD1m割とマジレスで言うけど
お金で時間買える状況で自分のパフォーマンスが改善するのは投資なのでAsset買って済むならその方が遙かに良いんだ。
自分の時間当たりの収入を把握して、買って解決するなら買っちまえ>>NGUI
逆に自分の時間かけて作った物が売れると思ったらAssetにして売れってのがUnityの世界。
0602名前は開発中のものです。
2014/04/13(日) 19:09:38.21ID:yq8VwimKウインドウを多数作るような場合にはパフォーマンス的にかなり厳しい
NGUIに乗り換えてDrawCallが30→7になったよ
0603名前は開発中のものです。
2014/04/13(日) 20:05:56.99ID:uUlvFWKVApply RootMotionのチェック外しても微妙に移動しちゃうんですが、何が問題でしょうか
Freeze Rotationは全部チェック入れました、どなたかエスパーよろしくです
0604名前は開発中のものです。
2014/04/13(日) 20:23:31.39ID:cCp2fjZV0605名前は開発中のものです。
2014/04/13(日) 20:48:26.35ID:uUlvFWKVPROじゃない場合はリジッドボディの挙動が雑になるんですか?
0606名前は開発中のものです。
2014/04/13(日) 21:04:20.94ID:FBEyKD1mんなわきゃない。
0607名前は開発中のものです。
2014/04/13(日) 21:16:46.34ID:2rVinYcDa.transform.position.y = 0;
とやっても-14.43みたいな感じでズレてしまいます。
この書き込みの綴りは適当なので間違ってても流して下さい。
0608名前は開発中のものです。
2014/04/13(日) 21:43:51.17ID:FBEyKD1m再現可能な最小コード公開してもらえないと何とも言えない。
何の話なのかすら通じない。
0609名前は開発中のものです。
2014/04/13(日) 21:47:54.62ID:cCp2fjZVそうだよ。買わないとやる気が出ないから雑になっている。証明終り
0610177
2014/04/13(日) 22:47:35.95ID:T7jQexxq普通ずれない訳でつまりずれている原因は
別にあるのだからそれを探すしかないw
インスペクターの表示はローカルポジションだから
その辺は罠だよな〜と思うw
0611名前は開発中のものです。
2014/04/14(月) 00:09:39.07ID:tZcefxLnもしかしたらtransform.positioにやり方とか問題があるのかと思ったのですが、
どんなことでも始めからソース貼った方が良かったですね。
今度から貼るようにします。
やりたいことはパチンコの高速図柄スクロールで、
空のゲームオブジェクト"L","C","R"を親としてそれぞれに子としてスプライトがY5.2刻みで複数入っています。
PatternScroll(操作する列, 0.1秒で動く距離)です。
改行が多いと怒られたので分けます
0612名前は開発中のものです。
2014/04/14(月) 00:10:50.25ID:tZcefxLnif (flag == false){
flag = true;
}
if (GUI.Button(Rect(110, 60, 100, 50), "scroll" )){
temptime = Time.time;
}
}
function Update () {
if (flag == true){
if (Time.time - temptime < 5){ //5秒経過で止まるようにしてあります。
PatternScroll(0, 8);
PatternScroll(1, 8);
PatternScroll(2, 8);
}
else{
flag = false;
pattern[0].transform.localPosition.y = 0; //確認用。ココではちゃんと0になります。
}
}
}
function PatternScroll (line:int, speed:int) {
pattern[line].transform.position.y = (pattern[line].transform.position.y - ((5.2 / speed) * 0.1 / Time.deltaTime));
if(pattern[line].transform.position.y < (-5.2 * 7)){
pattern[line].transform.position.y = 0; //ここが0ではなく、-10とかになっています。
}
}
0613名前は開発中のものです。
2014/04/14(月) 01:32:44.42ID:UHU4s1P1で0になる。
子.transform.position.y=0;
で-10になる。
つまり親のtransform.position.yは10だ!
ってことではないのか?
function PatternScroll (line:int, speed:int) {
pattern[line].transform.position.y = (pattern[line].transform.position.y - ((5.2 / speed) * 0.1 / Time.deltaTime));
if(pattern[line].transform.position.y < (-5.2 * 7)){
pattern[line].transform.localPosition.y = 0;
}
}
じゃダメなん?
0614名前は開発中のものです。
2014/04/14(月) 01:44:51.39ID:xEZ4GguW0にする条件になるのか?
0615名前は開発中のものです。
2014/04/14(月) 01:46:54.80ID:sIabSzrx突っ込みたいことは2点
・flagは常にtrueになる事
・Time.deltaTimeで割ってるのは何故?速度に時間をかけた値が移動距離だと思うが
OnGUIとPatternScrollを↓のように書き換えたらどうだろうか
function OnGUI() {
if (GUI.Button(Rect(110, 60, 100, 50), "scroll" )){
temptime = Time.time;
flag = true;
}
}
function PatternScroll (line:int, speed:int) {
pattern[line].transform.position.y = pattern[line].transform.position.y - 5.2 * 10 * speed * Time.deltaTime;
if(pattern[line].transform.position.y < (-5.2 * 7)) {
pattern[line].transform.position.y = 0;
}
}
0617名前は開発中のものです。
2014/04/14(月) 06:34:44.48ID:I2SquPDO2Dだったので出てくる色々なものが平面で
その中にテクスチャも含まれてると思い込んでました
無事解決しました。ありがとうございます
0618名前は開発中のものです。
2014/04/14(月) 08:36:10.36ID:tZcefxLnありがとうございました。おかげさまで上手く出来ました。
OnGUIのflagを書く位置の間違いに気付いたのと、
最後のpattern[line].transform.position.y = 0;を
pattern[line].transform.localPosition.y = 0;に直したらちゃんと動きました。
初期にlocalPositionを試した時には上手動かなかったので、ココが原因だとは思いもよらなかったです…。
あと、式に無駄な()を付けてるところがあったのでスッキリさせました。
0619名前は開発中のものです。
2014/04/14(月) 17:05:15.76ID:z63njTHg命名規則や必須であろう基本動作(idle/walk/run/....etc)が入ってて
フォルダ構成やテクスチャのUV配置なんかも理想的なのを
0620名前は開発中のものです。
2014/04/14(月) 17:09:27.87ID:5eaJ8Xdp今は「頭、胴上、胴下、左脚、右脚、左手、右手」を完全に別ボーンツリーの別モデルで作って、
繋ぎ目用のボーンからマトリクスを取って各部位のルートボーンに当てて描画して行ってます。
これってやはり描画コストが高いやり方になるのでしょうか?(スマホとかでは特に重そうな)
Unityではモーションまわりは慎重にやらないと動かない事もあると耳にするのですが、
もっと軽く安全に3Dモデルの着せ替えを実現できる手法ってあるのでしょうか?
0621名前は開発中のものです。
2014/04/14(月) 17:16:29.19ID:DXYnOUqE0622名前は開発中のものです。
2014/04/14(月) 17:27:08.30ID:oHvQwMuohttp://u3d.as/1qS
■ このスレッドは過去ログ倉庫に格納されています