[過去ログ] 【ゲームエンジン】Unityなんでも質問スレpart11 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
498
(1): 2023/09/08(金)10:32 ID:XzQB4oXg(2/2) AAS
>>497
シェーダーで色変換してレンダーテクスチャとして出力するってことかな?
うーん、できそうな気もするけどごめんそれは分からんね
499
(1): 2023/09/08(金)10:53 ID:CzNlMLJh(1/2) AAS
>>494
Normalmapはlinear space(Gamma1.0)で読んでるだけだから
指定すると読み込むGammaが変わるだけ。
レンダリングはlinear spaceで行われるんで、sRGB画像はcolor spaceが
Gamma2.4だから、linear spaceに展開するには逆ガンマを掛けて
Gamma1.0に変換しないと見た目が狂う

詳しいことや計算式は srgb gannma サイゲームス でググると詳しい事が書いてあった筈
500: 2023/09/08(金)10:54 ID:CzNlMLJh(2/2) AAS
綴り間違えてたgannmaはローマ字なんで、Gammaね
501: 2023/09/08(金)11:34 ID:BSXDA/IL(1) AAS
>>498
そのとおりです
>>499
なるほど
ありがとうございます
資料探して勉強してみます
502
(1): 2023/09/08(金)14:34 ID:XdHQtCgD(1/3) AAS
ゲームオブジェクトの取得ですが、thisとthis.transformとthis.transform.gameobjectに違いはありますか?
プリントしてもどれもオブジェクトは取得出来ているようです

また、transformクラスはゲームオブジェクトの操作関係だと思うんですが、だとしたらtransformクラスはゲームオブジェクトの下位にあるべきと思うのですが、this.transform.gameobjectの例ではなぜゲームオブジェクトが下位にあるんでしょうか?
503: 2023/09/08(金)14:40 ID:sVV+A+b6(1) AAS
transformのほうが上位ぞ
504: 2023/09/08(金)15:19 ID:XdHQtCgD(2/3) AAS
ありがとうございます。
thisでゲームオブジェクトが取れているわけではないのですか?
printした結果はすべて同じなんですよね

まあ、こうやって取るものだと覚えます
505
(1): 低クオリティでごめんねごめんね 2023/09/08(金)15:59 ID:OYwRjle1(1/2) AAS
多分読まないと思うけど
外部リンク[html]:docs.unity3d.com

Transform はComponentから
GameObjectはObjectからの継承

Component.transform
Component.gameObject
GameObject.transform

の関係かなぁ

分かりにくいけどね
んでThisは
外部リンク[html]:docs.unity3d.com

ここ読んでなんとなくわかってもらえるといいけど

// Removes this script instance from the game object
Destroy(this);

