【3Dゲームエンジン】Unity質問スレッド34
■ このスレッドは過去ログ倉庫に格納されています
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。
プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3、PlayStation 4、PS Vita他
次スレは>>950以降にできるだけ早く(できれば回答者が回答した後にでも余裕を持って)建てて下さい。
■Unity 2ch Wiki(まとめ、過去ログ、リンク集)
http://www24.atwiki.jp/unity2ch/
●リンク
・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←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。
前スレ
【3Dゲームエンジン】Unity質問スレッド33
https://mevius.5ch.net/test/read.cgi/gamedev/1513643755/ 家具とか宝物とか松明とか爆弾とかはBlender,Mayaで作りゃいい チュートリアルのGUI関連が、GUIまるごとUIシステム?にまるごと引っ越してるから、Using UnityEngineUIが必要だったり、いっぺん削除して作り直したほうがいいわあれ。 2017.2で作ったUIを2017.3に持ってったらレイアウトがめちゃくちゃになった
アレ最新版で直った? using1行追加するのが面倒ならテンプレートファイルを編集すればいいだけじゃん プロパティの名前もGUITextからTextになってるし GUIっていえばさあ
なんでScene上にGUI作成画面を作ったのか意味がわからねえ
別画面にしてくれよ >>679
>Probuilderでキャラモデリング出来るわけないな。
つまりモデリングはできても、ボーンがつけられないということかな?
ボーンがはいってないんじゃ、キャラデザインは無理・・w
背景しかつくれないんじゃ、使う用途がまるでない。興味ないなw うんぅん、そうだよ
興味ないのに書き込みするなんて
ほんっとにかまってちゃんなんだからっ レベルデザインってゲームの世界観を8割ぐらい表現してると思うけど。
まあ、ProBuilderの作者でもUnity Incの回し者でもないから、キムチが使わなくても何も困らないけど。 >>688
じゃあ別画面にしようやってことじゃね? ProBuilderってレベルデザイン・プロトタイプ目的の物ですよね?
基本後でモデル差し替え前提で使うもの、でいいんでしょうか。 要求クオリティによりけりでしょ
簡単なテクスチャだってUnity内部で描けるようになるのだし 返信ありがとうございます。
ProBuilder触ってみたのですが
自分の規模ではこれでだいたい間に合いそう・・
これが無料ってほんと有り難いですね >>693
基本そうよ
あくまでホワイトボックス〜グレイボックス初期まで使って
レンダリング設定やライティング、ポストエフェクトを糞ラフに決めるためのもの
スクラップ&ビルドしやすけりゃ
試行錯誤できるからな 基本は地形ビルダーだから
小物(propsって言うけど)置いたりしたいなら、YoutubeにBlenderでゲームアセット作るようなチュートリアルが無数に存在してる。
キャラモデリングと違い直線直角的なのでビデオ見て真似するだけで出来るでしょう。
込み入ったウィンドウとかドアもBlenderで作ってProBuilderで作ってる壁にはめ込めばいいだろう。
あと、テクスチャの工夫だな。
ノーマルマップとハイトマップを入れる。
最後にライトマップを工夫して見やすくかつステージが美しくなるように。 Never Leave From Unity!っての大事だな。 返信ありがとうございます
>>696
基本はそうなんですね
試行錯誤のしやすさの利点大きそうです
>>697
わりと操作はシンプルで使いやすかったです
そのまま使うパターンでもテクスチャの上手さ次第で
だいぶ見栄え変わりそうですね・・ SketchUpに似てるけど、あれも家具や小物は外部DCCだより。
あれもPush/Pull主体モデリング。
レベルデザインに使う会社もあるって読んだけど、Probuilder使うとなるほどなと思った Photonについての質問なんですが
PhotonNetwork.Instantiateで生成したオブジェクトにCollider2D,Rigidbody2Dを与えたのですが
Rigidbodyを与えたA側は動こうとするももう片方で動かず、A側がバグのような動き方をしてしまいます
このような症状についどなたか心当たりのある方おられませんでしょうか
以前両側にRigidbodyを与えていた際は動いていたのでそのあたりだと思うのですが
片側を動かしたら両方が動くのがPhotonというものだと思っているのですが・・・ >>702
アセットをアップグレードしてみましたが効果ありませんでした CameraFollowのやつ
SurvivalShooterのチュートの3
あれ挙動おかしい
Smoothing変えたらカメラの挙動変わりすぎ
視野角まで変わって、Clippingでカメラの前のオブジェクトが消えたりする。
Smoothing * Time.deltatimeがおかしくしてる原因と思うけど、改善するならどうしたらいいんだろ 今日ちら見したDOTween使ってなんとか出来ないかしてみよう あ、わかった Lerpのtがチュートに従うと0.099999になる。
高さも10分の1になってyが1.5なってる。
どっかで桁間違えたか?
見直してくる Survival SHootingのチュートのミスわかった。
transform.position = Vector3.Lerp (transform.position, targetCamPos, smoothing * Time.deltaTime);
これを
float T = Smoothing * (1/ Time.deltaTime);
transform.position = Vector3.Lerp(Target.position, targetCamPos, T);
したら想定動作になった
なんでか教えて。 Photonを新しいプロジェクトにインポートしてPhoton以外のデータを写してみましたがだめでした PhotonですがそもそもRigidBodyを与える以前から症状が起きていることが分かりました
同じような症状は見かけませんがどなたかご存じないでしょうか >>704
orthoなのになんで視野角出てくんの? >>707
おかしいのはそこじゃなくて座標の指定
LerpはAからBの補間を返すんだからAにはカメラの座標を入れろ
Target.positionってなんだよ、ふざけてんのか >>701
たぶん必要なコンポーネントや設定が足りていないんだろうが、
何が足りていないのかはプロジェクト見ないことには分からないから、
ググって出てくるやり方を新しいプロジェクトで手当たり次第に試すのが良いよ >>712
はじめ見た感じクリッピング距離が原因のように思われる画面だったから。
実際は、Yの高さが、15から1.5になっててオブジェクトが切れてただけだが。
>>713
TargetはPlayerのTransformへの参照まで納められた変数だから。TargetCamPosはそのPlayerのポジションにPlayerとカメラのoffsetを足した位置。
チュートのFollowCamera.csコピペで丸写ししても同じバグ出る。
5はSmoothingで移動量じゃないんでかけること自体がおかしい。
だからDeltaTimeを逆数(1/Deltatime)にしたらうまくいった。 >>715
だから『今現在のカメラ位置』から次のカメラ位置に動かすんだろ
なんでプレイヤーの位置から次のカメラ位置に動かそうとしてるんだよ?
あとお前の計算式だが、
smoothing * Time.deltaTimeは「5 * 0.01666... = 0.08333...」
smoothing * (1 / Time.deltaTime)は「5 * 60 = 300」
Lerpのtには補間の割合を0.0-1.0の範囲で指定するんだからどっちが正しいか分かるな?
お前が想定通りと言ってるのはLerpに1.0を超える補間値を指定してBに直接ワープしてるだけなんだよ leapに、デルタタイムだけ入れると、ずっと、1にならないからゴールしないんじゃ? スクリプトできない人はアセットを買うほうがいいですよ >>716
チュートリアル通りだと何もしなくてもカメラの高さが1.5とかようするにゲーム開始前のカメラのポジション*0.1になるんだからしゃあないじゃない チュートリアルはある程度感覚をつかめたら、あとは見なくていいよ >>718
アセットを買ったからこうなってるんですけど >>714
原因はマスタークライアントが作ったのをクライアントでうごそうとしてたからみたいです
物理だけマスターでやって途中まではクライアントってやってたから2人で動かしちゃってたんですね
これ頻繁に変えるのはまずそうなんですよねぇ private void FixedUpdate()
{
Vector3 targetCamPos = Target.position + offset;
Debug.Log(Time.deltaTime);
//float T = Smoothing * (1/ Time.deltaTime);
transform.position = Vector3.Lerp(Target.position, targetCamPos, Smoothing * Time.deltaTime); //←ここの結果がおかしい
Debug.Log(Smoothing * Time.deltaTime);
}
}
結果は
https://i.imgur.com/c8OLeJS.png
これをdeltaTime逆数にするだけで上手く行くんだしまあいんじゃね このとき、Smoothingが5で設定してて、5*0.02すると、0.1なるんだよ。 Smoothingを50にしてもうまくいくけど、チュートじゃ5f書いてるし 逆数にして上手くいくのはたまたま数値が合っただけなんじゃね?
FixedUpdateのフレームレートを変更しても期待通りの動作する targetCameraPosに近付くにつれてカメラの移動量を減らすためにやってるからSmoothing * Time.deltaTimeであってるよ。
まあ、これかなり「それっぽく動くように」書いてあるコードだし、fixedDeltaTimeじゃないから良い例ではないしSmoothingをちょっと変えただけで極端に変化しちゃうけど。
床が見切れるのはoffsetの値の問題だね。 カメラの移動をふわーっとスムージングさせたいわけじゃなくて、ターゲットに張り付かせたいならtransform.position = targetCamPosでいい。
というかTarget.positionとtargetCamPosのLeapだと、見る対象とカメラ目的地との中間にカメラが存在し続けることになるから、想定よりずっとカメラが寄ってると思う。
どういう処理になってるのかよくわかってないみたいだし、空のGameObjectにtargetCamPosを常に設定し続けて、どういう位置関係になってるか理解したほうがいいよ。 smoothing * Time.deltaTimeも何回もFixedUpdateで回ってこようと一定のはずだし
変わるわけない。
デルタタイムは加算じゃなく、毎回一定 Smoothingも変わらない。
逆にチュートリアルのやつみてなんであれでうまく動くのか不思議。
Time.deltatimeを累算するなら、
FixedUpdateよりまえに、
private float duration = 0;
//で宣言して、
private void FixedUpdate()
{
Vector3 targetCamPos = Target.position + offset;
duration += Time.deltaTime;
transform.position = Vector3.Lerp(Target.position, targetCamPos, Smoothing * duration);
これだとSmoothingに小さい数字入れたらなめらかにカメラ動くが。 >>723
頭の悪い子だなぁ
transform.position = Vector3.Lerp(A, B, T);
このAで渡すものが間違ってるんだよ
今現在のリアルタイムのカメラ位置を入れろって言ってるだろ?
そのTarget.positionのどこが最新のカメラ位置なんだよ
素直にチュートリアル通りにtransform.positionを入れろよ チュートリアルの書いてる通りにやると中間にカメラが存在し続ける よく見ると、Transform.positionなってるやん >>731
そりゃ代入する値を計算するのに使用する数値が変わらなかったら変わるわけないよ。
transform.position = Vector3.Leap(transform.position, targetCamPos, Smoothing * Time.fixedDeltaTime);
ってのは、毎フレーム、自分(カメラ)の位置と目標地点の中間(Smoothing * Time.fixedDeltaTimeの割合位置。Smoothingが5なら普段は5 * 0.02で約0.1になるから、10%の位置)に自分を移動するって処理なわけ。
自分を移動させて、次のフレームでまた自分の位置と目標地点の中間に移動して…って徐々に近付いていくから移動しながらカメラが追尾してるように見えるの。
例えば一本のひもを、9/10に切って、また9/10に切って、それもまた9/10に…ってやっていくと、切る位置はどんどん端っこに近付いていくでしょ? >>738
無視してください。こういうスレの澱です。 右クリックの動作をTilePalletのPickerにしたいんだけど無理? >>741
それはエディタ上で?それともゲームの動作として? アセット兄貴に聞くんですが
Spriteを任意の形状に切断できるアセットってありますか?
メッシュカッターのスプライト版みたいな
スプライトって矩形ベースだからなかなか方法が見つからなくて
コライダーは弄れてもスプライトの一部をランタイムで透過する方法がいまいち見つからない >>744
切りたいのか、透かせたいのか
どっち? >>743
エディタ上
無理ならショートカットキーに慣れるしかない 初歩的な質問で恐縮ですが、fbxキャラのオブジェクトタイプで、
モデル、マテリアル、テクスチュアというのはわかりますが、
ノードアトリビュート、ビデオ、ジオメトリー、デフォーマーというのは何ですか?
ちなみにあるキャラのノードアトリビュートは1001から1054まであって、
それぞれに12桁の数字がふってあります。これは何ですか? 違っていました。ノードアトリビュートは1001から1053までで、
1054から1107まではモデルになっていました。
そして最後の1108がジオメトリーで、
その後バーティックスが延々と続くようです。
つまりマテリアル、テクスチュア、ビデオ、デフォーマーについての記述は見られなく、
ノードアトリビュート、ジオメトリー、モデルのみが記述されていますが、
これはマテリアル、テクスチュア、ビデオ、デフォーマーについての記述は不要ということですか?
またバーティックスの数字の羅列の前にaがついてるのは何ですか?aがあるなら次はbもあるはずと思って探したのですが、bはなくaだけのようです。
これはどういうことなのでしょうか? バーティックスの記述もグループ化されているようで、
例えば第1グループのバーティックスと第2グループのバーティックスの数字の羅列の間には、
中休み的な記述があって、
それはレイヤーエレメントマテリアル、レイヤーエレメントテクスチュア、レイヤー、
その子ノードのレイヤーエレメント、モデル:ハイポリメッシュ、ジオメトリー:アイブローなどの簡単な記述が見られます。
このうちエイヤーにはバージョン番号、その子ノードのレイヤーエレメントにはタイプインデックス0と書いてあるだけで、
別になくてもいいような気がしますが、これも必要なことなのですか? >>745
どっちでもいいです
切って片方を消してもいい一部を透かしてもいいし
最終的には1部を消したいです Mac OS X用にビルドすると、実行した時に右上の最小化、閉じるボタンの間にある
最大化ボタンが押せてしまいウインドウサイズが拡大してしまいます
(Resizable Windowsのチェックははずしています)
Windows用にビルドした場合は最初から最大化ボタンは押せないようになってるのですが
何かMac用に設定する方法などあるのでしょうか? すいません、Macに不慣れで間違えました
拡大ボタンでフルスクリーンになるのはいいのですが、ウインドウ画面に戻すと
元のサイズに戻らず変なサイズになってしまいます
ウインドウ画面に戻った時に元のサイズにする方法はあるのでしょうか? EventSystemを使う際、例えばスクリプトに以下のような記述をしますが
public class Hoge : MonoBehaviour, IPointerEnterHandler {
public void OnPointerEnter(PointerEventData eventData) {Debug.Log("Enter");}
}
この頭の部分はMonoBehaviourとIPointerEnterHandlerのふたつのクラスを継承しているという意味ですか?
UnityC#は複数の基底クラスを持つことができるのでしょうか >>754
C#は複数クラスの継承不可
IPointerEnterHandlerはクラスではなくインターフェイス Unityはじめてはや2週間
やっとUnityちゃんお迎えした
https://i.imgur.com/WQcm0wN.png
ステートマシーンとかはこれから設定予定 javascript使いたい人は旧バージョン使い続けてるの? >>755
なるほど、ありがとうございます
混乱していたので助かりました Unityをインストールした時におまけでついてきたVisualStudioはどうもC#しか使えないぽかったので、C++も使えるようにアップデートしました。
これでやれることの幅が広がりました。
頑張ってソフトつくりますよ〜!!! humanoidの関節の角度制限って緩くしたりできるのかな?
ケレン味欲しくて大げさなモーション入れたら角度が足りないわ 相変わらず初心者以前の馬鹿ばっかり
ちょっと検索すればすぐ判ることを聞くな
自分で調べることが出来ないアホはUnityをやるだけ無駄 >>760
自決
中国語だけど動画があって良かった unityは動的に素材をロードして使用できますか?
例えばキャラクターモデルをゲーム起動後にネットからDLしてゲーム中で使用するなど。 >>764
出来るはずなんだけど俺は上手く行ってないな
これこそ本当にアセットを買っちゃったほうがいいかもわからん >>764
外部フォルダからのロードは成功しましたがWWWでWebからのロードはためしたことがないですが
URLが正しければいける・・・はずです gglsheetから読み込むとかの動画は結構あるんじゃないかな >>762
今更だけどこれじゃ駄目だったw
制限角度を開放する訳じゃなくてレンジを引き伸ばしちゃうから望んだ部分以外も恐ろしい事になる
モーション一つ一つに適用すればいけるっぽいけど現実的じゃないし
genericだと不都合あるしhumanoidの角度制限に引っかからないようDCCツール側で微調整しつつ作ることにするよ だめなのはキミの頭の出来だろ
何故公式マニュアル見ない?
一発解決だろうに >>770
おかしな日本語で訳してあるだけで、
日本U社が仕事をしたと見せかけるためだけの役に立たない意味不明で
どうやって一発解決するん? 公式マニュアルや公式チュートリアルは選別手段らしいぞ
公式で理解できないレベルの人はやるだけ無駄
そもそもIT関係のマニュアルは英語で読んだほうがわかりやすい
IT英語も読めない奴は及びじゃないっとこと ストア見りゃやってるアプリだらけなんだからできないなんてことは無いのは明白だしそんな高等技術でもない
つうかそんなこともできなきゃUEよりモバイルに強いなんて口が避けても言えんわな 公式のマニュアルってどの言語でも理解しにくよね
ユーザーが公開している機能説明の方が100倍分かりやすい。
結局はプロパティーが羅列されてるだけみないな表現は本当はマニュアルとは言わないんだと思う。
まともに解説すると大量にありすぎるから公式が手間を惜しんでるってのが現状なんだろう。 まさにその通り。>>770、>>772-773の発言が正しい。
ここはUnity質問スレであり「Unity初心者質問スレ」ではないことはスレタイ見ても明白。 >>774
まぁ、お前が出来なくても誰も困らないし代わりは幾らでもいる
落ちこぼれを拾い上げて養成する必要はないから、バッサリ切り捨てられるだけだよ Unityの公式チュートリアルなんてわかりやすい方だと思うけどな
そりゃユーザー作成の記事のほうがわかりやすい部分も多々あるとは思うが
ある程度慣れるとAPIリファレンスの方が便利な部分も多いよ
あのエンジンにはこういう機能あるからUnityにも似たような機能がここらへんにあるんじゃね?とかってユースケースならAPIリファレンスの方が探しやすい 質問スレが初心者の質問を含んではいけないって一般常識じゃないだろ。
まして初心者質問スレ無いのに。
なんで勝手な独自解釈からさもスレ違いですよ感出してるの。
公式マニュアルがユーザーをフィルタしているという解釈も勝手な独自解釈で、
それが分からなきゃやめろというのも勝手な独自解釈に立脚した理屈に過ぎない。
要するに、性格腐ったやつが誰かの意欲を殺したがっている、というだけだな。 わざわざ質問スレに来て質問するなって言ってるわけで。
しかも発している理屈がUnityの専門知識を必要とする内容ではないから、
あらゆる質問スレに行って同様の理屈を展開できる。
多分趣味でUnityに限らずやってるんだろう。 公式は昔から一見さんお断りオーラ全開で、
開発経験者/プログラマウエルカムスタイルだよw
チュートリアルなんて未経験者置き去りモード全開だったし
これでも大分マシになった方w ゲーム制作や人工知能みたいな、高卒様にも魅力的な技術に見える話題になるとね
ネット上でそれらを扱うコミュニティに高卒様が押し寄せちゃうんだな
現実世界のコミュニティでは場違いだと分かるのに、ネット上だとわかんない人が多いんだ ■ このスレッドは過去ログ倉庫に格納されています