[英]Unity clamping issues
我試圖只允許我的乒乓球游戲中的乒乓球拍轉到屏幕頂部和底部,然后停止。 我以為可以將yClamp變量設置為相機大小-紋理的高度除以2。但是,這根本不起作用。 以我正在使用的長寬比,頂部應該大約在3.2到3之間。這是我嘗試使用的代碼:
renderer = GetComponent<SpriteRenderer>();
yClamp = Mathf.Abs(Camera.main.orthographicSize -
((renderer.sprite.textureRect.height / renderer.sprite.pixelsPerUnit)/2f));
但是,這只允許我轉到1.43和-1.43。 我似乎無法弄清楚為什么這行不通。 所有邏輯都在那里。 槳開始於(0,0),所以我看不出我的邏輯錯在哪里。
非常感謝您的任何幫助!
注意:只是為了清理起見,鉗位應該大致介於-3.2和3.2之間。但是,我需要一個公式,因為我將處理許多分辨率。 這是我的調試狀態。
我不明白為什么它不起作用。
這是我要檢查的
renderer.sprite.textureRect.height
給出正確的像素結果? 您只有幾個變量,因此不難確定哪個變量不包含期望值。 如果這樣做不起作用,您能否發布每個變量的值(高度,相機大小,單位像素)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.