有沒有什麼辦法可以在pygame中定義一個隱形顏色,這樣在screen.fill(invisibleColor,pygame.mouse.get_pos())
上調用它就不會覆蓋它後面的圖紙?Pygame隱形顏色
回答
在Python中有三種不同的透明度方法;看着The documentation for fill它看起來像你需要將特殊標誌傳遞到最後一個參數來支持你正在使用的透明度方法。
我發現有用的是在我的表面上使用convert_alpha()
函數Documented here而不是convert
;我發現在我的情況下,透明度不起作用,因爲我使用的是常規的convert
。
補充:
我不是你想達到什麼樣的100%清楚,但它發生,我認爲你可能意味着你想要的鼠標下只有一個矩形是可見的,你的意思是使用透明度來做到這一點。如果是這種情況,有幾個問題:
- 透明顏色就是這樣 - 透明 - 在現有的已售出的矩形上繪製它將允許您通過透明顏色看到實心矩形;換句話說,它將與沒有首先繪製該矩形的完全相同
- 您將繪製整個屏幕然後覆蓋它;這會很慢。
如果這是你想要實現的,你可能會做得更好,只渲染一個更小的表面(位於鼠標下方的位)並將其繪製到固定背景上的屏幕上。
如果你確實想用鼠標畫下一個洞了堅實的矩形,你將需要繪製四個矩形像這樣(遺憾的ASCII藝術):
+------------------+
| 1 |
+------+---+-------+
| 2 | m | 3 |
+------+---+-------+
| 4 |
+------------------+
這樣的位('圖'中標記爲m
)將不會被純色覆蓋,但矩形1,2,3都會顯示爲一個實心矩形(鼠標下面有一個孔)。
希望這有助於完善答案以滿足您的需求。
轉換'和'convert_alpha'在'Surface'對象上工作。如果我想繪製一個'Rect'(例如在'pygame.draw.rect(screen,COLOR,pygame.Rect)')中使用透明顏色,該怎麼辦? – amirteymuri
繪製一個透明的矩形與第一個繪製矩形完全一樣;這是浪費計算(我會試圖從pygame中擠出所有性能)。你的意思是你想要它是半透明的(即一個alpha> 0)? – SteJ
- 1. 顏色Pygame整數?
- 2. 微調顏色是灰色的白色=隱形:(
- 3. PyGame圖像保存顏色失真
- 4. Pygame:如何更改背景顏色
- 5. 在pygame中填充給定的顏色
- 6. 如何使用unicode_literals引用pygame顏色?
- 7. Java - 顏色矩形
- 8. 改變顏色的顏色改變所有圓形顏色
- 9. ahref - 隱藏選擇顏色
- 10. 隱藏farbtastic顏色代碼
- 11. 更改Pygame中所有黑色像素的顏色
- 12. 通過Python/Pygame中的迭代獲取形狀的不同顏色?
- 13. 如何在JButton中使顏色隱形(透明)ImageIcon
- 14. Chart.js條形圖:網格顏色和隱藏標籤
- 15. 帶顏色的條形圖
- 16. 圓形顏色轉換
- 17. 條形圖顏色c3.js
- 18. 顏色不變 - 蟒圖形
- 19. Amcharts:柱形圖顏色
- 20. Mootools顏色即時變形
- 21. 顏色區域形狀PHP
- 22. WPF矩形顏色綁定
- 23. 更改形狀顏色
- 24. Android圖形顏色在xml
- 25. 不同顏色的圓形
- 26. 圖形着色算法 - 分配顏色
- 27. 圓形顏色梯度(色調)在firemonkey
- 28. 條形圖中的Rgraph條形顏色
- 29. java圖形 - 兩種顏色的形狀
- 30. 隱藏pygame顯示
您可以嘗試使用透明度爲100%的RBGA顏色。 – Oisin
我如何使透明度達到100%?使用像(255,255,255,255)這樣的顏色(使用alpha參數)無助於 – amirteymuri
255的Alpha是完全不透明的 - 試試(255,255,255,0)而不是? – SteJ