0
我使用純粹的XNA 4.0解決方案開始了Windows Phone 7.1的遊戲。該遊戲基本上涉及在迷宮中移動,並且我希望在右上角設置一個圓圈,以顯示玩家在迷宮中的放大視圖。如何將圓形遮罩應用於XNA中的紋理?
我已經編寫了生成隨機迷宮的代碼,因此我可以渲染所有的牆,將此渲染保存到內存中的紋理,並將其縮放到任何需要的大小。但是,這將是一個矩形..我需要它顯示在一個圓圈內。
有關最佳方法的任何想法?
我使用純粹的XNA 4.0解決方案開始了Windows Phone 7.1的遊戲。該遊戲基本上涉及在迷宮中移動,並且我希望在右上角設置一個圓圈,以顯示玩家在迷宮中的放大視圖。如何將圓形遮罩應用於XNA中的紋理?
我已經編寫了生成隨機迷宮的代碼,因此我可以渲染所有的牆,將此渲染保存到內存中的紋理,並將其縮放到任何需要的大小。但是,這將是一個矩形..我需要它顯示在一個圓圈內。
有關最佳方法的任何想法?
您可以使用模板緩存...
首先填寫模板緩衝區與你的面具
然後寫在模板緩存正確的函數映射。
這可能是與此類似:
You fill stencil buffer with a black filled circle rounded by white
之後,繪製地圖與這些操作:
StencilFunction = CompareFunction.GreaterEqual
StencilPass = StencilOperation.Replace
您可以在這裏更多的信息: