トップページgamedev
1002コメント381KB

【3Dゲームエンジン】Unity質問スレッド20 [転載禁止]©5ch.net

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2015/10/07(水) 14:12:24.62ID:NEa3zEWO
3Dゲームエンジン「Unity」の質問に優しく答えるスレです。
Windows/Mac用。JavaScript/C#といった汎用言語を使用できるのが特徴です。
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。
プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3、PlayStation 4、PS Vita他

次スレは>>970を踏んだ方が建てること。ダメなら>>980>>990が建てて下さい。

■前スレ
Unity5質問スレ [転載禁止](c)2ch.net
http://peace.2ch.net/test/read.cgi/gamedev/1436359073/

■本スレ
【3Dゲームエンジン】Unity総合スレッド27 [転載禁止](c)2ch.net
http://peace.2ch.net/test/read.cgi/gamedev/1441891966/

■Unity 2ch Wiki(まとめ、過去ログ、リンク集)
http://www24.atwiki.jp/unity2ch/

●リンク
・Unity(日本公式サイト)
http://unity3d.com/jp
・ユーザーガイド
 http://docs.unity3d.com/ja/current/Manual/UnityManualRestructured.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←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。
0420名前は開発中のものです。2015/10/24(土) 23:35:26.79ID:/ty8jJ2q
その前後の行は?
俺はコメントに
//→
って入れたら次の行もコメントとして扱われるバグに遭遇したことがある
0421名前は開発中のものです。2015/10/24(土) 23:40:44.55ID:mTUlvSdd
そういうのは公式に教えてあげたほうがいいと思う
0422名前は開発中のものです。2015/10/24(土) 23:54:31.11ID:V9zmfXM3
>>418
>ユーザーの入力に追従してリアルタイムに軌道計算してやらなきゃならん

まさにこの問題は速攻出てきた。
ユーザーは向きの変更もできるからそのたび透明の玉を飛ばして計算するのはええのか?と

ただこれは昨今の3Dとかの処理と比べてもたいしたことないんちゃうか?とも思ってるから
一度作ってみて実機確認して動きを見てみるよ
0423名前は開発中のものです。2015/10/25(日) 00:01:29.12ID:yX4O9YiU
>>419
今もまだあるのかなぁ。昔は多バイト文字のコメントはエラーになったんだよ。
後ろに半角ピリオド付けると通るとかあった。
その頃のクセで今でもコメントの後ろには半角ピリオドつけてしまうw
0424名前は開発中のものです。2015/10/25(日) 00:06:23.89ID:u/IWnGAJ
あれ、その手の問題はソースをUTF16にしたら全部解決したような
それ以降一度も困ったことがない
0425名前は開発中のものです。2015/10/25(日) 00:21:26.91ID:JuUbYpNv
>>419-420
改行コード確認してみ?
Windowsでは改行コードによってこの問題が出る
0426名前は開発中のものです。2015/10/25(日) 01:04:58.44ID:JuUbYpNv
>>422
俺が考えたのは以下のふたつの方法
例えば射出から1秒分の軌道を表示すると仮定すると

ケース1:何も考えずそのまま透明なボールを射出
FixedUpdate毎に座標をひとつ取得して表示、軌道は実際のボールの動きと同じ速度で表示され、終端が表示されるのに1秒かかる
//この遅延を演出として組み込めるならあり?

ケース2:TimeManagerを操作して30倍速で物理演算
当然演算コストは大きくなるが、1〜2フレーム程度で軌道の終端までが表示できるかも?
ユーザー操作があった瞬間から通常速度で1秒分の演算が終わるまでを30倍速で行い軌道を取得したら通常に戻すという処理が可能か、演算結果が一致するかは未確認なので要検証
//試してみないと可能かどうかもわからないがこれが可能なら理想的な軌道表示になるかもしれない?
0427名前は開発中のものです。2015/10/25(日) 01:25:25.82ID:pvaMnu/H
透明なボールじゃなくて、軌道用のボールをそのまま描画したらだめなん?
0428名前は開発中のものです。2015/10/25(日) 01:29:37.47ID:pvaMnu/H
言葉足らずだったのでもう一度

