トップページ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←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。
0791名前は開発中のものです。2015/11/09(月) 22:41:38.38ID:shS/fjjZ
JCBや
連投すまそ
0792名前は開発中のものです。2015/11/09(月) 23:24:16.06ID:DRCtN/H5
instantiateでprefabからspriteのオブジェクトを動的に生成する時、rigidbodyのy軸固定すると、(0, 0)の原点にオブジェクトが生成されるんだけどこれってunity側のバグだよな?
0793名前は開発中のものです。2015/11/09(月) 23:24:40.16ID:qs9nYZ4X
>>790

調べてきた
今でもAppカードで出来るし裏ワザでもなく正規な方法だったよ


国が発行している身分証送付が必要なのは
「他人のクレジットカードを使った場合」
「appカードを使った場合」は文章の表現が微妙でよくわからんかった、もしかしたら不要かもしれない
どちらにせよクレカなしでも大丈夫みたい


個人的にはクレカの1つくらい持ちたいのだが家訓で持っちゃダメなんだw
親族がクレカでとんでもない事やっちゃって…

アセットストアはクレカのみだし、買いたいけどなんとかならんもんかなぁ
0794名前は開発中のものです。2015/11/09(月) 23:28:26.65ID:qs9nYZ4X
家を買う時に銀行のクレカを申し込むとかなり美味しい特典があったから一瞬だけ作ったけど、速攻解約した
0795名前は開発中のものです。2015/11/09(月) 23:41:07.17ID:qs9nYZ4X
>>785
測るのが一番だけど、ビデオチップの仕組み的にたぶん効果は結構あるはず
重いネトゲとかもウィンドウモードで小さくすると軽くなるよ、どのタイトルでも


>>788
端末を一意に識別する方法
http://iridge.jp/blog/201404/4836/
0796名前は開発中のものです。2015/11/09(月) 23:51:36.80ID:PTE0Xb7Z
>>793
だからvプリカ買ってこいって
デビットが何かも知らないのに、古い情報は調べてくるんだな
0797名前は開発中のものです。2015/11/09(月) 23:59:30.98ID:qs9nYZ4X
最新の情報だが?
0798名前は開発中のものです。2015/11/10(火) 00:01:23.28ID:JfxHBNQ1
それにVISAデビットはクレカじゃねぇw
0799名前は開発中のものです。2015/11/10(火) 00:34:01.04ID:1rCO+Sow
ネット漁ったらVプリカでできた奴もいれば、できなかった奴もいるようだ…
そもそも本人確認にならないが…
2014.04.25にギフトカードでできなかった奴は廃止になったとアップルから言われて泣いたとブログに愚痴っている
2014年12月6日にギフトカードでできた記事かいている奴もいる
銀行振り込みでできた奴もいる…マジらしい
うーむ

基本的には
http://www.apple.com/jp/shop/help/payments/japan_payments
の中の方法ならどれでもできるらしいよ。やり方は知らんけど
たぶん管理している部署が同じなんだろうと思う
何かの都合で出来ない時とかあるんだろう
0800名前は開発中のものです。2015/11/10(火) 01:16:37.23ID:wPAfCmq9
みんなアセットストアで何買うの
めかにむ使った事ないんだけど
0801名前は開発中のものです。2015/11/10(火) 01:17:33.83ID:wPAfCmq9
無料のメカニム以外…って書こうとしたら送ってしまった
0802名前は開発中のものです。2015/11/10(火) 01:42:56.06ID:TLP7pflx
標準GUI登場前にセールでNGUI買ったよ
今となっては表示順管理の煩雑さと負荷地獄に陥った悪夢でしかないが、世話になったし元は取ったと思ってる
0803名前は開発中のものです。2015/11/10(火) 03:01:48.00ID:wPAfCmq9
>>802
なるほど
便利なやつがあれば買ってみようかな

