[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2ch.scのread.cgiへ]
Update time : 09/06 02:46 / Filesize : 302 KB / Number-of Response : 998
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【3Dゲームエンジン】Unity 4



1 名前:名前は開発中のものです。 [2015/06/16(火) 01:35:14.74 ID:VIGyPiQQ.net]
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質問スレッド16
peace.2ch.net/test/read.cgi/gamedev/1425192691/

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

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

●リンク
・Unity(日本公式サイト)
 unity3d.com/japan/
・ユーザーガイド&リファレンス
 japan.unity3d.com/developer/document/
・チュートリアル
 japan.unity3d.com/developer/document/tutorial/
・スクリプトリファレンス
 docs-jp.unity3d.com/Documentation/ScriptReference/
・FAQ
 answers.unity3d.com/index.html
・MSDN
 msdn.microsoft.com/ja-jp/ms348103←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。

764 名前:名前は開発中のものです。 [2015/08/06(木) 11:29:17.83 ID:sN/F2r0B.net]
すみません、shaderの質問です。
透過(半透明)させつつ他のオブジェクトの影が映るshaderってありませんか?

765 名前:名前は開発中のものです。 mailto:sage [2015/08/06(木) 13:13:27.54 ID:1PCQOc0+.net]
>>764
オブジェクト2つ用意して1つをshadowsonlyじゃだめなの?

766 名前:名前は開発中のものです。 mailto:sage [2015/08/06(木) 13:14:25.59 ID:1PCQOc0+.net]
ごめん読みまちがえた

767 名前:名前は開発中のものです。 mailto:sage [2015/08/06(木) 13:32:09.27 ID:cBJpMccl.net]
普通にスタンダードシェーダーじゃまずいのか?
ガラスとか宇宙服のヘルメットとかみたいな表現だろ?
日本語で詳しく説明されてるぞ

768 名前:名前は開発中のものです。 mailto:sage [2015/08/06(木) 13:39:42.75 ID:1PCQOc0+.net]
>>764
これかな?
ttp://famme-fatale.hatenablog.com/entry/2015/03/18/124410

769 名前:761 mailto:sage [2015/08/06(木) 15:45:39.19 ID:sN/F2r0B.net]
みなさんありがとうございます
765さんのでいけそうでしたが
Skinned Mesh Rendererを使っていると
だめみたいです。

770 名前:名前は開発中のものです。 mailto:sage [2015/08/06(木) 16:24:07.94 ID:1PCQOc0+.net]
>>769
こっちの環境ではMeshRenderer関係無くいけてる気がする
ReceiveShadowsのチェックはずれたりしてない?

771 名前:761 mailto:sage [2015/08/06(木) 16:46:26.22 ID:sN/F2r0B.net]
>>770
失礼しました。

772 名前:名前は開発中のものです。 mailto:sage [2015/08/07(金) 08:17:10.74 ID:nAxCzz6h.net]
>>107
自分もパーミッション勝手についちゃうけどその後どう?



773 名前:名前は開発中のものです。 mailto:sage [2015/08/07(金) 22:45:57.39 ID:+bECwRrn.net]
Unityって今からはじめるともう時代遅れとかある?
敷居高いイメージがが

774 名前:名前は開発中のものです。 mailto:sage [2015/08/07(金) 23:00:50.03 ID:/TyZbXTY.net]
FPS/TPSを作るならUnreal Engineの方がいいという意見もある
時代遅れと言うほど他に先んじてるものはないと思うが
敷居の高さは…


ド素人  RPGツクール   ウディタ        DirectX等    プロ
 ┝────────────────┼─────────┤
..                         △
.                         多分この辺

775 名前:名前は開発中のものです。 mailto:sage [2015/08/07(金) 23:13:24.66 ID:+bECwRrn.net]
なるほどありがとう
やっぱり高めだなあ
勉強するよ

776 名前:名前は開発中のものです。 [2015/08/07(金) 23:18:48.35 ID:6MPrjvWO.net]
Unreal Engineは、何もせずにFPSが作れるし、初めからFPS用の配慮が行き届いている
ただ大手が作ったFPS以外ってなかなか売れないからね・・・・
スマホ用の簡単ゲーム作成が中心となるとUnityとそのライセンス形態が結構よかったりするんだな

777 名前:名前は開発中のものです。 mailto:sage [2015/08/07(金) 23:21:57.33 ID:i52yCBjp.net]
現状Unityで作れないものないから、
今から古いツール勉強してる使うくらいならUnityやる事を勧める
Unity無理ならWeb小説でも書けばよろし

