トップページgamedev
1001コメント398KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2014/12/09(火) 19:29:53.11ID:x9Izo6T5
3Dゲームエンジン「Unity」の質問に優しく答えるスレです。
Windows/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質問スレッド13
http://peace.2ch.net/test/read.cgi/gamedev/1414819294/

■本スレ
【3Dゲームエンジン】Unity総合スレッド24
http://peace.2ch.net/test/read.cgi/gamedev/1415828892/

■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←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。
注意事項:アセットおじさんは優しく愛でましょう
0591名前は開発中のものです。2015/01/03(土) 03:02:10.10ID:y+A1gr8r
3D上に常にカメラを向いたエリア(ビルボード的なもの)を作っているのですが、
これを2Dのspriteのように光源に左右されず一定の明るさで表示する事は出来ないでしょうか

光源を2つ用意してCulling Maskの設定で専用の光源を作るとか、
UIをワールドスペースにおいて代用するとか考えましたが、
もっと単純な方法があれば教えて頂けますと助かります。
0592名前は開発中のものです。2015/01/03(土) 08:32:45.83ID:0LTRkA/O
>>589
スワイプは、アセットをかえば簡単にできると思いますよ
0593名前は開発中のものです。2015/01/03(土) 08:56:03.91ID:c0yHVbau
>>590
ありがとうございます。
0594名前は開発中のものです。2015/01/03(土) 09:53:00.44ID:W1oPc3WC
>>591
Materialを造って光源を使わないシェーダを割り当てる
0595名前は開発中のものです。2015/01/03(土) 10:57:51.16ID:y+A1gr8r
>>594
ありがとうございます
Unlitのシェーダに変える事で期待通りの結果を得られました

大変助かりました m(_ _)m
0596名前は開発中のものです。2015/01/03(土) 11:40:01.42ID:sV0UOa3z
完全無料の掲示板サイトをベータ公開中です。

簡単にスレッドの作成や匿名での投稿も可能です。
お気軽にお試しください。

http://fluid.twolineprj.com/twoline/entry
0597名前は開発中のものです。2015/01/03(土) 23:01:11.49ID:0LTRkA/O
>>596
アセットをかえば誰かさんが書き込んでくれると思いますよ
0598名前は開発中のものです。2015/01/04(日) 00:55:54.02ID:sUWFXL3v
ゲームをずっと動かしていると、
徐々に動作が重くなっていくように感じます。

ヒエラルキービューでは、
オブジェクトの生成と破棄が正しく動いてるように見えます。
あとは、Gameobject.Find を頻繁に使うときは、
あらかじめメンバー変数として最初に確保し、
処理を軽減しているつもりなのですが、
他に気を付ける点はありますか?
0599名前は開発中のものです。2015/01/04(日) 01:58:14.73ID:JdhIZp9d
>>598
感じる、ではなぁ…ちゃんと何かで計測したら?
まぁとりあえずコンポーネント類へのアクセスが頻繁なら
その辺もキャッシュしておいたほうがいいとかはある。
transform.posiotion=xxx;
とかは内部的にGetComponentしてるので
キャッシュしておけば数十倍程度早い、のではないかという話もある
0600名前は開発中のものです。2015/01/04(日) 02:02:46.13ID:k5bHNtNE
本当に重くなってるならちゃんと原因を突き止めるべきだと思うよ
0601名前は開発中のものです。2015/01/04(日) 06:36:12.91ID:sUWFXL3v
>>599
GetComponent もFind なみに遅いんですか?
それは知らなかったです。
transform も同様なんですね。
ありがとうございます、勉強になります。

>>600
そうしたいんですが、調べかたがわからなくて。
アクションゲームで、
同じ敵キャラクタを生成しては消して、
ってのを繰り返しているだけなのですが…

ヒエラルキーでも、
生成からデストロイまで
普通に動いてました。

