【ゲームエンジン】Unity初心者質問スレBuild3

■ このスレッドは過去ログ倉庫に格納されています
2020/01/11(土) 14:28:59.18ID:wPvGtAaQ
ゲームエンジンUnityを楽しむ初心者による初心者の為のスレ
その為「アセットを購入しましょう」「チュートリアルやれ」「ググレカス」等禁止
初心者が親身になって初心者に教える。
又ググレの場合、何のキーワードでググるのか書いてね

●リンク
・Unity(日本公式サイト)
http://unity3d.com/jp
・マニュアル
 http://docs.unity3d.com/ja/current/Manual/index.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←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。
※前スレ
【ゲームエンジン】Unity初心者質問スレBuild2
https://mevius.5ch.net/test/read.cgi/gamedev/1557293737/
593弟子
垢版 |
2020/02/18(火) 14:04:39.01ID:GOZPaH/2
>>591
えっと、さっきのページの元のページの方法でやってみました
Google Sheets API v4を適当に叩いて適当にデータをJSONで取得する
http://taiki-t.はてなblog.com/entry/2016/10/14/031124
はてな=ローマ字

一応
https://i.gyazo.com/7c2adf5d168993ef530b4ca686b786cd.png
こんな感じでデータ自体はとれたのだけど
これってこんなURIになってて
https://sheets.googleapis.com/v4/spreadsheets/シートID/values/sheet1!a:d?key=APIキー
単純にデータを範囲で取ってきてるだけなので、ちょっとデータセレクトとかどうかな
多分質問主がしたいことはGoogle側APIでデータ出力だと思うのですが
これで出来ればまぁそれもありかなと思い
まぁ中途経過ですが一応投下
594弟子
垢版 |
2020/02/18(火) 14:21:15.35ID:GOZPaH/2
>>592
そのページの通りにやったらうまくいきましたが、どんなエラーでしょうか?
アトラス化したデータはスライスしてるでしょうか?
https://imgur.com/W2akkl6
https://i.gyazo.com/fb21cd06068c5c40b1c464cd57c4f85c.png
https://i.gyazo.com/b324ab5e83f31cf158339edf061a6de9.png

あとはパーティクルシステムの「Texture Sheet Animationを有効」になってますか?
2020/02/18(火) 14:49:28.04ID:DPdGyl76
エラーは画像が同じシートにない場合にでるものです。
画像をスライスして再度アトラスにしてみましたがやはり同上のエラー文がでました。
アトラスのやり方が間違っているのでしょうか?
画像が3枚に別れてるのをいっそのこと一枚に修正してスライスしてしまったほうがはやいですかね

https://i.imgur.com/PHRCVIn.png
https://i.imgur.com/Ma37WF9.png
596弟子
垢版 |
2020/02/18(火) 15:02:22.38ID:GOZPaH/2
>>595
だから書いてある通り、1枚の画像じゃないと・・・
597弟子
垢版 |
2020/02/18(火) 15:04:58.99ID:GOZPaH/2
あ、そのエラーメッセージみると
パッキングタグを設定して、すべてのスプライトを1つのテクスチャにパックします。
ってあるので、もしかしたらそのような設定があるのかもしれませんね
ちょっと調べて見ます
2020/02/18(火) 15:07:43.58ID:/pkgcb0x
>>597
すみません、今回は画像を編集して1枚にまとめる方法でやろうと思います。
ありがとうございました。
599弟子
垢版 |
2020/02/18(火) 15:09:15.34ID:GOZPaH/2
>>595
おそらくスプライトパッカーでパッキングすれば複数の画像から出来そうですが
詳細は
https://docs.unity3d.com/ja/2018.4/Manual/SpritePacker.html

ただこれLegacy設定されてるので将来無くなる可能性もあるのかな
だとすると最初から1枚絵を用意した方が無難な気もします
2020/02/18(火) 15:39:25.59ID:1pDRzHCP
>>599
てっきりこの機能を使いやすくしたのものがsprite atlasだと思ってたんですが違ったみたいですね。
ありがとうございました。
601591
垢版 |
2020/02/18(火) 17:29:55.42ID:sKgNX2QZ
>>593
引き続きレスありがとうございます

仰る通り、自分はGoogle側APIをUnityで叩いてデータの入出力ができればと思っています

単純なデータ範囲出力はそのサイトの情報でできるようになりました
スプレッドシートの共有云々で躓いていたようで、APIキーによって認証をクリアしました
ただ、データベースとして利用するには少し扱いづらいです

データ選択ではいけたので同様にスクリプト実行のためのURLを記述してみましたが、相変わらず認証画面が出てくる有様です

アクセストークンがGoogleアカウントだけでなく、Google Cloud platformのアカウントが必要だったのは分かりましたが
そのままGoogle Cloudのデータベースを利用してみようかとも思いましたが、
一年経過したときに課金しなくては使えなくなるのでは困るので、
まだスプレッドシートを利用する方向で考えています

認証すら通っていない状態ですが・・・
602弟子
垢版 |
2020/02/18(火) 21:10:15.93ID:Km4CtOWW
>>601
一応、いま
https://www.ka-net.org/blog/?p=12258

https://dev.classmethod.jp/client-side/unity-client-side/unity-userpool-userid/
の情報から察するに、SetRequestHeader("Authorization", token); をやればなんか行けそうな感じがするのですが