778 名前:名前は開発中のものです。 mailto:sage [2015/08/07(金) 23:40:33.44 ID:hsQCoUC9.net]
>>775
プログラミングの知識があるならスクリプト自体は簡単だよ。C#の初級レベルさえ知ってればとりあえずチュートリアルはできる
UEはいい素材を持ってるならグラはかなり良いけどスマホ向けには重いしロイヤルティ5%も取られるよ(ただし売上3000ドルまではロイヤルティフリー)

779 名前:名前は開発中のものです。 mailto:sage [2015/08/07(金) 23:42:51.77 ID:8P091hGo.net]
そういえば昔の旧砂漠って流砂なかったの?

780 名前:名前は開発中のものです。 mailto:sage [2015/08/07(金) 23:43:17.19 ID:8P091hGo.net]
すまん誤爆

781 名前:名前は開発中のものです。 mailto:sage [2015/08/07(金) 23:52:01.26 ID:+bECwRrn.net]
>>778
プログラムはできるから嬉しいね
頑張ってみるよ

782 名前:名前は開発中のものです。 mailto:sage [2015/08/08(土) 00:00:09.80 ID:js8lfIDK.net]
なんかボタンコンポーネントから警告が大量に出るようになったんだけど
Parameter 'Highlighted' does not exist.
UnityEngine.UI.Selectable:OnValidate() こんなのが大量に。

Animatorはつけてるけどボタンアニメーション設定してないんだよね。



783 名前:名前は開発中のものです。 mailto:sage [2015/08/08(土) 00:14:15.28 ID:Cum65bC1.net]
>>782
俺は初心者だから意味わかんねーけど、それって、アニメーションの終わりを決めてないんじゃないのか?

784 名前:名前は開発中のものです。 mailto:sage [2015/08/08(土) 00:15:20.15 ID:/O4Hr1O9.net]
ツクールなんかより縛りがないからよっぽど簡単だわ

785 名前:名前は開発中のものです。 mailto:sage [2015/08/08(土) 00:57:31.45 ID:prpVaKdz.net]
流れで聞きたいんだけどUEとUnityって何が違うの?
UEはリアルって聞くけど、それってモデルの質とか
プログラムの書き方によって
変わるんじゃないの?と思うんだけど
Unityがモバイル向け、UEがハイエンド向け、と言われているのはどこなんですか

786 名前:名前は開発中のものです。 mailto:sage [2015/08/08(土) 01:13:22.91 ID:WTntF6Fb.net]
UEはライティングのおかげでクソみたいなモデルでも少しはそれっぽく見えるが負荷のかかる方式だからハイエンド向け(ただしモバイル向けの最適化にも力を入れるらしい)
UnityはおおむねUE3相当のグラだがその分軽いのでモバイル向け

ただしUnityは中間言語方式だから実行時コンパイルに処理を割いてる分(PC向け以外は5.2でIL2CPPが導入され解消される予定)と
グローバルイルミネーションにEnlightenっていうのをつかってるんだけどこれは基本的に高速だけど光源の数が増えると重くなる欠点がありUEのGIは多くても少なくても変わらないという特徴がある

つまりUnityは超ハイエンド向けになると逆に遅くなるのでコンシューマのAAAタイトルには使われてないね

787 名前:名前は開発中のものです。 mailto:sage [2015/08/08(土) 01:51:58.65 ID:ULYH9pEs.net]
UE4は言語がC++じゃなかったっけ?
ゲームプログラマーは歴史的にC++使いが多く、限られたハードウェアのリソースを
有効活用するためにメモリ管理をしたがるからベテランはUE4の方が
やりやすいってのも、あるんじゃないの

個人的にはC#はインテリセンスがよく効いてたりメモリ関連が自動だから
C++よりはとっつきやすいんじゃないかな。その分、重いけどわずらわしさは少ないのでラク

今はハードウェアのメモリが安価で大きくなってきてるからunityでも
AAAクラスでない限り実戦で使えるようになってきている感じかも

788 名前:名前は開発中のものです。 mailto:sage [2015/08/08(土) 02:01:44.65 ID:Y1oBQifD.net]
最近から見ればC++は低級言語化してきてるしな
今更カベージコレクションない言語使うとかやってられんわw

789 名前:名前は開発中のものです。 [2015/08/08(土) 10:47:59.68 ID:396ATCKe.net]
il2cppってc++に変換する技術っすよね?
c#もメモリ管理できないわけじゃないし、c++使う理由ないっすよね