ヒエラルキーに表示されないけど、
データ上に残ってる場合ってあるんですかね。
0602名前は開発中のものです。2015/01/04(日) 08:38:21.95ID:EwrNWtlp
GC.Collect()
0603名前は開発中のものです。2015/01/04(日) 11:20:43.68ID:134qrPMT
>>601
アセットをかえば早くなるかもしれませんよ
0604名前は開発中のものです。2015/01/04(日) 11:27:32.03ID:JdhIZp9d
>>601
そんな程度でどうこうとかないと思うよ。
TPS系のゲームで弾丸数百発とか出したり消したりしてるけど
別に重くなってくとかないし
0605名前は開発中のものです。2015/01/04(日) 12:10:31.20ID:bVSEXfCx
Uguiでのボタン処理について質問です。
On Click()がデフォルトのようですが
これをOn Press()や、押している間の処理に変えることはできますか?
0606名前は開発中のものです。2015/01/04(日) 12:55:13.51ID:7PDAVKMc
>>601
エディタでfps見れるんだからそれで確認しなよ
0607名前は開発中のものです。2015/01/04(日) 14:11:54.83ID:KmXqfhr3
>>605

605さん、お疲れさま。
長押し処理は自分もこの前ハマったわ〜w (めちゃめちゃ調べた)

んで、結果はこれ↓↓↓

新規UIのボタンって、デフォで長押し処理ない気がする。。
というか、したので、
自分はC#スクリプト上で長押し判定用のbool型変数を用意して、
「Event Trigger」を使用して長押し処理を実装したよ。(自分で長押し処理を作らないといけない)
「Event Trigger」ってので、
「Pointer Down(押された時)」と「Pointer Up(離した時)」のイベントが取れるので、
「押された時から離されるまで◯◯処理する」って形で長押し処理を作った。
0608名前は開発中のものです。2015/01/04(日) 14:44:48.71ID:JdhIZp9d
>>605
できあいのものとしては現状無理。
ttp://docs.unity3d.com/460/Documentation/Manual/script-Button.html
自分で色々工夫したりするのはもちろん可能。
ttp://forum.unity3d.com/threads/long-press-gesture-on-ugui-button.264388/
うだうだ言ってればそのうち付くような気もする。
0609名前は開発中のものです。2015/01/04(日) 16:18:39.23ID:moEQHLCe
クラスAとクラスBがあって、クラスAのメソッド→クラスBのメソッド
の順序でコールしたいです

クラスAのメソッドの中でクラスBをコールすれば終わるのは分かっていますが、
クラスAをオブジェクトA、クラスBをオブジェクトBのコンポーネントにそれぞれアタッチした場合、
オブジェクトの表示順をオブジェクトA→オブジェクトBにすれば
メソッドもクラスAメソッド→クラスBメソッドの順序でコールされますよね?

この場合、オブジェクトの表示(読み込み)順はどのように操作すればいいんですか?
ヒエラルキーで上から順にオブジェクトA→オブジェクトBとしてみましたが、オブジェクトBに
アタッチしたクラスBメソッドが先に呼ばれました(クラスAメソッドとクラスBメソッド内でブレイクを張って確認しました)
0610名前は開発中のものです。2015/01/04(日) 16:33:12.68ID:JdhIZp9d
昔はヒエラルキーでの並びだったんだが今はExcuteOrderを使え、ということになっている
ttp://docs.unity3d.com/Manual/class-ScriptExecution.html
0611名前は開発中のものです。2015/01/04(日) 16:43:19.42ID:moEQHLCe
>>610
なるほど、やっぱりヒエラルキー順じゃなかったんですね
ありがとうございます。
0612名前は開発中のものです。2015/01/04(日) 18:26:09.34ID:Hu1sQwA7
やっぱり?
0613名前は開発中のものです。2015/01/04(日) 18:28:10.10ID:vV29CxYC
質問なんだけど
今テストプロジェクトを作ってて
void Update () {
Vector3 vec = new Vector3 (Input.GetAxisRaw ("Horizontal"),0, Input.GetAxisRaw ("Vertical"));
cc.Move (vec * speed * Time.deltaTime);
}
たったこれだけの処理をしてるだけなのにモデルを動かしたら微妙に引っ掛かりのある動きになってしまう
何か問題あるのだろうか
ccにはキャラクターコントローラーが入ってる
0614名前は開発中のものです。2015/01/04(日) 18:55:19.55ID:vV29CxYC
自己解決しました
引っ掛かりがあったのはunity上の話でビルドして実行ファイルを実行したら滑らかになった
あってるかどうかわからないけどあんまり気にする必要はないという事がわかった
0615名前は開発中のものです。2015/01/04(日) 18:56:16.12ID:JdhIZp9d
そもそもキャラクターコントローラーに移動処理はいってなかった?
2重に動かしてんじゃね?
0616名前は開発中のものです。2015/01/04(日) 19:00:29.00ID:vV29CxYC
>>615
キャラクターコントローラーはmoveとかsimplemoveで動かすもののようだ
0617名前は開発中のものです。2015/01/04(日) 20:20:05.41ID:sUWFXL3v
>>604
>>606
Fpsは平常時60、下がると50台です。
ただ、どのくらい下がったかより、
なぜさがるのか知りたくて…

