2D遊戲使用約數更多的畫素尺寸texture是否能減少因多機型 縮放 旋轉帶來的各種問題出現可能性?

時間 2021-06-03 01:37:26

1樓:「已登出」

不知道題主想說的畫素對齊是什麼含義

2D畫素對齊一般只在UI渲染上面用

防止因為最後轉換到視口的頂點座標不在「畫素的頂點」上而導致最後取樣插值的結果變的模糊

需要對齊也很簡單

在頂點著色器中微調你的頂點確保最後輸出到裁剪空間的座標是2/viewportSize的倍數

也就是捨入到2 / viewportSize * pos.w(你可以選擇都向上或者都向下捨入)

舉個例子如果你的視口是 100 * 100的那麼你x軸就捨入到 2 / 100 * pos.w如果w = 1

x = 0.053 如果向下捨入到0.02 就變成 0.04這樣輸出的頂點就必然在「畫素的頂點」上

不知道題主是否想知道的是這個?

還有乙個可能的問題就是

題主提到retina螢幕

我不知道題主採用的投影矩陣式是什麼樣的

不過我猜測恐怕是乙個投影表面和螢幕一樣大的正交投影矩陣這個情況下恐怕會遇到浮點數精度問題

因為這種情況下你傳入的頂點的座標值會很大

浮點數的精度隨著浮點數越大精度越差

這種情況下計算出來的裁剪空間座標必然存在很大誤差難以保證畫素級的精度

解決辦法是選擇投影表面寬高比和視口一致面積小的投影矩陣能改善頂點精度

最後一點就是對於紋理尺寸

上面也說了

ES2.0如果採用NPOT尺寸的紋理

要檢查硬體是否支援該擴充套件

如果不支援就只能採用POT紋理

不然行為是未定義的

解決辦法可以是先弄乙個大的POT紋理

然後再上面建立子紋理

2樓:沙茶醬

不能。和被多少約沒有關係。

我的理解是這樣:

opengl es 2.0 specification沒有完全支援NPOT(not pow of two)紋理,所以遇到NPOT紋理,各GPU廠商的實現方案會有不同,有可能會遇到直接補齊畫素導致黑邊的情況,遇到retina進行插值自然也可能會有問題。

而opengl es 3.0 明確要求支援NPOT紋理,所以都無所謂了。

乙個 2D 橫版畫素遊戲的製作流程是怎樣的?

速凍知了 遊戲設計在讀 0.先打乙個策劃書,明確主題,核心玩法,目標,人群,特點,美術風格等等細節,然後去招需要的人 1.明確引擎和平台,新手首推unity和gamemaker 2.程式和美術的分工。程式方面,c 精通。拆分需求後下發。美術方面當然Ps,Ae最萬能,2d畫素的話有一些專門的工具不過建...

開發網頁 2d 遊戲, 使用 webgl 和 canvas 2d 哪個效能更高

靜靜地追尋 剛好最近也在熟悉和了解這塊,談談個人的想法,在中高階的裝置上,使用WebGL或者Canvas 2D來貼圖跑到30 60 FPS感覺問題都不大,但是在低端裝置上,可能會遇到裝置不支援硬體加速無法使用WebGL或者GPU驅動相容性問題導致花屏 黑屏等問題,還得切換回Canvas 2D。同時C...

2D橫板遊戲有多少值得稱道的創意?

mINdingKiera emmm我不知道小小噩夢算不算?感覺他看起來是乙個偽3D的2D橫板國光 最近在做遊戲覺得小小噩夢的畫面設計和畫風簡直是巔峰了2.磚塊劇場 具體名字我給忘了,這是個雙人合作遊戲,風格挺像舞台劇的關卡倒是沒什麼特別的但是它的畫風讓人眼前一亮,我覺得現在是個風格取勝的時代叭!唔想...