790 名前:名前は開発中のものです。 mailto:sage [2015/08/08(土) 12:01:59.85 ID:GX5HfKzG.net]
なんらかのプログラミング経験があるならC#とか言語自体はたして問題ないよ
ゲーム初心者はオブジェクトやコンポーネントを使いこなすのが大変
アニメとかマテリアルとかはやればやるほど奥が深くなる

791 名前:名前は開発中のものです。 mailto:sage [2015/08/08(土) 12:14:48.75 ID:nsvqXFx8.net]
Unity5.1.2インストールしたんだけど、メニューからImport New Assetsの所を選んでもCustom Packageしか表示されません。
EffectsとかParticleSystemsとか表示されるのを期待したんだけど、Unity5はこういうもんですか?

792 名前:名前は開発中のものです。 mailto:sage [2015/08/08(土) 12:17:34.61 ID:apaLX1ex.net]
>>791 そういうものです



793 名前:名前は開発中のものです。 mailto:sage [2015/08/08(土) 12:34:39.49 ID:GX5HfKzG.net]
>>791
Import New Assets じゃなくてImportPackage だろ?
単にインストールした際にStandard Assetsをインストールしていなかっただけ
対処方法の詳細はググれば幾らでもある

794 名前:名前は開発中のものです。 mailto:sage [2015/08/08(土) 12:42:05.19 ID:nsvqXFx8.net]
再インストールの際のダウンロード時間短縮のために、UnitySetup64.exeをバックアップして、それで再インストールしてたのが原因でした。
UnityDownloadAssistant-5.1.2f1.exeを実行して、>>793さんの言うとおり、Standard Assetsをチェックしたら大丈夫でした。
お騒がせしました。

795 名前:名前は開発中のものです。 mailto:sage [2015/08/08(土) 21:28:10.10 ID:N/D5gJUC.net]
ところでUnityでフレームスキップしないように設定できる?

796 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 01:49:33.02 ID:XyY7+yoD.net]
そこそこ大きいデータをunity内部で扱うためにsqliteを使いたいのですが、何かいいアセットなどありますか?
もしくは他にいい感じのDBなどはありますか?

797 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 02:45:47.85 ID:8vhmQCx9.net]
>>796
sqliteを使うAssetはStoreで探せばいくつもある
DataBindをC#と密接にしたいのならオープンソース実装がGitHubにころがっている

どういう使い方をしたいかで決まるから自分で探す方が良い
なおどれもPlugin経由なのでプラットフォーム依存があるからAssetStoreなら評価をOSS物の場合はC#からの親和性とかを元にチェックする事

798 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 11:58:29.14 ID:1Y3sDlK9.net]
UNITYでVSが標準になるとかならないとか
VSで何G喰うのかな
Cドライブがやばい、かと言ってリンクしようにもD以降も余裕ない
HDD買い増しか、いっそのことPC買い替えか

799 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 12:40:41.84 ID:MRvAVR8Q.net]
https://www.visualstudio.com/ja-jp/visual-studio-2015-system-requirements-vs.aspx
一応インストールのシステム要件は 4GBの空き容量になってるね
作業するなら大量に空きがあったほうがいいね

800 名前:名前は開発中のものです。 [2015/08/09(日) 14:23:00.07 ID:/OhH7e0+.net]
ラムダ式書くと、foreachで回すより明らかに遅いのだけど異常ですか?

801 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 14:43:54.26 ID:8vhmQCx9.net]
>>800
foreachの中身を別関数にして呼び出せば同じ速度になると思うぞ

802 名前:名前は開発中のものです。 [2015/08/09(日) 14:59:07.10 ID:/OhH7e0+.net]
FidAllがやけに遅いと思ったけど、foreachでも別関数なら同じなのかな



803 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 15:05:00.83 ID:8vhmQCx9.net]
>>802
内部的にはdelegateを渡したのと一緒で渡したLambda式を関数呼び出しするからね

804 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 17:31:16.80 ID:juyi80yV.net]
テストプレイ中に稀に以下のエラーが発生して止まってしまうのですが、対処出来なくて困っています。
当方Unity5。
エラーの発生箇所がeditorやInspector臭いのですが、特にカスタマイズはしてないです。
せいぜい、OnValidate()でInspectorの変更をオブジェクトに適用させるくらいです。