色々と実行中のコンポーネント見てたら、
どうやらAudioManagerが
AudioSourceを大量に50個ぐらい生成しているのですが、
ゲームを普通につくったとき、
AudioSourceの数って皆さんそんなもんでしょうか。
同時に何音も鳴らしたいので、
多目に確保してるのですが…
0618名前は開発中のものです。2015/01/04(日) 20:25:14.29ID:bVSEXfCx
>>607
やはりその方法しかありませんか・・・
ありがとうございます!

>>608
ありがとうございます!
現状NGUIがまだまだ作りやすそうです。
0619名前は開発中のものです。2015/01/04(日) 20:30:32.13ID:sUWFXL3v
失礼しました、下がると40台でした。
0620名前は開発中のものです。2015/01/04(日) 20:39:04.84ID:134qrPMT
>>617
無理せずにアセットをかって使いましょう。
プログラムは難しいですからね
0621名前は開発中のものです。2015/01/04(日) 21:15:06.94ID:JdhIZp9d
40まで下がってると確かに重いって感じだよなぁ
プロファイラで見るのが常套だろうから
Pro版試してなかったらここが試用のしどころ!って感じはするかな
0622名前は開発中のものです。2015/01/04(日) 22:23:40.20ID:3XdxGF37
すみません質問です。
2Dのスプライトでアニメーションするキャラクターに、
別パーツで銃とかの、武器のオブジェクトを持たせたいのです。
キャラクターの子に武器のオブジェクトを入れれば一応くっつけることは出来るのですが
自分の作っているキャラクターはドットの一枚絵で描かれて、
パラパラ漫画みたいに一枚一枚ポーズが変わるアニメーションなので、どうしても武器の位置がずれます。
例えばキャラクターが腕を振って走っているアニメーションをしているときに、
動いている手の位置に武器を固定する方法はないでしょうか?
そういう機能があるアセットでも良いので、情報があればお願いします。
0623名前は開発中のものです。2015/01/04(日) 22:29:40.90ID:/RIyJaAQ
>>622
一回自分も同じようなことやりたかったから色々調べたけど
・武器を配置したい座標をリストにして時間毎に切り替える
・1枚絵じゃなく関節ごとに絵を分割して手首部分の子にする
のどちらかをしないとダメなんじゃないかな
0624名前は開発中のものです。2015/01/05(月) 01:02:33.13ID:HQqSMzB1
>>622
そういうアセットは無いです。
諦めましょう
0625名前は開発中のものです。2015/01/05(月) 01:07:01.01ID:SxAVaiSD
そういうのって絵を解釈してどこが手か、を決めなきゃならないので
基本的に自動化は無理なんだよなぁ。
手の位置を各スプライトとセットのデータとして持つしかないよね
0626名前は開発中のものです。2015/01/05(月) 01:28:52.59ID:LeCKPpi2
スプライトアニメをAnimationでやってるなら
同じキーフレームに武器オブジェクトのpositionやらrotationを指定してやればできそうな気がする
UnityのAnimationとAnimatorは難解だけど強力
0627名前は開発中のものです。2015/01/05(月) 01:36:15.37ID:K04l8kjf
アセットおじさんも匙を投げることがあるのかw
0628名前は開発中のものです。2015/01/05(月) 01:52:58.88ID:bs96uqu1
>>622
Unityではなく2Dプログラミングとしての話になるけど
重ねて表示する用の銃のスプライトを作っておいて
フラグがtrueだったら銃のスプライトを一緒のアニメーションで表示する
っていう風に作るよ
0629名前は開発中のものです。2015/01/05(月) 03:16:12.54ID:3DeaYSl4
>>617
取り敢えずオーディオマネージャー切ってfps下がるか確認して見たら?
06306222015/01/05(月) 08:22:55.68ID:VRohQKXl
みなさんありがとうございます。
一応方法としてはあるようで安心しました。なんとかやってみようと思います。
0631名前は開発中のものです。2015/01/05(月) 08:38:15.55ID:Aq8e6QR8
まあ2Dゲーム作るのにUnity使うなよって話だわな
0632名前は開発中のものです。2015/01/05(月) 10:01:55.88ID:4wRiZoij
>>622

