raycasting

    0熱度

    2回答

    我製作了一個遊戲,我使用raycasting來確定玩家是否在物體上。我知道如何使用圖層來做到這一點,但我寧願這樣做,以便檢查它是否碰到帶有標籤的對象。繼承人的代碼: isObject = Physics2D.Linecast (this.transform.position, groundedEnd.position, 1 << LayerMask.NameToLayer ("Object"));

    1熱度

    1回答

    輸出看起來是這樣的: 你應該只看到一面平坦,連續紅色的牆,在另一藍色的牆,綠的另一個,另一個黃色(見地圖的定義,testMapTiles,它只是一張四面牆的地圖)。然而,這些虛幻的牆面不同高度,這是垂直於真實的牆壁。爲什麼? 請注意,白色「間隙」實際上並沒有間隙:它試圖繪製高度爲Infinity(距離0)的牆。如果你明確地說明了這個問題(這個版本的代碼沒有),只是在屏幕高度上蓋上,那麼你就會看到那

    2熱度

    1回答

    我使用THREE.js來構建遊戲。 目前,我有一個物體在此位置: (-83645, 476450, 412912) ,我試圖做單擊這個對象檢測。 但是,當我使用THREE.js示例站點上顯示的raycaster時,我的光線總是偏斜。如果我將所有座標向下偏移100,那麼光線投射就完美了。 我想這與標準化過程中的分裂問題有關,或者可能是某處發生了溢出錯誤。 現在,我正在縮小座標,但是從長遠來看,我

    0熱度

    1回答

    我移植從JavaScript斯威夫特一個raycaster和時遇到一些難以理解下面一行是這樣做的: [origin].concat(ray(nextStep)) 這裏全功能: function ray(origin) { var stepX = step(sin, cos, origin.x, origin.y); var stepY = step(cos, sin, o

    1熱度

    2回答

    我正在開發類似Minecraft的遊戲,並嘗試讓塊刪除正常工作。我有一個函數返回塊的正確座標,然後調用DestroyBlock(下面),它在立方體的每個方向上投射6條射線,並且應該銷燬它遇到的任何四邊形。然後我有另一個函數,在塊被銷燬之後調用,然後更新周圍的塊並呈現適當的面。我的問題是,這個DestroyBlock函數並不總是工作。正如你在第一次點擊的圖像中看到的那樣,一切正常工作,並且正確的面孔

    1熱度

    1回答

    我正在做一個Voxel遊戲,我的引擎正在使用Physics.raycasts和Mesh碰撞器來獲取您點擊的塊的座標,直到現在。我決定刪除網格對撞機,因爲在某些情況下它只是吃了太多的性能,我在幾秒鐘內將fps下拉到0.1fps(例如,你應該能夠在Y層上滾動),我只需要它用於光線投射。我不使用任何其他物理相關的東西。如果沒有網狀碰撞器,幀率穩定在60到100 fps,但是現在我發現很難找到另一種獲取關

    0熱度

    2回答

    我正在創建一個體素引擎。除了一些簡單的單純噪聲集成之外,我還創建了塊生成,但由於每個四邊形的所有面都被繪製,即使是您看不到的面,也非常滯後。 根據我的理解,這通常是使用光線投射處理的,其中我瞭解基本理論:從相機中畫出若干光線並檢查碰撞,如果未發現碰撞,則臉部不在視線內,因此應該不被渲染。即使我理解了它的理論,但由於缺乏先驗知識以及我在互聯網上發現的缺乏知識,所以我還沒有能夠實現它,即它們給出了代碼

    2熱度

    1回答

    有沒有人有解釋爲什麼下面的交互式多維數據集不能在視網膜顯示mac上工作? http://mrdoob.github.io/three.js/examples/canvas_interactive_cubes.html 代碼工作在Firefox,Safari和Chrome在非視網膜的MacBook,但與視網膜顯示的Mac電腦無法正常工作。 Mac電腦:MacBook Pro的Retina顯示屏,iM

    1熱度

    1回答

    Three.js和一般編碼非常新,所以忍受着我。我試圖實現一些類似於threejs.org上的例子的可拖動多維數據集,但是我在我的代碼的特定部分中遇到了raycaster問題。由於某些原因,raycaster在選擇我的立方體時不會返回與我的平面幾何體的交點。以下是特定的代碼塊。 任何幫助將不勝感激。 function onDocumentMouseMove(event) { event.

    0熱度

    1回答

    我正在爲我的大學項目爭取多個敵人在我的遊戲中工作。我有一名玩家使用ShootGun腳本來對槍進行光線投射,並檢測對象是否是敵方對手(標有Enemy_Head,_Torso和_Limb)之一。如果是,它將獲得敵方命中的gameobject和該gameobject上的enemyHealth腳本組件,然後將在該腳本上調用公共函數。當前,當ShootGun腳本嘗試獲取組件/腳本時,它會顯示以下錯誤: Nu