MissingReferenceException: The object of type 'GameObject' has been destroyed but you are still trying to access it.
Your script should either check if it is null or you should not destroy the object.
UnityEditor.GameObjectInspector.DoRenderPreview () (at C:/buildslave/unity/build/Editor/Mono/Inspector/GameObjectInspector.cs:680)
UnityEditor.GameObjectInspector.OnPreviewGUI (Rect r, UnityEngine.GUIStyle background) (at C:/buildslave/unity/build/Editor/Mono/Inspector/GameObjectInspector.cs:745)
UnityEditor.Editor.OnInteractivePreviewGUI (Rect r, UnityEngine.GUIStyle background) (at C:/buildslave/unity/build/artifacts/generated/common/editor/EditorBindings.gen.cs:309)
UnityEditor.ObjectPreview.DrawPreview (IPreviewable defaultPreview, Rect previewArea, UnityEngine.Object[] targets) (at C:/buildslave/unity/build/Editor/Mono/Inspector/Editor.cs:225)
UnityEditor.Editor.DrawPreview (Rect previewArea) (at C:/buildslave/unity/build/Editor/Mono/Inspector/Editor.cs:522)
UnityEditor.InspectorWindow.DrawPreviewAndLabels () (at C:/buildslave/unity/build/Editor/Mono/Inspector/InspectorWindow.cs:759)
UnityEditor.InspectorWindow.OnGUI () (at C:/buildslave/unity/build/Editor/Mono/Inspector/InspectorWindow.cs:386)
System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture)
(at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)


稀にしか発生せず結構お手上げ状態です。
よろしくお願いします。

805 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 17:33:39.23 ID:cORaqZFq.net]
業務でやってるならUnityに聞いた方がいいんじゃないかな

806 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 17:41:04.67 ID:MRvAVR8Q.net]
MissingReferenceException: The object of type 'GameObject' has been destroyed but you are still trying to access it.
でググると結構出てくるな
nullチェック時に==はオーバーライドしてんのか

807 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 17:52:22.98 ID:8vhmQCx9.net]
>>804
エラーログからみるにテストプレイはUnityEditor上でALT+PかCMD+Pでプレイしてるんだよね
死んだ(Destroy済み)のGameObjectをUnityEditor上のインスペクタ(あるいはUnityEditor用のAsset)で開きっぱなしにしてない?

808 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 18:06:36.80 ID:juyi80yV.net]
>>807
ここここれっぽいです!!! ありがとうございます!!
destroyされたGameObjectのprefabをInspectorに開きっぱなしです。
確かに、この状態だと100%発生しますね(恐らく生成のタイミングで)。
とはいえ、どうしてそうなるんでしょう

809 名前:名前は開発中のものです。 [2015/08/09(日) 19:30:08.93 ID:MJa1D6eV.net]
質問です。
CharacterControllerを使わずにそうさしてるのですが、接地判定がうまくいきません。

void CheckGround(){
if(Physics.Raycast(transform.position,Vector3.down,out hit, 10 )){
if(hit.collider.tag == "Ground"){
isGrounded = true;
}
}

で、処理してるのですが、isGroundedがtrueになりません。プレイヤーにBoxColliderとRigidbodyを
地面にはBoxColliderを付けて、タグを"Ground"にしています。
どなたかわかる方、または参考になるサイトをご存知の方居たら教えてください。

810 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 19:35:54.21 ID:a0bgjuvw.net]
Unityの2Dモードで、何枚か張られているパネルをマウスでクリックして消すゲームを作っております。
同じプレファブを使い、同じコードを使ったところ、1個のパネルを消すと全て消えてしまいます。

spriterenderer,boxcolider2dを付けてます。

実装は、クリックされたら以下のコードが実行されます(panel.cs)
v2には、クリックポイントが入ります。

v2 = GameObject.Find("Main Camera").camera.ScreenToWorldPoint(v2);
RaycastHit2D hit = Physics2D.Raycast(v2, Vector2.zero);
if (hit) {
Debug.Log ("x:"+v2.x+" y:"+v2.y);
Destroy(this.gameObject);
return;
}
で、consoleで見ると、1個当たっただけで全部のパネルが消えているのが確認できました。
consoleに大量のx,yの表示がされております。
自分自身かどうか判断する方法は無いでしょうか?よろしくお願いいたします。

811 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 19:57:23.46 ID:a0bgjuvw.net]
自己解決しました。申し訳ございません。

812 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 22:15:38.25 ID:iIBFuBQ/.net]
Unityを使用するブラウザゲームをやっているんですが、
最近、数十分前には起動できていたのに、ゲームを立ち上げようとしたらUnityが消えてる(アンインストールされてる?)事があります。
(Unityダウンロードページでもnot installedになっている)
なにかウイルスか設定のようなものでこうなったりするんでしょうか?



813 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 22:54:46.87 ID:bQXYImrI.net]
>>808
ギャグかよw
destroyしたからに決まってんだろうw
もう使わないよと言っておきながら使うという矛盾www

