【3Dゲームエンジン】Unity質問スレッド10
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2014/06/26(木) 23:02:03.72ID:t35CWy1RWindows/Mac用。JavaScript/C#/Booといった汎用言語を使用できるのが特徴です。
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。
プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3、PlayStation 4、PS Vita他
次スレは>>970を踏んだ方が建てること。ダメなら>>980か>>990が建てて下さい。
■前スレ
【3Dゲームエンジン】Unity質問スレッド9
http://peace.2ch.net/test/read.cgi/gamedev/1399506271/
■本スレ
【3Dゲームエンジン】Unity総合スレッド22
http://toro.2ch.net/test/read.cgi/gamedev/1395140574/
■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←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。
0454名前は開発中のものです。
2014/07/13(日) 15:56:58.50ID:Qr6w5KgRアセットを購入したら解決しますよ
諦めるのは早いでしょう
0455名前は開発中のものです。
2014/07/13(日) 16:05:57.21ID:OyPqFWy50456名前は開発中のものです。
2014/07/13(日) 21:20:45.27ID:34qkE2Niでも使えなくなるのはPing-Phongだけだし
どうしてもやりたいならアニメーションクリップの先頭と末尾にイベントを仕込んで
再生スピードを先頭では1に、末尾では-1に変更するようにすればなんとかならんか
試してないのでわからんけど
0457名前は開発中のものです。
2014/07/13(日) 22:25:38.17ID:hOTnF1V9そうですそうです
そのpingpongってのが引っかかってwrap modeに固執してたんですが
pingpong以外のモードに代替方法があるなら別に良いですよね
0458名前は開発中のものです。
2014/07/14(月) 01:49:57.31ID:vwXVr9J1transform.rotation = Quaternion.Euler(transform.rotation.eulerAngles.x, transform.rotation.eulerAngles.y+180, transform.rotation.eulerAngles.z);
しかしこれだと180度回転できる時もあれば、全然回ってくれない時もあるしで、何が悪いのかよくわかりませんでした。
どなたか良い方法ありましたらご教授いただきたく、よろしくおねがいします
0459名前は開発中のものです。
2014/07/14(月) 02:20:40.26ID:2bX0nnrhアセットを購入すればできると思います
0460名前は開発中のものです。
2014/07/14(月) 02:23:32.94ID:ZIoHdMpu必ず一回呼ばれるのか?
二回以上呼ばれたら180+180で元通りだ
0461名前は開発中のものです。
2014/07/14(月) 02:32:06.77ID:vwXVr9J1なるほど、それは盲点でしたが確かに
後で検証してみます
0462名前は開発中のものです。
2014/07/14(月) 02:47:00.40ID:vwXVr9J1確認してみたところ確かに場合によっては二回以上呼ばれてましたのでそれを直すと解決しました
回転系はややこしいので角度の求め方・文法に問題があると思い込んでました、
ナイスフォローありがとうございます
0463名前は開発中のものです。
2014/07/14(月) 02:49:08.66ID:729LSe1l0464名前は開発中のものです。
2014/07/14(月) 02:50:28.15ID:ZIoHdMpu当たったw
0465名前は開発中のものです。
2014/07/14(月) 03:11:45.86ID:6OPlBEFh0466名前は開発中のものです。
2014/07/14(月) 03:28:36.82ID:2FgZyXyP0467名前は開発中のものです。
2014/07/14(月) 03:29:06.93ID:2FgZyXyPiTweenTest.csで
public class iTweenTest : MonoBehaviour {
/*
* ローカル座標系で指定座標へ移動・回転
* 第1引数:ターゲットGameObject, 第2引数:移動に関する各種パラメータのハッシュ
* iTween.Hashでキーバリュー形式のハッシュ作成
*/
0468名前は開発中のものです。
2014/07/14(月) 03:29:42.63ID:2FgZyXyPvoid 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
));
*/
}
0469名前は開発中のものです。
2014/07/14(月) 03:30:07.01ID:2FgZyXyP//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)
ってエラー出たんですが何か設定が足りなかったのでしょうか?
0470名前は開発中のものです。
2014/07/14(月) 05:40:42.39ID:1o9oiTSAあまり役に立つかわかりませんが
インスペクタからオブジェクトを指定するときアセットのオブジェを指定していないでしょうか?
もしそうでしたらシーンのオブジェクトを選択すれば解決するかと…。
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に書き換えれば
名前だけでオブジェクトを指定できるのでちょっと便利です。
コードも少し節約?
あと生成されたオブジェクトにも対応できる利点があります。
あれ、ちょっと適当なこと言ってるかも…直接取得でもできるかな…この話はスルーしてください…。
0471名前は開発中のものです。
2014/07/14(月) 05:58:33.97ID:1o9oiTSA長いですが質問までの経緯も載せておきます…
質問の内容は文字数オーバーだったので次スレを読んでもらえればと…
【出来事】
先日Blender(3Dモデリングソフト)を使ってキャラのアクション(モーション)までを作ってUnityでうまい具合に意図した動きをしてくれたのですが
Unityで3Dのキャラが扱う剣の軌跡エフェクトについて試行錯誤しています。
標準コンポーネントのTrail Rendererではタイプがビルボード(なのかな…?)なのでうすっぺらさを感じます。
数種類組み合わせれば少しはいいのですがチャージなどや振った時のみ軌跡を適用するといったスクリプトでの制御もやりにくいと思い
このさいBlenderのアクション制作時に追加でエフェクトを入れようかと思ったのですが
ブレンダーの「エフェクトを作る」参考サイトには軌跡の様なエフェクトはなく
そもそもレンダリングを前提としている話でパーティクル(Blender特有機能?)などを多用した物が多く
FBXで書き出して付いてくるような品物ではないので悩んでいました。(一度ダメ元で作ったのですがパーティクルで作ったのでUnity上ではなにもおこらず…)
そんな時にあるサイトでMayaという3Dソフトでモーションにエフェクトを追加しているブログを見かけ
Mayaをインストールして半日かけて基本操作などを覚えてきたのですが
Blenderから作ったキャラをFBX形式で読み取らせるとオブジェはメチャクチャ巨大、個別にした武器とキャラは離れているわ
ボーンの設定がところどころ(ハンドル用ボーン)消えているわ、さらにはボーンの操作は回転しかできないのっ!?IKを付ければどうにかウウゥゥゥンモウイヤン
資源の共有は難点が多いと知りやる気も薄れそもそも初心者が3Dソフトを2つも扱おうとすること事態おかしかったんだ(´・ω;`)でもMayaに魅力を感じたんです。
っと、結局マヌケなことにまたBlenderに戻っていい方法はないか探している次第です。
これ以上無駄な労力を使い変な方向に進むのも危ないと思い(熱さ的にも)
質問をすることにしました。
0472名前は開発中のものです。
2014/07/14(月) 05:59:09.34ID:1o9oiTSAそもそも剣に対して軌跡を付けるいい方法はどのようなものがあるのでしょうか?
やはり3Dソフトでエフェクトを加えておくべきなのでしょうか?
みなさんはいったいどのように軌跡を実装しているのかを教えていただければ嬉しいのですが
このひと手間をどうかよろしくお願いします…
0473名前は開発中のものです。
2014/07/14(月) 06:35:33.12ID:KntiLZetアセットちゃんじゃないがアセット使えば?
フリーのが二つほどある。
まぁどれくらい使えるかは知らんが
ttps://www.assetstore.unity3d.com/jp/#!/content/1728
ttps://www.assetstore.unity3d.com/jp/#!/content/2458
プロシージャルにメッシュ生成するという方法もある。
上のアセットも似たようなことはしてるかもしれん
ttp://forum.unity3d.com/threads/how-to-make-blade-special-effect-in-unity.39095/
0474名前は開発中のものです。
2014/07/14(月) 07:59:53.54ID:h1Bdtly/アセットDLしてコードとか使い方理解するの難しくないの
0475名前は開発中のものです。
2014/07/14(月) 09:53:13.04ID:2bX0nnrhアセットを買えば難しくないですよ
0476名前は開発中のものです。
2014/07/14(月) 11:55:17.46ID:cd1uIHF5人気出るってことはそれなりに使いやすいってことでもあるし
0477名前は開発中のものです。
2014/07/14(月) 12:29:26.59ID:ux/6sItE日本語の解説あるところ利用しないとダメな人って
本当にいるのか?
0478名前は開発中のものです。
2014/07/14(月) 14:37:56.43ID:ZIoHdMpu今アニメーションクリップ付きのプレハブを作ったんですけどそれをシーンに配置します
そしたら思い通りのアニメーションが再生されてこれはこれでオッケーなんです
で、そのプレハブを実行時に動的にinstantiateしたんですけどアニメーションが再生されません
それで実行中にその実行中に生成されたものをチェックしてみたらanimator controllerの所が
空になってるわけです
これは仕様なのでしょうか?
実におかしな挙動だと思うのですが
プレハブを動的に生成した場合は生成した時にいちいちanimator controllerをくっつけて
やらないと駄目なんでしょうか?
0479名前は開発中のものです。
2014/07/14(月) 15:09:11.21ID:KntiLZetなにかがおかしいだけ。
0480名前は開発中のものです。
2014/07/14(月) 16:49:36.68ID:ZIoHdMpu完全解決しました
まずジェネレーターオブジェクトのようなものを作ってそこに生成したいオブジェクトを
登録してたわけですね
そしてそのジェネレーターが実行時にinstantiateで生成するというやり方だったんですが
その登録してたオブジェクトがanimator controllerがついてない古いバージョンだったんです
だから何度生成してもanimator controllerがついてないバージョンが生成されたというわけです
単なる凡ミスでした〜
0481名前は開発中のものです。
2014/07/14(月) 19:06:04.16ID:729LSe1l0482名前は開発中のものです。
2014/07/14(月) 19:32:20.74ID:6WQo2nmCUniWiiCommunity行ってもエラーでダウンロードできないです
0483名前は開発中のものです。
2014/07/14(月) 21:20:38.61ID:1o9oiTSAありがとうございます。
早速試してみようと思います!
0484名前は開発中のものです。
2014/07/14(月) 22:46:46.13ID:h1Bdtly/0485名前は開発中のものです。
2014/07/14(月) 23:23:12.05ID:85QOXmxlアセットストアで検索しましょう。
0486名前は開発中のものです。
2014/07/14(月) 23:57:20.77ID:29nUKgypオブジェクトやカメラをキャラに向けるならLookAtを使うが
0487名前は開発中のものです。
2014/07/15(火) 03:04:00.93ID:ZRDIQswuアセットのオブジェとは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");
0488名前は開発中のものです。
2014/07/15(火) 05:06:43.85ID:8i3QXvER自分が引っかかった単純なところなのであまり解決に繋がるかわかりませんが
インスペクターでiTweenTest.csのGameObjectにオブジェクトを指定するウィンドウを出したとき
その画面の左上あたりにAssetsとSceneと2つのタブがあると思いますが
もしTestオブジェクトのプレハブなどを作っていたり
アセットにオブジェクトを読み込んでからシーンに配置した場合
アセットにもTestオブジェクトという名前のものが存在し
シーンにもTestオブジェクトが存在するかと思います
この時誤ってアセットにあるTestオブジェクトを指定していると
シーン上に存在するオブジェクトではないので受け取れないという感じです。
しっかりシーン上のオブジェクトを選択してあげればOKかと。
もしそれが原因でしたら
NullReferenceException: Object reference not set to an instance of an object
このエラーは消えると思いますが
残りの2つのエラーもそれが原因だといいのですが…
0489名前は開発中のものです。
2014/07/15(火) 06:08:22.64ID:ZRDIQswuなるほど!
あまり考えずにシーンから選択していましたが気をつけます
エラーは消えなかったんですがuntyAnswersをgoogle翻訳したら
難解な日本語訳の中に「オブジェクトには直接iTween.csはアタッチしない」という文だけ
理解できたので外したらエラー消えました
>>488さんのアドバイスも色々参考になりました
ありがとうございました
0490名前は開発中のものです。
2014/07/15(火) 08:47:19.59ID:10V7SkVq解決したようだけど…
iTweenは適切な引数でスタティックメソッドを呼ぶだけででおk。インスペクタ上の操作は必要ない。
iTweenインスタンスはiTween自身が必要なタイミングで生成破棄を行うので、アタッチしたiTweenインスタンスは本来生成時に内部的に行われているはずの操作が正しく行われていないのが例外の原因ではないかと。
0491名前は開発中のものです。
2014/07/15(火) 09:08:30.28ID:/3JuiaOhiTweenは悪くない、君の使い方が間違っているだけだ
ということになります
0492名前は開発中のものです。
2014/07/15(火) 10:28:21.92ID:RsaDysOO障害物と障害物の間に挟まって目的地に辿りつけないのですが
対策をご存知の方、おりませんでしょうか……。
★
■
■
●
★ = SetDestinationで設定した目的地
■ = Nav Mesh Obstacleを適用した障害物
● = Nav Mesh Agentで移動するオブジェクト
AgentとObstacleに設定しているRadiusだと
絶対に間を抜けられないはずなので迂回してくれると思ったのですが…。
0493名前は開発中のものです。
2014/07/15(火) 12:32:43.27ID:e0wLQq5g違うアセットを買えばいいと思いますよ
0494名前は開発中のものです。
2014/07/15(火) 12:35:18.49ID:9BFzjjQL障害物にstaticつければいけると思うよ
0495名前は開発中のものです。
2014/07/15(火) 12:38:27.22ID:1Y4H5R4Uアセットを買えば迂回してくれるようになりますよ
0496名前は開発中のものです。
2014/07/15(火) 13:02:34.38ID:RsaDysOOありがとうございます。
ただ、今回使用していたのは購入したアセットではなく
標準で用意されている機能でした。
>>494
ありがとうございます。
staticを適用したところ、迂回してくれるようになりました。
ただ、staticを適用したあとでBakeをし直す必要があり
障害物はPrefab化して動的に生成する予定であるため
この方法ですと解決できませんでした。
前提の説明が足りず申し訳ないです。
>>495
アセットの追加も検討してみます。
0497名前は開発中のものです。
2014/07/15(火) 13:56:01.41ID:71xzcfVJmecanimのアニメーションイベントのことなんですけど
追加できるイベントってそのアニメーションクリップの1ループの範囲内ですよね?
例えばそのアニメーションが0.25秒のものだったとしてそれをループさせて0.75秒の
地点でイベントを呼び出すというのはどうやったらいいですかね?
今はやり方がわからなくてタイマーを作ってやってみようと思ってるのですがもっと
エレガントな方法があったら教えて下さい
0498名前は開発中のものです。
2014/07/15(火) 13:58:35.28ID:e0wLQq5gアセットを購入するのが一番エレガントです。
0499名前は開発中のものです。
2014/07/15(火) 14:19:20.18ID:W+veCJPE0500名前は開発中のものです。
2014/07/15(火) 14:44:36.42ID:YpNJfnBqエレガントかはわからないけれど、
呼び出し先のメソッドで何回呼び出されたかのカウントを取るっていうのはどうかな?
0.25秒で1ループなら、0.75秒目に3回目の呼び出しが来るはず。
0501名前は開発中のものです。
2014/07/15(火) 14:49:52.61ID:71xzcfVJそうですね
秒で直接指定できないならそういう方法がいいんじゃないかと俺も思ってました
ありがとうございます
0502名前は開発中のものです。
2014/07/15(火) 17:10:50.41ID:qV5tIR+q元々の3ループをつなげて1ループにしたアニメーションクリップを使うとか。
0503名前は開発中のものです。
2014/07/15(火) 17:56:55.77ID:71xzcfVJその方法も考えましたがちょっと力技過ぎますね
いちいちアニメーション付けまで作業工程を遡らなければならないのが
良くないです
やっぱりunity単体で完結させたいですから
0504名前は開発中のものです。
2014/07/15(火) 18:08:08.22ID:e0wLQq5gアセットを買えばUNITY単体で完結しますよ
0505名前は開発中のものです。
2014/07/15(火) 21:14:13.29ID:/XGBxAHL0506名前は開発中のものです。
2014/07/15(火) 21:16:14.25ID:/XGBxAHLああ、アセットおじさんは普通に糞なんだけどね
0507名前は開発中のものです。
2014/07/15(火) 22:41:16.24ID:rm+4PMZC0508名前は開発中のものです。
2014/07/15(火) 22:56:56.50ID:dqlghbh0if(Input.GetButton("Fire1")){
transform.eulerAngles.y += anglesSpeed;
}
if(Input.GetButton("Fire2")){
transform.eulerAngles.y -= anglesSpeed;
}
}
こんな感じに「a」「d」を押すとカメラの方位が変わるようにしてるのですが、
これを見る通りFire1.,2にad設定しています
すでに設定してあるverticalだけでやる方法はありますか
0509名前は開発中のものです。
2014/07/15(火) 23:14:06.16ID:F83bfZXzelse if(Input.GetAxis("Vertical<0)transform.eularAngles.y-=anglesSpeed;
とでもやっておけばいいんじゃね?
設定の仕方にもよるが端的に
transform+=Input.GeaAxis("Vertical")*anglesSpeed;
だっていいと思う。
あと普通Verticalに設定してあるのはswではないか?
0510名前は開発中のものです。
2014/07/15(火) 23:15:11.94ID:W+veCJPEやりたいことは if( x> 0){}else{}
やない?
0511名前は開発中のものです。
2014/07/15(火) 23:15:15.32ID:F83bfZXztransform.eularAngles.y+=Input.GeaAxis("Vertical")*anglesSpeed;
だった。
0512名前は開発中のものです。
2014/07/16(水) 03:56:21.25ID:qweM4gzwこのピボットの回転をしないで、アニメーション上の回転(宙返り)をさせることって出来ないんでしょうか。
Root Transform Position(Y) のBake Into Poseにチェック入れたら出来るだろうと思ったのですが、
出来なかったので質問します
用途はラグドールとメカニムを力技で合成させる時に、宙返り中だとY軸で(意図しない方向に)180度回ってしまう問題を解決するためです
0513名前は開発中のものです。
2014/07/16(水) 04:21:45.04ID:BkB0VUOA0514名前は開発中のものです。
2014/07/16(水) 04:52:23.62ID:qweM4gzwあ、そっちはすでにチェック入ってましたがだめでした
0515名前は開発中のものです。
2014/07/16(水) 05:23:57.01ID:BkB0VUOAラグドールってその状態の元ボーンのTransformの状態を
コピーして置き換えていくんだからそれでずれるっておかしくね?
0516名前は開発中のものです。
2014/07/16(水) 05:35:30.29ID:BkB0VUOAオイラーとかじゃなくてQuatenionの合成とかでやってもダメなんだろうか。
回転自体はどうにもならんと思う。だってそういう動きなのだからw
0517名前は開発中のものです。
2014/07/16(水) 10:02:11.74ID:i8dJnKLiアセット買えばいいと思います
0518492
2014/07/16(水) 14:57:49.20ID:qR5GXcPGCurveオプションの設定が必要でPro版でないとできないようでしたので、
ちょっと動きがぎこちないですがA*Pathfindingを導入し
障害物を生成する都度Scanし直す方法で対応しました。
答えてくださった方々ありがとうございました。
0519名前は開発中のものです。
2014/07/16(水) 21:34:31.63ID:CiLXwGWt購入した場合と全くかわらない機能を30日試せると思っても大丈夫?
0520名前は開発中のものです。
2014/07/16(水) 22:12:30.85ID:NJUdCishえっ?違うの?!
0521名前は開発中のものです。
2014/07/16(水) 22:44:57.86ID:NJUdCishよく、教本では、キャラクターのjump操作にCharacterControllerのMoveで、y軸を引数に呼び出すと……動きが
チープなんですが、良い案あるでしょうか?
やっぱり、フラグ管理で毎フレーム動かすのが、すまーとなんでしょうか?
0522名前は開発中のものです。
2014/07/16(水) 23:43:22.61ID:FQwk5+9my軸方向の速度をジャンプ時に与えて、速度に重力加速度を毎フレーム加えればおk
0523名前は開発中のものです。
2014/07/17(木) 00:15:09.93ID:wTGBPqxdアセットを買うのがもっともスマートだと思いますよ
0524名前は開発中のものです。
2014/07/17(木) 01:34:26.70ID:uNHBv2H0そう。
でも成果物は販売してはいけない、という規約がある。
0525名前は開発中のものです。
2014/07/17(木) 01:55:12.25ID:vMu5f4aL0526名前は開発中のものです。
2014/07/17(木) 01:58:22.75ID:oGA7hd9n0527sage
2014/07/17(木) 02:07:43.17ID:HH5o0zav>発売日は近日中に発表されます。
FAQでずいぶん前に見たのですが、発売日発表はいつごろになりそうでしょうか?
0528名前は開発中のものです。
2014/07/17(木) 02:11:58.72ID:uNHBv2H0右下にtrial versionの表示が出てるのですぐわかる。
0529名前は開発中のものです。
2014/07/17(木) 02:46:20.90ID:jBI9XT1Hキャラクターが、上へ瞬間移動してその後、重力に従って落ちるような挙動が、少しチープかなと思ったのですが、アニメーションとかで、誤魔化せるものなんでしょうか?
0530名前は開発中のものです。
2014/07/17(木) 02:49:10.54ID:uNHBv2H0動画どこかにアップできんの?
0531名前は開発中のものです。
2014/07/17(木) 02:55:37.08ID:2ftianM+そりゃいっぺんにy軸移動してからgravityで落下するならそうなるんじゃ?
16歳以上なら高校生の物理でこの辺習ってるはず
0532名前は開発中のものです。
2014/07/17(木) 03:03:17.78ID:jBI9XT1Hこう、jumpさせたら、幾秒間は上昇動作させたいなって考えていたのですが、move関数は、1フレームで、Vector分移動処理しちゃうんで、瞬間移動に見えちゃうんですね……
やっぱり、タイマー関数とかで、上昇時間を管理するか、いっそ物理演算かitweenでうまくやってみようと考えていたのですがいい手はありますでしょうか、
初心者なんで、知らずうちに性質を理解せずに場違いなSCRIPTをくんでしまいそうで
0533名前は開発中のものです。
2014/07/17(木) 03:13:14.75ID:2ftianM+ttp://unity3d-study.seesaa.net/article/301340332.html
ここのデモとかみてみそ
Moveを使うときに移動量ではなく速度をつかった情報に変換しているのがミソ
0534名前は開発中のものです。
2014/07/17(木) 16:23:56.72ID:Xf5QGzbQアセットを買えばいいとお思いますよ
0535名前は開発中のものです。
2014/07/17(木) 16:53:42.69ID:wiA9wkED0536名前は開発中のものです。
2014/07/17(木) 17:14:29.45ID:Lxq+ngC8インターフェイスB定義
public コンポーネント型 cmp; //フィールド
int tes; //フィールド
Start(){
インターフェイスA{
cmpにGetComponentでコンポーネント格納
tes = cmp.test;
}
}
OnCollisionEnter(){
インターフェイスB{
ここでcmpを参照してもnullになっている
}
}
となってインターフェイスB起動時にはStart内で取得したcmpがnullになるのですがなぜですか?
これはインターフェイスB内でも再度GetComponentで再度取得するしかないですか?
0537名前は開発中のものです。
2014/07/17(木) 17:49:23.72ID:Xf5QGzbQアセットストアをかえばいいよ
0538名前は開発中のものです。
2014/07/17(木) 18:10:27.56ID:hEK26ORI通常であればcmpが勝手にNULLになったりはしない。
ゲームオブジェクトが破棄されたか、
Startが呼ばれる前にOnCollisionEnterが呼ばれているか、
そもそも取得に失敗しているか(tes=cmp.testでヌル参照エラーが出ていないようなので取得はできていると思われる)
まずは君の言うインターフェイスが何なのか説明せよ。話はそこからだ。
0539名前は開発中のものです。
2014/07/17(木) 18:26:13.37ID:fnThG9Fp0540名前は開発中のものです。
2014/07/17(木) 19:17:38.41ID:4SRZvdEYnewで作ってるからstartが呼ばれてない
エラーをはいてるのはどこかで新しく生成されたもの
0541名前は開発中のものです。
2014/07/17(木) 20:48:44.64ID:Lxq+ngC8>>538様の仰る通り、LoadLevelを別オブジェクトでやっていて
処理順序の関係でLoadLevel実行(シーン切り替えのため全オブジェクト破棄)
→>>536の処理、という順序になっていたため、破棄されてnullになっていたようです。
すみませんでした。
0542名前は開発中のものです。
2014/07/17(木) 20:50:21.89ID:HX4r5DgB0543名前は開発中のものです。
2014/07/17(木) 21:07:48.78ID:Lxq+ngC8A (GetButtonで十字キーを取ってrigidbodyで(物理演算で)移動し、Bに衝突する)
B (Aに衝突される側)
AがBに衝突した場合、Bにアタッチされているコードが先発で実行され、ぶつかるAのコードが
後発で実行される、という実行順になるのですが、スクリプトを持った
複数のオブジェクトが同時に処理の条件を満たした場合、どちらが先発で実行されるか
っていうのは、なにかルールがあるのでしょうか?
0544名前は開発中のものです。
2014/07/17(木) 21:32:33.41ID:xixtOXJKttp://docs.unity3d.com/Manual/class-ScriptExecution.html
ttp://docs-jp.unity3d.com/Documentation/Components/class-ScriptExecution.html
あとこの辺とか
ttp://docs.unity3d.com/Manual/ExecutionOrder.html
0545名前は開発中のものです。
2014/07/17(木) 21:46:17.36ID:Lxq+ngC8見てみます
0546名前は開発中のものです。
2014/07/17(木) 22:35:21.66ID:Xf5QGzbQアセットを買って使えばルールも気にならなくなるでしょう
0547名前は開発中のものです。
2014/07/18(金) 00:42:34.80ID:huwzbbpiいわゆる専門板に出没するキチガイ?
0548名前は開発中のものです。
2014/07/18(金) 01:17:12.35ID:/DogE5jkこういう所で宣伝するしかないしな
目障りだが中途半端に気持ちもわかるわ
0549名前は開発中のものです。
2014/07/18(金) 01:18:46.07ID:9Y3bOHpVアセットちゃんに成り果てたのはいつごろからか、
なんで戦略転換したのかはよくわからないけど。
0550名前は開発中のものです。
2014/07/18(金) 02:05:51.46ID:tCmJHDVEたとえばNPCに話しかけたらクリア!ってテクスチャ出てくるとか
クイズで正解なら正解!不正解なら不正解!とか。
0551名前は開発中のものです。
2014/07/18(金) 02:11:37.85ID:9Y3bOHpV正解なら正解!ってGUIテクスチャ表示させればいいんじゃね?
0552名前は開発中のものです。
2014/07/18(金) 04:22:22.53ID:M6ZbkjfR起動するのに一秒ぐらい掛かってしまいます。
すぐに起動できないものなんでしょうか?
0553名前は開発中のものです。
2014/07/18(金) 04:43:10.26ID:9Y3bOHpVPrewarmとかにチェック入れとけばそんなに時間かからんかもね。
■ このスレッドは過去ログ倉庫に格納されています