我必須在我的DirectX應用程序中繪製類似Photoshop的選擇反饋。我遇到了維基百科上的algorithm來做到這一點。但是,我不確定它是否是正確的做法,特別是如果我的選擇區域可以是任意幾何圖形。有人使用Directx實現它嗎?任何提示都非常感謝。使用directx繪圖進行螞蟻
0
A
回答
0
基於這裏我的意見是一個簡單的像素着色器來實現想要的結果:
float4 PS(float4 pos : SV_POSITION) : SV_Target
{
float w = ((int)(pos.x + pos.y + t) % 8);
return (w < 4 ? float4(0,0,0,1) : float4(1,1,1,1));
}
x
和y
被添加到產生斜條紋圖案。你可以想象如下:如果y
是恆定的,x
增加1,w
也增加1.這同樣適用於y
。因此,爲使w
保持不變,您必須去(x+1, y-1)
或(x-1, y+1)
(或其他步長)。我們使用%
算子產生8個像素的週期性。前半段是黑色,後半段是白色。
這是一個等效的,但性能更高的着色器。它使用位運算而不是模和比較。
float4 PS(float4 pos : SV_POSITION) : SV_Target
{
int w = ((int)(pos.x + pos.y + t) & 4);
return float4(w,w,w,1);
}
相關問題
- 1. 使用螞蟻
- 2. 使用螞蟻
- 3. 使用螞蟻
- 4. 使用螞蟻
- 5. 試圖用螞蟻
- 6. 螞蟻運行
- 7. 螞蟻build.compiler使用
- 8. 用螞蟻運行java類
- 9. 用螞蟻執行npm
- 10. 螞蟻DB2備份不進行連續
- 11. 我有螞蟻錯誤如何進行?
- 12. 構建步驟:「調用螞蟻」與「從shell運行螞蟻」
- 13. 螞蟻調用
- 14. 無法使用命令行螞蟻
- 15. 螞蟻
- 16. 螞蟻
- 17. 使用xjc與螞蟻
- 18. 上市使用螞蟻
- 19. 螞蟻使用ProGuard - java.lang.NoClassDefFoundError
- 20. NoClassDefFoundError使用螞蟻時
- 21. Ssh使用螞蟻隧道
- 22. 建設hadoop使用螞蟻
- 23. 使用密碼的螞蟻腳本通過SSH進行的Rsync
- 24. 試圖運行螞蟻 - 獲取錯誤
- 25. 錯誤執行螞蟻:-bash:螞蟻:找不到命令
- 26. 如何運行螞蟻腳本,螞蟻沒有安裝?
- 27. 在pom.xml中執行螞蟻從螞蟻內部
- 28. MANIFEST.MF是用螞蟻
- 29. NoClassDefFoundError的運行與螞蟻
- 30. 從螞蟻執行who -m
您可以計算像素着色器中的圖案並將邊框繪製爲線條。只需將偏移參數't'傳遞給着色器並使用像素的屏幕座標。 't'會每隔一段時間增加一次以使邊框動起來。 –