・軌道表示は実際に行う処理同様を動かす
・画面に軌道としてサンプリングで残すのは特定フレームのみ抽出したもの
・軌道用のボールは半透明などにする
・ユーザー入力があるごと(向き・角度変更ごと)に最初から描画

という感じ
0429名前は開発中のものです。2015/10/25(日) 08:25:30.98ID:2ArDOOtU
>>419
VisualStudioなら改行コードがおかしいから自動変換しますか?と聞いてきてくれる
0430名前は開発中のものです。2015/10/25(日) 12:39:57.89ID:yBfS5rRj
>>419
SJISでコード書いていると多バイト文字の最後がバックスラッシュと同じコード割り振りがされることが多々ある
コンパイラが行末のバックスラッシュとして誤認すると次の行が継続行(//コメントの続き)として処理される
たぶんそれが原因じゃないの?

UTF8かUTF16で保存する、もしくは//コメントの行末に"."を入れておくと回避はされる(後者は根本的な解決ではない)
このあたりはUnityの問題ってよりもテキストエンコードの話なのでソース編集環境を見直すのが吉
0431名前は開発中のものです。2015/10/25(日) 12:42:56.46ID:jBegFRr+
Cとかでも昔はたまにあったねぇ
0432名前は開発中のものです。2015/10/25(日) 12:51:50.31ID:49lbLjP8
そういえば
以前は全角コメントの語尾に「.」付けてたけど
最近は付けなくてもよくなったな
0433名前は開発中のものです。2015/10/25(日) 13:26:15.85ID:HwyeysLG
SQLを安全に組み立てたいのですが、Unityの場合、何を使うのが楽ですか?
0434名前は開発中のものです。2015/10/25(日) 13:29:51.68ID:HwyeysLG
よく考えたら、ユーザーが文字打つ所だけ、サニタイズしたら良いような気がしてきました。それで良いや。
0435名前は開発中のものです。2015/10/25(日) 13:35:06.76ID:O2YAWr9t
visual studio でのデバッグで、オブジェクトが指してるアドレスって表示できますか?
二つが同一オブジェクトを指してるのか判断したいときに、
Flash Builderはアドレス表示がデフォだったので便利でした
0436名前は開発中のものです。2015/10/25(日) 14:23:03.03ID:2ArDOOtU
>>433
安全ってどういう意味?インジェクション?
UNITYから直接DBに繋ぐ?


>>435
https://msdn.microsoft.com/ja-jp/library/s3aw423e.aspx
試していないからUnityでできるかわからん
0437名前は開発中のものです。2015/10/25(日) 14:31:16.51ID:HwyeysLG
>>436
インジェクション
sqlitekitで内部のdbを参照
0438名前は開発中のものです。2015/10/25(日) 14:35:48.44ID:HwyeysLG
Playmakerも購入すればバインド変数使えるみたいだな。でも、そこまで必要ないかな。
0439名前は開発中のものです。2015/10/25(日) 14:45:45.51ID:2ArDOOtU
内部のDBか…インジェクションなんて気にすんな

気にするならwebサービス化してそこでガチ堅牢なフレームワークでも使えばいいんじゃない?
ミッションクリティカルなら逆コンパイルの可能性があるUNITYから直でSQLを発行する事自体どうかと思うし
内部のDBファイルなんて狙われたら余裕で解析される
それでもやりたいならインジェクションに対応したオープンソースを見て自分でUNITYに移植するとか
暗号化とかを考えないと

知らんけど
0440名前は開発中のものです。2015/10/25(日) 15:17:52.06ID:gHc1ujyS
そういえば、sqliteとLinqのパフォーマンス比較ってどっかでされてるのかな?
機能が違うといえば違うにしても、どっちが早いのかは興味がある
0441名前は開発中のものです。2015/10/25(日) 15:27:47.00ID:HwyeysLG
>>439
sqlitekitで暗号化するから大丈夫。
0442名前は開発中のものです。2015/10/25(日) 16:29:31.69ID:2ArDOOtU
>>440
データベースのパフォーマンスは実際自分でやってみないと分らんからね

マイクロソフトはSQLサーバーを最速といい
オラクルはオラクルを最速という
自社が最もパフォーマンスを出せる測定条件で測るからなぁ
0443名前は開発中のものです。2015/10/25(日) 16:43:25.15ID:HwyeysLG
サーバー側はmongodb使うつもりだから、マイクロソフトもオラクルもいらないです。
0444名前は開発中のものです。2015/10/25(日) 18:02:40.86ID:4soXus2s
完全初心者です
2dでテトリスのようなものを作っています
スクリプトで一定間隔でランダムにブロックを生成してx座標と角度をランダムに決めてから、rigidbody2dで落とすようにしてるんですが、落ちたブロックの座標を確認するとxが0.0462とか微妙にずれててブロック同士がひっかかります
この微妙なズレをなくす方法ってありますか?
ブロックが引っかからず、横10マスちょうどブロックが収まるようにしたいです
0445名前は開発中のものです。2015/10/25(日) 18:12:15.21ID:HwyeysLG
rigidbody2dいらないじゃん
0446名前は開発中のものです。2015/10/25(日) 18:31:13.14ID:8gF99okL
Interpolateをoffにしてみるとか?
0447名前は開発中のものです。2015/10/25(日) 18:47:47.79ID:8aB6g9kJ
マジレスすると物理演算を使うべきではない
0448名前は開発中のものです。2015/10/25(日) 19:34:55.81ID:4soXus2s
>>446
Noneになってました
>>445
>>447
transform.localposition = startposition + new Vector2(0,-y);
といった感じでコルーチンを使ってある間隔ごとにブロックを下に移動させてみたんですけど、他のオブジェクトにあたったときに止まらずすり抜けてしまうんです
ブロックにトリガーcolliderと非トリガーcolliderをつけて他のオブジェクトにあたったら下に移動するスクリプトをdestroyする方法でやったんですが、うまくいきません
こういった物理演算を使わずに衝突判定を起こして動きを止めるのはどうすればいいのでしょうか?
0449名前は開発中のものです。2015/10/25(日) 19:58:57.73ID:u/IWnGAJ
固定セルのゲームルールならまず盤状態を示す2次元配列作るよ
アニメーションはiTweenあたりで別管理ね。セルのサイズを定数化しとけば割り出せる
0450名前は開発中のものです。2015/10/25(日) 20:02:01.21ID:2ArDOOtU
へぇ、なるほど
なんか俺でも作れそうな気がしてきたわ
0451名前は開発中のものです。2015/10/25(日) 20:17:03.40ID:4soXus2s
>>449
こんなのあるんですね〜ありがとうございます色々やってみます失礼しました
0452名前は開発中のものです。2015/10/25(日) 20:20:26.32ID:HwyeysLG
というか、そっちが元々のゲームの作り方であって。
0453名前は開発中のものです。2015/10/25(日) 20:42:16.94ID:RITBqi8X
テトリスとかだったら予めマスを作ってそこにスプライトを表示するかしないかでやるといいよ
0454名前は開発中のものです。2015/10/25(日) 21:11:50.20ID:TsJFA2sE
PSのIQってゲームみたいにcubeを倒しながら移動させたいんですけど、どうしたらいいでしょうか
Rotateの回転軸を移動させる方法とかありますか
0455名前は開発中のものです。2015/10/25(日) 21:44:21.70ID:vJB+CzaO
影を使ったゲーム考えてるんだけど、実現の仕方が分からない・・・
unityじゃ影とかに当たり判定をつけるって無理だよね?
0456名前は開発中のものです。2015/10/25(日) 21:47:22.57ID:BbYlqnMy
影踏みか
0457名前は開発中のものです。2015/10/25(日) 21:52:41.19ID:vJB+CzaO
>>456
そんな感じ
自キャラは見えるけど敵は影のみって感じで作れたらなーと思ったんだけど、
敵を消したら影でないし、何より光源によって影って変化するから何ともむずかしいんだよね
0458名前は開発中のものです。2015/10/25(日) 22:03:55.20ID:2ArDOOtU
初心者質問失礼します

UI部品のパネルを置きます(座標オール0でど真ん中に配置)。
パネルを横にずらしたいです。
とりあえずiTweenかなと思い

iTween.MoveTo(pnlMain, new Vector3(10, 0, 0), 5);

とやってみましたが、
小さくなりながら右下に動いたのですが、、、なんででしょ?
ただパネルを右にずらすには普通どうやりますか?
0459名前は開発中のものです。2015/10/25(日) 22:11:06.10ID:URvJqomx
>>457
光源によって変化する影をモデリングすればいいじゃない
0460名前は開発中のものです。2015/10/25(日) 22:16:54.03ID:2ArDOOtU
>>457は自己解決。すいません、イージーミスでした。ローカル座標を忘れていました。
0461名前は開発中のものです。2015/10/25(日) 22:27:11.40ID:u/IWnGAJ
>>458
あんま自信ないけど、RectTransformにサイズ調整されちゃってないかい
0462名前は開発中のものです。2015/10/25(日) 23:35:17.36ID:klUOGDOb
本当にしょうもない質問で申し訳ないです
FPSControlっていうアセットのShellShock-5_0を素の状態で動かしたんですが
敵キャラがこっちを確認した時に銃を構えたまま固まって動かなくなってしまいます
AIとかを弄ろうにも知識がなくてさっぱりです・・・

敵がマトモに動くようにできればでいいので誰かご教授頂けないでしょうか
0463名前は開発中のものです。2015/10/25(日) 23:39:50.76ID:eQ8ImyFA
Assetの質問はAssetのフォーラムでするとよろし
0464名前は開発中のものです。2015/10/25(日) 23:47:43.66ID:klUOGDOb
>>463
失礼しました
0465名前は開発中のものです。2015/10/26(月) 00:09:38.77ID:O6OPL6dT
UnityとXCodeってiOSのバージョン上がるごとにバージョンアップしないといけないのかな?
ちょっと辛いな。
0466名前は開発中のものです。2015/10/26(月) 00:45:08.07ID:SVlxueBU
使ってる広告やサービスも依存してくるからもうちょい根が深い
chartboostとfelloの導入を依頼されて試してみるとfelloさんはgoogle play serviceのリソースを同梱してて重複排除にえらい手間取った。単にパッチバージョン使えば直るんだけどね
admobさんもi-mobileさんやnendさんもUnity5には検証に力入れてないのかな。ドキュメント通りにやってもxcodeでコケる。
まあビルドエラーを元にぐぐればstack overflowのスレがヒットするけどさ

仕事にしたいならその先は「ちょっと辛いな」では済まないよ
我々はアプリ本体よりも、こういった問題解決能力で飯食ってるようなもんだし
0467名前は開発中のものです。2015/10/26(月) 00:59:55.32ID:WC/RF2eX
>>272
>>286
>>287

皆様のアドバイスを参考に試行錯誤してみた結果、なんとか思い通りの処理を完成させることが出来ました!
ありがとうございます。
0468名前は開発中のものです。2015/10/26(月) 01:20:39.39ID:O6OPL6dT
>>466
またBuildSuccessでXcodeが起動しないんだが。前はYosemiteにしたら起動したけど、もしかして、またOSアップデートしないとダメなのかな?
0469名前は開発中のものです。2015/10/26(月) 01:31:25.37ID:O6OPL6dT
Developerにログインして新しい規約に同意しろって出てきた。なにこれ。
0470名前は開発中のものです。2015/10/26(月) 01:42:01.43ID:SVlxueBU
多分tvos関係の奴だろ
読めないなら同意しとけば。俺はブログネタがない時くらいしか細かく読んでないよ
0471名前は開発中のものです。2015/10/26(月) 02:19:09.36ID:O6OPL6dT
IPhone6Sつないでると、No team selectedってエラーが出るんだが、何これ?
5Sでios8だと普通にインストールされた。
0472名前は開発中のものです。2015/10/26(月) 02:40:38.29ID:O6OPL6dT
El capitan
0473名前は開発中のものです。2015/10/26(月) 02:46:17.12ID:O6OPL6dT
とりあえず、build success でXcode 起動しないのはおかしいわ。
よくわからないから、とりあえずEl Capitanにしてみるしかないか。
0474名前は開発中のものです。2015/10/26(月) 03:29:05.70ID:O6OPL6dT
iOS Developerで何回か同意してiADとか収益のあたりクリックしてるうちに、Resetしますかが出てリセットで直った。でも、これはサーバー側にバグがあるんじゃないかと。
iOS9からこういうのに厳しくなったんだな、知らなかった。
0475名前は開発中のものです。2015/10/26(月) 03:33:59.27ID:vQQd8LPB
>>471
iOSは自分のアカウント(Team)に登録した端末でしかデバッグできない
Xcodeのプロジェクト基本情報のとこに自動でFixするよ的なボタンが出てない?
0476名前は開発中のものです。2015/10/26(月) 03:39:15.21ID:SVlxueBU
なんのこっちゃ?
0477名前は開発中のものです。2015/10/26(月) 03:50:25.12ID:O6OPL6dT
>>475
それが出てこなかった。developerで同意してしばらく待たないと出てこない。
0478名前は開発中のものです。2015/10/26(月) 04:03:38.60ID:O6OPL6dT
Xcodeのバージョンを最新にしたのが原因かもしれない。Xcodeとdeveloperのサイトが連動してるのかな?
0479名前は開発中のものです。2015/10/26(月) 06:36:01.87ID:rhkxff71
NGID:O6OPL6dT
0480名前は開発中のものです。2015/10/26(月) 07:31:52.12ID:O6OPL6dT
iADとか関係ないところクリックすると早く同意したことになるなんておかしいだろ。今までこんなことなかったんじゃないの?
0481名前は開発中のものです。2015/10/26(月) 07:33:34.35ID:O6OPL6dT
まじでAppleのサーバーが最近おかしい。
0482名前は開発中のものです。2015/10/26(月) 09:11:30.59ID:6ZRqeEgW
Application.Quit()について相談。

タイトル画面のメニューに「アプリケーション終了」ボタンを置きたいんだけど、
プラットフォームによってはQuit()が無効だったり推奨されなかったりと正直よく分からん。
みんなはどうやってる?

Win/Macのスタンドアロン環境でのみ、終了ボタンを表示するようにするのが
楽かなあと思ってるんだけども。
0483名前は開発中のものです。2015/10/26(月) 09:45:34.00ID:KzKjoesU
初心者質問失礼します
OnTriggerEnterを使ってスイッチのオブジェクトに触れたら電気(spotlight)がつく、もう一度触れたら
電気が消える。というON,OFFをしたいのですが、調べてみてもゲームオブジェクトをDestroyで消してしまう方法しか見つかりません。
「消して、また作成」がよいのか、「見えるのを見えなくする」のほうがいいのかも教えてくださるとありがたいです。
0484名前は開発中のものです。2015/10/26(月) 09:48:48.90ID:bKRZ77p5
それは作るゲームによるとしか言えません
でもいちいち生成するよりは触れている間だけアクティブにしたほうが一般的かな
0485名前は開発中のものです。2015/10/26(月) 18:31:41.87ID:F4mvQiBR
オンラインゲームなどでよくある、画質設定みたいなのって
ポリゴン数やエフェクト、テクスチャの解像度などが変更できると思うのですが、
それをunityでやろうとした場合、それぞれの設定に合わせてオブジェクトや
テクスチャを作らなきゃいけないんでしょうか?
だとしたらよく市販ゲームはあの容量でよく収まってて労力の代わりに安いなー
と思いまして・・・
0486名前は開発中のものです。2015/10/26(月) 18:39:14.70ID:xff3b7gE
>>485
市販のゲームもLODモデルは基本的には作っている。
テクスチャは縮小してるだけ。

安いかどうかなんて発注したことのある人間じゃなきゃわからんだろう…
0487名前は開発中のものです。2015/10/26(月) 18:39:36.37ID:XQTiL5dg
>>485
ビルドセッティングで大雑把に設定すると自動でやってくれるよ
0488名前は開発中のものです。2015/10/26(月) 21:19:32.45ID:FL7odMYo
>>481
XCodeを起動してCMD+, で設定を出してAccountタブから自分のApple Developerを選んで詳細を見ると解決するとおもうぞ
XCode7.1にしたらそうなった。

なおEl Captanにアップグレードすると↑をもう一度だ
0489名前は開発中のものです。2015/10/27(火) 10:40:17.92ID:j8iFgm3a
Blenderでrigifyを適用したモデルでバトルポーズのモーションを作成し、fbxでエクスポートしてUnityで実行すると、
正面を向かせて作ったモーションが、斜めを向いた状態で再生されました。
原因はリグのtorsoの回転角分だったのですが、
Blenderの見た目のままUnity上でモーションを再生したい場合、
torsoを編集しないほうが良いのでしょうか。
それとも編集してもイメージ通り反映できる手順がありますか?

Unityにはヒューマノイドタイプにし、ORG-*で骨をマッピングし、
hipsにはORG-hipsを適用しています。
また、バトルポーズのモーションはインポートして、
Root Transform Rotation にチェックは入れています。
0490名前は開発中のものです。2015/10/27(火) 12:10:30.34ID:d6nC+B5Z
>>488
今度はシュミレーターが自動起動しない。
やっぱりEl capitan にしないといけないのかな?
0491名前は開発中のものです。2015/10/27(火) 12:12:10.31ID:KZmJ2Mf2
OnTriggerEnter(Collider coll){}で衝突したオブジェクトに対して
Ray ray = new Ray(myTrans.position,coll.transform.position);
でレイを飛ばすんですが、オブジェクトに当たらず、その奥の壁に当たってしまいます
レイヤーマスクの設定もオブジェクトに当たるようにしているのですが
原因として考えられるのは何でしょうか?
04924912015/10/27(火) 13:29:23.80ID:KZmJ2Mf2
自己解決しました

Ray ray = new Ray(myTrans.position,○○○○);

ここの値は終点でなくて方向ベクトルなんですね・・・
0493名前は開発中のものです。2015/10/27(火) 13:46:45.68ID:OnaBGD3v
>>492
解決しているようなのであれなのだがその方法でやりたいならLinecastだ
0494名前は開発中のものです。2015/10/27(火) 18:17:33.04ID:j8iFgm3a
>>489
Root Motion Nodeを<Root Transform>に変えたら見た目問題なくなりました。
いいのか、こんなんで……
0495名前は開発中のものです。2015/10/27(火) 20:17:24.47ID:F3qHL0wc
ボタン(スクリプトA、パラメータIDを持つ)のプレファブがクリックされたら
キャンバスに付いてるスクリプトBの関数(引数としてIDを渡したい)を実行したいのですが
ボタンプレファブのクリックイベントにインスペクター上からだと登録できません
スクリプト内から登録したくて四苦八苦しているのですが、どなたかやり方を教えてください
読みにくい文章で申し訳ないです。もっと情報が必要なら言ってください
0496名前は開発中のものです。2015/10/27(火) 20:21:28.30ID:F3qHL0wc
ボタン(スクリプトA、変数IDを持つ)
↓クリックでアクセス、引数にID
キャンバス(スクリプトB)の関数を実行

簡単化するとこうです
質問はボタンのクリック時に実行される場所にスクリプトから登録したいけどやり方がわからない
ということです
0497名前は開発中のものです。2015/10/27(火) 20:39:24.46ID:OnaBGD3v
>>496
C#におけるイベントっていうのは何かっていうとデリゲートって仕組みを利用して
登録された関数を実行するよ、というものなんだよ。
そして登録される関数については型と引数を定義することになっている。
OnClickイベントはvoid型の引数なしのものが登録できるしそれしか登録できない。
だからIDを引数としているBの関数を登録することは出来ない。

っていうことなんじゃねぇの?知らんが。
0498名前は開発中のものです。2015/10/27(火) 21:13:09.32ID:F3qHL0wc
>>497
こっちの勘違いなら申し訳ないのですが
ユニティのオンクリックイベントは何種類かの引数を与えることができるようで、
引数スクリプトAをもつ関数をスクリプトBでつくり、それをボタンのオンクリックイベントに登録し、インスペクター上から引数として渡す部分にボタンを登録したら
スクリプトAの変数IDを渡せたんですよ
プレファブ化するとインスペクター上からキャンバスを探せないのでスクリプトから探せばいけるかと思ったのですが
0499名前は開発中のものです。2015/10/27(火) 21:49:56.07ID:OnaBGD3v
>>498
あ〜、なるほど。あれって引数使えるんだな。こういうことか?
ttp://hwks.hatenadiary.jp/entry/2014/12/10/024926
ちょっとこのページの例はラムダ式をつかっているのであれだが
button.onClick.AddListener(func(param));
みたいな感じ、ではないかと思う。
この辺。
http://docs.unity3d.com/ScriptReference/UI.Button-onClick.html
http://docs.unity3d.com/ScriptReference/Events.UnityEvent.AddListener.html
0500名前は開発中のものです。2015/10/27(火) 22:13:46.80ID:F3qHL0wc
>>499
ありがとうございます。参考になります
ただ、他のオブジェクトに付いてるスクリプトの関数を設定する方法がわかりません
0501名前は開発中のものです。2015/10/27(火) 22:21:46.54ID:F3qHL0wc
ちなみにやりたい事としては
Canvas(スクリプトA)
|ーボタン1(スクリプトB ID=1)
|ーボタン2(スクリプトB ID=2)
|ーボタン3(スクリプトB ID=3)

となってるときにどのボタンが押されたのかをスクリプトAで知りたいってだけなんですよ
ボタンに付いてるスクリプトBを引数としてスクリプトAに渡せたら達成できるかと思ったのですが
もっといい方法があればそちらも知りたいです
0502名前は開発中のものです。2015/10/27(火) 22:22:02.90ID:OnaBGD3v
>>500
button.onClick.AddListener(GameObject.Find("キャンバス").GetComponent<Script>().func(this.ID));
とかそういうことか?
0503名前は開発中のものです。2015/10/27(火) 22:28:25.17ID:F3qHL0wc
>>502
まさにそれを試したのですが
The best overloaded method match for
イベントリスナー has some invalid argument

というエラーが出ます
0504名前は開発中のものです。2015/10/27(火) 22:31:46.88ID:p7hCpSTf
今までで一番難しい質問かもしれません。

質問

Unityで色んな事をしたいのだが、当然だが何かをマスターするには勉強がセット。
この勉強のヤル気がなかなか出ない。

どうやったら勉強するヤル気がでますか?
また、みなさんのモチベーションの源は何でしょうか?
御教示頂ければ幸いです。
0505名前は開発中のものです。2015/10/27(火) 22:45:35.74ID:YVuN6iL8
別のことをやれ。
やりたいことないならとりあえず金だけは貯めとけ。
0506名前は開発中のものです。2015/10/27(火) 22:50:27.37ID:pXRnvHeR
>>503
//Bはキャンバスにアタッチされたコンポーネント
B canvas=(テキトーに取得しとく)
// ボタンクリック時のハンドラを登録する
button.onClick.AddListener( delegate { canvas.handlerMethod( this.ID ); } );
0507名前は開発中のものです。2015/10/27(火) 22:53:54.22ID:OnaBGD3v
ああ、そっか、これデリゲートを渡すべきなのか。
正しくはUnityActionを渡すべきなのね。
0508名前は開発中のものです。2015/10/27(火) 22:54:21.24ID:p7hCpSTf
>>505
うーん、向いてないのかなぁ、仕事で毎日プログラム組んでいるんだけどなぁ
0509名前は開発中のものです。2015/10/27(火) 22:59:19.84ID:F3qHL0wc
>>506-507
いけました、ありがとうございました!
デリゲート、ユニティアクション、ラムダ式などの知識が不足していたようです。お恥ずかしい
結構前からこの辺で詰まっていたので本当に助かりました
0510名前は開発中のものです。2015/10/27(火) 23:02:17.08ID:37RV8E3U
>>504
スレ違いなので他のスレかフェイスブックあたりでどうぞ
0511名前は開発中のものです。2015/10/27(火) 23:07:30.17ID:pXRnvHeR
>>504
自分が本当に欲しいものを作れ
勉強じゃなくて欲しい物を得る努力をすればいい
0512名前は開発中のものです。2015/10/27(火) 23:44:46.03ID:p7hCpSTf
>>511
なるほど、良いヒントありがとうございます。
頭が良くなるアプリを作ろうと思います!
0513名前は開発中のものです。2015/10/27(火) 23:46:31.92ID:OnaBGD3v
バカ売れの予感
0514名前は開発中のものです。2015/10/28(水) 01:38:20.58ID:r3ifkutk
blenderでモデリングしてるんですが、UVエディターで自分でUV展開したものを
unityに持ってくる場合に問題とかは出ないでしょうか?
スマートUV展開でテクスチャを作成する場合、ペイントしにくいところを変形してやりたいのですが、
作ってからダメだと困るので教えていただけたらと思います。
0515名前は開発中のものです。2015/10/28(水) 01:49:30.48ID:rlGQwf/s
>>514
どういう心配をしているのかよくわからん。
データの構造として頂点と面があり頂点データにはXYZとUVWが格納される。
それだけだ。何でどう展開したかなど関係ない。正しくFBXファイルとして出力されていれば読める。
FBXファイルへの出力時に何かおかしなことが起きるとすればそれはむしろBlederの問題であり
スレ的にはそっちのスレで聞くべきだろう。
Blendファイルを読む場合にも内部のFBXエクスポーターを通しているので同じこと

経験からいえば今の2.7以降なら問題ないはず。2.6xの時代は出力に問題がある場合があったが
UVの問題ではなかった。Rigfyとかその辺。
今でも気をつけるべきことがあるとすればZUpをどう考えるかとかそういう部分だな
0516名前は開発中のものです。2015/10/28(水) 02:02:28.77ID:r3ifkutk
>>515
fbxで出力した場合、uv展開されている情報などはそちらに格納されるのですね。
今まではアセットや拾ってきたデータを使っていたので3Dに関する知識が乏しく、
むこうで質問しようと思いましたが、データのやり取りはこちらの方のほうが詳しいと思い
質問した次第です。
ありがとうございました。
0517名前は開発中のものです。2015/10/28(水) 10:48:40.44ID:FGUU9ByV
>>516
何か根本的な事を理解していないように思えるんだけど
0518名前は開発中のものです。2015/10/28(水) 12:38:53.31ID:THgx16H9
その何か根本的な事とやらを説明してやらなきゃわかるわけないだろ
0519名前は開発中のものです。2015/10/28(水) 13:45:35.23ID:nLn3C3Ex
とりあえずチュートリアル全部やれ、話はそれからだw
■ このスレッドは過去ログ倉庫に格納されています