本篇将如何快速有效的裁剪绘制到屏幕上的像素。
如果α值接近0时,如何使用着色器文件中的clip()函数来阻止处理当前像素。
一个使用clip函数的实例:
clip(alpha - .25);
如果α值小于等于0.25时,将会对像素进行裁剪。clip函数的工作方式就是如果值小于等于0时,它就会彻底阻止像素着色器进一步的处理,且没有数据会写入到渲染目标或这深度模板缓冲中。
全局声明
为了看到箱子的后面,需要禁止背面的裁剪。通过创建一个新的渲染状态来完成这项任务。
ID3D11RasterizerState* noCull;
清除
void CleanUp()
{
//Release the COM Objects we created
SwapChain->Release();
d3d11Device->Release();
d3d11DevCon->Release();
renderTargetView->Release();
squareVertBuffer->Release();
squareIndexBuffer->Release();
VS->Release();
P