814 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 22:58:41.88 ID:bQXYImrI.net]
>>812
きっと妖怪の仕業だわ
お祓いしなきゃね

815 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 23:20:09.22 ID:M1ulE9Fv.net]
最初のシーンが重いのかUnityロゴ表示がかなり長くなってしまったので
シーン切り替えスクリプトのオブジェクトのみ配置したシーンを最初に作ったんだけど
変わらずロゴ画面でロードしてしまいます
なるべくロゴ表示を早く切り替えるのにはどうすれば良いですか?

816 名前:名前は開発中のものです。 mailto:sage [2015/08/09(日) 23:31:12.99 ID:eHkK7Iki.net]
Proを買う

817 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 00:39:12.02 ID:NcNOCafI.net]
キャラIDとスキルIDをボタンの引数として登録する機能を作っています。
ボタンを押した時にShowSkillWindow(int, int)を実行するのですが、
2個目の引数の値をこの時点のiの値で呼び出したいのに、ボタンを押した時点での値で呼び出されてしまいます。
(この場合はループ終了後のiの値である5が引数になる)

public void Init(int charaID) {
for (int i = 0; i < 4; ++i) {
Button.ButtonClickedEvent clickEvent = new Button.ButtonClickedEvent();
Debug.Log("charaID:" + charaID + ", SkillID:" + i);
clickEvent.AddListener(() => BattleManager.I().ShowSkillWindow(charaID, i));
skillButtonList[i].GetComponent<Button>().onClick = clickEvent;
}
}

引数を固定させる方法か、代わりになる方法はありませんか?

818 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 01:01:41.62 ID:NcNOCafI.net]
解決と言えるのか自信がないけど意図した動作が出来たので残します。
引数を保持するための構造体の定義を作っておき、そこから処理を呼ぶ方法で実装出来ました。
構造体を作って放置するのがメモリ的に不安なので、改善点あれば教えてもらえると助かります。

struct StrSkillAction {
public UnityAction SkillAction(int charaID, int skillID) {
return () => {
BattleManager.I().ShowSkillWindow(charaID, skillID);
};
}
}

public void Init(int charaID) {
for (int i = 0; i < 4;++i) {
Button.ButtonClickedEvent clickEvent = new Button.ButtonClickedEvent();
Debug.Log("charaID:" + charaID + ", SkillID:" + i);
StrSkillAction eventClass = new StrSkillAction();
clickEvent.AddListener(eventClass.SkillAction(charaID, i));
skillButtonList[i].GetComponent<Button>().onClick = clickEvent;
}
}

819 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 01:55:01.36 ID:5Hk6N57m.net]
>>809
>if(Physics.Raycast(transform.position,Vector3.down,out hit, 10 )){

out hit,

ここに空白が入っていても、構文エラーにならないの?

820 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 02:03:06.07 ID:NcNOCafI.net]
outは関数の中で値を入力して返すためのもの
この場合はRaycast関数の中でhitに衝突情報が入って返ってくるということ
いわゆる参照渡しみたいなもの

821 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 02:09:07.80 ID:NcNOCafI.net]
>>809
衝突自体していないのか、
Raycastは真だけどtagに別の値が入ってるのか、
別の物体とは衝突するのか
あるいは別の物体と先に衝突しているのか
その辺りを調べればいいと思う
予想では、別の物体が先に衝突してるんじゃないかと
その場合はレイヤーマスクの指定で解決するかも

822 名前:名前は開発中のものです。 [2015/08/10(月) 02:23:40.44 ID:FUa01Ekr.net]
806です。

>>819
参考にしたサイトに、第三引数にoutで指定すると衝突したオブジェクトの情報が入る。と書いていたので
そのまま使ってます。hitのColliderを判定してるので必要ですよね?エラーは出てないですが、isGrounndedは返ってきません。

接地判定やcheck groundで検索してみたんですが、どうしても欲しい情報がないんですよね。



823 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 04:40:26.71 ID:WlJ3IdsP.net]
ブレイクポイントの使い方を覚えると捗るよ

824 名前:名前は開発中のものです。 [2015/08/10(月) 12:06:28.96 ID:FUa01Ekr.net]
806です。
皆さん本当にすみません。ただ単にBlenderからインポートしたオブジェクトが大きすぎて、
Raycastが届いて無かっただけの様です。
サイズ調整したらちゃんと接地判定してくれました。色々おかしかった所の大半がリサイズで解決しました。

アドバイスいただいた皆さんありがとうございます。