自分はそういう場合は武器とかヘルメットとか鎧とかはキャラクターと同じ縦横ピクセル数、同じアニメーション枚数で作っておくな
画像作成ソフトの方でキャラのアニメーションパターン毎に「レイヤー移動」ツールなどで位置あわせしておいた武器のアニメーションパターンを作成(編集時にキャラの絵を下絵として表示しておいて武器や鎧の位置あわせ)

そうしておけばunity側ではアニメーションのタイミングとパターンをキャラと武器で同期させておくだけでよく、位置はキャラと一緒にすればフレーム毎に位置あわせする必要はなくなる
0633名前は開発中のものです。2015/01/05(月) 10:10:13.58ID:4wRiZoij
あと626さんが書いたみたいにunityのmecanimでフレーム単位で武器の位置や回転の値を変更するという方法もある
0634名前は開発中のものです。2015/01/05(月) 11:13:06.70ID:DSkeHC2C
VRAM usage について質問があります。

起動時は VRAM usage : 4.2MB to 4.7MB (of 64.0MB) なんですが
ゲームを進めているうちに VRAM usage : 4.2MB to 155.7MB (of 64.0MB) というようにどんどん値が大きくなってしまいます。

大きくなる原因はあるオブジェクトのMeshFilterに新しいMeshを入れて描画を繰り返しているからなんですが
64.0MBを超えていいのか、大きくなりすぎるとフリーズするのかが知りたいです。

今のところゲーム自体は処理落ちしたりしていないんですが、Windowsタスクマネージャの使用メモリも増えていくのが気になっています。
0635名前は開発中のものです。2015/01/05(月) 13:20:26.79ID:Aq8e6QR8
使えば増える、当たり前
0636名前は開発中のものです。2015/01/05(月) 13:39:43.11ID:SxAVaiSD
>>634
タスクマネージャ上の使用メモリの問題はちょっとここで示されている話からは
わからないがVRAMUsageの話についてはこの辺
ttp://forum.unity3d.com/threads/unity3d-only-detects-64mb-of-vram.274713/

ここで話されているのはC2Dの頃のオンボードチップだが今のIvyBridgeに載ってる
IntelHD4000とかに関してもベンチマーク動かすとVRAM64Mとかになってるんだけど?
という話はちらほらある。
その上の記事の内容にあるようにメインメモリをシェアするタイプのものは
動的にメモリを割り当てていくので(of64MB)の部分は初期化したときに
取得した値がそのままになっていて更新されないだけの話だろう。
何かしら処理がまずくて使用メモリが数GBとかになるならアレだと思うが
1GBに収まっている限りはイマドキの通常のカードで収まるしフリーズとかは
心配しなくてもいいと思う。
もちろんパフォーマンスの観点からよりよくできるとかそういう話はあるだろうけど。
0637名前は開発中のものです。2015/01/05(月) 15:21:44.32ID:VaX6/230
>>634
アセットをかえば、フリーズを回避できるかもしれませんよ?
0638名前は開発中のものです。2015/01/05(月) 18:23:59.89ID:lHVk+hwS
接地をisgroundedでやろうとしたら上手くいかない
いっぺんジャンプしたら接地を認識しない
そこで CollisionFlags.Belowを使って判定したらちゃんと動いた
欠陥機能なのかよ
0639名前は開発中のものです。2015/01/05(月) 18:43:03.19ID:cAWfPSK9
UGUIについてですが、
Canvas内にパーティクルを置いたんですが、エディターでは表示されるのに
いざAndroidやWindowsでプレイしてみる表示されていません。
Canvas下にパーティクルを置いて表示する方法はあります?