商品として、3Dモデルとか買うのはちょっと理解できん
面倒でも一番手を抜いたらダメな所だと思ってるんだが…
0804名前は開発中のものです。2015/11/10(火) 05:46:30.46ID:6aokvmju
>>803
アイテム類とか装飾品(カトラリーとか屋内のね)とか岩とか良く買った
使い回しが効く物は買って損無い
流石に人物とかを買う気にはならないなぁ
0805名前は開発中のものです。2015/11/10(火) 12:41:24.22ID:wPAfCmq9
>>804
背景ぐらいなら確かにいいかも
ちょっと頭固かったわ
今ざっと見たけど、リアル調かアニメ調の両極端がほとんどみたいだね
自分の中途半端なデザインと合うやつ見つけんの難しそうだな…
0806名前は開発中のものです。2015/11/10(火) 15:37:10.16ID:xzywSrEr
かなりのパワーを持った振り子を作りたいのですが
一番下の鉄球を重くすると鎖の部分が耐え切れず震えてしまいます
鉄球を重くしてもジョイントは絶対に離れない設定はできますか?
0807名前は開発中のものです。2015/11/10(火) 15:47:29.83ID:VRY7zaXA
「絶対に」みたいな保証が欲しいならそもそも物理なんかで作るべきではないんだよなぁ
だからキャラクターコントローラみたいなものもある訳で
まぁ震えを抑えたいんだったら鎖のRigidBodyのスリープスレッショルドを際限なく上げたらどうか
0808名前は開発中のものです。2015/11/10(火) 18:10:56.37ID:6aokvmju
>>805
>今ざっと見たけど、リアル調かアニメ調の両極端がほとんどみたいだね
すまぬ、この中間がどのような物か想像も付かないのだけど、どんなのを想起すればいいのか教えてくれ orz

なんかアート的な表現であるん?
0809名前は開発中のものです。2015/11/10(火) 18:45:25.10ID:4CX6l9FX
中間だとパズドラとかじゃね?
0810名前は開発中のものです。2015/11/10(火) 19:36:08.15ID:zWbg6gOK
>>808
どっちかって言うと、リアル調寄りだけどリアル過ぎなくて雑な感じ
個人的にそういうやつの方が作ってて楽だし好き。
頂点数を極端に抑えたりしてね
なんなら初代バーチャファイターみたいなフラットシェーディングでもいいぐらいかな
そのレベルのやつ作る時はUnity使わないけどね

決してアートとかではない
0811名前は開発中のものです。2015/11/10(火) 22:17:08.61ID:1rCO+Sow
無料の3Dデータなら海外サイトに結構いっぱいあるよ
日本人ウケしない洋モノなのしかないけど
0812名前は開発中のものです。2015/11/10(火) 23:01:36.40ID:d51lNxpK
ボールの向きの概念と実装の方法が書かれているチュートリアルってあるかな?
0813名前は開発中のものです。2015/11/10(火) 23:11:09.53ID:VRY7zaXA
スフェアを作ってスフェアコライダーつけてリジッドボディつければそれで終わりじゃん…。
向きはtransform.forwardで取れるし動いてる向きはリジッドボディのvelocity.normalizedでとれるし
0814名前は開発中のものです。2015/11/10(火) 23:13:30.32ID:TLP7pflx
スフィア

いや失礼、二度間違えてたからもしかして素なのかなと
たんなる打ち間違えとスマホあたりの予測変換適用だと思うけど
0815名前は開発中のものです。2015/11/10(火) 23:20:33.87ID:1rCO+Sow
>>812
とりあえず
「transform.forward」「velocity.normalized」
あとグーグルで「Roll-a-Ball」

知らんけど
0816名前は開発中のものです。2015/11/10(火) 23:56:15.80ID:1rCO+Sow
すいません、初心者質問

コルーチンを使ってインスタンスを50個ほど生成すると
1フレーム毎に1個生成されて50個できあがるには50フレームの時間を要するのでしょうか?