825 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 14:22:11.83 ID:mK6U9Zck.net]
設計の問題かもしれませんが、ダンジョンで使ったオブジェクトやらスクリプトを町で使いまわしたいのですが
ゲームの状態(ポーズ画面とかインベストリ画面とか)を操作するスクリプトを変える必要があって、これを変えると他の部分も大量に変える必要が出てしまうので
シーンごとに同じ名前(スクリプト名やら)だけど内容は違うみたいなことが出来る方法ってありますか?
やりたいことは倉庫の実装でインベストリ画面を開いたままにしたいのですが、ゲーム状態のスクリプトのupdateの部分に色々かいてたりするので倉庫だったらリターンtかも出来なさそうですし・・・
この方法以外にもいいやり方あったら教えていただけると幸いです

826 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 14:26:44.54 ID:v4fNYOjT.net]
>>825
もしかして:インベントリー画面
設計が間違ってると思うぞ、パーツとしてのスクリプトやプレファブの独立性を高くしないとどんどん酷くなると思う。

827 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 14:33:12.42 ID:mK6U9Zck.net]
>>826
なにぶんゲームやらプログラミング初めてなのでいまいち設計がわからなく・・・
次からは気をつけようとは思うのですが(どう気をつけるべきかも分からないってのもありますが)
今回はちょっとこのままごり押しで行きたいと思うのです
この作品では倉庫と店さえできれば(二つともインベントリひらくだけ)あとはつくるものはほぼないのでこのままいけたらなとは思ってます

828 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 14:40:00.14 ID:mK6U9Zck.net]
うーんよく考えたらゲーム状態の上位にさらにゲーム状態くっつければいいような気もしてきました
updateの部分をダンジョンだったら動作するように変えて町かダンジョンかの状態も操作するような物にしてみます

829 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 15:04:38.80 ID:sZwBkfWo.net]
UNITYをRPGツクールかなんかと思ってないかw
スクリプト変えないで町を作ろうとか

830 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 15:13:10.50 ID:mK6U9Zck.net]
>>829
一番楽だろうなと思ったのはスクリプト名を同じものにして(他で名前変えるのが面倒だったので)スクリプトの内容は変えるという感じで
これが出来たら一番楽だなと思って質問しました

831 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 15:18:55.29 ID:wojOIyQx.net]
実際デリゲートとか使えばそれで済む話だしな〜

832 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 15:23:07.25 ID:sZwBkfWo.net]
今一何したいのか判らん>>826の言うとおり設計から考えなきゃだめなんじゃね

単にスクリプトのクラス名が衝突するのを回避したいならnamespaceで調べれば幸せになるれけど



833 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 15:32:53.53 ID:mK6U9Zck.net]
>>832
倉庫ではゲーム状態(ポーズ画面とかそういうやつ)をインベントリ画面に設定して他のボタンを押してもそこから動かないようにしたかった 
かつ、ダンジョンで使っていたものを再利用したかった
そこでゲーム状態操作するスクリプトをいじる必要があったのでダンジョン内では、アップデートの部分に例えばesc押すとポーズみたいな関数があり
その部分をシーンがダンジョン内だったら動くようにしました
仮に設計から考える場合はどうなるんですか?

834 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 15:37:25.40 ID:sZwBkfWo.net]
いやその説明で設計の助言できるのはエスパーかよほど似たような事してる奴だけだろw

835 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 16:59:55.36 ID:KBTO4hmR.net]
Unity5 Water4シェーダーについて質問です。

浅い川に使ってるのですが、屈折効果があわられません(水面下がうにゃうにゃ変形されるの)
色々試したのですが、ある程度(2m以上)深くすると効果が出ます。何処をいじればいいのでしょうか?
全てのパラメーターを極端な数値に設定して試したのですが、うにゃうにゃになりません。
もしかしてシェーダースクリプトそのものを変更しないとダメなのでしょうか?

836 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 17:44:03.89 ID:7mxq3sqw.net]
Instantiateで作ったクローンたちをCanvasの子にするにはどうすればいいんでしょうか?
ttp://blog.doinet.co.jp/?eid=1031771
ここのサイトを参考にしましたがうまくできませんでした・・・

837 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 17:50:16.51 ID:Vfcir//D.net]
>>836
docs.unity3d.com/ja/current/ScriptReference/RectTransform.html
にある SetParent 関数でどうぞ

838 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 18:02:19.58 ID:KBTO4hmR.net]
>>835
自己解決しました。
Editorスクリプトが入ってなかったので入れて、
NormalsとFadeをいじってる内にいい感じに屈折表現されるようになりますた