今日は色々調べて疲れたから検証は明日><
603弟子
垢版 |
2020/02/19(水) 11:41:39.97ID:aVsIuebY
>>602
検証したところいけました、コードは次のようなものです

https://i.gyazo.com/8be30bbf16e79b80598d2b976eedd116.png

token文字列はあらかじめ取得ね
んでこれで試したURIはexeまでのなので、doGetが動いています。

これいいねwww
604591
垢版 |
2020/02/19(水) 13:41:13.22ID:Z+Z53OIe
>>603
長く調査及び検証ありがとうございます

こちらで試したところ、
HTTP/1.1 401 Unauthorized
また別な認証エラーのようです

サラっと調べたところだとアクセストークンが無効らしいのですが
いくらアクセストークンを取り直しても同様のエラーが発生します
今度は何が間違っていたのか

まだ駄目ですが、とにかく少し進みました
ありがとうございます
605591
垢版 |
2020/02/19(水) 14:24:38.06ID:Z+Z53OIe
>>604
たぶん解決しました
認証コードを得る際に指定するscopeの誤りでした

スプレッドシートの取り扱いだと思っていたため当初スコープを
https://www.googleapis.com/auth/spreadsheets
としていましたが、これを
https://www.googleapis.com/auth/drive
として取得した認証コードから得たアクセストークンで作成したスクリプトを実行できました

ただ、スコープの範囲がGoogle Driveのすべてに更新できるスコープなので、これが果たして良いのかわかりません
606弟子
垢版 |
2020/02/19(水) 14:51:21.49ID:aVsIuebY
>>604
一応アクセストークンには有効期限があるんで自動リフレッシュにすると大丈夫な記事もみますが(めんどいので未検証)
ただ、結局アクセストークンにしてもプログラムに組み込んでいるわけで、これも結局は匿名のアクセスと何ら変わらないのだと思います

もし厳格にするならDLしてもらったユーザーにメールでアクセスIDなり発行して
それをアクセスの際に渡すようにしてチェックすればいいのかなと思いますが

どうしてもチート対策で匿名アクセスを嫌うのであれば
FireBaseとかPlayfabとかのBaaS環境も考慮してみるのもいいかなと思います
607604
垢版 |
2020/02/19(水) 17:14:40.03ID:Z+Z53OIe
>>606
アクセストークンは有効期限があるためリフレッシュトークンで更新をプログラムで自動で行うわけですが、
これのおかげで各トークンは変数で保持することになり、ユーザからはその変数をデバックログぐらいでしか知られないので
直書きした時にプログラム解析のみで知られることはないので、多少は安全性が確保できるかと思っています

しかし大変手間ではありますな
今更ですが認証コードをプログラムでどうとってこようか考え中です
リフレッシュトークンも変化しないわけでもないようですし

Firebase、PlayFabなどのデータベースですが、対象がiOS・Androidのモバイルを想定しているところで二の足を踏んでいます
実際Firebaseではプロジェクトを作る際にこれらのプラットフォームのみが選択対象とされていました

私はとりあえず開発もリリースもWindowsでいいというスタンスでやっています
モバイルへの対応は操作性やら画面サイズやらが面倒なのでするつもりはありませんでした

自分の知識不足もあるのですが、これらのデータベースをWindowsで動くゲームに利用した場合、何か弊害がありそうで怖いです
2020/02/20(木) 09:17:28.93ID:mxrIND5A
趣味でドラクエの様な対面コマンド式のRPGを作っているのですが、打撃や斬撃、矢を降らした様なシュバババ!、魔法といったような汎用性の高い物が収録された素材集やアセットってありますか?

また、もしあまりお金をかけずに自分で作ろうと思ったらどの様な手段があるのでしょうか?
Photoshopなどでの画像編集は出来ますが、絵はかけません。
公式の無料3Dエフェクトをスクショしてコマ送りにするくらいしか思い浮かばないです。

ゲームづくりの先輩方がどうしてるのか、もし宜しければ少し教えて下さい。
よろしくお願いします。
2020/02/20(木) 09:25:24.65ID:EQPgOGPE
アセットストアで、particleで検索かな。
かなり安いので盛り沢山とかありそうだけど、探したかな?
あとは、下の本とか。

Unity ゲームエフェクト入門 Shurikenで作る!ユーザーを引き込む演出手法 (Smart Game Developer)
2020/02/20(木) 10:02:54.76ID:g50H1LKR
>>607
使ったことないけど、SimpleDBならいけるんじゃない?
2020/02/20(木) 13:12:35.12ID:WwOFc3fr
Unityを起動する時、unityのエディタが表示されるまで40秒程も待たされます。
新規プロジェクトをつくる時などは1分以上です。
Unity自体はCドライブ(SSD)、プロジェクトはDドライブ(HDD)に保存してるのですが、皆さんもこれくらい待ちますか?

i7-7700、SSD256G、HDD2T、GTX1060なので悪いスペックではないと思うのですが・・・
2020/02/20(木) 14:31:11.11ID:ZDXsgAvK
だいたい1分くらいで間違いないよ
2020/02/20(木) 14:45:51.52ID:WwOFc3fr
>>612
ありがとうございます。開発環境って重いですね。
614名前は開発中のものです。
垢版 |
2020/02/20(木) 16:05:06.33ID:qarU+gc5
visual studio閉じた時とシーン遷移後エディタ停止→実行した時高確率でフリーズするんですが、実装が何かおかしいのでしょうか…?

