射線檢測UI時踩的乙個坑

2021-10-07 16:05:10 字數 541 閱讀 1300

專案需求上要求用射線法來控制所有場景內的物體控制,寫好以後用以前專案經驗來遮蔽ui時,具體**網上到處都有,如下:

public static bool ispointeroveruiobject(vector2 screenposition)

但是在目前這個專案時,該段**會將場景內的含有collider的所有建築視為ui,返回結果為true。

輸出**內的results發現,會將camera上用來限制邊界的bounds也視為ui。

再進一步排查,發現是camera上的physics2d raycaster元件的問題。之前為了在移動鏡頭時遮蔽建築的射線操作,加入了該元件並將該元件的event mask選為了對應的「buildings」(自定義layer),所以在射線檢測時,上面這段**會預設physics2d raycaster阻擋了射線。

將該元件關閉移除後,問題解決,不會再將建築視為ui。

最近踩的乙個小坑

最近需要實現乙個業務,大致的內容是為了提高效率,把資料庫中的資訊定時同步到記憶體中,然後使用記憶體查詢,提高效率。然後在實現過程中遇到了乙個問題,需要同步的資訊約9萬條,但是這9w條資料對應了133w個,大概乙個id十幾張吧。儲存這些的時候,遇到了小問題。專案原本使用的結構是 list vin1,1...

使用PageHelper踩的乙個小坑

之前使用pagehelper都沒有問題,今天使用時發現查詢出來的資料沒有分頁。一開始的 時這樣的 public pageinfonotsaleorder integer pageno,integer clientid 問題 pagehelper.startpage pageno,3 應該放在你要分頁...

使用zerorpc踩的第乙個坑

server端 注意s.run 和 s.run的區別,乙個括號搞死我了.如果不加括號,服務端服務是不會啟動的,客戶端就會報連線超時的錯誤 server端在本機所有ip上監聽4242埠的tcp協議 import zerorpc class hellorpc object def init self s...