| 1725 | } |
| 1726 | |
| 1727 | bool ConvertToStaticSampler( StaticSampler& staticSampler, const Sampler& sampler ) |
| 1728 | { |
| 1729 | if( sampler.isDynamic ) |
| 1730 | { |
| 1731 | return false; |
| 1732 | } |
| 1733 | if( sampler.addressU == D3D11_TEXTURE_ADDRESS_BORDER || sampler.addressV == D3D11_TEXTURE_ADDRESS_BORDER || sampler.addressW == D3D11_TEXTURE_ADDRESS_BORDER ) |
| 1734 | { |
| 1735 | if( sampler.borderColor.x == 0 && sampler.borderColor.y == 0 && sampler.borderColor.z == 0 && sampler.borderColor.w == 0 ) |
| 1736 | { |
| 1737 | staticSampler.borderColor = 0; |
| 1738 | } |
| 1739 | else if( sampler.borderColor.x == 0 && sampler.borderColor.y == 0 && sampler.borderColor.z == 0 && sampler.borderColor.w == 1 ) |
| 1740 | { |
| 1741 | staticSampler.borderColor = 1; |
| 1742 | } |
| 1743 | else if( sampler.borderColor.x == 1 && sampler.borderColor.y == 1 && sampler.borderColor.z == 1 && sampler.borderColor.w == 1 ) |
| 1744 | { |
| 1745 | staticSampler.borderColor = 2; |
| 1746 | } |
| 1747 | else |
| 1748 | { |
| 1749 | return false; |
| 1750 | } |
| 1751 | } |
| 1752 | else |
| 1753 | { |
| 1754 | staticSampler.borderColor = 0; |
| 1755 | } |
| 1756 | staticSampler.comparison = sampler.comparison; |
| 1757 | staticSampler.minFilter = sampler.minFilter; |
| 1758 | staticSampler.magFilter = sampler.magFilter; |
| 1759 | staticSampler.mipFilter = sampler.mipFilter; |
| 1760 | staticSampler.addressU = sampler.addressU; |
| 1761 | staticSampler.addressV = sampler.addressV; |
| 1762 | staticSampler.addressW = sampler.addressW; |
| 1763 | staticSampler.minLOD = sampler.minLOD; |
| 1764 | staticSampler.maxLOD = sampler.maxLOD; |
| 1765 | staticSampler.mipLODBias = sampler.mipLODBias; |
| 1766 | staticSampler.maxAnisotropy = sampler.maxAnisotropy; |
| 1767 | staticSampler.comparisonFunc = sampler.comparisonFunc; |
| 1768 | return true; |
| 1769 | } |
| 1770 | |
| 1771 | int EvaluateIntegerExpression( ParserState& state, ASTNode* node, int defaultValue ) |
| 1772 | { |
no outgoing calls
no test coverage detected