2018の1番新しい奴でjoycon-libとpost proccess使ってます
2020/02/20(木) 19:11:50.05ID:cCfEKyj0
>>611
>プロジェクトはDドライブ(HDD)
これめっちゃ遅くなるやつ

俺はSATAのSSDからPCI-EのSSDに変えたらめちゃくちゃ早くなったよ
HDDからならもっと効果大きいはず
2020/02/20(木) 21:21:18.32ID:zheV+EJg
読み書きが遅くなってるハードディスクはいつ逝ってもおかしくないからな
バックアップ大事よ
2020/02/20(木) 21:48:21.70ID:ODsKKIN8
プロジェクトはM.2SSDに置いたほうがいいよ
起動だけじゃなくインポートやビルドも爆速になる
2020/02/20(木) 22:02:51.50ID:Oh82l4aS
Unity2019+モノビットエンジン+PlayFabを利用してマルチプレイのゲームを製作しています。

ゲームで初めに行うアカウント登録が思い通りにプログラミングできなくて困っています。

よくある、

1.メールアドレス+パスワードでアカウント登録要請
 → 2.確認コード付きメール送信
 → 3.確認コード入力でアカウント登録完了

この流れを作りたいのですが、
メールアドレス+パスワードを用いたアカウント登録自体はPlayFabに標準のスクリプトがあるので良いのですが、
その前段階である確認コード付きのメールアドレスを送信、その後コード入力によって本人と特定する、ができません。

PlayFabのチュートリアルにメールアドレスの更新時にメールを自動送信するルールを作る方法がありましたが、
送ったメールがちゃんと本人に届いたと(コード入力を経て)証明するところまではありませんでした。
PlayFabの標準機能にあってもよさそうなんですが・・・

その他の方法としてGoogleアカウントやFacebookアカウントを利用してログインする方法があり、
この方法だと確認コードのメール送信は要らないのでやってみたかったのですが、
Unityにdllファイルを配置するとコンパイルエラーが大量に出て動かなくなってしまうので断念しました。

どうしたら実装できるでしょうか?
2020/02/20(木) 22:57:01.36ID:mxrIND5A
>>609
ありがとうございます。
particleでだいぶ探しましたが目当ての物は見つけられませんでした。。
もしかして3D用っぽい奴を2Dでも使うのでしょうか?
620弟子
垢版 |
2020/02/21(金) 09:37:36.77ID:3apfnp7Z
>>618
>→ 3.確認コード入力でアカウント登録完了

ただ単にHTTPのリンクを張るだけ
PlayfabAPIの説明書にhttpの例あるでしょ
POST https://titleId.playfabapi.com/Client/UpdateUserData
こんな感じで、ここに特定するIDと発行した確認コードいれてリンククリック

ゲームでやるならログインしてからそのアカウントのデータ確認して
発行コードと入力コードが同じならゲームに進む、
入力が無ければ、認証してくださいをゲームのどこかに表示なり、その画面なりにするだけ

>>619
>打撃や斬撃、矢を降らした様なシュバババ!
これが最初音かと思ってたのでレス控えててけど、エフェクト関係なのね
http://ktk-kumamoto.はてなblog.com/entry/2017/12/21/151513
(はてな=ローマ字)とか
https://gametukurikata.com/effect/particlesystem
とか色々とやってみるといいかと、3Dとか2Dとか奥行きくらいしか関係ないので大丈夫です、スプライトだけで表現したいなら>>587 参照で
621弟子
垢版 |
2020/02/21(金) 09:55:46.08ID:h4RVluUH
>>619
次いでですが
アセット、ツイッターだと「#Unity神アセット2D」こんなタグありましたので良ければ見てみてください

>>618
>Unityにdllファイルを配置する
これなんですが、「Login With Google Account」の説明にDLLの記載は無いようなのですが、どちらの情報でしょか?
確認してみたいと思いますが
2020/02/21(金) 11:25:30.40ID:+A2ccNJ6
>>620
すみません。不慣れなもので申し訳ないのです。
>PlayfabAPIの説明書にhttpの例あるでしょ
どこに記述されているか教えてください。

>ゲームでやるならログインしてからそのアカウントのデータ確認して
>発行コードと入力コードが同じならゲームに進む、
>入力が無ければ、認証してくださいをゲームのどこかに表示なり、その画面なりにするだけ
例も確認できていないのに恐縮ですが、
1.クライアントでアカウント登録時に確認をせずに即PlayFabでアカウントを(利用できない状態で)登録。
2.登録されたアカウントデータをもとに例に基づいてPlayFabからメールをコードを送信、およびクライアントでコードを取得(どうやって?)。
3.クライアントで入力画面(uGui等)を用意し、保持していたコードと入力されたコードが一致したらアカウントを利用できる状態にする。
というような流れになるのでしょうか?

>これなんですが、「Login With Google Account」の説明にDLLの記載は無いようなのですが、どちらの情報でしょか?
すみません。勘違いしていたようで、GoogleアカウントではなくGooglePlayアカウントでした

DLL云々に関してはどこで見たのか思い出せないのですが、
1.GoogleAPIをVisualStudioでインストールした後、
このままではUnityからは認識されないためAsset/Pluginフォルダに配置する方法。
2.GitHubにアップロードされていたGoogleAPIをダウンロードし、
解凍したファイル内にある特定のDLLを配置する。
という2種類の方法が提示されており、それに従ったところコンパイルエラーで動かなくなってしまいました。

今見てみたらunitypackageのファイルを取得できたので問題ありませんでした。
お騒がせいたしました。
623弟子
垢版 |
2020/02/21(金) 11:31:48.28ID:3apfnp7Z
一応、公式のチュートリアル貼っときます
Unity で Google Play ゲームを使用して PlayFab 認証を設定する
https://docs.microsoft.com/ja-jp/gaming/playfab/features/authentication/platform-specific-authentication/google-sign-in-unity
624弟子
垢版 |
2020/02/21(金) 11:43:58.81ID:h4RVluUH
>>622
公式のAPIのページにほとんどのコードがHTTPの記述ありますね
https://i.gyazo.com/2b550882ca8dedbe4a658c5422ddd0e3.png
titleIdはご自身のゲームタイトルです

アカウント登録と同時にプレイヤーデータ登録を行って
例えばこのように
https://i.gyazo.com/aaa6d85b447ba5475cf4cb893ca49980.png
しておけばまだ入力されていないと確認できますね
プレイヤーデータの取得は
https://i.gyazo.com/f11d86ceef2e1d19763c72c4aa64f034.png

取得方法とかはチュートリアルにもあるのでやってみてはどうですか?
625弟子
垢版 |
2020/02/21(金) 11:52:56.70ID:h4RVluUH
あぁそうそう、MSさんのページは英語でわからーんって場合、まぁ一応日本語ページも用意されてるんだけど
簡単に変えるには
「en-US」を「ja-JP」に変えると変わる場合がありますのでやってみてるいいかと

ついでにプレイヤーデータに関するチュートリアル
https://docs.microsoft.com/ja-JP/gaming/playfab/features/data/playerdata/tutorials
2020/02/21(金) 12:54:20.79ID:+A2ccNJ6
>>623-625
いろいろとありがとうございます。

プレイヤーのタイトルにデータを持たせる方法は思いつきませんでした。
個人的にはメールによる認証を使っていきたいと思っているので、挑戦していきたいと思います。
2020/02/22(土) 09:22:30.11ID:47bRlusd
ゲームオブジェクトのヒエラルキーを変更すると、.anim ファイル内での参照まで変えてくれなくてアニメーションが壊れる。
これ、テキストエディタで yaml を触ったらまぁ直るんだけど、Unityエディタ上で出来ないもんですかね?
628弟子
垢版 |
2020/02/22(土) 12:02:13.21ID:HVLYpkKs
unity アニメ 黄色い文字
とか
unity アニメ 壊れる
で検索するとエディタ拡張や直すスクリプトとか出てきますよ
2020/02/22(土) 12:41:27.56ID:47bRlusd
>>628 アリガトウ。 ついでにカスタムパッケージのインポートの仕方もこれを機会に覚えられたョ。
2020/02/22(土) 15:29:47.69ID:Fgli0Swp
>>627
アセットを買えばいいです
2020/02/22(土) 15:30:19.32ID:tYcchYXH
久々に見たな アセットガイジ
632627, 629
垢版 |
2020/02/22(土) 15:35:27.86ID:47bRlusd
Qiita で紹介されてたエディタ拡張↓
https://qiita.com/sukedon/items/71247af4a4494303dc66
を入れてみたんだが、結構問題があった。

ひとつは ChildAnimatorStateMachine に対応していなくて、クリップを取得できなかったこと。
これはまぁソースを修正して取得できたんだが、最悪の問題は修正時にカーブがリセットされてしまって、
修正を適用したキャラのアニメーションが全て破壊されてしまったこと。

で、このプロジェクト、最近訳あってバージョン管理を外したの忘れたままで元に戻せない。
またアニメーションをゼロから構築するしかなくなった。
ああ、バージョン管理って大事やね…当たり前ながら。
2020/02/22(土) 18:33:06.26ID:7x1LIFCH
admobで広告が表示されなくて、ポリシーセンター確認してたら評価中のアカウントになってるんたけど、解除される目安とかってある?
634弟子
垢版 |
2020/02/22(土) 18:37:16.06ID:XxBps/+K
バージョン管理も大切だけど
アセットとか拡張とかはまず本番適用の前にテストプロジェクトで確認するのがいいかなと思います
635弟子
垢版 |
2020/02/22(土) 18:54:57.18ID:HVLYpkKs
>>632
その元の記事の拡張で確認してみました
https://www.shibuya24.info/entry/2016/03/11/090000
んで、Recover押して修正した際には確かに数値がクリアされていたように見えた
というかクリアされていたんだけど
0キーの数値を手で入れてみたら他のキーの数値が元にもどりました

ちょっと面白い現象ですが、内部で保持しているような感じします
636名前は開発中のものです。
垢版 |
2020/02/22(土) 19:32:34.60ID:BfqvMpNB
unityのバージョンは 2018.4.17f1です。
https://xr-hub.com/archives/13135
これを作っていて 当たり判定を実装する の所で同じように書いたらエラーが出てゲームが再生出来ないのですがどういう事なんでしょうか・・?
OnTriggerEnterとifのplayerに下線がついてます。
637名前は開発中のものです。
垢版 |
2020/02/22(土) 20:21:10.19ID:BfqvMpNB
636です。
Assets\Scripts\GoalManager.cs(26,14): error CS0116: A namespace cannot directly contain members such as fields or methods
と表示されていますね・・
2020/02/23(日) 03:50:19.35ID:M/nZ3LGl
>>635 本当に直ってワロタ。
数値入力つか、赤丸の録画ボタンみたいな奴をクリックするだけで直ると言う。
何が原因か本当興味深い…
ロードされているオブジェクトとシリアライズされたオブジェクトの間に齟齬が出てるのかな???
639弟子
垢版 |
2020/02/23(日) 10:03:21.57ID:H5IOH4bQ
>>636
その時点だと、スクリプトはこんな感じだと思いますが
https://i.gyazo.com/ee714bad8a47f86fddb8b481ff925b43.png