あと、UGUIで設定したテキストがAndroidでズレているとゆうか、フォントが細くなっているんですが
それもエディターに合わせることは可能でしょうか?
0640名前は開発中のものです。2015/01/05(月) 18:53:34.49ID:+NdkYs9T
>>638
isGroundedの精度は悪いって評判なんだよな〜。
リライアビリティが足りないとフォーラムとかでも沢山スレッドがある。
0641名前は開発中のものです。2015/01/05(月) 19:56:42.73ID:VaX6/230
>>639
Canvas下にパーティクルを置いて表示する方法は、アセットをかえばあるかもしれません
0642名前は開発中のものです。2015/01/05(月) 19:57:36.59ID:DSkeHC2C
>>636
ありがとうございます。
MeshTopology.Linesを使わなければそれで済む話なんですがとりあえずこのまま開発を進めてみます。
0643名前は開発中のものです。2015/01/05(月) 21:42:35.98ID:Hrwxwrw8
特定のカメラに物体が写っているかを判定する方法ないでしょうか?
一言でいうとパンツ見えてるか判定がやりたいです。

OnWillRenderObjectを使ってみましたが、
見えてるか否かではなくカメラの範囲内か否かしか判定できなくて、
隠れていても見えてる判定になりダメでした。
0644名前は開発中のものです。2015/01/05(月) 21:53:12.75ID:VaX6/230
>>643
アセットをかえばパンツが見えるかもしれません。
スカートの中身ですか?
0645名前は開発中のものです。2015/01/05(月) 21:55:51.99ID:8ZCO18T5
>>643
CameraのViewVolumeにあるオブジェクトが含まれるかって判定すれば良いだけだと思うのだが、これがパンツとなるとスカートその他で隠れているかを判定しないと行けないのでものすごい難しい処理になるよ。
現実解としてはOctreeである程度分解して処理するしか無い。

#要求仕様を明確にしてくれればある程度の答えはだせるけど、今の質問レベルだと隠れている部分を処理できないので無理
0646名前は開発中のものです。2015/01/05(月) 22:01:22.23ID:8ZCO18T5
簡単な部類だと、パンツの一部をしめす領域に向かってRayCastを確率的に(パンツのもつ領域にいくつかのRayCastターゲットを持たせる)
投げてパンツより手前の物体がHitしないならパンツが見えてるって判定はアリだとは思うけど。
0647名前は開発中のものです。2015/01/05(月) 22:03:01.84ID:+NdkYs9T
テラシュールウェアの人がそんなネタでブログ書いてる。
ttp://tsubakit1.hateblo.jp/entry/20140623/1403532205

まぁこれはうまくいってないようだが最後にちょっと書いてあるように
Pro版ならレンダーテクスチャーでパンツだけと全部をそれぞれ
デプステクスチャーでレンダーして比較して同じものがあれば見えてる、
とかは可能そう。
半透明オブジェクトがなければ普通にレンダーでもいいかとは思うんだけどね。
0648名前は開発中のものです。2015/01/05(月) 22:20:52.57ID:ZlhW65fg
パンツを独立したゲームオブジェクトとかにできるんなら、UnityTestToolsの
アサーションコンポーネントで出来そうだな
0649名前は開発中のものです。2015/01/05(月) 22:23:21.48ID:Hrwxwrw8
なるほど、やっぱりスカートなどの動的な障害物があると難しいのですね。
コロンブスの卵的方法がないかもう少し悩んでみます。
有難うございました。
0650名前は開発中のものです。2015/01/05(月) 22:58:52.30ID:8ZCO18T5
>>647
履いているのがスカートだったらスカートの裾部分の頂点情報を元にできるんだけど、リンク先みたいに隙間が見える系はもうどうしようもないと思うなー
計算機幾何学でRegionに点が内包されるかって判断で行うんだけど元図形に依存するから図形毎にデータを手で生成しないといけないし(Meshがアニメーションで移動する)
MeshをソフトスキャンするのはCPUコストかかるからUnity向けじゃ無い気がする。
パンツを含む領域を座標で切り取り(BoundingBox)、パンツだけ白、それ以外を全部黒でレンダリングして、
レンダーテクスチャのサイズを小さめに(2^nのnが小さい領域でフレーム毎に全部みても軽い大きさ)してそこが黒以外あればとか言う実装も無しではないんだけど。

この手のゲーム自体に依存する処理は元画像側も関係しちゃうから本気でめんどくさい。