839 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 18:05:16.92 ID:Vfcir//D.net]
>>835
テストシーン作ってみたけど普通に動いてる気がする
2mてのがわからんけど、Daylight Water をy=0において、床をy=-0.0001でもちゃんと歪んだ
動作の感じからすると水面と川床の距離がカメラから見て小さくなりすぎると
Zの精度の都合で歪ませたテクスチャのレンダリングがうまくいかなくなってる

別な要因の場合だとわからん

840 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 18:07:56.00 ID:Vfcir//D.net]
あれ?違うシェーダーかな・・

841 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 18:28:21.51 ID:wI7xw16W.net]
Unity5.1.2のパーティクルについて質問です。

2Dゲーム内でスプライトをパーティクルとして利用する方法がわかりません。
2Dパーティクルの作成方法、または参考となるサイトなどありますでしょうか?

ttp://udasankoubou.blogspot.jp/2012/07/unity2d.html
↑のサイトを参考にパーティクルを作製しているのですが
バージョンの違いのせいか、黒い四角が表示されて終わります。

842 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 18:54:14.72 ID:7mxq3sqw.net]
>>837のSetParentを使ってみたんですがなぜかAn object reference is required to access non-static memberのようなエラーが出てうまくいきません
子(objという名のオブジェクト)のスクリプト内で以下のように書いているんですが、どういう記述にすればいいんでしょうか・?
obj2 = GameObject.Find("obj");
obj2.transform.SetParent (Canvas.transform,false);



843 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 18:55:43.91 ID:ljA6WxLC.net]
すぐに自己解決したりちょっと調べれば解るようなことでいちいち質問すんな
自分で解決する癖つけないと何時迄も初心者以下のまま
3日くらい悩んで解らなかったら質問しろ

844 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 19:06:00.20 ID:7mxq3sqw.net]
>>843
調べても解決しませんでした
逆にどう調べたら解決したんですか?
ほんとにググって解決するんですか?

845 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 19:15:47.52 ID:Vfcir//D.net]
>>844
しますよ
調べ方すら分からないくらいあらゆる知識と知恵が足りていないだけ

846 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 19:23:39.80 ID:7mxq3sqw.net]
>>845
じゃあどう検索して、どのサイトで分かるか教えてください。そこまで言うからにはあるんでしょ?
また、そうやって煽るのも、調べる力を低下させる原因になります、なのにそういって調べさせるのはよくないと思いますよ

847 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 19:43:59.77 ID:v4fNYOjT.net]
>>846
InstantiateしたのがGameObjectならtransform持っているし、transformもっていればSetParent出来ることは確実
つかなんでFindしてんだ?
Instantiateしたオブジェクトは何処行った?

848 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 19:45:52.51 ID:F7WR9lyE.net]
そもそもこれを正しく理解しないとな

GameObject retObj = (GameObject)Instantiate(プレファブ);

この retObj には、実体化したプレハブが入ってる。findコマンドは必要ない。

retObj.transform.SetParent (Canvas.transform ,false);

ただCanvas.transform自体、実体取れてない気がするがな。
悪い事言わんから大人しくチュートリアルやっとけ。
このレベルなら、ここで聞くよりよっぽど有益だぞ。

849 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 19:54:35.14 ID:wI7xw16W.net]
とりあえず全部の質問に「優しく答えてやる」のが
このスレの存在意義なんじゃないんでしょうか
それに納得できないならググるためのキーワードとかヒントを教えて欲しい

850 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 20:03:34.21 ID:GfmM7YVS.net]
こういうのをアスペって言うのかな

851 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 20:05:31.46 ID:Vfcir//D.net]
>>846
Unity5 親子関係 Instantiate
で出てきたヤツを上から順番に見て
関連する部分でしらないメソッドやクラスをさらに検索する
クラスならUnity本家のリファレンスも同時に参照し、関係するものを調べる

これだけできみらの抱える極々基礎の問題は大半が解消できる
「調べる」は基本的なことだから「調べさせるのはよくない」と言い出すくらいなら
もうプログラムやめていいよ
向いてない

852 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 20:09:51.32 ID:7mxq3sqw.net]
>>847
親がobjをInstantiateしてます、親にSetParentを書いてみましたがエラーが出てうまくいかず・・・
SetParentは子に書くんですか?でも子でもうまくいかなかった気が・・・
キャンバスに対してゲットコンポーネントでもしないといけないんですかね?



853 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 20:09:55.81 ID:Vfcir//D.net]
>>841
Unityはパーティクルが旧来ものとシュリケンと呼ばれる新しいものの二種類がある
検索先の日付を見て古いものは旧バージョンの情報だと思った方がいい
tips.hecomi.com/entry/2015/03/23/004733
リンク先の記事のリンク先やUnity公式を見ながらがんばれ