これやるとゲームオブジェクトは消去されないでscript instance
のみ消えるというから要注意
506
(1): 2023/09/08(金)16:06 ID:XdHQtCgD(3/3) AAS
>>505
何でそういう事言うんですか(*´ω`*)
理解出来なかったけども、そういうやり方だと覚えます
507: 低クオリティでごめんねごめんね 2023/09/08(金)17:12 ID:OYwRjle1(2/2) AAS
>>506
そういう事? どの部分?
読まないと思うけどってとこかな?
チュートリアルしない人が公式マニュアル読むとは思わなくて、ごめんね

それより、あなた以前の質問でさ

0470名前は開発中のものです。
2023/09/05(火) 16:53:49.91ID:RMKLnaCW
気をつけられる部分があれば次からそうします。

>>468
どの部分でしょうか?
0471名前は開発中のものです。
2023/09/05(火) 17:51:36.40ID:lyIzARh6
>>470
とりあえずコテハン付けると良いよ
そうすれば不快に思う人はNGできるんで

気を付ける部分あればそうしますって言っててコテハン付けてって
言われてるんだから、付けなよ
それくらい出来るでしょ

そうすれば、答えないようにするからさ
じゃないと分からなくて
508
(1): 2023/09/08(金)17:36 ID:9GLaEiS+(1) AAS
>>502
Debuglogでthisを出すとアタッチしたゲームオブジェクト名が出るけどthisはアタッチしたスクリプト自体な
他のコンポーネントをDebuglogで出せば分かるけど
transformはまんまインスペクタにあるコンポーネントだよ

this.transformはtransformコンポーネントを参照しててthis.transform.gameobjectはゲームオブジェクト自体を参照してる
509
(1): 2023/09/08(金)20:57 ID:+NIew3qL(1) AAS
やっぱり何度やってもユニティアセットの決済ができん。
クレカ変えてもブラウザ変えてもダメ。
売る気ないのかな?
510: 2023/09/09(土)06:36 ID:OIsKWx3l(1/4) AAS
お前に売るアセットはねぇ!出禁じゃ!m9⎛´・ω・`⎞ドーン!>>509
511
(1): 2023/09/09(土)06:45 ID:kCAfKsgC(1/7) AAS
クリック位置のオブジェクトをマウスでドラッグして移動したいのですが、以下のスクリプトだとドラッグ途中にオブジェクトが止まってしまいます。コメントアウトしている部分のtriangleは問題なくドラッグ出来るので、レイによる取得に問題があるようです。レイというのは案外不安定で、毎回同じ結果を返してくれるとは言えないのでしょうか?
public class getClickPositionObject : MonoBehaviour
{
[SerializeField] GameObject triangle;
GameObject clickedObject;
void Update()
{
if(Input.GetMouseButton(0))
{
//triangle.transform.position = camera.main.screentoworldpoint(input.mouseposition)
// + new vector3(0, 0, 10);
getObject().transform.position = Camera.main.ScreenToWorldPoint(Input.mousePosition)
+ new Vector3(0, 0, 10);
}
}
GameObject getObject()
{
//クリックされたゲームオブジェクト
clickedObject = null;
//レイキャストの始点と終点を決定 ,vector2
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
//ここでレイを飛ばす
RaycastHit2D hit = Physics2D.Raycast(ray.origin, ray.direction);
if (hit)
{
clickedObject = hit.transform.gameObject;
}
return clickedObject;
}

}
512: 2023/09/09(土)06:49 ID:kCAfKsgC(2/7) AAS
>>508
スクリプト自体ですね
カッコの中を見るんですね
object(unityengine.gameobject)

みたいな形式になってるから、少し混乱(*´ω`*)
513
(2): 2023/09/09(土)08:28 ID:3k5BPIDG(1/6) AAS
>>511
恐らくこのコードだとオブジェクトがマウス追随するのは
オブジェクトのうえにマウスがある時だけなんじゃないかな?
マウスの動きは結構早いからこれでは外れてしまう
俺ならノーマル状態、追随状態と複数の状態を作り
通常はノーマル状態でマウスクリック時に
オブジェクトがあった時追随状態に移行して
追随状態の時はオブジェクトの上にマウスがあるかどうかは
関係なく追随という仕様にする
それでマウスクリック解除でノーマル状態に移行
514: 2023/09/09(土)10:05 ID:kCAfKsgC(3/7) AAS
>>513
確かにマウス速度を早めると外れますね
フレームの実行速度をマウスの速度が上回ると駄目ってことですね
なるほど ありがとう(*´ω`*)
515: 2023/09/09(土)10:16 ID:OIsKWx3l(2/4) AAS
やっぱ低クオリティガイジ以外の回答者はクオリティ高いお!m9(*´ω`*)ドーン!
516
(1): 2023/09/09(土)11:00 ID:kCAfKsgC(4/7) AAS
>>513
状態はステートで変化させる感じでしょうか。
一回取得したら、ボタンを離すまでそのオブジェクトを追従するという感じですよね
517: 2023/09/09(土)11:37 ID:3k5BPIDG(2/6) AAS
>>516
状態なんてなんでもいい
Switch文だろうがboolだろうがやりやすいやり方でやればいい
要するに「追随状態」を維持すればいいだけ
「追随状態」を維持すればマウスがターゲットオブジェクトから
離れてもターゲットオブジェクトが移動してくれる
追随状態の切り替え方も「マウス押しっぱなし
の時に追随」とか「マウス1回クリックするごとに
切り替え」とか好きに考えればいい
上のコードの「マウスがオブジェクトの
上の時だけ追随を認識」というのが
具合がよろしくない
518: 2023/09/09(土)12:19 ID:kCAfKsgC(5/7) AAS
ありがとう 簡単な分岐なのでboolでやってみます
519
(1): 2023/09/09(土)12:53 ID:kCAfKsgC(6/7) AAS
かなり初歩的ですみませぬ
update内でboolを切り替える場合、ずーっとfalseに代入され続けてしまうのですが、クリック時にのみ発動してほしいイベントに使うわけですから、使わないときも代入され続けたら無駄ですよね。
こういうときはどんな書き方をするもんでしょうか、、、。

bool objectCapture = false;
void Update()
{
if (Input.GetMouseButton(0))
{
objectCapture = true;
print("true");
}
else {
objectCapture= false;
print("false");
}
520: 2023/09/09(土)13:08 ID:fHIrkeW+(1) AAS
透明な板敷けば良いのでは
ドラッグ開始  clickedObjectにレイ飛ばしたオブジェクトを入れる。clickedObjectのコリジョンを消す
ドラッグ中 clickedObjectが空でないならclickedObjectをレイ飛ばした位置に移動。
ドラッグ終了 clickedObjectにコリジョンを復帰してclickedObjectを空
521
(1): 2023/09/09(土)13:18 ID:3k5BPIDG(3/6) AAS
>>519
俺は平気で同じ代入してる
エキスパートの回答は知らない
522: 2023/09/09(土)13:26 ID:3k5BPIDG(4/6) AAS
同じ代入をするのが嫌なら「このステートでは
この処理、別のステートではあの処理」
みたいに明確に分けるしかないんじゃないの
今後エキスパートになろうと思ったら
必要なプロセスかもしれない
523
(1): 2023/09/09(土)13:46 ID:n240SOPq(1) AAS
普通にmousebuttondown と up じゃ駄目なん?
524
(1): 2023/09/09(土)13:53 ID:3k5BPIDG(5/6) AAS
>>523
それだと「クリックごとに切り替える」という
仕様を採用するということになるが
若干不便かな
今がノーマル状態なのか追随状態なのか
判別が紛らわしいから
525: 2023/09/09(土)13:53 ID:3k5BPIDG(6/6) AAS
>>524
これ勘違い
無し
526: 2023/09/09(土)17:01 ID:kCAfKsgC(7/7) AAS
>>521
ありがとう
別に気にするほどの負荷にはならなそうですよね
自分はゲームの完成よりどうでもいい部分にこだわってしまうのが、駄目みたいです(*´ω`*)
527: 2023/09/09(土)17:05 ID:OIsKWx3l(3/4) AAS
そして低クオリティガイジが死んで嬉しいです!m9(*´ω`*)ドーン!
1-
あと 475 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.017s