コルーチンでN秒かけてX個生成とかできますか?
0817名前は開発中のものです。2015/11/11(水) 00:11:09.36ID:dWVd6jum
>>816
できるよ。コピペすれば動くコードを寄越せといわれてもアレだが
0818名前は開発中のものです。2015/11/11(水) 00:19:29.95ID:dWVd6jum
まぁ多分こんな感じか?
IEnumerator GenerateIns(float time,int count,GameObject obj){
float interval = (float)count/time;
float pastime=Time.deltaTime;
while(count<0){
if(pastime>interval){
Instantiate(obj);
count--;
pastime-=interval;
}
if(pastime>interval)contine;
pastime+=Time.deltaTime;
yield return null;
}
0819名前は開発中のものです。2015/11/11(水) 05:26:36.75ID:NpONPEhe
Animatorについて質問です

Any stateからトリガーでアイドルアニメーションに戻る設定にしているんですが
たまにトリガーに反応せずに前のアニメをそのままループしてしまいます
設定する上での注意点などありますか?
0820名前は開発中のものです。2015/11/11(水) 11:57:47.77ID:khbKue3B
>>819
アニメーションの推移のTranslation Durationを短くしてトリガーで推移するための入力をGetKeyDownかGetKeyUpにして、アニメーションが推移してる途中に入力がダブらないようにするとかかなぁ
もっといい方法があるかもしれんが
まぁとりあえず俺はそれで似たような問題直ったわ
0821名前は開発中のものです。2015/11/11(水) 16:37:00.82ID:JOWTmc95
>>818
俺ならWaitForSeconds使うかな

IEnumerator GenerateIns(float time,int count,GameObject obj){
//待つ回数は生成する数より1少ない
float interval = (float)(count-1)/time;
while(count>0){
Instantiate(obj);
count--;
if(count > 0){//終端は待たない
yield return new WaitForSeconds(interval);
}
}
}
0822名前は開発中のものです。2015/11/11(水) 16:40:20.71ID:WrIQr//L
>>816
俺はTime.deltTimeを勧める
フレーム数だと端末のスペックに依存するらしいからこっちの方が使いやすいと思うで
0823名前は開発中のものです。2015/11/11(水) 16:51:16.89ID:TnteJRCs
2Dで弾幕STGのような物を作っているのですが、当たり判定まわりの軽量化についての質問です。

Unity5で、
現在は素直にrigidbody2D(isKinematic=true)+2D系colliderで当たり判定の処理を行っていますが、
オブジェクトが増えるとばりばりに重くなってしまって困っています。

色々調べてみた所、
rigidobodyを抜いて3D系のcolliderのみを使用した方が高速という話を聞いたのですがどうなんでしょうか。
また、rigidbody(physics3)+3D系collider>rigidbody2D+2D系colliderで早いとも聞きます。


(勿論自作するのが一番軽くできるのはわかっているのですが、
今更ちょっと直せないので、rigidbodyとcolliderの変更で対応したいです)
0824名前は開発中のものです。2015/11/11(水) 16:52:55.73ID:dWVd6jum
>>821
そこが多分確実じゃないところで俺も試した訳じゃないんだけど
yield returnした場合intervalが極小でも1フレームに2回は呼ばれないんだよ、多分
ttp://qiita.com/Heart_Of_Logic/items/4fe2ae5e72bcef7aebc3
書いてて思ったんだが質問者の意図はそこだったのかな〜と。
intervalの割り出し時のcount-1は全くその通りだw
0825名前は開発中のものです。2015/11/11(水) 22:28:43.55ID:JOWTmc95
>>824
確かにそうね、intervalがTime.deltaTimeを下回る場合の事は考慮しなきゃならんね
経過時間の加算のためだけに毎フレームコルーチンに処理を戻すのはなんか気分が悪いので>>818のcontnue;以降を以下の様に変えてみる というのはどうだろう?

//作り終えてるなら無駄に計算せずに終わる
if(count==0)break;
//経過時間を自前で計算するための準備
float prevtime=Time.timeSinceLevelLoad;
//intervalがdeltaTimeより長い場合毎フレーム処理を戻さない
yield return new WaitForSeconds(interval);
//経過時間を加える
pastime+=Time.timeSinceLevelLoad-prevtime;
//ループの終端

まあどうでもいいと言えばどうでもいいところではあるんだが考えるのは楽しいな
0826名前は開発中のものです。2015/11/11(水) 23:59:03.04ID:AVPsmhSE
>>823
物理演算は重いもんだからなあ。

弾幕っていうくらいの数が必要なら、物理的な挙動が必要かどうかを個別に判断して、
不要なオブジェクトには極力Rigidbodyを乗せないようにするって手間が必要じゃない?
0827名前は開発中のものです。2015/11/12(木) 03:44:11.69ID:NUoRW3t+
昔の弾幕ゲームは当たり判定の一部を間引いていると聞いたことがあるな
0828名前は開発中のものです。2015/11/12(木) 06:43:11.19ID:aLOb8jJO
あー、水増しというか、こけ脅し的な弾とかありそう
0829名前は開発中のものです。2015/11/12(木) 06:45:48.91ID:vYAKVRRG
>>827
TREASUREの弾幕シューティングはあたり判定1ピクセルしか無かったりするし(レディアントシルバーガンとか)
つか弾幕シューティングだったら剛体いらなくない?
0830名前は開発中のものです。2015/11/12(木) 06:47:27.65ID:aLOb8jJO
弾幕STG 「のようなもの」 って言ってたから、物理挙動が必要なのかなと
0831名前は開発中のものです。2015/11/12(木) 09:03:26.60ID:0Y7tmgLA
負荷に影響する当たり判定って、大きさじゃなくて数じゃないの
どうやるのか見当もつかんけど、例えば最前線?の弾にしか判定が無いとか
0832名前は開発中のものです。2015/11/12(木) 09:24:17.55ID:aLOb8jJO
>>831
数ドット四方同士→ 1ドット同士 にすると、処理は減ると思うよ

敵左上x <= プレイヤー右下x && プレイヤー左上x <= 敵右下x && 敵左上y <= プレイヤー右下y && プレイヤー左上y <= 敵右下y

敵x==プレイヤーx && 敵y==プレイヤーy
になるわけだし。
0833名前は開発中のものです。2015/11/12(木) 10:30:06.27ID:RpekMpCu
敵の弾って「プレイヤーと当たったか?」だけでいいなら、円型の敵弾については、プレイヤーのtransformのposition情報を使って、「距離の二乗が一定の数値以下になったら自機に衝突したとする」でいいと思う
わざわざ個々の敵弾にrigidbodyとcolliderつけるよりこっちの方が軽いだろう

「距離の二乗」ってのは、いちいち平方根処理を間に挟むより、二乗状態のままで比較計算させた方が若干計算処理省略できるからね
距離って、(x1-x2)の二乗と(y1-y2)の二乗を足してから平方根処理して求めるが、その平方根処理は省略すると


グラディウスみたいに「地形に当たると敵弾が消える」だったり、自機のオプションで敵の弾を防げるとかの場合は、この手は使えないと思うが
0834名前は開発中のものです。2015/11/12(木) 11:25:05.75ID:eN7ThyoZ
物理演算が必要な弾幕ってちょっと想像できないけど
なに作ってんだろうね

2D判定のSTGなら通り抜けに気をつけるくらいで円・円や線・円の判定だけで割と十分なんだし
0835名前は開発中のものです。2015/11/12(木) 12:37:22.81ID:0lKXw4o1
>>834
上から落ちてくるのを避けるんじゃね?
0836名前は開発中のものです。2015/11/12(木) 13:08:47.49ID:vYAKVRRG
>>835
バカゲーとしてスペースインベーダーの物理計算版とか作ってみたくなった
0837名前は開発中のものです。2015/11/12(木) 14:07:06.25ID:9mi55rKN
打つと物理で落ちてきて超邪魔、みたいなの想像した
0838名前は開発中のものです。2015/11/12(木) 14:30:53.90ID:YTavXGbN
曖昧な質問&自分でもあまり理解していなくてすみません
GPUを使った高速化をするにあたって、Unityの内部構造(パイプラインと言うのでしょうか)と
どの部分で何をすれば高速化できるかを勉強して来いという課題を出されたのですが、
そのような内容を扱ったWebページや書籍・論文はありますか?
Unityにおけるhttp://qiita.com/scnsh/items/1b6939520a57d41d60a3の下方にあるような図や
その解説を探してこいということだと思っていますが
0839名前は開発中のものです。2015/11/12(木) 14:53:56.01ID:2MCjHBTr
撃つと弾同士が衝突してビリヤードの玉の様に跳ね回るとか妄想した
0840名前は開発中のものです。2015/11/12(木) 16:49:32.32ID:AmIPblPe
弾幕を装甲に喰らってジリジリ後退するシーンを妄想。
最後はマテリアルライフル
0841名前は開発中のものです。2015/11/12(木) 17:49:14.11ID:bIO3m3Lc
アタリとるだけなら>>833で簡単にできる。
地形に関しても工夫すれば色んな方法がある。(マップチップ的な仕組み等々)
けど何も変えたくないなら無理だと思うよ。
一つ付け足したり、入れ替えただけで劇的に軽くなるような魔法の言葉はない。
てか、2Dゲームで何がなんでも物理挙動させたいって状況あんま思いつかないな。
アングリーバードみないなパズル的な要素があるのならわかるけど。
0842名前は開発中のものです。2015/11/12(木) 19:20:00.57ID:847UlEoI
ScrollView → Content → Image で
スクロールビュー内の画像を非表示にしたいのだけどなにか良い方法ない?


Vector2 worldPoint = Input.mousePosition;
RaycastHit2D hit = Physics2D.Raycast(worldPoint,Vector2.zero);
if(hit)
{
hit.collider.gameObject.SetActive(false);
}
これだと存在そのものが消えてビュー内のオブジェクト位置が全部おかしくなるし


Vector2 worldPoint = Input.mousePosition;
RaycastHit2D hit = Physics2D.Raycast(worldPoint,Vector2.zero);
if(hit)
{
hit.collider.gameObject.GetComponent<Renderer>().enabled = false;
}
これだとレンダラを追加する必要があります、とか言われる


知恵をかしてくれ!!
0843名前は開発中のものです。2015/11/12(木) 19:23:36.17ID:eo4TK6wZ
>>838
そんな課題どっからでたんだw
Unityはソースコードは公開していない。
ソースコードライセンスは機密保持が出来る規模の企業相手にしかしないよって言ってる。
だからその手のものは存在しない。存在したら機密保持違反になる。

自分が所属している企業なり法人なりがそういう契約をしていて
ソースコードが覗けるならそれをみてそういう解説を「自分で書け」
というのがその課題、の意味だろう。
08448232015/11/12(木) 19:47:53.29ID:SJdDhsmD
みなさん色々とありがとうございます。

つまるところ、
 ・物理演算が必要な時はrigidbody(physics3)+3D系collider
 ・不要な時は3D系colliderのみ
といった感じが良いんでしょうかね
0845名前は開発中のものです。2015/11/12(木) 22:01:06.70ID:LVDRvJyy
>>844

僭越ながらひとつアドバイスをば。


「物理演算が必要な弾幕ってちょっと想像できないけど」
「2Dゲームで何がなんでも物理挙動させたいって状況あんま思いつかないな。」


クリエイターにとって、こーゆうの褒め言葉、
容易く想像できるものは価値なんてない
尖っていこう
0846名前は開発中のものです。2015/11/12(木) 22:08:54.19ID:Ut34UF2L
unityの入門書って何がおすすめですか
c#をしているので、オブジェクト指向や言語の解説はあまり必要ありません
0847名前は開発中のものです。2015/11/12(木) 22:26:38.59ID:WG4cskIO
俺もc#をしている
0848名前は開発中のものです。2015/11/12(木) 22:36:36.19ID:bIO3m3Lc
>>845
アホやな
本来ゲームプログラミングってのは、どうやって魅せるかってのが腕の見せ所なんだけど。
Unityの恩恵で、何も考えず全ての物に物理演算させてんのは単に頭使ってないだけやで
負荷バリバリのド派手な演出やゲームシステムを思い浮かべるだけなら誰でもできる。
「ぼくのかんがえたさいきょうのげーむ」を実現できなければクリエイターでもなんでもない
08498382015/11/12(木) 22:50:39.92ID:YTavXGbN
>>843
ありがとうございます
大学の研究でUnityを使っているのですが、
「ブラックボックスじゃ駄目だ、中身を理解して高速化してゼミで発表しろ」と…
ユーザーガイドに書いてある以上のことは基本的にわからないという感じですかね

とりあえず先に挙げた図(DirectX)について調べて、
その結果とUnity自体についてはわからないという報告を持っていこうと思います
0850名前は開発中のものです。2015/11/12(木) 23:26:33.95ID:6pq74OmM
物理演算にこんな使い方があったのか
みたいな話じゃね
まあどうでもいいが
0851名前は開発中のものです。2015/11/12(木) 23:27:17.54ID:6pq74OmM
>>850>>848へのレス
0852名前は開発中のものです。2015/11/12(木) 23:35:02.30ID:p75ScQ50
unityで作ったアプリを起動する時にロゴが出ますが、このロゴが出たままgooglePlayにリリースしても問題ないのでしょうか?
0853名前は開発中のものです。2015/11/12(木) 23:41:07.70ID:WG4cskIO
googlePlayのアプリやってみりゃいいじゃないの?
0854名前は開発中のものです。2015/11/12(木) 23:42:35.84ID:LVDRvJyy
>>849
大学の課題なら、とりあえずこーゆうのでごまかしとけばいいんじゃね?

http://docs.unity3d.com/ja/current/Manual/OptimizingGraphicsPerformance.html
http://www.techdrivein.com/2013/03/4-simple-tweaks-to-improve-unity-performance-ubuntu.html
http://sicklebrick.com/?p=411
http://wiki.mediafi.org/doku.php/ficontent.wiki.deliverables.d61


リバースさせてブラックボックスの中を覗いてもチンプンカンプンだろうし
UNITYを走らせるランタイム的なものまで含めて調べるのも骨が折れるしなぁ
無理じゃね?
0855名前は開発中のものです。2015/11/12(木) 23:49:36.35ID:LVDRvJyy
>>851
釣りの反応した人だから 許したってーな
0856名前は開発中のものです。2015/11/12(木) 23:56:15.24ID:EeMFL6bc
>>852
大丈夫だよ。そもそもそうでないとこんなに使われないっしょw
0857名前は開発中のものです。2015/11/12(木) 23:56:16.73ID:55ps9qpV
メンバで初期化するのとAwakeメソッドで初期化するのって何が違うの?
どっちか避けた方がいいとかある?
0858名前は開発中のものです。2015/11/12(木) 23:59:26.99ID:bIO3m3Lc
>>855
久々に聞いたな
今どき釣りとかいってんのお前だけやで
釣り(笑)言うなら勝手に人のレス引用しないで自分だけで完結してね
0859名前は開発中のものです。2015/11/13(金) 00:19:49.18ID:lBmu0GyH
>>852
1000万以上の売上があるならアウト
0860名前は開発中のものです。2015/11/13(金) 00:21:38.03ID:8xXleAZV
>>857

Awakeはコンストラクタの代わりだよ
モノビヘイビアを継承してるとコンストラクタ使うとマズイから

で、

メンバで初期化するのとコンストラクタで初期化するのって何が違うの?
どっちか避けた方がいいとかある?

と言われたら俺は雑魚だから分かりません。
08618382015/11/13(金) 00:23:25.39ID:Gp307Kh2
>>854
おおお、ありがとうございます!
そもそも論文を書くのに必要なシステムを作るためにUnityを使っているだけで
Unityも高速化も研究室のテーマでもなければ教授の専門でもない
(なので教授自身Unityの中身を知ることができないということを知らなかった)んですが
その程度のシステムで満足するな!見つからなかったのは調べ方が悪いんだろ!
と大きな要求を出してくる人でして…
もちろん私はリバースとかやるつもりは毛頭ありません
(できませんし論文の主旨から完全に外れています)

(こういうことを言うのもアレなんですが)英語のドキュメントなんかは
「読んでみたら思ってた内容と違った」という言い訳も通用しますし
(もちろん求めてる内容ならそれはそれでいいですし)
とりあえず挙げていただいたのとか読んでいこうと思います
0862名前は開発中のものです。2015/11/13(金) 00:29:07.53ID:LKPBdReq
MonoBehaviourを継承したクラスAで
public sealed void Update(){}
って書いたらクラスAの子クラスにUpdateメソッドを使用禁止にできる?
0863名前は開発中のものです。2015/11/13(金) 00:33:36.76ID:LKPBdReq
そもそもシールできないって出たわ
0864名前は開発中のものです。2015/11/13(金) 00:35:58.55ID:8xXleAZV
>>589
それってUNITY社に分るのかな?

ちなみにUnity公式からダウンロードしたVisualStudioは「Comminuty」だから年1億円以上の売上げがあるとNG
VisualStudioComminutyに関しては年1000億超える会社でもカネは払っていなくてもバレナイ(実話)
0865名前は開発中のものです。2015/11/13(金) 00:36:25.08ID:8xXleAZV
>>859だった
0866名前は開発中のものです。2015/11/13(金) 00:57:06.12ID:hcaUuaa2
>>849
大学の研究でそういうことやってるならUE4に移行した方がいいんじゃないか?
あれならソースコードも全部見れるしカスタマイズして高速化もできる。
っていうか、そういうことやりたいならローレベルの問題を抽象化するゲームエンジンを何故使う…という気が…
08678382015/11/13(金) 01:28:48.10ID:Gp307Kh2
>>866
あるシミュレーションをすることが目的で本題なので
中身は知らなくてもよかった(本来は…)し
実際UnityじゃなくてUnrealでもよかったんですが
こういう状況の予測と下調べをもう少しすべきでしたね…
0868名前は開発中のものです。2015/11/13(金) 02:39:32.15ID:LKPBdReq
シーン上の全てのオブジェクトのコンポーネントから、あるインターフェース(あるいはクラス)を実装(継承)したコンポーネントの一覧を取得するにはどうすればいい?
とりあえず特定のゲームオブジェクトのコンポーネントに対して取得する方法は見つかったんだが
0869名前は開発中のものです。2015/11/13(金) 02:40:46.78ID:VZ8/sX0q
メッシュの内、特定のマテリアルが割り当てられた頂点のみを削除する方法ってあるんでしょうか?
0870名前は開発中のものです。2015/11/13(金) 02:42:40.08ID:cHv02yaY
あれ、出来るんかなそれ
俺は諦めてた
0871名前は開発中のものです。2015/11/13(金) 02:43:47.14ID:cHv02yaY
失礼、>>870>>868さんへのレスです
こんな夜更けに
0872名前は開発中のものです。2015/11/13(金) 03:12:27.23ID:hcaUuaa2
>>868
アクティブなオブジェクトならObject.FindObjectsOfType
http://docs.unity3d.com/ScriptReference/Object.FindObjectsOfType.html
全部ならResources.FindObjectsOfTypeAll
http://docs.unity3d.com/ScriptReference/Resources.FindObjectsOfTypeAll.html
まぁどのくらい重いか知らんが。

>>869
mesh.GetTrianglesでそのマテリアルが割り当てられてるトライアングルのリストを取得して
そこからverticesやらtrianglesやらuvやらをセットしなおすとかすれば可能。
一発でさっくり消す関数とかはない。
http://docs.unity3d.com/ScriptReference/Mesh.html
0873名前は開発中のものです。2015/11/13(金) 03:33:39.40ID:VZ8/sX0q
>>872
ありがとうございます!

初歩的なことだったら申し訳ないんですが、
mesh.GetTrianglesで取得したトライアングルが特定のマテリアルを割り当てられてるかどうかって
どうやったら確認できるんでしょうか?
0874名前は開発中のものです。2015/11/13(金) 03:55:06.42ID:hcaUuaa2
>>873
逆なんだよw
SubMeshにMaterialが割り当てられてんのさ
MeshRender.materials[0]がMeshFilter.GetTriangles(0)に割り当てられる
0875名前は開発中のものです。2015/11/13(金) 03:56:31.14ID:hcaUuaa2
わるい、MeshFilter.mesh.GetTriangles(0)だ
0876名前は開発中のものです。2015/11/13(金) 04:19:35.43ID:VZ8/sX0q
>>874
丁寧にありがとうございます。
いろいろ調べてみてようやく理解できました!

それで、mesh.GetTrianglesで弄りたい頂点のindex配列を取得するところまではできたのですが、
その頂点だけを削除する方法が分かりません。
どうしたらいいんでしょうか?
0877名前は開発中のものです。2015/11/13(金) 04:37:39.76ID:hcaUuaa2
>>876
うん、サックリとはできんよ、ってのはそういうこと。
使わなくなる頂点とtrianglesを自分で割り出して新しいMeshデータを作り出すしかない、ってこと。
消したいサブメッシュでだけ使われている頂点を除いて新しい頂点位置配列を作り直して
それに応じてuvやnormalsやtrianglesの情報も全て自分で作り直して必要ならbornWeightsやcolorsや
そういう情報も全部構築しなおす、そういう関数を書く

さっき載せたmeshのリファレンスにあるメンバ変数を眺めてちくちく書いていくしかない。
メンドクサイだけで難しくはないはず。
0878名前は開発中のものです。2015/11/13(金) 04:44:01.25ID:hcaUuaa2
これはちょっと違うものだがSubMeshから新しいメッシュを作り出すというスクリプト
http://wiki.unity3d.com/index.php/MeshCreationHelper
参考にはなると思う。
0879名前は開発中のものです。2015/11/13(金) 12:16:17.01ID:FKuN7muR
UI.Slider を画面に配置し、左ボタンでスライダーを操作すると、
他のスクリプトの Input.MouseButtonDown(0) が反応してしまい困っています。

スライダーだけがマウスイベントを処理するようにするにはどうしたらいいのでしょうか?
0880名前は開発中のものです。2015/11/13(金) 12:52:39.33ID:qSTqIbY9
チュートリアルの作り方の参考になるサイトはないでしょうか?

unity チュートリアル でググってもunityのチュートリアルばかりでチュートリアルの作り方の参考になるサイトが出てきません。
0881名前は開発中のものです。2015/11/13(金) 13:39:49.46ID:tVCKWO+S
>>879
UIにくるイベントを処理する、という考え方で作り直しましょう。
ugui スライダー イベント
等のワードで検索をするか、リファレンスなどでチェック
0882名前は開発中のものです。2015/11/13(金) 15:13:52.65ID:hcaUuaa2
>>879
どういう時にスライダーを出しているのかにもよるが
マウスポジション見てスライダー上にマウスがあるときにはボタンダウンの処理を止めるとか
スライダーが常に出てないならスライダー出したら止めるとか色々ありうる。

>>880
まとまった参考サイトはないと思うがIngame Tutorialとかでぐぐれ。
ただ正直「一面がチュートリアル」という考えと何が違うのかはわからん。
つーか、RPGとFPSとSTGとSRGのチュートリアルってもう全く違うものだろうしなぁ。
むしろ自分がチュートリアルで何をしたいか、させたいかを考えれば
それに対する解決策は大体ぐぐればでてくるんじゃね?って気はする
0883名前は開発中のものです。2015/11/13(金) 15:27:58.81ID:VZ8/sX0q
>>877
なるほど、新しくメッシュ作ればいいのか

速度が心配だけどやってみます
ありがとうございます!
0884名前は開発中のものです。2015/11/13(金) 18:08:52.95ID:jN+yTAw4
MVCパターンっぽく入力を一つのスクリプトに隔離したいんだけどうまくいかない
具体的にはポーズメニューのCanvasのenabledを管理するクラスMenuを作って、その中でGetComponent<Canvas>して表示/非表示を操作してる
そのクラスのUpdateで入力を受け付けるとうまくいく
一方で入力をまとめて管理させたいクラスの方でCanvasのGameObjectをインスペクタから登録して、GetComponent<Menu>からポーズメニューをトグルさせるメソッドを呼ぶとうまく動作しない
ちゃんとゲーム開始時にfalseで初期化してるのにCanvasのenabledがtrueの状態で終わったら次の再生時にtrueのまま引き継がれたり、そもそもデバッグログの情報に反して非表示のままだったり、MenuのStartの中にDebug.Logを仕込んだら二重でログが出たりする
何となく原因はわかるけどどうやればうまく入力を分離できるかわからない
代替案でもいいから教えてください
0885名前は開発中のものです。2015/11/13(金) 19:33:49.85ID:5jV0wNMr
>>884
要するにお前さんのプログラムがぐだぐだだということだ。
ソース見せないと誰も回答できんだろう
0886名前は開発中のものです。2015/11/13(金) 20:04:09.31ID:6PP2e+e9
Android用のゲームで最初のゲームシーンを読み込む際に
自分のデベロッパーロゴのアニメーションを表示させているのですが
Unityロゴ表示の状態で音だけ再生され
自分のロゴアニメーションが遅れて表示されてしまいます
ゲームシーンへの遷移がロゴアニメーションの終了がトリガーになっているので
なるべくUnityロゴから早めに切り替えたいのですが
ロゴシーンの表示を早める方法はありますか?

今回のロゴが特別容量が大きい訳でもなく
前に作ったアプリでは直ぐに表示出来たのですが
0887名前は開発中のものです。2015/11/13(金) 20:09:45.55ID:tVCKWO+S
>>886
> なるべくUnityロゴから早めに切り替えたいのですが
> ロゴシーンの表示を早める方法はありますか?

https://store.unity3d.com/ja/products
これオススメにして唯一の手段
0888名前は開発中のものです。2015/11/13(金) 20:12:20.34ID:6PP2e+e9
>>887
ありがとうございます
ゲームシーンの読み込み開始を一瞬遅らせる事で解決できました
諦めてオナニーを始めるところだったのでもう少し頑張ってみようと思います
0889名前は開発中のものです。2015/11/14(土) 00:12:26.27ID:d9LYaEnz
FixedUpdate()をUpdate()の前に確実に一回だけ呼ばれるように
物理演算とフレーム更新を同期させる方法ってありませんか
0890名前は開発中のものです。2015/11/14(土) 00:14:34.75ID:N6srolpM
列挙型を引数に取って受け取ったメソッド側で文字列に変換したいけどコンパイル通らない
クラス名.メソッド名(列挙型.要素);という風に使えるようにしたいんだが無理なのか
■ このスレッドは過去ログ倉庫に格納されています