#実際テクニック的にはやれることはたくさんあるのでもちっと説明くれれば他の方法も提供できるとは思う
0651名前は開発中のものです。2015/01/05(月) 23:50:43.46ID:+NdkYs9T
>>650
やっぱそれは重すぎかw
元ブログの人もレンダーテクスチャー比較の手法を試す!とかツイートしてて
でもその続報がないところを見ると「こらあかんわ」って感じだったんだろうな、
とは思っていたんだがw
0652名前は開発中のものです。2015/01/06(火) 00:12:07.07ID:ojWPh0Iu
ビルドに関して質問です。
プラットフォームをandroidとしてビルドしようとすると、
一瞬「Compiling scripts...」というポップアップが出てすぐ消失してすぐ消えてしまいます。
ビルド先のフォルダを確認しても何も出来ていません。
iOSの場合も同じです。一方、webの場合は正常にコンパイルできます。
どうも理由が分かりません。ご存知のかたいらっしゃいましたら教えて頂けるでしょうか。
ちなみにJDK, SDK, Unityのバージョンは全て最新です。
0653名前は開発中のものです。2015/01/06(火) 00:13:22.65ID:23LmzIOs
>>650
スカートの破れとかは想定していないので、
単純に下から覗こうとカメラを持って行ったら反応してほしいだけなんです。

今考えているのは、むしろパンツに下向きに深度-1のカメラをアタッチして、
そのカメラからメインカメラ(をアタッチしたオブジェクト)が
レンダリング範囲に入っているかでざっくり判定しようかと考え中です。
もう、スカート無視です。
今の所、これが一番楽かなぁと。
処理負荷的にはどうなのか不安ですけど。。。

本当はスカートをきっちり考慮にいれて判定できると最高なんですが。
06546532015/01/06(火) 00:22:47.62ID:23LmzIOs
アスペクト比に影響されて、パンツにカメラをアタッチ案はイマイチでした。
0655名前は開発中のものです。2015/01/06(火) 00:27:14.07ID:cUmKZk3j
零みたいな感じかー
0656名前は開発中のものです。2015/01/06(火) 00:44:59.98ID:c/TQKk+U
パンツの要所から数本のレイキャストとかでできない?
もちろんカメラにコライダー付けて。
0657名前は開発中のものです。2015/01/06(火) 01:27:42.03ID:nJyUyIna
コルーチンの使い方について質問です。

特定のキーを入力すると対象の周りをカメラが半周するといった処理で、
カメラの状態を持つ変数を単純化したいため、update毎にRotateAroundをするのではなく、
コルーチンの関数にしてwhileループ内でRotateAroundとyield return nullを
実行する形で実装しました。
動作は期待通りなのですが、こういった使い方をしていいものなんでしょうか。

今のところ特に処理が重くなっていたりはしないですが、
このまま突き進んでいい物か不安に思いました。。
0658名前は開発中のものです。2015/01/06(火) 01:28:50.51ID:DO20TTae
>>652
コンソールのほうにエラーメッセージ出てない?
0659名前は開発中のものです。2015/01/06(火) 01:31:48.52ID:a+ju9PkX
>>657
コルーチンは、アセットをかえば簡単に突き進んでいけると思いますよ
0660名前は開発中のものです。2015/01/06(火) 01:34:46.69ID:ssZARPjB
スクリプトで「〜したらxxというスクリプトをアタッチする」というのは出来ますか?
x=1ならTestClass(.cs)をアタッチする、とかです
0661名前は開発中のものです。2015/01/06(火) 01:44:00.09ID:KzvMbZQc
AddComponent
0662名前は開発中のものです。2015/01/06(火) 01:50:09.95ID:PftvFVFY
>>653
であればスカートの裾の座標取得が可能な様にモデルを調整して(裾の頂点だけ取り出してモデルにアタッチしなおし)
スカートの裾の輪郭抽出をして(ConvexPolygonになるようにする)、カメラの位置とスカートの凸包の内側にパンツのRegion(これもConvexPolygonになるように輪郭抽出する)が内側にあることを算出すればできる。

