【ゲームエンジン】Unity初心者質問スレBuild4
レス数が950を超えています。1000を超えると書き込みができなくなります。
全然別物だからメジャーバージョン番号が変わってるわけで… >>886
これから先もUnityはバージョンUPしていくんだろうけど
古い記事はネットに残り続けるよね。
将来的に初心者が調べ物した時に困る事態にならないんだろうか。というのもsteamVRPluginでも記事にVer表記が無いのが多かったんだよね、初心者がコード見てVer判別できる訳もなく、VRPlugin以外でも同様のことが起こりそう。 >>885
リアルタイムで乗ってないとバージョン変更でつらいね。
まったくの初心者なら、取り敢えず、最新の本(刷新2020.1の前後推奨)をお勧めする。それで基本をつければあとは応用が効くよ。
例えるなら、現在のunityが高速道路の本線で、いきなり本線に乗れるわけもないから、本片手に徐々に本線に乗れるようにするわけ。 助けて下さい。
PlayOneShotでSEを鳴らしているのですが、短いwavデータ(クリックのカチッとか)だと何故か音量がばらつきます。
具体的には2Dのメニュー画面のボタンを押すと鳴るように設定しているのですが最初の1〜2回のクリックの時は非常に小さい音でその後大きい音量で安定します。
小さい大きいを数度繰り返す事もあります。
何をトリガーにして鳴らすかも複数方法試し、最終的にはSEを鳴らすだけのクラスを直接ボタンにつけました。
同じ方法で、ためしに長めのSE(魔法のシュイーンとか)を鳴らすと同様の問題は起きませんでした。
ロード待ちかと思い最初に1分くらい待っても変わりませんでした。
Androidで実機ビルドしても再現されています。
同じような経験をされた方いらっしゃいませんか?
2019.3.2f1のバージョンを使用しています。
よろしくお願いします。 音が重なってるだけじゃないの?
コンソール機でもバグや処理落ちが起きて固まった後に動き出す時
「ドゴン」とかとんでもない爆音が出るけど
同時発音数いっぱいの64とか128まで処理落ちで再生が溜まったSEが
動き出したとき同時再生されると爆音になる >>890
オンクリックの時にPlayOneShotを呼び出しているだけなのですがその可能性もあるのでしょうか?
一度目の再生だけかすかに聞こえる程度で、もう一度ボタンをクリックするとカチッ!とちゃんと鳴るようになります。
アセットストアの音集に入っていたUI click系のサウンドです。
複数種類のクリップを試しましたが、どうやら再生時間が非常に短いもののみで起きます。
オーディオクリップの設定も内容はよく分かりませんが、全部チェックをいれたりロードの仕方を変えてみたりしました。
新規のプロジェクトで再現されるか試してみます。 新規プロジェクトで再現されませんでした。。どうしよう。。
おま環かもしれませんが、思い当たる設定などありましたら些細な事でも教えて頂ければ助かります。。
解決したら報告します。 ビルド後のテストプレイじゃなくてUnity上で開発中のプロジェクト動かしてる時に起きることか?
しょっちゅう起きてるけどマシンパワーとタイミングの問題だと思って気にもしてなかったわ ミキサー使ってSEはSEのチャンネルに突っ込んで
チャンネルごとにコンプレッサーかけとけば音圧が大きく変わる事はないだろうけど
原因が分からないのはスッキリしないね >>892
play関数の前にvolumeに1入れてますか? >>893
どちらの状況でも再現します。
>>896
いれてないです!
原因がほぼ特定できました。
そのボタンのイベントトリガーにはオブジェクトをSetActive(true)するスクリプトもアタッチしているのですが、オンにするオブジェクトにCanvasグループがついていると100%再現します。
その中にスクロールビューもあるのですが、そのオブジェクトをオフにすると再現度がまちまちになります。
このオブジェクトの描画処理のせいで処理落ちしてるのでしょうか?
内容はイメージ数点とスクロールビューにボタンを並べた一般的なステージ選択ウィンドウです。
でも処理落ちだったら最初の一回だけ不具合が起きてその後正常になるというのもよくわかりません。
ちなみに同じオブジェクトを新規プロジェクトの方でもSetActiveしたら同じ症状が再現できました。
Unityのバグだったらお手上げです。。 最初からオブジェクトを表示しておきStartにてSetAcive(false)で消す事により解決しました。
もっとスマートな方法を見つけたいですが音は出たのでとりあえず良しとします。 boolの〜について
if(!〜)
は
if(〜=false)
と全く同じ意味なのか
それとも
「それまでの逆」という意味
どっちなんでしょうか if !(True){Debug.Log("False")} True反転したら動かねえわ
if !(False){Debug.Log("True")}
こっち >>900
頭に!をつけた場合、
評価の結果を逆にする
という効果になります。
if(!aaa)
としたなら、このif文の中が実行されるのは
aaaがfalseだったときになります。 ~が式だった場合は
!(式)という風にかっこでくくると
式の結果を反転する、という意味になります。
if(!(1+1==2))
だと、falseが返ります。 >>891
音のノーマライズのフィルター効果が原因では?
音量を平均化する機能が効いてるとそんな感じになる
初回で調整してるから音量が安定せず小さくなる、2回目以降とかは調整済みなので普通に音が出る状態
音が長い効果音やBGMだと症状が出にくいから気付きにくい
短いSEだともろに影響出る >>899です、やっぱりダメでした。
https://dotup.org/uploda/dotup.org2187055.zip.html
パスワードunity
unityパッケージが中に入ってます。
不具合が再現できる最小構成です。
再生して真ん中のボタンを押すとウィンドウのオープンと共にSEが鳴ります。(小さい音)
そのまま、もう一度同じボタンを押すと普通の音量のSEが流れます。
たまに一度目も成功しますが9割この現象が起きます。
面倒だと思いますが検証していただける方が居ればお助けください。。
特に不具合がなければUnityのバージョンなども教えて頂ければ助かります。
よろしくお願い致します。。 >>906
ダウンロードして試してみたところ、こちらでも再現しました。
原因はわからなくて申し訳ないんですが、とりあえずの方法として
PlayOneShotの部分を
audioSource.clip = seList[index];
audioSource.Play();
に置き換えると音量は下がりませんでした。 >>905
もし宜しければ設定項目や確認できる場所を教えて頂けませんか?
ググっても見つからなかったもので・・・。
>>907
わざわざありがとうございます・・・!
素人なので自分が間違っているのかUnityのバグ(仕様)なのかイマイチわからないんですよね。
回避策まで教えて頂けるなんて感謝しきれません。
ボタンにSEつけてUGUIを表示するなんてゲームの基本中の基本だと思いますが、皆さんこの現象に遭遇しないんですかね? みなさんありがとうございます
なんとなくわかりました Cinema4DというCGソフトの.c4dファイルが
UnityAssetsのCinewareを使う事によってUnityに読み込めるようになったのことで
https://cginterest.com/2020/03/11/cinema-4d%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%8Cunity%E3%81%AB%E3%82%A4%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%88%E5%8F%AF%E8%83%BD%E3%81%AB%EF%BC%81cineware-by-maxon%E3%83%97%E3%83%A9%E3%82%B0/
AssetsStoreからCinewareをダウンロード、インポートまでしました。
Cineware用に保存した.c4dファイルをUnityのProjectウィンドウにドラッグアンドドロップまではできたのですが、
そのモデルをHierarchyウィンドウに入れる事ができません。
UnityのCinewareを使っている方いらしたら、どうすればC4DのファイルがUnityで読み込めるか教えて頂けないでしょうか >>908
ミキサーに突っ込んでレベルを表示した状態でピークを比べてみても物理的に変化がないね
PlayOnAwakeのチェックが入っていると起動時なにもしてないのにピークホールドが
真ん中あたりから出てスーッと下がっていくのはちょっと気になる >>910
Cinema 4Dに入ってたCandle.c4dというファイルで試してみたけどドラッグアンドドロップでシーンに追加できたよ
どのモデルでもできないの? if(score > 100){ A }
if(score > 200){ B }
と書いた場合
score>200のときは
AとB両方が実行されてしまいますよね
特定のscoreを初めて越えたときだけ
発動させるにはどうすればよいのでしょうか
よろしくお願いします。 if(score > 200){
B
}else if(score > 100){
A
} windows向けにビルドしてゲームを実行したら
ゲーム内のキャンバスがウィンドウの大きさに合わせて伸び縮みしないことが分かりました。
ウィンドウを縮めるとキャンバスは見切れて見えなくなりウィンドウを大きくすると相対的に内側に小さく表示されます。
canvasをウィンドウサイズに合わせて伸び縮みできるようにするにはどうすればいいでしょうか?
キャンバスの設定はScreen Space - Camera にして Main Camera を設定しています。 >>908
自分は同じ症状になった時はミキサー内のノーマライズ設定が原因だった
この症状はミキサーの音量を見ていても出ないから特定するのに苦労した思い出があるけど
ノーマライズフィルターが有効になってないか確認したら?
全く別の原因があるかもだけど
ノーマライズから出るこの状態はUnityのバグ的な仕様に思える >>916
unity ui アンカー とか キャンバススケーラー とかでググれ >>911
そのお話を聞くとやはりバグっぽいですね。。
自分でも確認してみます、ありがとうございます!
>>917
ミキサーを使った事が無いのですが起こりうるのでしょうか?
これも確認してみます、助言ありがとうございます! >>913
初めて超えたフラグを用意して、既出の例の中でそれの値を見るようにする。成立したらフラグを変化させるの忘れないように。 >>914
ありがとうございます
>>915
初めての部分はどうすればよいのでしょうか >>918
おかげさまで何とか打開できました。
windowsのアプリケーションにするとウィンドウを縦方向に縮ませたときは
画面が一定の比を保って収縮しますが、
横方向に縮ませたときは収縮せずに見切れていく仕様みたいなので、
Canvas Scaler の Screen Match Mode を Match Width Or Height にして
Match のバーを1(Height)にすることで解決できました。
横方向にウィンドウを縮ませたときは収縮せずに見切れていくのはUnityの仕様なのでしょうか?
とにかくこの方法で解決できました。 >>923
アンカーを適切に設定すればだいぶ見切れにくくなるんじゃないかな
既にやっててなお見切れるってなら、UI見直すか諦めるか別の方法考えるか…ってとこだが >>923
すまんけど解決策ではない
俺もそれ気になってた
webGLの最大化とかすると縦方向でリサイズされるから
PCなど横長だと見えない予定のところまで見えてしまう
スマホなど縦長だと横が途中しか表示されずはみ出る
ぐぐったらスクリプト書いて調節してるのあった
今寝てるので具体的には示せない
俺は初心者なので便乗して教えてもらいたいくらい >>923
見当違いかも知れんが、game viewの比率設定は何にしてる?
好きなサイズを登録してそれにしてみては?
free aspectだと変わってしまうのでは?と思ったので。 >>923
http://www.metalbrage.com/UnityTutorials/uGUI/Scaler.html
によると
Match Width or Heightは縦または横あるいは中間に合わせるみたいだね
Expandにすれば縦横が納まるようにするみたいだね >>914
試してみた
変数名はこちらの都合で変えている
//nextPoint初期値 100
//point スコア 初期値0
//Update()などで下記
if (nextPoint > 0 && point > nextPoint)
{
if (nextPoint == 5000)
{
Debug.Log($"スコアが{nextPoint}を超えた");
nextPoint = 0;
}
--行数多すぎで書き込めないのを回避するため省略--
if (nextPoint == 200)
{
Debug.Log($"スコアが{nextPoint}を超えた");
nextPoint = 500;
}
if (nextPoint == 100)
{
Debug.Log($"スコアが{nextPoint}を超えた");
nextPoint = 200;
}
}
大きい順に書いた
小さい順に書く場合は同時に実行されないようにifの条件を複雑にしないといけなくなるね
どれも同じ処理をする場合は配列にした方がいいのかな
俺は初心者なのでもっといい方法があるのかもしれない game viewの比率は1024*768で作っています。アンカー設定は中央にしているので問題ないと思います。
画面に配置するもの全てをキャンバスの中に入れてから、キャンバスの設定をExpand にすればよかったみたいです。
Expandにすれば、キャンバスに含まれているものは縦横方向に収縮してくれますが、
ヒエラルキーにそのまま配置してあるスプライト画像などは、見切れていきます。
このことを知っていれば全てのオブジェをキャンバスに含めるように作っていたと思います。
ご指摘の通り、横長画面だと横側の見えない予定の所まで見えてしまいます。
でも今回作っているゲームは横側に余計なものを配置しない作りのゲームですので、もうお構いなしでこのまま作ってしまいます。
最悪 全画面表示不可の設定にしてビルドしてしまうと思います。 ゲームビューでスプライトにアニメーションをつけて再生していたのですが、アニメーションを動かすとゲームビューの画面がとても遠くなり動きが分からない状態になってしまいます。何が原因でしょうか? ビルドしてスマホで見ると
Unityで再生するときよりも
全体的に暗くなってしまうのですが
原因は何がかんがえられるのでしょうか PCとスマホでガンマが違えば濃くなったり薄くなったりするんじゃ IT掲示板群 ttp://x0000.net/forum.aspx?id=15
学術の巨大掲示板群 - アルファ・ラボ ttp://x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など
simulationライブラリで純粋な関数式プログラミングをする
ttp://x0000.net/topic.aspx?id=3631-0
UIライブラリ (C#, 2D) を作ったよ
ttp://x0000.net/topic.aspx?id=3688-0
連続と離散を統一した!
ttp://x0000.net/topic.aspx?id=3709-0
4Dエンジン(画像有り)
ttp://x0000.net/topic.aspx?id=3677-0
matrixのライブラリ
ttp://x0000.net/topic.aspx?id=3711-0
ある強力なFor関数
ttp://x0000.net/topic.aspx?id=3630-0
SQLライブラリ
ttp://x0000.net/topic.aspx?id=3675-0
VMを書いた(C#) * x86ではない!
ttp://up.x0000.net/files/TSimulang.zip
malloc / free を実装してみた (C#)
ttp://up.x0000.net/files/TMallocTest.zip >>912
ありがとうございます
.c4d拡張子のファイルをC4D上でcinewareで保存し、
それをUnityのProjectウィンドウにD&Dまではできたのですが、
Sceneの方にはやはり乗せられませんでした(禁止?マークが表示されます)
cineware保存ではなく通常保存の.c4dファイルでも同じでした
試しに同じデータを.objで保存したのですが、
.objですと問題なくSceneにD&Dでき、オブジェクトもちゃんと表示されるのですが・・・
Windows10の、UnityはVersion 2019.4.1f1 Personal
うーん 何かの操作をミスしてると思うのですがわからない Unityは3Dソフトのバイナリが読める訳じゃなくて
バックグラウンドで3Dソフトを動かしてfbxを出力させてるだけだから
マニュアルでfbx出力しても大して変わらないよ 皆さんありがとうございます
明るさはの問題はまだ解決しないのですが、
ほかにビルドしたときの問題で
ボタンでGameObjectのSetActiveのtrueとfalseの切り替えをしてて
Unityの再生だときちんと表示非表示ができるのに
スマホにビルドするとボタンをタップしても反応がありません
ビルド全般がおかしいとかあるんですかね >>939
Auto Generate Lighting がオンになってたシーンがあって
すごく重かったのでオフにして、
手動で Generate Lighting をしたりしてから
変わったような気もするのですが、
だったらエディタでの再生のときから変わるはずなのかなと >>940
あ!ライトの数、多くない?
iPhoneはsettingで数値あるし、上限もあるはず。
それかもよ。 ある日急に無料版なのにスプラッシュスクリーンが出なくなったのですが思い当たる理由ってありますか?
Androidでアプリを起動すると灰色の画面は表示されますが、Unityのロゴは出ないでそのままスタートシーンになります。
ロゴが出てた時より灰色の時間も短いような変わらないような。 >>942
自己解決?です(まだ試してない)
最初に読み込むシーンが重いとなる事があるらしいです。
スプラッシュスクリーンが出なくても困りはしないのでゲーム完成までとりあえず放置します。 boolの宣言の仕方についてなのですが
start()などの外で初めにかくときに
bool flag;
のようなものと
bool flag = false;
のようにfalseを入れるのとがありますが
どういう違いがあるのでしょうか 未アサインで使おうとするとコンパイルエラーになるが? >>946>>947
ありがとうございます
boolって難しいですよね Addressableアセットシステムでシーンのロードをしたいのですがうまくいきません
Addressable Settingにシーンを登録してラベルをつけても
シーンの中で使う画像、プレファブとかスクリプトには
Addressableのチェックはつきませんよね
これら画像なども個別にSettingに登録する必要があるのでしょうか
特にプレファブはチェックが見当たらないのですが
どうしたらいいのでしょうか
よろしくお願いします。 Unityで使える3Dに当て込む用のマテリアルを作成できるのに一番使われているソフトは何になりますか?
Substance Painterが気になっているのですが、こちらは丸ごとテクスチャをUnityでも使えるのでしょうか クソゲーでもいいから作るのが大事すか(´・ω・`)? はい→嘘だ騙されないぞ
いいえ→何もしない
はいでもいいえでも結果は同じ
それって一体何を知りたいの? 日本語の意味? こんにちは。質問失礼します。
Unity と SteamVR,HTC Vive を使って、VR内でハンドルを回すと物体が移動するようなスクリプトを作ろうとしています。
このスクリプトは、物体 Box にアタッチして使おうとしています。以下、スクリプトの概要を書きます。
最初に、Box の初期位置を Start 内でPos = this.transform.localPosition;
によって取得します。次に、 Update 内でハンドルのx軸周りの角度を
Angle = Handle.transform.localEulerAngles.x;
によって取得し、その角度に応じて Box がz軸方向に動くように
this.transform.localPosition = new vector3(Pos.x, Pos.y, Pos.z + Angle);
としています。(変数の宣言などは省略しています)
このスクリプトによって、ハンドルを回していくと Box がz軸方向に動いていき、ハンドルが1周したところで Angle の値が0になり Box が元の位置に戻る、という挙動を予想していたのですが、どうにも違うのです。
実際のハンドルの角度(VR映像で提示されているもの)と Angle が取得している角度が以下のような関係になっているようです。(Debug.Log で確認しました)
ハンドル:0 ~ 90 ~ 180 ~ 270 ~ 360 (0)
Angle :0 ~ 90 ~ 0 ~ -90 ~ 0
なぜこうなっているのか原因が分からず困っています。
どなたか心当たりのある方はいらっしゃいませんか。 >>955
アングルは角度表示は、取得するたびに変わる可能性があります。
それは、インスペクタの表示はあくまで便宜上の3軸角度で、ほんとうはクォータにオンという型で管理されています。
なので、角度の極値の範囲内ならある程度想定通り動きますが、極値を超えるとあらぬ動きをすることが少なくありません。
クォータニオンを勉強するか、騙し騙しですがアングル角を持っておく方法で対応します。 要するにlocalEulerAnglesのYとZも変わってるのさ >>955
ハンドルの値は取得できるで良い?
angleの所を1-cos(ハンドル)でどう?
ハンドル:1-cos(ハンドル)
000:0
090:1
180:2
270:1
360:0 ああああ
誰かAddressableAssetSystem日本語でわかりやすく解説してくれえええ >>958
>ハンドルの値は取得できるで良い?
それができないって話だろw読解力よ Unity Recorder を使いゲームプレイを録画中にパソコンから音が出なくなるのですが、
パソコンから音を出しながら録画をしたいのですが、どうすればいいでしょうか? 前まで直接スクリプト開けば自動補完使えたのですが今はOpen C# Scriptから開かないと使えません
仕様が変わったのでしょうか? スプリクトを勉強したいのですが、unity5とかの本でも現在の環境に対応できますか?
使っているバージョンは2018.4.24です。
また、初心者にお勧めのスプリクト関連の本はどのような物がありますか? 参考になる部分もあるかもしれんがバージョン違いで発生する問題に自分で対処できないと思うならやめたほうが良い
変化が速いから本よりググったほうが良いと思うけど取っ掛かりとしてどうしても本が良いって人も多いからお好きな方で 勉強中なら素直にそのバージョンの本を買った方がいいと思う
中古でかなり安く手に入るとかなら買ってもいいかな
おすすめの本は965がどのぐらいのレベルかわからないんでなんとも
今まで何の本を買ったとかどこで詰まったとか言われれば勧めやすい ガチ初心者なら猫本一冊で十分だろうし
スクリプトの本と言っても、標準の関数全部覚えたところで何になるわけでもないし… 猫本の次って何がいいですかね?
3Dを学びたいんだがUnity本格入門買ったら難しすぎた >>972
本格入門ってどんなやつ?
表示アップ希望 昔そんなことで悩んだなあ
初心者から最先端大人気アプリまで段階的にレベルアップする本なんてないなあ
ゲームでなくエクセルとかの初心者本なんてコンビニにたくさんあるけど
俺みたいな素人にエクセルとかマインクラフトみたいなものを手取り足取り教えてくれる本はないよなあ
上記はたとえばなしだよ
俺みたいな初心者がunityでノットテトリスみたいなゲーム作るにはアセット買うしかないのかなあ >>976
何が言いたいのかわからない例えだけど、初心者でもやる気があれば何でも作れる。
本当にノットテトリスが作りたいなら未経験から2〜3ヶ月もあれば作れる。
やる気が無いか、ノットテトリスレベルのオリジナルゲームが作りたいってだけで具体的なアイデアが無いんだろう。 どちらかと言えば、ゲームの作り方の流れをunityに限らず解説した本の方が参考になるかもね >>976
近道はないよw
習うより慣れろ、Dr.パソコン宮永先生が言ってたw
自力開発の力つけたいなら、家庭教師が一番近道だろうね。疑問にすぐ答えてくれる。ただしいっぺんに覚えられればの話だから。 えー
俺の持ってる本には画像を斜めに切って複数のオブジェクトに分割したり
特定の範囲内に重なる面積の求め方とか載ってないぞ 今はマイクラで遊んでるから
しばらくはunityを遊ばないけど
気になることがある
2Dにて
画像の黒から青と青から白のグラデーションを別の色のグラデーションに動的に変えることで
用意する画像は一つだけで任意の色違いの画像を表示する事ってできるの?どうやるの? >>979
昔は家庭教師より塾の方がわざわざ出向いて貰わなくてもいいからメリット薄いと思ってたけど、Unity家庭教師が
もし居たら3日くらい雇いたい。
分からないこと聞いたらすぐ教えてくれるとか夢の環境だな。
要は本人のやる気次第で家庭教師は有用ってこの歳で気が付いたよ。 YouTubeにプログラミングの動画が少ないけど存在するが見るの苦痛だ
分かりにくいという以前につまんない
おっぱい料理とかおっぱいピアノとかゲーム実況などを見てしまう
どうしてお前らはいろんなこと知っているんだ >>983
プログラム、今は向いてないんだと思うよ。
プログラムの勉強が楽しいと思う精神にならないと苦痛でしかない。それは他のことでも一緒。
変えるか変わるまで待つしかないね。
多くの人は嫌なことでも仕事なら無理にでもやるでしょ。 レス数が950を超えています。1000を超えると書き込みができなくなります。