854 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 20:12:28.42 ID:7mxq3sqw.net]
>>851
なに勘違いしてるんですかね・・・調べさせるのは良くないとは一言も言ってないんだが?勘違いも甚だしい
未だに煽ってるしそっちこそもうプログラムやめていいよ
向いてない

855 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 20:13:26.12 ID:v4fNYOjT.net]
>>852
そのときのコードとエラーの写しを添えて質問すべきだと思うな

856 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 20:15:04.29 ID:Vfcir//D.net]
>>852
Canvasが取得済みのGameObjectなら
 obj2.transform.SetParent (Canvas.transform,false); 
これで問題ないはずだ
できていないなら隠してる情報をもっと載せるべき
エスパーじゃないからエラー行や変数がどうなっているかはわからない

857 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 20:43:11.24 ID:Vfcir//D.net]
とりあえずな
質問を書き込む前に
過去レスを遡って直接自分が抱える問題と関係ないものでも目を通して
質問を答える上で相手に伝えなければいけない情報の選別の仕方と
相手が理解できる質問の書き方を先人から学んでくれ

何をやりたいか、何が問題か、どういう記述をしたか、どういう状況なのか、どういう結果だったのか
返答の後に情報を後出ししなくていい様にちゃんと書いてくれ

858 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 21:04:57.79 ID:wI7xw16W.net]
>>853
ありがとうございます!いろいろ試してみます!

859 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 21:19:10.44 ID:7mxq3sqw.net]
エラーはこれです
error CS0120: An object reference is required to access non-static member `UnityEngine.Component.transform'

error CS1502: The best overloaded method match for `UnityEngine.Transform.SetParent(UnityEngine.Transform, bool)' has some invalid arguments

CS1503: Argument `#1' cannot convert `object' expression to type `UnityEngine.Transform'


親のソースはこれです
public GameObject obj;

void Update () {
Instantiate(obj,new Vector3(0.0f, 0.0f, 0.0f),Quaternion.identity );
obj.transform.SetParent (Canvas.transform ,false);
}

objにはインスペクタで増やしたいオブジェクトを入れています
子に書いてゲットコンポーネントもするのが正解なのか…うーん・・・

860 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 21:37:06.46 ID:+inM/XFW.net]
程度の低い質問者に程度の低い回答者……これがUnityの質というわけか……
そりゃアセットおじさんさえも飽きていなくなるわな

861 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 21:37:43.37 ID:v4fNYOjT.net]
>public GameObject obj;
>void Update () {
>Instantiate(obj,new Vector3(0.0f, 0.0f, 0.0f),Quaternion.identity );
>obj.transform.SetParent (Canvas.transform ,false); // エラーって全部この行ででてないかい?
>}
ここだけで間違いが3つ
1:Instantiateの戻り値を捨てている
2:obj.transform.SetParent〜 では元のPrefabへの変更になる
3:Canvas.transformなんてクラス変数は無いんじゃないかな?、Canvasを手当したGameObjectの参照の名前は何処?

public GameObject prefab; // objって名前はよろしくないので改名
public GameObject yourCanvasObject; // Canvasオブジェクトをinspectorで指定しておく
void Update() {
GameObject child = (GameObject) Instantiate(prefab, Vector3.zero, Quaternion.identity ); // GameObjectをInstantiateしても戻り値はobject型なのでキャストする
child.transform.SetParent(yourCanvasObject.transform, true); // instantiateしたchildオブジェクトの親を指定
}

とりあえずエラーのある行をゆっくり観察してエラーが持つ意味をちゃんと理解しないと先に進むのは難しいと思うよ。

862 名前:名前は開発中のものです。 [2015/08/10(月) 21:42:14.98 ID:TI2mbg4u.net]
unity触るのやめてc#一通り勉強してこい



863 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 21:42:50.85 ID:Vfcir//D.net]
>>859
void Update () {
GameObject dupe = Instantiate(obj,Vector3(0.0f, 0.0f, 0.0f),Quaternion.identity ) as GameObject;
dupe.transform.SetParent (Canvas.transform ,false);
}
インスタンス化したものを子にしたいなら複製元をCanvasの子にしても意味が無いし
目的の挙動ではないはず
Canvasは目的のGameObjectが設定されているか?

864 名前:名前は開発中のものです。 mailto:sage [2015/08/10(月) 21:44:33.16 ID:Vfcir//D.net]
あとあれだ
Update() にこの書き方で設置すると毎フレーム生成される
必要な数以上複製されない仕組みがいる






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<302KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef