遊戲人物高空跳下不掉血和物理引擎相關嗎?
或者說遊戲人物不論從多高的地方跳下去都不會掉血而且和原地跳一下的落地動作一樣,那這是哪裡出了問題,是物理引擎嗎
因為現時通常沒有「生物引擎」,流血受傷一般只是抽象的模型。遊戲設計上有需求的話,遊戲邏輯模塊可以從物理引擎接收碰撞事件信息,當avatar的碰撞體與其他碰撞體碰撞時的相對速率高於閾值就扣除某數量的HP(也可以是相對速率的函數)。
而理想地應該是考慮衝量(impulse)及接觸面積的,碰到雪地和石頭時接觸時間會很不一樣。只計算相對速率就是假設了接觸時間是常數。
最後一提,遊戲的目標並不一定是越真實越好,通常遊戲的目標是樂趣,一定程度的抽象規則更容易讓玩家理解。不,僅僅是因為下邊有一車乾草罷了。
物理引擎負責模擬一個物理世界,這個世界裡可以有重力,各個物體之間可以互相碰撞等,物體可以有各種各樣的屬性,彈性、摩擦係數等等。
人物從高空跳下之後,落地時物理引擎可以判斷是否發生了碰撞,物理引擎還可以決定人物落下後會不會彈起來一段距離(根據人物和地面的彈性係數),然後告訴控制層,人物和地面發生了碰撞。
控制層(也就是程序邏輯)決定掉不掉血,掉多少血。
當然這只是我的設計思路。
最近正好在寫載具的代碼, 包括輸入, 物理和碰撞傷害等.
物理引擎處理的是, 應用力來改變物體運動狀態(速度, 角速度), 根據運動狀態改變物體的位置和旋轉, 還要處理物體之間的碰撞, 根據物體的物理材質計算碰撞後物體的狀態.
所以物理引擎並沒有 HP 這種東西. 這是一個遊戲設計上需要的屬性, 而不是物理屬性. 通常可以通過碰撞前後速度變化來計算撞擊或墜落的傷害大小.
穿過地面是物理引擎的問題 不掉血是寫邏輯的那個人的事
掉不掉血是遊戲設計者設置的,跟物理引擎毛線關係沒有,你甚至可以設置成掉下來加血
我懷疑題主說的這種遊戲是沒有物理引擎的,只寫個3D場景在裡面判斷一下人物碰撞體積然後可以到處走可以從高處往下掉不叫物理引擎。起碼你場景里的人或者東西得以物理的方式交互才叫。
比如說憤怒小鳥畫面簡單弱智而且是2D的但是確實是物理引擎,風暴英雄畫面看起來可能好一點而且是3D渲染但是不叫物理引擎。不少遊戲都掉血呀 和引擎無關 和代碼有關 我覺得 最有趣的是怪物獵人 無論從多高跳下來 都不會掉血 但是如果足夠高 手裡的龍蛋 寶石會摔碎 也就是說系統可以識別 但是刻意不去添加掉血設定
你的角色會自由落體,會碰撞到物體,這些是物理引擎做的事;而你的角色會扣血,是由做邏輯的程序猿來處理的,甚至乎在引擎中的話,是由狀態機來決定的。
既然題目提到了遊戲人物,那自己寫移動邏輯的可能性更大。這樣很可能不用物理引擎,或者用物理引擎只做碰撞檢測之類的事。那麼,不掉血,就跟物理引擎沒關係了。
如果真的整個用了物理引擎,從高處掉下來,和地面碰撞的時候,檢測碰撞時的相對速度或者人物受的衝量,是不是超過一個閾值,超過了就減血。如果所有地方都沒有減血,很可能就是程序沒寫這個邏輯。
另外,人撞牆或者撞其他東西的時候,可能不減血,或者減血的邏輯和落地不一樣。這就需要關卡的策劃美術,給地面打標記。如果他們在某個地方打錯標記了,那也會出問題。能不能穿過去,通常是物理引擎裡面的標記決定的,掉不掉血是遊戲邏輯里的標記。這兩個標記很可能是分開的,看項目具體分工才能判斷是誰的責任。是美工和策划出了問題
說不定人物是聖騎
只是沒有這部分的設定而已,比如穿越火線這樣的高檔遊戲 :)
信仰之躍
你去洛奇英雄傳 ,上面試試, 看摔死你了嘛.
題主的意思是「遊戲原本是有高處跳下會掉血的設定,但實際上有些時候不會掉」,還是「遊戲本來就不會這樣掉血」?如果是前者,那這是個bug。後者,這叫設定,跟稻草堆、一格水的無限動能吸收是一個道理。
你沒有添加讓他掉血的代碼。
這屬於邏輯層了,引擎一般是不管的
跑個題,曾經搞過一次魔獸世界單機版。嗯,這個網上很多的,就是本地起了個私服的樣子。可以改改參數啊,獲得GM許可權啊,穿穿裝備,變變模型YY啥的。總之覺得挺蛋疼的,直到我把人物移動速度提高到50還是100倍,接著通過一座拱橋………
然後我的小牛就摔死了……過橋,起飛,摔死…物理引擎的好強大……中土世界這個遊戲是設定。
推薦閱讀:
※《植物大戰殭屍2》和《植物大戰殭屍2中國大陸版》有哪些區別?
※既玩正版也玩盜版的你,平時是什麼感受?
※有哪些超贊的單機遊戲可以推薦?
※2k 144hz和4K 60hz選擇哪個好?顯卡是1080ti,玩大型單機?
※關於《守望先鋒》,你最想分享的事是什麼?