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

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

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2016/01/11(月) 01:24:43.29ID:r4suKLTg
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が建てて下さい。

■本スレ
【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←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。

前スレ
【3Dゲームエンジン】Unity質問スレッド21
http://peace.2ch.net/test/read.cgi/gamedev/1447775596/
0717名前は開発中のものです。2016/02/16(火) 09:51:39.44ID:/t0eiuWk
>>716
ナビメッシュの頂点を操作する方法はあるんでしょうか?
リファレンスを見ても一度作ったメッシュに手を加える方法が見つからないのですが…
0718名前は開発中のものです。2016/02/16(火) 10:22:58.62ID:8AOr0Xt8
>NavMeshの頂点が無駄に多くなってしまいました

NavMeshがどういう物かも良く知らんくせに何故頂点が無駄に多いと思うんだよw
0719名前は開発中のものです。2016/02/16(火) 13:48:26.73ID:lHM7esNH
公式の「SDユニティちゃん 3Dモデルデータ」ってのを落として動かしてみてるんですが
何故かHumanoidリグ版にCharacter Controllerを付けると接地せず微妙に浮く…
Genericでは特にそういった事は無さそうなんですけどこれは何が原因なんでしょうか
0720名前は開発中のものです。2016/02/16(火) 18:23:49.12ID:ZJyPriQc
uGuiで躓いているので質問させてください。書出しはAndroidです。
UI>panel>スクリプトでプレハブを並べる、という流れです。(5x5でプレハブを並べたアイテムインベントリ)
プレハブはPanelの子要素として並べています。
PC上ではPanelに合わせて1個あたりでプレハブのサイズが拡大されるのですが実機(Android端末)ではプレハブを作成したときの小さなサイズのままです。
なぜこうなってしまうのかわからず、手がかりをいただければと書き込みさせていただきました。
質問が拙いのですが何か「これじゃね?」的なものありましたらよろしくお願いします。
0721名前は開発中のものです。2016/02/16(火) 18:58:35.83ID:qVknYHUh
むしろ質問者が手がかりを提示すべきなんじゃないですかね?
Canvasの設定とか
0722名前は開発中のものです。2016/02/16(火) 19:23:16.85ID:ZJyPriQc
仰るとおりでございます(;´Д`)
Canvas Scaler > Scale With Screen size , 1600*900 , Expand ,Peference Pix Per 100
その他Canvasにアタッチされたコンポーネントは初期値のままです。
Canvas>Panelの子として複製されるプレハブはUI>Imageを元にしたもので、アイテムイメージ表示のスクリプトをアタッチしてあるだけのものです。
Panelはプレハブを並べ、アイテムをドラッグしたりするスクリプトをかいてあります。
YoutubeのPiDiさんという方のチュートリアルを動画を見つつPart5まで打ち込み、実機での動きを確認してる状態です。
0723名前は開発中のものです。2016/02/16(火) 23:00:35.64ID:Qd5CqjhQ
AndroidでランキングにLobi、広告にappcを利用しようと実装しているのですが、AndroidManifest.xmlの位置がAssets/Plugins/Android/AndroidManifest.xmlとAssets/Plugins/Android/LobiCore/AndroidManifest.xmlにそれぞれある状況です。
これを片方にまとめたいのですが、片方にまとめてもうまく動作しません。AndroidManifest.xml側でパスの編集とかをしないといけないのでしょうか?

Lobiを適用すると変な階層にAndroidManifest.xmlがあるため同じ経験をした方はご教授おねがいします。
0724名前は開発中のものです。2016/02/17(水) 15:38:37.29ID:l3sG+XyU
public TextAsset txt = null;
private string[] text = new string[100];

void Start()
{
text = txt.text.Split( '\n' );
}

Inspectorでtxtにテキストファイルを入れて
text配列に改行を一区切りして文章を入れたいんだが
ひらがなが入らない…
ひらがなや漢字を入れる方法を教えてください
0725名前は開発中のものです。2016/02/17(水) 15:47:55.32ID:w2r2iz14
>>724
テキストはUnicodeを使用すること。
あと環境によると思うがsplitは(System.Environment.NewLine.ToCharArray())
にした方がいい気がする。stringのsplit引数はstringでもいい筈なんだが
少なくとも4の時は何故かchar[]じゃないと通らなかったんだよな〜。
07267242016/02/17(水) 16:33:27.95ID:l3sG+XyU
>>725
UTF-8 にしたらできた
サンクス
0727名前は開発中のものです。2016/02/17(水) 17:49:22.80ID:HjnSRaCZ
質問失礼します。
iPhone用のゲームを制作中です。

@Application.dataPath
AApplication.persistentDataPath
BApplication.temporaryCachePath
ファイルの保存場所は上記3か所あるようですが、
サーバーからダウンロードしたゲームで使用する画像ファイル等は、
どちらに入れないといけないのでしょうか?

現在はAに入れているのですが、@とAは「容量が大きすぎるとリジェクトされる事もある」という情報を得て困惑しています。
Bなんですかね?
temporaryって名称だったので一時的なファイル置き場で、ある日突然システムから消されるものと勝手に思ってたのですが、違うのでしょうか?
0728名前は開発中のものです。2016/02/17(水) 18:21:14.12ID:CiQJMAsM
>>727
基本的にはBのApplication.temporaryCachePathが正解

ユーザー操作に依らないでサーバーからダウンロードしたゲームで使用する画像ファイルは
なかったらサーバに再取得しに行けば再構築出来るデータなので一時的なキャッシュとして扱うのが適切
またテンポラリファイルである以上、消えている可能性を考慮して存在チェックと再取得の処理を用意しなければならない

@のApplication.dataPathはアプリ本体に内包したデータファイルを指すパスでありapkやappの中になるため特別な理由がない限り書き込みはすべきでない
AのApplication.persistentDataPathはアプリ単体では再構築出来ないセーブデータ等を保存するパス。再構築可能なファイルを保存すべきではない

例外として、ユーザーがURLやファイル指定で設定したプロフィール画像など再取得が不可能な物は
セーブデータとしてpersistentDataPath以下に置くことが好ましい
07297272016/02/17(水) 18:25:33.44ID:HjnSRaCZ
>>728
07307272016/02/17(水) 18:27:51.21ID:HjnSRaCZ
>>728
詳細な情報ありがとうございました!
0731名前は開発中のものです。2016/02/17(水) 19:21:03.73ID:RqlewXbY
>>1のwikiってずいぶん前に更新が止ってるけど
ここ数年は特記すべき変化がないってことなんです?
0732名前は開発中のものです。2016/02/17(水) 19:49:32.80ID:pXcKHMIe
わざわざ編集してやろうとおもうような奇特な奴がいなくなってしまって
すっかり忘れ去られた遺跡だからね
貴方が編集してくれてもいいんだぜ
0733名前は開発中のものです。2016/02/17(水) 19:51:50.70ID:Q/7ANjt6
JavaScriptでマウスエイムを作ろうとしていますが、いくら検索してもC#ばかりで出てこず、
座標取得やスタンダードアセットを参考にしても分かりませんでした。
どうやったらマウスエイムができるのでしょうか?
0734名前は開発中のものです。2016/02/17(水) 19:55:35.80ID:VTFpwTqM
C#のコード読むのが手っ取り早いかと
0735名前は開発中のものです。2016/02/17(水) 21:02:03.22ID:w2r2iz14
せめて自分なりに書いたコードあげて「こう動かない」とかじゃないと
単に「コピペすれば動くコード寄越せ」って言ってるのと変わらん…
0736名前は開発中のものです。2016/02/17(水) 21:11:25.76ID:HvVp5T2l
今自分のゲームにmp3のファイルをインポートしようとしたらなぜか必ずクラッシュします
バージョンは5.3.2を使ってます
前のバージョンでゲームを作っててなんともなかったのに新しいバージョンにして
初めて音楽ファイルをインポートする作業をやり始めたのですがつまってます
同じ症状の人おられますか?
0737名前は開発中のものです。2016/02/18(木) 00:00:38.97ID:7cjKoaWF
Unity初心者です。
初歩的な質問で申し訳無いのですが、よろしくお願いします。
衝突判定の数秒後にゲームオーバ処理を行うため、コルーチンを使ってみたのですがどうも動いてくれません。
以下コードの一部です。

_void OnCollisionEnter(Collision col)
____{
________if (col.gameObject.tag ==
0738名前は開発中のものです。2016/02/18(木) 00:01:08.85ID:7cjKoaWF
Unity初心者です。
初歩的な質問で申し訳無いのですが、よろしくお願いします。
衝突判定の数秒後にゲームオーバ処理を行うため、コルーチンを使ってみたのですがどうも動いてくれません。
以下コードの一部です。

_void OnCollisionEnter(Collision col)
____{
________if (col.gameObject.tag == "TheBoard")
________{
___________StartCoroutine(LateTime(3.0f));
________}
____}

____private IEnumerator LateTime(float time)
____{
________Debug.Log("呼び出し");
________Destroy(this.gameObject);
________Debug.Log("呼び出し破壊");
________GameObject exp = (GameObject)Instantiate(detonator.gameObject, transform.position, Quaternion.identity);
________Debug.Log("呼び出し爆発");
________yield return new WaitForSeconds(time);
________Debug.Log("呼び出し遅延");
________SceneManager.LoadScene("GameOver");
____}

衝突→オブジェクト消滅→爆発処理→数秒待機→画面変遷という流れです。

なんで動かないのか調べるため、試しに衝突後の処理を全てコルーチンに入れてみたのですが、
どうもyieldから呼ばれていないようです。
何か解決策有りましたらよろしくお願いします。
0739名前は開発中のものです。2016/02/18(木) 00:31:48.05ID:dT69GB31
>>738
その状況から察するに、そもそもスタートコルーチンが呼ばれてないんじゃないの?
タグ名間違えてたりしない?
0740名前は開発中のものです。2016/02/18(木) 00:37:14.37ID:dT69GB31
>>738
ごめん
酔ってたからちゃんと読んでなかった

コルーチンを実行してるゲームオブジェクトが、先に破棄されてるんじゃないの?

ゲームオブジェクトはコルーチンが終了してから破棄するか、破棄されるゲームオブジェクトとは関係ない別のゲームオブジェクトからコルーチンを実行してあげるかしないとダメだよ
0741名前は開発中のものです。2016/02/18(木) 01:07:06.84ID:VlmBiCT7
>>736です
unity入れ直したりosを再起動させたりインポートの方法をメニューのassetの
所からやるように変えたら上手くいきました
何が上手くいった理由なのかはわかりませんがw
0742名前は開発中のものです。2016/02/18(木) 03:07:48.85ID:nu+A7gPa
>>738
コルーチン使わなくてもfloat変数作ってそれをTime.deltaTimeで引いた方が早いんじゃない?
0743名前は開発中のものです。2016/02/18(木) 07:32:24.95ID:eRvToBvZ
>>738
コルーチンは
StartCoroutine("LateTime",3.0f);
で呼び出すんじゃないの?
0744名前は開発中のものです。2016/02/18(木) 09:08:54.92ID:AQpi5nFT
>>743
メソッド名が変わった時エラーダンプされないからstring引数は絶対やめたほうがいい
0745名前は開発中のものです。2016/02/18(木) 10:36:59.10ID:TdEi2HK+
http://unity3d.com/jp/learn/tutorials/modules/intermediate/scripting/coroutines?playlist=17117

日本語字幕の短いチュートリアルくらいはやりましょう
0746名前は開発中のものです。2016/02/18(木) 13:55:32.05ID:GiMk5ehq
スクリプトからUIのImageオブジェクトの色を変更したいのですがどうすればよいでしょうか。
this.gameObject.color や GetComponent<Image>() とやってみましたが上手くいきませんでした。
よろしくお願いします。
0747名前は開発中のものです。2016/02/18(木) 14:03:44.62ID:lCecrzSR
また調べるの面倒なのでコピペすれば動くスクリプト貼ってかよ
せめて>>738程度に自分で書いたスクリプト貼ってどこでつまずいたのか書けよ
0748名前は開発中のものです。2016/02/18(木) 14:12:47.31ID:ojlsCmOr
書いてあるように見えるが
0749名前は開発中のものです。2016/02/18(木) 14:13:17.30ID:prkk2VAO
>>746
Image.color
0750名前は開発中のものです。2016/02/18(木) 14:37:11.25ID:lCecrzSR
きちんと GetComponent<Image>()とUIオブジェクト群って コンポーネントと理解してるんだから
>>749のように取得したのに.color指定すればいいだけなのに何処で間違うのかって話
例えば targetImage = child.gameObject.GetComponent<Image>();
target.color = new Vector4(0, 0, 0, 1);
0751名前は開発中のものです。2016/02/18(木) 14:38:49.58ID:lCecrzSR
例えば
TargetImage = child.gameObject.GetComponent<Image>();
TargetImage.color = new Vector4(0, 0, 0, 1);
とかすればいいだけでしょ
0752名前は開発中のものです。2016/02/18(木) 14:52:38.84ID:prkk2VAO
まあ暗黙的にColorに変換されるからいいんだが
何故Colorのコンストラクタ使わないん?
0753名前は開発中のものです。2016/02/18(木) 15:01:23.95ID:ojlsCmOr
質問文よく読まず文句
他人に後乗りで説明
その上我流の変なプログラム教えるとか
害にしかなってないじゃないですか…
0754名前は開発中のものです。2016/02/18(木) 15:07:49.69ID:lCecrzSR
適当に書いただけだから特段意味はないのにそこまで言わるるとはw
foreachとかのスクリプトがなきゃchildのほうも意味不明だろうけどそっちは何もいわないんだね
0755名前は開発中のものです。2016/02/18(木) 15:34:38.72ID:YlmhAb8a
.>>753が文句だけ言ってるアホな子
Vecto4はUnityマニュアルやチュートリアルのcolor値設定でも使われる
0756名前は開発中のものです。2016/02/18(木) 16:00:53.04ID:GiMk5ehq
すいません、Image.color でやってみましたがだめでした。
今、別オブジェクトから、
public UnityEngine.UI.Image hoge;
からドラッグ&ドロップで持ってきたのを、
hoge.color = new Color(1f, 1f, 1f, 1f);
で、やってみたら一応変更は出来ました。
ですが、結局自身からは取得できずじまいが現状です。
(transform.localPositionみたいに簡単にいじれると思っていたのですが)
0757名前は開発中のものです。2016/02/18(木) 16:05:01.59ID:IDSt+o7p
>>756
Image.colorは完全に嘘だぞw
public UnityEngine.UI.Image hoge;
void Start(){
hoge=GetComponent<UnityEngine.UI.Image>().color=new Color(1,0,0,1);
}
とかだろ
0758名前は開発中のものです。2016/02/18(木) 16:09:58.48ID:YlmhAb8a
Image.colorに合わせて>>754がわざわざforeach使う手法示してるのにな
colorの問題じゃなくて単にUIのImageが取得出来てないだけだろ
そもそもUIの下にImageが幾つあるのかって話からだし
>>747じゃないけどスクリプト貼ったほうが早いと思うよ
0759名前は開発中のものです。2016/02/18(木) 16:15:52.44ID:prkk2VAO
>>754
いやまあ俺も>>749しか書いてないから別に完全なコードを書けと言ってるんじゃないよw

だだまあ初心者に教える場合に型を意識させる事はそれなりに意味のある事だと思う
それをわざわざ黙示的変換噛ませてVector4使うって事はそこに俺の知らないなんらかの優位性が
あるのかと思ったから聞いたんよ

まさか理由なく初心者に非効率なやり方教える奴がいるとは思わんかったw

>>757
>>749が示したのはImageクラスのメンバ変数colorに値をセットすればいいって事
そもそもコードにコピペして動く様には書いてないからw
http://docs.unity3d.com/ja/current/ScriptReference/UI.Graphic-color.html
これなw ImageはGraphicを継承してるからImage.colorでなんの問題もないw
0760名前は開発中のものです。2016/02/18(木) 16:20:55.71ID:YlmhAb8a
すごく簡単な事に揉め過ぎだな
Image.colorにあわせてサンプル、これで動くはずだから終わりにしろ

public Canvas canvas;

void Start () {
Image hoge = null;
foreach (Transform child in canvas.transform){
if(child.name == "MainImage"){
hoge = child.gameObject.GetComponent<Image>();
hoge.color = new Color(0, 0, 0, 1);
} else if (child.name == "SubImage") {
hoge = child.gameObject.GetComponent<Image>();
hoge.color = new Color(1, 1, 1, 1);
}
}
}
0761名前は開発中のものです。2016/02/18(木) 16:44:07.58ID:prkk2VAO
>>760
Canvasの参照持つぐらいなら直接Imageの参照持つべきだし
そもそもこのコードだとCanvasの直下の子にあるImageしか取れないし
文字列リテラル決め打ちとかヒエラルキーで名前弄られたら簡単に動かなくなるし

見事な糞コードだなw
0762名前は開発中のものです。2016/02/18(木) 17:12:14.19ID:9yZU1I7x
お?喧嘩かぁ?!
0763名前は開発中のものです。2016/02/18(木) 17:16:44.10ID:+YpOWldA
>>761が今完璧なコードを書いてる途中なんだから茶化さず待ってろ
07647602016/02/18(木) 18:16:55.76ID:XVXWqMLX
孫以下簡略改善版
色変え条件判らんからそこはそのまま
Unity立ち上げて起動確認までしたからどんどん不足分言ってくれ

private Component[] hogeImage;

void Start () {

hogeImage = GameObject.Find("Canvas").GetComponentsInChildren<Image>();

foreach (Image child in hogeImage ) {
if(child.name == "MainImage"){
child.color = new Color(0, 0, 0, 1);
} else if (child.name == "SubImage") {
child.color = new Color(1, 1, 1, 1);
} else if (child.name == "NextImage") {
child.color = new Color(1, 0, 0, 1);
}
}
}
0765名前は開発中のものです。2016/02/18(木) 19:43:17.00ID:prkk2VAO
ヒエラルキーの構造も想定する呼び出し条件もわからんのでは作りにくいなw

マネージャ的にインスペクタから全て設定できる様にしてみた
Graphicが対象なのでImageだけでなくTextなどの色変更も可能
どこに置いても動くので呼び出し元と同じオブジェクトにアタッチしておいて色を変えたいところで↓呼べばおk
GetComponent<GraphicsColorChanger>().DoColorChange();
Graphicを動的生成する場合は生成元でtargetsにセットすること

public class GraphicsColorChanger: MonoBehaviour {
//色とGraphicを保持するクラス
[Serializable]
public class GraphicColor{
public Graphic graphic;
public Color color;
//色の適用処理
//バーチャルなのは色変化アニメーションをさせる等の拡張を想定
public virtual void Apply(){
graphic.color=color;
}
}
public List<ImageColor> targets;
//色変更はApply()呼ぶだけ
public void DoColorChange(){
foreach(var t in targets){
t.Apply();
}
}
}

個人的にはGraphicColorのカスタムプロパティドロアー書いてリスト表示を単一行にしたい感じだ
0766名前は開発中のものです。2016/02/18(木) 19:45:57.31ID:kYQYNaDj
質問がぼけてると回答もぼけるという
わかりやすい例というか
質問者さんもうちょいちゃんと情報を載せような?
0767名前は開発中のものです。2016/02/18(木) 19:48:18.80ID:prkk2VAO
む、途中でGraphic対象にしたのでクラス名間違ってるな

誤)public List<ImageColor> targets;
正)public List<GraphicColor> targets;
0768名前は開発中のものです。2016/02/18(木) 20:20:36.06ID:Ar9aRBLZ
作ってたら、いつの間にか下記メッセージが出るようになっていました

> Some objects were not cleaned up when closing the scene. (Did you spawn new GameObjects from OnDestroy?)

もちろんOnDestroyで何かを作っているということはなく
どこでメモリリーク?しているのか見当がつかないのですが
こういう場合に場所を特定する手法ってありますでしょうか
0769名前は開発中のものです。2016/02/18(木) 22:45:44.93ID:1s7I/TKd
こちらでの質問すみません。
周りに聞ける人もいなくて・・・。

uGUIで配置したボタン画像の変更をしたいです。
(現在、以下のような形です。)

Canvasに以下のソースをアタッチして、Multiple Spriteを追加。

public class SpritesChange : MonoBehaviour {
public Sprite[] sprites;
}

ボタンがタッチされた時に

SpritesChange sprite = GetComponent<SpritesChange> ();
buttonImage.sprite = sprite.sprites[0];

みたいなスクリプトを書いてみたのですが、nullとエラーが出てしまいます。
こういった場合、どのように変更するのでしょうか。
0770名前は開発中のものです。2016/02/18(木) 22:56:06.94ID:mxgCWiU9
>>769
せめて何がnullか確認してくれ。
デバッガで止めるなりヌル判定してログ出すなりしてspriteかspritesかsprites[0]かbuttonimageどれかがnullか見るんや。
言ってる意味わからんかったらまずc#の勉強してくれ。
0771名前は開発中のものです。2016/02/18(木) 23:00:02.17ID:1s7I/TKd
>>770さん
失礼しました。
GetComponentしたspriteはnullではないみたいです。

sprites[0]がnullになっております。
アタッチ後、ドラッグで追加はしているのですが取得できていないみたいです。

レスありがとうございます。
0772名前は開発中のものです。2016/02/18(木) 23:24:25.96ID:mxgCWiU9
>>771
なんやろね。
少なくとも俺の環境ではうまく動くよ
0773名前は開発中のものです。2016/02/18(木) 23:26:24.10ID:Eij3fMYq
>>768
https://drive.google.com/file/d/0B-7GdJw4zKrqT0NFSGs2QmVOWVE/view?usp=sharing
面白そうなのでヒエラルキー上に残ったゴミを探すエディタスクリプトを書いてみた。
インポートするとWindowメニュー>GomiCheckerというメニューが出るので選択
[Search]押す>デバッグ実行>止める>エラー出る>[Check]押す>Gomiにリスト表示される
どんなゴミができてるか分かれば調べるのも比較的楽になるんでないかね?

GomiMakerのほうはテスト用に使ったものなので不要なら捨てておk
0774名前は開発中のものです。2016/02/18(木) 23:32:00.55ID:Ar9aRBLZ
>>773
すません何もしていないのに直っちゃいました。。
でもありがとうございます
そうか視認できる範囲ならヒエラルキービュー見りゃ良かったのか…
0775名前は開発中のものです。2016/02/18(木) 23:34:14.22ID:1h44uY0V
>>773
追記、リスト右にある[x]ボタンでGameObjectをDestroyImmidiate出来るが、必要なオブジェクトも破壊出来るので使用時は注意してくれ
またOnGUI()でヒエラルキーにある全てのオブジェクトを舐めるのででかいシーンでやると危険かもしれないw

やっつけで書いたので色々テキトーですまんね
多少は助けになると良いんだが
0776名前は開発中のものです。2016/02/18(木) 23:36:48.97ID:1h44uY0V
>>774
GomiMaker使って試すとわかるけど、このタイミングで作られたゴミはヒエラルキービューに表示されないことがあるんよ
だからエディタスクリプトで全チェックして探す形にしたけどまあ治ったなら良かった
0777名前は開発中のものです。2016/02/18(木) 23:38:36.09ID:Ar9aRBLZ
ファイル落とせないかも
「↓」ボタン押すと、「GomiChecker.unitypackage」単体で落ちてきます
0778名前は開発中のものです。2016/02/18(木) 23:44:06.12ID:1h44uY0V
>>777
unitypackageなのでアセットメニューからインポートするか、プロジェクト開いた状態でダブルクリックすれば取り込めるよ
0779名前は開発中のものです。2016/02/18(木) 23:57:57.64ID:Ar9aRBLZ
>>778
ありがとうございます
参考にさせていただきます!
0780名前は開発中のものです。2016/02/19(金) 00:22:45.63ID:Dv6DILVN
>>772さん
すみません・・・再起動かけたら動きました・・・。
スプライトを分割したのを設定したら方法が違うのかと。
わざわざテストまでさせてしまい申し訳ないです。
0781名前は開発中のものです。2016/02/19(金) 00:32:59.88ID:uTMPkILb
>>780
良かった。稀にunityよくわからん動きすることがよくあるよね。
最悪なのは実行時にフリーズする現象。
復旧しないしかといって強制終了すると作業ロールバックしたり悲しいことになるジレンマ。
バックアップはこまめに。
0782名前は開発中のものです。2016/02/19(金) 01:51:27.71ID:Dv6DILVN
>>781
そうなんですね!
ようやく1冊目の本の写経が終わり
自分なりに処理を書いていた所なので助かりました。
バージョン管理しっかりします。
0783名前は開発中のものです。2016/02/19(金) 02:03:36.10ID:fxV/61+B
>>781
実行時にフリーズってプログラム側でデッドロックか無限ループに入ってんじゃねえの?
なお、エディタを落さずに脱出したいならこんな物もあるらしい
http://tsubakit1.hateblo.jp/entry/2015/10/01/050626
0784名前は開発中のものです。2016/02/19(金) 06:50:46.50ID:uTMPkILb
>>783
そんなアセットあるのな。
0785名前は開発中のものです。2016/02/19(金) 06:51:17.28ID:uTMPkILb
>>783
非常にありがたい
ありがとう
0786名前は開発中のものです。2016/02/19(金) 11:38:53.51ID:zbVIJYN5
>>783
これは良い物を教えてもらった。
エディタスクリプトでたまにやらかすから orz
ありがとう
0787名前は開発中のものです。2016/02/19(金) 12:56:52.33ID:bc+fSDmV
cinema mocapでモーションキャプチャーしたいんですが、kinectはxbox360 kinectセンサーでも使えますか? xbox one kinectセンサーがずっと売り切れで。。
0788名前は開発中のものです。2016/02/19(金) 16:57:14.04ID:hu6gBWiN
Photon Unity PlusのRPCというのについて質問です。

シーン上にプレハブを使ってオンラインで操作できるプレイアブルキャラクターを4体作りました。(便宜業ABCDと呼びますがInspector上は全て同じ名前)
RPCを使って自分の見た目(AnimatorController使用)を変更したいと思っています。
ただ、他人の画面上で「自分」の認識の仕方がわからず困っています。

自分のキャラクターをAとします。
ABCDどのキャラクターの操作画面絡みてもAの見た目は同じ、というようにしたいのです下記を作ったのですが上手く行きません。


m_photonView:フォトンビュー格納
ColorTest:自分のキャラクターにAnimatorControllerを設定

m_photonView.RPC(
0789名前は開発中のものです。2016/02/19(金) 19:49:27.34ID:yu/BOb6j
http://iup.2ch-library.com/i/i1603272-1455878635.png
Android実機でビルドすると画像のエラーが出て実行できません。


分かる方お願いします。
0790名前は開発中のものです。2016/02/19(金) 20:18:23.31ID:b6AWRTAI
>>789
stderrに原因と対策があらかた書いてあるんだが読んだ?
指示どおりに対処してダメだったらどんな対処したのかを加えてまた聞いて
0791名前は開発中のものです。2016/02/20(土) 15:23:16.37ID:1NeEDey/
unity3d.com/jp以降のページが繋がらないんだけど自分だけ?
0792名前は開発中のものです。2016/02/20(土) 17:56:41.57ID:yV8/7upk
繋がってるようだが
具体的にどこが繋がってない?
07937912016/02/20(土) 18:20:08.39ID:HTkwGwvw
今確認したら繋がった一時的なものだったみたい
すまん
07947882016/02/20(土) 23:18:04.11ID:QTkBoFsa
失礼しました、途中送信になっていることに今気が付きました。
再投稿させていただきます。


Photon Unity PlusのRPCというのについて質問です。

シーン上にプレハブを使ってオンラインで操作できるプレイアブルキャラクターを4体作りました。(便宜業ABCDと呼びますがInspector上は全て同じ名前)
RPCを使って自分の見た目(AnimatorController使用)を変更したいと思っています。
ただ、他人の画面上で「自分」の認識の仕方がわからず困っています。

自分のキャラクターをAとします。
ABCDどのキャラクターの操作画面絡みてもAの見た目は同じ、というようにしたいのです下記を作ったのですが上手く行きません。


m_photonView:フォトンビュー格納
ColorTest:自分のキャラクターにAnimatorControllerを設定

m_photonView.RPC("ColorTest", PhotonTargets.All);

とするのですが、これをやったとたんに自分以外のキャラクターBCDも見た目が変わってしまい、困っています。

Photonを使っている方は少ないとは思いますが、自分のキャラクターの判別方法などありましたら教えて頂けますでしょうか。
0795名前は開発中のものです。2016/02/21(日) 00:10:34.08ID:S0HsS1LU
>>794
単純に解決するなら、送信時に変化対象のPhotonIDも一緒に付加して、受信した側は送られてきたPhotonIDから変化させるオブジェクトを判断するようにすればいいんじゃない?
0796名前は開発中のものです。2016/02/21(日) 01:34:48.12ID:v5Kuu8DV
unityでadmob使おうとしているけど、公式通りにやっても広告が表示されない。

エディタ側でlogにDummy LoadAdと表示されるだけで、エディタ、端末ともにリクエストはされているっぽいけど何故か表示されない。。。

同じような方で解決した方いますか?
0797名前は開発中のものです。2016/02/21(日) 02:14:11.22ID:EieEYq+z
>>796
最近不具合でテストバナーが表示されない時期がありましたが、
今はバナー/インタースティシャルどちらも表示されているので、
おそらくどこかでコードをミスっているのではないかなと思います

※エディタ上ではテストであっても表示されないようです

https://developers.google.com/mobile-ads-sdk/docs/games
こちらからダウンロードできるGoogle Mobile Ads Unity Pluginで
adUnitIdをご自身のIDに変えて、表示されるかどうか試してみてはいかがでしょう
(本番広告をタップするとアカウント停止されるのでご注意)
0798名前は開発中のものです。2016/02/21(日) 02:33:04.82ID:EieEYq+z
>>797
Google Mobile Ads Unity Pluginのデモスクリプトで・・・でした
0799名前は開発中のものです。2016/02/21(日) 10:46:25.27ID:NbrHakv8
>>796
自分もそれあったよ。
コードはあってる。

でも昨年作ったアプリだけで最近作ったものに関しては問題なかったな。

結局今はアイモバ使ってるけど。
0800名前は開発中のものです。2016/02/21(日) 22:20:32.53ID:9OlsMakc
>>795
回答有り難うございます。
PhotonIDってもしかしてViewIDのことでしょうか?
ちょっと自オブジェクトのIDの表示、確認の仕方がわからず調べているのですが手こずっています……
よかったら助言いただけると助かります……
0801名前は開発中のものです。2016/02/22(月) 00:08:27.12ID:aiT4UzLs
>>800
わかりにくくてすまん。
PhotonIDはPhotonPlayerのIDのことです。
まあ、これを使わなくてもプレイヤーを識別できる何かが他にあるなら、その情報を付加すればいいだけだよ。

RPCはただ単に相手先の関数呼ぶだけじゃなくて、そこに任意のデータも引数として渡せるんだから、それこそAとかBとかを付加して呼び出せばいいんだよ。
0802名前は開発中のものです。2016/02/22(月) 00:39:56.76ID:aiT4UzLs
>>800
荒業だけど、もっとシンプルにやるなら、変化対象ごとに関数をわける方法もあるよ

・自分がプレイヤーAのとき
m_photonView.RPC("ColorTestA", PhotonTargets.All);

・自分がプレイヤーBのとき
m_photonView.RPC("ColorTestB", PhotonTargets.All);

・自分がプレイヤーCのとき
m_photonView.RPC("ColorTestC", PhotonTargets.All);

・自分がプレイヤーDのとき
m_photonView.RPC("ColorTestD", PhotonTargets.All);
0803名前は開発中のものです。2016/02/22(月) 03:31:43.35ID:zNTYcBGR
自オブジェクト判別したいならisMineでいいじゃん
0804名前は開発中のものです。2016/02/22(月) 23:17:01.20ID:CX5klsmj
Unity5で、オブジェクトに投影される影ではなく、オブジェクト自体の陰を
表示させないようにする(計算させない)にはどのように設定すれば良いのでしょうか?
例えば、Cubeの場合、本来光が当たらず、陰になる面も光が当たっている面と同じ色に見えるようにしたいのです
0805名前は開発中のものです。2016/02/22(月) 23:20:36.42ID:EaQB5q7d
そこらへんはシェーダーをごにょごにょすべし
0806名前は開発中のものです。2016/02/23(火) 00:47:24.91ID:DbtyC/vU
回答有り難うございます。
PhotonPlayer.ID→ゲームをやっているプレイヤーのID(スーファミで例えるならコントローラー1、コントローラー2)
viewID→Photonを使用しているゲームオブジェクトの判別ID(スーファミで例えるなら白ボンはID1,黒ボンはID2、赤ボンは3……)

PhotonPlayer.IDでやろうと思ったのですがどうしても上手く出来ませんでしたので助言いただいたのに申し訳ないのですviewIDで作ってしまいました。
関数分けは凄くわかりやすいのですが自分、頭が悪いんで1つだけ変更して残り3つの変更を忘れるとかやりそうなので……
isMineでは自分の判定しか出来ないため、「他人から見た自分のスプライトを変更」するのには合わないかと思いました。

最終的に下記のようにしたら思ったように動いたので感謝の意と共に晒しあげておきます。
//ViewID格納
public int _viewID;
//変更する色の番号
public int _Color;
void Start()
{
_viewID = m_photonView.viewID;
if (m_photonView _ismine)
{m_photonView.RPC("ColorTest", PhotonTargets.All, _viewID, _ Color);}
}
[PunRPC]void ColorTest(int __viewID, int i){
if (__viewID == _viewID)
{/*_Colorに応じたアニメーション変更スクリプト*/}
}
0807名前は開発中のものです。2016/02/23(火) 01:05:59.40ID:CP8FtLkc
photonのネットワーク通信で、
マスターからクライアントへ応答要求

相手からの応答待ち

マスターで何かの処理

クライアントへデータを送信し同期

次のステートに移り応答待ち
といった処理を順にしたいんですが、
コルーチン、コールバック、タスク完了のフラグとかで汚くなってしまいます。

こういうのを綺麗に書く定石みたいなパターンはありますでしょうか?
0808名前は開発中のものです。2016/02/23(火) 15:30:19.14ID:tlAPhzXP
SpriteStudioで作成したデータをUnity上で使いたいのですが
SS5PlayerForUnity-developのインポートの仕方が良く解りません

DLした上記ファイルの圧縮データを解凍したモノを直接プロジェクトビュー上へD&Dすればいいのでしょうか?
また、この方法を行った後タイトルメニューのTools→SpriteStudio→Import SS5(.sspj)を選択して
作成したデータやサンプルデータを読込もうとするとエラー(Import Interrupted! Check Error on Console)を起こすのですが
解決方法は何かないでしょうか?
0809名前は開発中のものです。2016/02/23(火) 16:31:54.92ID:xoCviIlQ
unityの2d機能について質問です
例えば2dのフィールドマップをシーンに配置する場合
どういう効率的な方法があるでしょうか?
イメージとしては家庭用ゲームのマリオメーカーやRPGツクールのように
「トゥルルルルルル」と気持ちよく置けるようなのを考えています
そういうアセットか何かありますでしょうか?
0810名前は開発中のものです。2016/02/23(火) 18:10:07.72ID:QpXc/Lao
汎用のマップエディタがあるからそれで作ったマップファイルをUnityで読み込む
0811名前は開発中のものです。2016/02/23(火) 18:23:06.76ID:xoCviIlQ
>>810
返信ありがとうございます
unity内で完結してる方法じゃないいですよね?それ
ちょっとハードル高いですね
みんなそんな事やってるのでしょうか?
0812名前は開発中のものです。2016/02/23(火) 18:34:53.36ID:6z8T5r4o
一つのオブジェクトなら普通にバンと置けばいいんじゃないの?
マップチップなら2重ループで縦と横に1パネル単位で配置するスクリプト組むとか
0813名前は開発中のものです。2016/02/23(火) 18:52:34.44ID:xoCviIlQ
>>812
マップチップを考えてます
スクリプトでやるのも一つの方法ですよね
今日調べたらエディターカスタマイズしてやってる人もいて様々な手法があるようです
0814名前は開発中のものです。2016/02/23(火) 19:20:51.23ID:gd1u6XGg
調べてすぐ判るような事ならここで聞く前に調べろよw
0815名前は開発中のものです。2016/02/23(火) 19:41:26.43ID:XkqqnmxN
>>809
難しいものでもないので自前で書くのも良し、汎用エディタ使うのも良しなのは既出として
アセットストアで探すなら「エディタ拡張/2D&スプライト管理 Tile」で検索すれば複数出てくるよ
0816名前は開発中のものです。2016/02/23(火) 19:41:37.69ID:xoCviIlQ
>>814
ネットの検索だけでは「その道のスタンダードな方法」ってのがわかりにくいんですよ
みんなおもいおもいの「スタンダードな方法」を信じてやってるわけですし
■ このスレッドは過去ログ倉庫に格納されています