単語の意味とか解らないなら計算機科学の本を1冊読めば大丈夫。(幾何学に疎いと90時間くらいかかるかも)
#簡単に調べたいならConvexPolygonの衝突判定+カメラと2つのConvexPolygonの位置関係についてググルと良いかも
#ConvexPolygonってのは凸だけで構築されているポリゴンの事(内角が180度以上にならない図形の事ね)
0663名前は開発中のものです。2015/01/06(火) 02:04:33.84ID:PftvFVFY
補足:
別にConvexPolygonじゃなくても良いのだけど非ConvexPolygonだと領域を3角形へ分割しないといけなくてめんどくさい事になるから。
ここら辺はゲーム側がどこまで要求するかによるのだけど、たとえばスカートが股の内側にまとわりついていて∞みたいな状態のときは見えていないって判断まで必要だとするととても大変。
股の内側にまとわりついても凹んだ部分を無視して外輪からO形状として見えている様に判断してしまうのを許容するならConvexPolygon処理なので処理コストが軽い(今時のPCならどっちでも大丈夫だがスマフォだときつい)
0664名前は開発中のものです。2015/01/06(火) 02:53:49.06ID:ePhVAAp/
下から覗こうとすると「きゃっ」とかなるみたいなバイオ4だかなんだかであった程度のものなら
角度だけで判定しちゃっていいんじゃないかって気はするなぁ
0665名前は開発中のものです。2015/01/06(火) 02:58:31.12ID:eEsT3aae
スマホでパンツはそもそもリジェクトされっからPC向けやな。
0666名前は開発中のものです。2015/01/06(火) 03:47:01.41ID:ePhVAAp/
いや〜もしかしたらパンツ見えたらリジェクトだから
なんとかそれとなく隠したいのかもしれぬ
0667名前は開発中のものです。2015/01/06(火) 03:52:25.20ID:ko8vzkcZ
申し訳ありません。>>634の続きなのですが、
VRAMの使用領域をリセットするためにメモリ開放することはできるのでしょうか?
0668名前は開発中のものです。2015/01/06(火) 07:41:31.53ID:vP+sP8hT
パンツが見えたらダメならスパッツ履かせりゃいいじゃあないの〜
0669名前は開発中のものです。2015/01/06(火) 12:07:06.51ID:ePhVAAp/
ダメだ。実データとして見えるかもしれないことが留保されながら
システム的に見えないことが保証されている、
そのアンビバレントさこそが重要なのだ。
0670名前は開発中のものです。2015/01/06(火) 12:52:49.74ID:P7xz3EIp
泥はパンツ見えてもOKだが
林檎はパンツも乳揺れもNG

ビデオデッキの普及例を鑑みると林檎はもっと開放するべき!
0671名前は開発中のものです。2015/01/06(火) 14:55:37.73ID:IlcqNUwV
馬鹿の1つ覚えでエロ解禁とか言ってるけど
VHS・β戦争の頃は手軽にエロを入手する手段がなかったからAVがキラーコンテンツとなり得たのであって
今の時代はいくらでもエロがネットに無料であふれているからエロはキラーコンテンツにはなり得ないよ
馬鹿は一度うまくいった方法が何度でも通用すると思ってるけど愚かだね
0672名前は開発中のものです。2015/01/06(火) 14:55:57.17ID:+ji/Owff
⇒ 一緒に帰ろう

詩織:「みんなに噂されると恥ずかしいし・・・」
0673名前は開発中のものです。2015/01/06(火) 16:32:15.16ID:+YUNQNYo
>>667
アセットをかえばメモリ解放ができるとおもいますよ
0674名前は開発中のものです。2015/01/06(火) 16:46:24.77ID:Qnxb7RE6
>>653
誰かも言ってるが、パンツが見えるかどうかは重要ではない
そういう考えだとゲーム制作は苦労するぞ
じゃ、仮にもそのキャラはパンツに目があってプレーヤー(カメラ)が見えているのか?
0675名前は開発中のものです。2015/01/06(火) 19:24:49.11ID:PftvFVFY
>>674
> >>653
> 誰かも言ってるが、パンツが見えるかどうかは重要ではない
> そういう考えだとゲーム制作は苦労するぞ
> じゃ、仮にもそのキャラはパンツに目があってプレーヤー(カメラ)が見えているのか?