いかがでしょうか?
640名前は開発中のものです。
垢版 |
2020/02/23(日) 13:18:49.56ID:/ixS+ufQ
>>636です。
回答ありがとうございます。
最後の } がなぜか 1 個足りないなーと思ってたら書く位置を間違えていました。
解決です。本当にありがとうございました。
2020/02/23(日) 14:44:48.99ID:LCQz7D0v
Playfabのキャラクターデータについて

ゲームマネージャ上では追加ができないため、クライアント側、つまりUnity側からレコードを作るのだと思うのですが、
クライアントAPIにUpdateCharacterDataというメソッドしか見当たらないのですが、
新規作成でIDが存在しないはずなのに、リクエストにCharacterIDが必要とされるエラーが出ます。

適当なIDを割り振ってもIDが存在しないエラーが出ます。
試しにあらかじめ作成しておいたプレイヤーデータのマスターID、タイトルIDをセットしてみましたが、
同様にIDが存在しないエラーが出ます。

もうどう扱ってよいのかわかりません。
てっきりゲームキャラクターのレベルやステータスをうまいこと扱ってくれるモノだと思ったのですが違うのでしょうか?

利用できない場合、プレイヤーデータ(タイトル)の方を使っていくしかないと思うのですが、それが正しいのでしょうか?
642弟子
垢版 |
2020/02/23(日) 16:54:50.63ID:wXiQfNRp
>>641
先にキャラクターを作成します、命令は「GrantCharacterToUser」です
これ使い方結構癖あるというか、まぁまだ日本のWebには情報ないので
私が作った手引書読んでもらえるとすぐわかるけどね
一応ツイッターにヒントがあるww
https://twitter.com/Unity20775629/status/1228283301250527232
https://twitter.com/Unity20775629/status/1229590584144228352
https://twitter.com/5chan_nel (5ch newer account)
2020/02/23(日) 17:33:26.19ID:LCQz7D0v
>>642
何でカタログ?とか思いながらエコノミーのアイテムを見ていたら、
キャラクター作成用のトークンとかいうチェックボックスを見つけました
なんだかよく分かりませんが、少しいじってみます

これとは別件なのですが、Uft8Jsonを下記のサイトでパッケージをインポートしたのですが、
https://github.com/neuecc/Utf8Json/releases

using Utf8Jsonで名前・タイプが見つからないエラーが生じ、利用できません。
再インポートしても再起動してもエラーは消えません。
https://www.fast-system.jp/unity-utf8json-howto/
このサイトをもとにUnityの設定も済ませてあります。2019なので若干UIが異なりますが。

どうしたらよいのでしょうか?
644弟子
垢版 |
2020/02/23(日) 17:49:41.01ID:wXiQfNRp
>>643

恐らくTypeBuilderのとこだよね
その設定の2箇所できました?
こちらでは2か所の設定変えたらエラー消えました
https://i.gyazo.com/cf2e432917afc1c1b40d72df3beae328.png
2020/02/23(日) 18:04:02.62ID:LCQz7D0v
>>644
UIの違いはScripting Rantime Version項目とUse incremental GC項目がないくらいです

示していただいてあるAPI互換レベルおよびアンセーフコード許可は画像の通り修正してあります

ちなみに「Unity2019.3.2f1」です

Utf8Jsonが見つけられない状態でJsonSerializer.Deserializeが使えない状態にあるようです
646弟子
垢版 |
2020/02/23(日) 18:06:13.15ID:wXiQfNRp
エラーコードって貼れます?
647弟子
垢版 |
2020/02/23(日) 18:30:48.76ID:wXiQfNRp
一応、問題の切り分けが必要かなと思うので、そのUnityのバージョンにて
新規プロジェクト作成、Utf8Json のインポート
んで、セッテイング修正してみたください