おお、カメラの後ろに当たり判定置いてパンツの目からraycastすればパンツ見える判定可能じゃね?
0676名前は開発中のものです。2015/01/06(火) 19:58:02.98ID:fzbmsM2Q
Destroyメソッドって呼んだ瞬間にコンポネントとかを削除してるわけじゃないんでしょうか?
ConfigulableJointをDestroyで削除しても一瞬だけJointの機能でオブジェクトが引っ張られてしまって困ってます
0677名前は開発中のものです。2015/01/06(火) 20:07:31.72ID:ePhVAAp/
>>676
うん、そういう訳じゃない。
ttp://docs.unity3d.com/ScriptReference/Object.Destroy.html
"Actual object destruction is always delayed until after the current Update loop, "
実際のオブジェクトデストラクションは今のアップデートループの後まで遅延される
0678名前は開発中のものです。2015/01/06(火) 20:28:56.85ID:fzbmsM2Q
>>677
なるほどー原因が分かってすっきりしました
他の解決法を探してみます。ありがとうございました
0679名前は開発中のものです。2015/01/06(火) 20:29:50.92ID:KzvMbZQc
パンツが点くらい小さければRaycastで判定出来るんじゃね?
0680名前は開発中のものです。2015/01/06(火) 20:38:56.25ID:ZtxFRbfN
>>678
一応DestroyImmediateというものがある
本来はエディタで使うものであってゲームコードで使うことは推奨されないみたいだが
ttp://docs.unity3d.com/ScriptReference/Object.DestroyImmediate.html
0681名前は開発中のものです。2015/01/06(火) 21:12:27.83ID:QJbfSeUs
3Dの動き回る的を2Dの球を操作し衝突したら的が消えるといった物を作りたい
しかし3Dと2DのColliderは仕組みが違うため共存ができないそうです
地道に当たり判定の範囲を座標で指定するなどしかないのでしょうか?
0682名前は開発中のものです。2015/01/06(火) 21:22:21.85ID:ePhVAAp/
>>681
いや普通に球のコリダー使えばよくね…だめなん?
0683名前は開発中のものです。2015/01/06(火) 21:24:48.84ID:KzvMbZQc
2Dの球という表現の意味がわからないが、
2Dの物体にくっついて動く衝突判定用の3Dオブジェクトを作ればいいのでは
0684名前は開発中のものです。2015/01/06(火) 21:25:14.19ID:fzbmsM2Q
>>680
ありがとうございます、うまくいきました
0685名前は開発中のものです。2015/01/06(火) 22:27:50.78ID:+YUNQNYo
>>681
アセットをかえばいいのでは?
0686名前は開発中のものです。2015/01/06(火) 22:50:22.89ID:n4xjHIFB
質問しに来たけどパンティのスレと間違えたようなので質問スレを探してきます。
0687名前は開発中のものです。2015/01/07(水) 00:17:05.34ID:VzcwfG5m
Unityのコンポーネント志向って分かりやすくて良いなぁと思ったんだけど
uGui使ってダイアログ作ってるとゲームオブジェクト生成するたびにFindしたりGetComponetしたりで、毎回記述するのにうんざりしてきた…
ゲームプログラミングって何か生成するたびにオブジェクトやコンポーネント取得するもんなんですかね
別のクラスで同じコンポーネントを呼び出してるのが不毛に感じてるんですー
0688名前は開発中のものです。2015/01/07(水) 00:40:45.26ID:EgCh+t1r
いつも同じ処理するなら基底クラス作って継承とかする。
クラスが増えていくとその間をつなぐデータリンクが爆発的に増えてくので
やり取りを仲介するオブジェクトを作っておいてそこで集中的にやりとりする。
リストをもっておいて生成したらそこに登録、消すときにそこから削除、とかやっとく。
まぁ色々やり方はあるんじゃねぇかな〜。
0689名前は開発中のものです。2015/01/07(水) 01:50:13.82ID:XeXLCFC+
パンツの人です。
みなさん、色々な意見ありがとうございました。
計算幾何学は時間をかけて学んで、覚えたいです。

ただ、時間が掛かりそうだったので、まずは全て角度で計算する
「パンツ見えてるか判定ツール」つくってみました。
http://i.imgur.com/CLYBWcu.png

円錐の中にカメラが入り、且つカメラの視線が
パンツ方向に一定度合い向いている場合に「見えてる!」と判定します。

円錐の起点位置、円錐の大きさ(角度、長さ)、パンツの位置、カメラの方向一致度は調整可能なように作りました。

とりあえず、これでしばらく様子をみてみます。
0690名前は開発中のものです。2015/01/07(水) 01:56:31.59ID:IVITl9vv
地面の石畳の遠近法おかしくね?
■ このスレッドは過去ログ倉庫に格納されています