それでエラーが出たらエラー内容を張ってください
それでエラーが出ないなら、他の部分の問題かと思うので
どちらにしろエラー画面とかコードとかを
2020/02/23(日) 18:32:23.27ID:LCQz7D0v
>>646
error CS0246: The type or namespace name 'Utf8Json' could not be found (are you missing a using directive or an assembly

これでよろしいでしょうか
649名前は開発中のものです。
垢版 |
2020/02/23(日) 18:46:07.18ID:wXiQfNRp
>>648
そのエラー調べたら次のようなのありまして
----
「Unity 2019.3.0a10」「Unity 2019.2.0f1」「Unity 2018.4.5f1 」でエラーが出たのですが、「Unity 2017.4.30f1」ではエラーは出ませんでした!
----
いちおう、私の環境ですが「2019.3.0f6」なんです
可能性としてはバージョンでしょうか
2020/02/23(日) 18:52:57.05ID:LCQz7D0v
>>647
新規プロジェクトを作成し、Utf8Jsonをインポートし、プレイヤー設定を変えた上で、
新規スクリプトでusing宣言を試しましたが、参照できないようです

Unityのバージョンの問題でしょうか
なんでも最新バージョンが良いかと思ってダウンロードしたのですが、
失敗だったかもしれません
651弟子
垢版 |
2020/02/23(日) 18:59:54.76ID:wXiQfNRp
UnityHubならバージョン複数でできるので、入れてみてはどうでしょう
652弟子
垢版 |
2020/02/23(日) 19:01:53.08ID:wXiQfNRp
ちょっとまって
>新規スクリプトでusing宣言を試しました
この前に、設定変えた段階ではどうですか?

1.インポートの時点 → エラー表示される
2.設定を変える → エラーが消える

という感じなのです
もし2がOKなら、スクリプトのが間違っている可能性があります
2020/02/23(日) 20:27:42.27ID:LCQz7D0v
>>651
>>652
原因というか何かがつかめました

エラーを出していたインポートしたファイルがpluginsフォルダの配下に配置していたため、
そちらでずっと新規スクリプトを作成して試していたのですが、
スクリプトをPluginsフォルダ配下で作成すると
using Utf8Jsonの宣言ができなくなるようです

他のフォルダやAssetフォルダ直下では普通に宣言ができました

pluginsフォルダは特殊な設定のフォルダだということをマニュアルで確認しました
なぜこうなるかは不明ですが、基本的な所を間違えていたようです

お騒がせして申し訳ございませんでした
2020/02/24(月) 08:01:27.18ID:+9ZcXv8k
他人のアセットを使うときはUnityのバージョンによってエラーになることが本当に多い
Unityのバージョン間の互換性のなさは本当にクソ
アセットストアで買っても動かないとかざらにあるから、怖くてアセット買えないよねぇ
2020/02/24(月) 08:05:10.62ID:N/Kc3LQr
なんでUnityのバージョン上げるんだよ
ゲーム機のファームウェアじゃねえんだぞ
使用するライブラリが対応してない本体バージョンは使うな
えっ2年前で更新止まってるアセットがある?
2020/02/24(月) 09:32:03.15ID:zKtX1kFg
アセットを自分でエラー修正するのもまた勉強
2020/02/24(月) 09:53:14.96ID:JAzgYJi6
>>656
回避コード書くならまだしも直接手を加えたもの(を使って公開するの)は規約違反になるものもあるので注意
658名前は開発中のものです。
垢版 |
2020/02/24(月) 13:34:30.94ID:iVaHi9JI
>>640です。



https://xr-hub.com/archives/13135



Assets\Scripts\Goalmanager.cs(24,29): error CS0117: 'Input' does not contain a definition for 'GetMouseButtton'



これはどうすれば all compiler errors have to be fixed before you can enter playmodel
が出なくなるのでしょうか・・?

検索してもわかりませんでした・・
2020/02/24(月) 14:18:33.25ID:F9tEV+d+
エラーメッセージ丸ごとでググるとそのまま答えあったりするよ
新しいものではGetComponent使えと書いてあるけど
660弟子
垢版 |
2020/02/24(月) 14:29:58.46ID:4uIoNBTz
>>658
https://i.gyazo.com/620968d87bfcbf83cfbf1f4bd1598847.png
昨日の分にクリックだけ追加したコードです。
これで動くはずなので、フラグとか追加していけばいいかと思います。
これでエラーになる場合、何かが間違っているので、コードの画像とかのせてください
2020/02/24(月) 15:38:22.98ID:F9tEV+d+
InputにはGetMouseButtonの定義がないよと言ってる
InputはUnityEngine.Inputのことでusing UnityEngineしてるから省略できてる
Input にピリオドつけた時点でインテリセンスでGetMouseButton候補が出ると思うのだけれど
2020/02/24(月) 15:59:51.83ID:xo3Mb7RF
×GetMouseButtton
○GetMouseButton

tが多い初歩的なミス
663名前は開発中のものです。
垢版 |
2020/02/24(月) 16:17:20.52ID:Ug47wb2m
>>636
揶揄するわけではないけど、こういう書き込み見ると初心者の人にはビジュアルランゲージの方が教えるのに向いてるってのは真だなーと思う
664名前は開発中のものです。
垢版 |
2020/02/24(月) 17:14:52.96ID:iVaHi9JI
>>663
playmakerを買った方が良いという事?
もしくはue4でブループリント使うとか。
もしくはそもそも、まずc#を学ぶ。
665弟子
垢版 |
2020/02/24(月) 17:39:28.39ID:4uIoNBTz
今回のはコピペすればいいだけなんだが
Windowsなら選択してCntrl+C、その後Cntrl+V
666名前は開発中のものです。
垢版 |
2020/02/24(月) 18:08:44.89ID:A6C4ojr1
Hierarchyで特定のTAGが付けられているゲームオブジェクトを検索して
Hierarchyに表示したいのですがどうすればよいのでしょうか?

※csファイルでHierachyにある特定のタグを検索して情報を取得する方法は
わかります
あくまでもHierachy上で特定のTAGがついているゲームオブジェクトを検索して
表示させたいのです

やり方をご存じの方がいらっしゃいましたら教えてください
よろしくお願いします
667名前は開発中のものです。
垢版 |
2020/02/24(月) 18:19:26.64ID:iVaHi9JI
コピペしたらいけました!
どこに問題があったのかは謎
打ち間違えてはいないはず・・
2020/02/24(月) 18:39:11.38ID:B7d3DSpn
質問失礼します。
unity2dでtransform.translateでオブジェクトを移動させているのですが、左右に移動させたときにz座標が変動してしまいます。
何か考えられる理由はありませんか…?
669名前は開発中のものです。
垢版 |
2020/02/24(月) 19:00:32.30ID:A6C4ojr1
>>668

public function Translate(translation: Vector3, relativeTo: Space = Space.Self): void;
public function Translate(x: float, y: float, z: float, relativeTo: Space = Space.Self): void;

Translateはマニュアルでこうなっている
ゆえにオーバーロードで2種類の動きをするということになっている
デフォルト引数になってるのは無視していいので ポイントになるのは

1・Vector3を引数とした場合
2・x y z それぞれのfloatを引数とした場合
の2パターンがある

左右に移動させたい場合は x軸だけを変えればいいので
Y軸かZ軸に余計な値が入っていればうまくいかない

※参考例

Vector3 tamesi = new Vector3(10.0f,0.0f,5.0f);
とした場合 x軸だけじゃなくて、z軸にも値が入っているから動いちゃう
Vector3 tamesi2 = new Vector3(10.0f,0.0f,0.0f);
というやつを引数にすればいい

使用するときに
transform.Translate(tamesi)とすればx軸とz軸に動くし
transform.Translate(tamesi2)とすればx軸にしか動かない

x,y,z 3つの値を使う場合も同様にYとZの値に注意する

つまり、yとzに余計な値が入っていれば
上に動いたり、奥に動いたりするわけなんですけど
この回答でいけますか?
670名前は開発中のものです。
垢版 |
2020/02/24(月) 20:16:41.80ID:B7d3DSpn
>>669
668です
transform.Translate(0.0f, 0.1f, 0.0f);
これと同じ書き方でxとyの値のみ変更したものを4つ作り、指定のキー入力でそれぞれ呼び出し上下左右の4方向に移動するようにしています。
zは全て0.0fにしているのですが、xが変動すると同時にzも変動してしまいます。
671名前は開発中のものです。
垢版 |
2020/02/24(月) 20:25:46.99ID:4uIoNBTz
>>670
とりあえずコードはろう

みんながみんな、youの環境じゃないんだよ
672名前は開発中のものです。
垢版 |
2020/02/24(月) 20:37:54.32ID:A6C4ojr1
>>670
これで規定通りの動きができた

public class Cube_Move : MonoBehaviour
{
void Update()
{
//左に移動
if (Input.GetKey(KeyCode.LeftArrow))
{
this.transform.Translate(-0.1f, 0.0f, 0.0f);
}

//右に移動
if (Input.GetKey(KeyCode.RightArrow))
{
this.transform.Translate(0.1f, 0.0f, 0.0f);
}

//上に移動
if (Input.GetKey(KeyCode.UpArrow))
{
this.transform.Translate(0.0f, 0.1f, 0.0f);
}

//下に移動
if (Input.GetKey(KeyCode.DownArrow))
{
this.transform.Translate(0.0f, -0.1f, 0.0f);
}
}
}
673名前は開発中のものです。
垢版 |
2020/02/24(月) 20:38:31.64ID:A6C4ojr1
※上のソースコードだけど
ヒエラルキーにCubeっていう3Dの四角い箱を作って
それに上記のcsファイルをアタッチしている
これでx軸、y軸に キーボードの上下左右に動いてくれる

z軸に動いてないかどうかは実行した後に
z軸の値が変わってなければOKっていう認識

一応上記のcsファイルをアタッチしたら、想定の動きができたので
上記コードで試してもらえますか?
ちゃんと左右のキーボードで左右に移動
上下のキーボードで上下に移動してくれました

※こちらの環境では問題ありません
674名前は開発中のものです。
垢版 |
2020/02/24(月) 20:47:59.55ID:4uIoNBTz
>想定の動きができた
なら問題なくね?
675名前は開発中のものです。
垢版 |
2020/02/24(月) 20:54:56.65ID:A6C4ojr1
>>673
俺は質問者じゃないからね
質問してる人は>>670
2020/02/24(月) 21:25:25.99ID:B7d3DSpn
>>672
>>673
668です
スクリプト自体はそちらの物とほとんど同じでした。
今別のオブジェクトにスクリプトだけをつけて動かしたところzの値が変動しなかったのでrigidbodyかboxcolliderが原因かも知れません
もう少し自分で原因を調べてから質問し直したいと思います。
677名前は開発中のものです。
垢版 |
2020/02/24(月) 21:35:08.27ID:A6C4ojr1
>>676
Rigidbodyを付けている場合、デフォルト設定で重力が働くようになってるからね
勝手に落下したりする

Rigidbodyで物理演算を無効にする場合は
DynamicではなくKinematicにすればいい
Kinematicにすれば重力の影響を受けないし、ほかのオブジェクトが
ぶつかってきた場合も影響されて動くことはない

rigidbodyにあるvelocityは移動速度(速度ベクトル)だから物理演算とは
関係なく動かすことができる
Translateも同様に物理演算とは関係なく動かすことができる

物理演算で動かす or (速度ベクトルや座標の位置を変更することで動かす)
物体を動かす場合 上記2点に気をつかえばいい
2020/02/24(月) 21:44:51.32ID:B7d3DSpn
>>677
668です
インスペクタのrotation.yに誤って値が代入されていました
値を0に変えるとzの値が変動しなくなったのでこれが原因だったようです。
いろいろアドバイスいただきありがとうございました。
679名前は開発中のものです。
垢版 |
2020/02/25(火) 00:57:38.64ID:D2FtDyCq
Blenderで作成したモデルのUnity上での表示について質問です。
・Unity 2019.3.2f1 (64-bit)
・blender:ver27.9b(アドオン無)
・ファイル形式:FBX

上記のブレンダ―で作成したモデルの一部オブジェクトがUnityで面が裏返って表示されます。
ブレンダ―上では特段異常がなく法線も表を向いており、レンダリングなどしても正常に映っております。
また、法線を裏返すと、Unity上では面が表に来るのですが、光の当たり方が上下逆になってしまいます。
法線の方向の整合性を取り直す方法はございますでしょうか。
もしくは法線を裏向きのまま光の当たり方を逆にすることは可能でしょうか。

よろしくお願いいたします。
680弟子
垢版 |
2020/02/25(火) 08:53:12.83ID:disfb7H3
とりま
blenderからUnityへ3Dモデルをエクスポートする
https://dkrevel.com/unity-and-blender/blender-to-unity-fbx-model
681名前は開発中のものです。
垢版 |
2020/02/25(火) 10:39:41.76ID:WedOhwcm
>>664
いや一般論としてビジュアルのやつならシンタックスエラーは起こらないから学習の上での障害ひとつないなというだけ。

プレイメーカーはいいらしいけど情報少なくてこれがやりたい->ぐぐる->プレイメーカーに翻訳 とならざるを得なそうでそれも大変そうだけどどうなんだろ

あと公式のツールがボチボチプレビューくる?
2020/02/25(火) 15:03:22.29ID:1jlyuXHI
>>667
>>658よくみたら間違いがわかるはず
2020/02/25(火) 21:37:14.12ID:7wTy65re
検索ワード「テクスチャを重ねて描画する」(URLが記述できないようなのでこれで失礼します)
こちらのサイトにテクスチャを重ねて描画する方法が載っておりました

これができれば一つのモデルに「肌」→「目」→「口」などを順に描画させ、
テクスチャを付け替えることでキャラエディットみたいなことができるのではと思い、
Unityを確認してみました

しかし、BlenderからインポートしたFBXファイルにはMesh Rendererではなく
Skinned Mesh Rendererがありました
こちらもマテリアルを複数指定することができるようだったので試してみたのですが
前述のようにマテリアルを割り当てても、何故か目のパーツだけがどこに設定しても優先的に描画され、
続いて口、肌においては1つ置いた時にしか描画されませんでした

優先順位も気になるところではありますが、ともかくテクスチャを重ねて描画する方法を教えてください
684弟子
垢版 |
2020/02/25(火) 22:00:46.03ID:disfb7H3
【Unity】マテリアルに複数のテクスチャを重ねて表示する ねくすとねくすと
http://next-next.com/2019/04/19/%E3%80%90unity%E3%80%91%E3%83%9E%E3%83%86%E3%83%AA%E3%82%A2%E3%83%AB%E3%81%AB%E8%A4%87%E6%95%B0%E3%81%AE%E3%83%86%E3%82%AF%E3%82%B9%E3%83%81%E3%83%A3%E3%82%92%E9%87%8D%E3%81%AD%E3%81%A6%E8%A1%A8/

Unity Tips(13:テクスチャを重ねて描画する)
https://t-tutiya.はてなblog.com/entry/20171104/1509778621
はてな=ローマ字
とか?
2020/02/26(水) 09:34:45.20ID:XSiK3Jmd
>>684
優先順位に関しては不明でしたが、重ねて描画はできました
手あたり次第なんでも透過にしていたのが原因だったようです

ありがとうございました
2020/02/26(水) 09:37:41.45ID:XSiK3Jmd
一つ忘れていました
テクスチャをシェーダーでまとめて表示する方法もあると伺っています
マテリアルの方を複数重ねて表示させていますが、
処理の負荷的にはマルチプレイオンラインゲームに耐えられるものでしょうか?
687名前は開発中のものです。
垢版 |
2020/02/26(水) 17:30:16.94ID:GigIyj8j
一つの機能ごとにスクリプトを作っているのですが
それらのスクリプトをまとめて使う本スクリプトは
すべてをGetComponentする
すべてを本スクリプトにコピペする
以外に良い方法はありますか?
688弟子
垢版 |
2020/02/26(水) 18:40:25.13ID:ZpPffGJ6
インターフェースで使うの選んで行けばいいんじゃない
689名前は開発中のものです。
垢版 |
2020/02/26(水) 19:20:56.86ID:GigIyj8j
よくわからないです
インターフェースをどのように使うつもりですか?
690弟子
垢版 |
2020/02/26(水) 20:15:59.17ID:ZpPffGJ6
こんな感じ
https://i.gyazo.com/b8a77351326875f8262d35ccf47ed353.png
メンドイから同じファイルで定義しているけどそれぞれの処理は別ファイルでね
691名前は開発中のものです。
垢版 |
2020/02/26(水) 20:33:18.23ID:808/gSFo
スレチかもしれないですが、

例えば2dで腕が無くなっても動き続ける(アニメーションし続ける)キャラクターを作りたい場合ってunityだとどういう実装にすれば良いでしょうか?
パーツ毎に分けてスクリプトで制御するのか、腕が落ちた時のアニメーションも別個で用意するのが良いのか…
692名前は開発中のものです。
垢版 |
2020/02/26(水) 20:38:57.37ID:GigIyj8j
>>690
確かにできました。ありがとうございます。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況