Changeset 249453 in webkit
- Timestamp:
- Sep 3, 2019 8:30:21 PM (5 years ago)
- Location:
- trunk
- Files:
-
- 6 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r249450 r249453 1 2019-09-03 Myles C. Maxfield <mmaxfield@apple.com> 2 3 [WHLSL] Implement SampleLevel(), SampleBias(), and SampleGrad() 4 https://bugs.webkit.org/show_bug.cgi?id=201385 5 6 Reviewed by Dean Jackson. 7 8 * webgpu/whlsl/textures-sample-bias-expected.html: Added. 9 * webgpu/whlsl/textures-sample-bias.html: Added. 10 * webgpu/whlsl/textures-sample-grad-expected.html: Added. 11 * webgpu/whlsl/textures-sample-grad.html: Added. 12 * webgpu/whlsl/textures-sample-level-expected.html: Added. 13 * webgpu/whlsl/textures-sample-level.html: Added. 14 1 15 2019-09-03 Devin Rousso <drousso@apple.com> 2 16 -
trunk/Source/WebCore/ChangeLog
r249452 r249453 1 2019-09-03 Myles C. Maxfield <mmaxfield@apple.com> 2 3 [WHLSL] Implement SampleLevel(), SampleBias(), and SampleGrad() 4 https://bugs.webkit.org/show_bug.cgi?id=201385 5 6 Reviewed by Dean Jackson. 7 8 These are used in the Babylon.js demo. 9 10 Tests: webgpu/whlsl/textures-sample-bias.html 11 webgpu/whlsl/textures-sample-grad.html 12 webgpu/whlsl/textures-sample-level.html 13 14 * Modules/webgpu/WHLSL/AST/WHLSLNativeTypeDeclaration.h: 15 * Modules/webgpu/WHLSL/Metal/WHLSLNativeFunctionWriter.cpp: 16 (WebCore::WHLSL::Metal::sampleType): 17 (WebCore::WHLSL::Metal::inlineNativeFunction): 18 * Modules/webgpu/WHLSL/WHLSLIntrinsics.cpp: 19 (WebCore::WHLSL::Intrinsics::addFullTexture): 20 (WebCore::WHLSL::Intrinsics::addDepthTexture): 21 * Modules/webgpu/WHLSL/WHLSLStandardLibrary.txt: 22 1 23 2019-09-03 Chris Dumez <cdumez@apple.com> 2 24 -
trunk/Source/WebCore/Modules/webgpu/WHLSL/AST/WHLSLNativeTypeDeclaration.h
r249351 r249453 68 68 bool isDepthTexture() const { return m_isDepthTexture; } 69 69 bool isWritableTexture() const { return m_isWritableTexture; } 70 bool isCubeTexture() const { return m_isCubeTexture; } 70 71 uint textureDimension() const { return m_textureDimension; } 71 72 bool isSigned() const { return m_isSigned; } … … 123 124 void setIsDepthTexture() { m_isDepthTexture = true; } 124 125 void setIsWritableTexture() { m_isWritableTexture = true; } 126 void setIsCubeTexture() { m_isCubeTexture = true; } 125 127 void setTextureDimension(uint textureDimension) { m_textureDimension = textureDimension; } 126 128 void setIsSigned() { m_isSigned = true; } … … 154 156 bool m_isDepthTexture { false }; 155 157 bool m_isWritableTexture { false }; 158 bool m_isCubeTexture { false }; 156 159 bool m_isSigned { false }; 157 160 }; -
trunk/Source/WebCore/Modules/webgpu/WHLSL/Metal/WHLSLNativeFunctionWriter.cpp
r249351 r249453 109 109 return "4"; 110 110 } 111 } 112 113 enum class SampleType { 114 Sample, 115 SampleLevel, 116 SampleBias, 117 SampleGrad 118 }; 119 120 static Optional<SampleType> sampleType(const String& functionName) 121 { 122 if (functionName == "Sample") 123 return SampleType::Sample; 124 if (functionName == "SampleLevel") 125 return SampleType::SampleLevel; 126 if (functionName == "SampleBias") 127 return SampleType::SampleBias; 128 if (functionName == "SampleGrad") 129 return SampleType::SampleGrad; 130 return WTF::nullopt; 111 131 } 112 132 … … 344 364 } 345 365 346 if (nativeFunctionDeclaration.name() == "Sample") { 347 ASSERT(nativeFunctionDeclaration.parameters().size() == 3 || nativeFunctionDeclaration.parameters().size() == 4); 366 if (auto sampleType = WHLSL::Metal::sampleType(nativeFunctionDeclaration.name())) { 367 size_t baseArgumentCount = 0; 368 switch (*sampleType) { 369 case SampleType::Sample: 370 baseArgumentCount = 3; 371 break; 372 case SampleType::SampleLevel: 373 case SampleType::SampleBias: 374 baseArgumentCount = 4; 375 break; 376 case SampleType::SampleGrad: 377 baseArgumentCount = 5; 378 break; 379 } 380 ASSERT(nativeFunctionDeclaration.parameters().size() == baseArgumentCount || nativeFunctionDeclaration.parameters().size() == baseArgumentCount + 1); 348 381 349 382 auto& textureType = downcast<AST::NativeTypeDeclaration>(downcast<AST::NamedType>(nativeFunctionDeclaration.parameters()[0]->type()->unifyNode())); … … 353 386 auto returnVectorLength = vectorLength(returnType); 354 387 355 stringBuilder.append( 356 args[0], ".sample(", args[1], ", "); 388 int argumentIndex = 0; 389 stringBuilder.append(args[argumentIndex], ".sample(", args[argumentIndex + 1], ", "); 390 argumentIndex += 2; 357 391 358 392 if (textureType.isTextureArray()) { 359 393 ASSERT(locationVectorLength > 1); 360 stringBuilder.append(args[2], '.', "xyzw"_str.substring(0, locationVectorLength - 1), ", ", args[2], '.', "xyzw"_str.substring(locationVectorLength - 1, 1)); 394 stringBuilder.append(args[argumentIndex], '.', "xyzw"_str.substring(0, locationVectorLength - 1), ", ", args[argumentIndex], '.', "xyzw"_str.substring(locationVectorLength - 1, 1)); 395 ++argumentIndex; 361 396 } else 362 stringBuilder.append(args[2]); 363 if (nativeFunctionDeclaration.parameters().size() == 4) 364 stringBuilder.append(", ", args[3]); 397 stringBuilder.append(args[argumentIndex++]); 398 399 switch (*sampleType) { 400 case SampleType::Sample: 401 break; 402 case SampleType::SampleLevel: 403 stringBuilder.append(", level(", args[argumentIndex++], ")"); 404 break; 405 case SampleType::SampleBias: 406 stringBuilder.append(", bias(", args[argumentIndex++], ")"); 407 break; 408 case SampleType::SampleGrad: 409 if (textureType.isCubeTexture()) 410 stringBuilder.append(", gradientcube(", args[argumentIndex], ", ", args[argumentIndex + 1], ")"); 411 else 412 stringBuilder.append(", gradient2d(", args[argumentIndex], ", ", args[argumentIndex + 1], ")"); 413 argumentIndex += 2; 414 break; 415 } 416 417 if (nativeFunctionDeclaration.parameters().size() == baseArgumentCount + 1) 418 stringBuilder.append(", ", args[argumentIndex++]); 365 419 stringBuilder.append(")"); 366 420 if (!textureType.isDepthTexture()) … … 510 564 } 511 565 512 if (nativeFunctionDeclaration.name() == "SampleBias") {513 // FIXME: https://bugs.webkit.org/show_bug.cgi?id=195813 Implement this514 notImplemented();515 }516 517 if (nativeFunctionDeclaration.name() == "SampleGrad") {518 // FIXME: https://bugs.webkit.org/show_bug.cgi?id=195813 Implement this519 notImplemented();520 }521 522 if (nativeFunctionDeclaration.name() == "SampleLevel") {523 // FIXME: https://bugs.webkit.org/show_bug.cgi?id=195813 Implement this524 notImplemented();525 }526 527 566 if (nativeFunctionDeclaration.name() == "Gather") { 528 567 // FIXME: https://bugs.webkit.org/show_bug.cgi?id=195813 Implement this -
trunk/Source/WebCore/Modules/webgpu/WHLSL/WHLSLIntrinsics.cpp
r248795 r249453 232 232 if (nativeTypeDeclaration.name() == "Texture3D" || nativeTypeDeclaration.name() == "RWTexture3D") 233 233 nativeTypeDeclaration.setTextureDimension(3); 234 if (nativeTypeDeclaration.name() == "TextureCube") 235 nativeTypeDeclaration.setIsCubeTexture(); 234 236 m_fullTextures[textureTypeIndex][innerTypeIndex][vectorLength - 1] = &nativeTypeDeclaration; 235 237 return true; … … 253 255 if (texture == m_textureDepth2DArray) 254 256 nativeTypeDeclaration.setIsTextureArray(); 257 if (texture == m_textureDepthCube) 258 nativeTypeDeclaration.setIsCubeTexture(); 255 259 nativeTypeDeclaration.setTextureDimension(2); 256 260 nativeTypeDeclaration.setIsDepthTexture(); -
trunk/Source/WebCore/Modules/webgpu/WHLSL/WHLSLStandardLibrary.txt
r249351 r249453 13694 13694 native float Sample(TextureDepthCube<float>, sampler, float3 location); 13695 13695 13696 /* Functions named SampleLevel */ 13697 native uint SampleLevel(Texture2D<uint>, sampler, float2 location, float LOD); 13698 native uint SampleLevel(Texture2D<uint>, sampler, float2 location, float LOD, int2 offset); 13699 native uint SampleLevel(Texture2DArray<uint>, sampler, float3 location, float LOD); 13700 native uint SampleLevel(Texture2DArray<uint>, sampler, float3 location, float LOD, int2 offset); 13701 native uint SampleLevel(TextureCube<uint>, sampler, float3 location, float LOD); 13702 native uint2 SampleLevel(Texture2D<uint2>, sampler, float2 location, float LOD); 13703 native uint2 SampleLevel(Texture2D<uint2>, sampler, float2 location, float LOD, int2 offset); 13704 native uint2 SampleLevel(Texture2DArray<uint2>, sampler, float3 location, float LOD); 13705 native uint2 SampleLevel(Texture2DArray<uint2>, sampler, float3 location, float LOD, int2 offset); 13706 native uint2 SampleLevel(TextureCube<uint2>, sampler, float3 location, float LOD); 13707 native uint3 SampleLevel(Texture2D<uint3>, sampler, float2 location, float LOD); 13708 native uint3 SampleLevel(Texture2D<uint3>, sampler, float2 location, float LOD, int2 offset); 13709 native uint3 SampleLevel(Texture2DArray<uint3>, sampler, float3 location, float LOD); 13710 native uint3 SampleLevel(Texture2DArray<uint3>, sampler, float3 location, float LOD, int2 offset); 13711 native uint3 SampleLevel(TextureCube<uint3>, sampler, float3 location, float LOD); 13712 native uint4 SampleLevel(Texture2D<uint4>, sampler, float2 location, float LOD); 13713 native uint4 SampleLevel(Texture2D<uint4>, sampler, float2 location, float LOD, int2 offset); 13714 native uint4 SampleLevel(Texture2DArray<uint4>, sampler, float3 location, float LOD); 13715 native uint4 SampleLevel(Texture2DArray<uint4>, sampler, float3 location, float LOD, int2 offset); 13716 native uint4 SampleLevel(TextureCube<uint4>, sampler, float3 location, float LOD); 13717 native int SampleLevel(Texture2D<int>, sampler, float2 location, float LOD); 13718 native int SampleLevel(Texture2D<int>, sampler, float2 location, float LOD, int2 offset); 13719 native int SampleLevel(Texture2DArray<int>, sampler, float3 location, float LOD); 13720 native int SampleLevel(Texture2DArray<int>, sampler, float3 location, float LOD, int2 offset); 13721 native int SampleLevel(TextureCube<int>, sampler, float3 location, float LOD); 13722 native int2 SampleLevel(Texture2D<int2>, sampler, float2 location, float LOD); 13723 native int2 SampleLevel(Texture2D<int2>, sampler, float2 location, float LOD, int2 offset); 13724 native int2 SampleLevel(Texture2DArray<int2>, sampler, float3 location, float LOD); 13725 native int2 SampleLevel(Texture2DArray<int2>, sampler, float3 location, float LOD, int2 offset); 13726 native int2 SampleLevel(TextureCube<int2>, sampler, float3 location, float LOD); 13727 native int3 SampleLevel(Texture2D<int3>, sampler, float2 location, float LOD); 13728 native int3 SampleLevel(Texture2D<int3>, sampler, float2 location, float LOD, int2 offset); 13729 native int3 SampleLevel(Texture2DArray<int3>, sampler, float3 location, float LOD); 13730 native int3 SampleLevel(Texture2DArray<int3>, sampler, float3 location, float LOD, int2 offset); 13731 native int3 SampleLevel(TextureCube<int3>, sampler, float3 location, float LOD); 13732 native int4 SampleLevel(Texture2D<int4>, sampler, float2 location, float LOD); 13733 native int4 SampleLevel(Texture2D<int4>, sampler, float2 location, float LOD, int2 offset); 13734 native int4 SampleLevel(Texture2DArray<int4>, sampler, float3 location, float LOD); 13735 native int4 SampleLevel(Texture2DArray<int4>, sampler, float3 location, float LOD, int2 offset); 13736 native int4 SampleLevel(TextureCube<int4>, sampler, float3 location, float LOD); 13737 native float SampleLevel(Texture2D<float>, sampler, float2 location, float LOD); 13738 native float SampleLevel(Texture2D<float>, sampler, float2 location, float LOD, int2 offset); 13739 native float SampleLevel(Texture2DArray<float>, sampler, float3 location, float LOD); 13740 native float SampleLevel(Texture2DArray<float>, sampler, float3 location, float LOD, int2 offset); 13741 native float SampleLevel(TextureCube<float>, sampler, float3 location, float LOD); 13742 native float2 SampleLevel(Texture2D<float2>, sampler, float2 location, float LOD); 13743 native float2 SampleLevel(Texture2D<float2>, sampler, float2 location, float LOD, int2 offset); 13744 native float2 SampleLevel(Texture2DArray<float2>, sampler, float3 location, float LOD); 13745 native float2 SampleLevel(Texture2DArray<float2>, sampler, float3 location, float LOD, int2 offset); 13746 native float2 SampleLevel(TextureCube<float2>, sampler, float3 location, float LOD); 13747 native float3 SampleLevel(Texture2D<float3>, sampler, float2 location, float LOD); 13748 native float3 SampleLevel(Texture2D<float3>, sampler, float2 location, float LOD, int2 offset); 13749 native float3 SampleLevel(Texture2DArray<float3>, sampler, float3 location, float LOD); 13750 native float3 SampleLevel(Texture2DArray<float3>, sampler, float3 location, float LOD, int2 offset); 13751 native float3 SampleLevel(TextureCube<float3>, sampler, float3 location, float LOD); 13752 native float4 SampleLevel(Texture2D<float4>, sampler, float2 location, float LOD); 13753 native float4 SampleLevel(Texture2D<float4>, sampler, float2 location, float LOD, int2 offset); 13754 native float4 SampleLevel(Texture2DArray<float4>, sampler, float3 location, float LOD); 13755 native float4 SampleLevel(Texture2DArray<float4>, sampler, float3 location, float LOD, int2 offset); 13756 native float4 SampleLevel(TextureCube<float4>, sampler, float3 location, float LOD); 13757 native float SampleLevel(TextureDepth2D<float>, sampler, float2 location, float LOD); 13758 native float SampleLevel(TextureDepth2D<float>, sampler, float2 location, float LOD, int2 offset); 13759 native float SampleLevel(TextureDepth2DArray<float>, sampler, float3 location, float LOD); 13760 native float SampleLevel(TextureDepth2DArray<float>, sampler, float3 location, float LOD, int2 offset); 13761 native float SampleLevel(TextureDepthCube<float>, sampler, float3 location, float LOD); 13762 13763 /* Functions named SampleBias */ 13764 native uint SampleBias(Texture2D<uint>, sampler, float2 location, float Bias); 13765 native uint SampleBias(Texture2D<uint>, sampler, float2 location, float Bias, int2 offset); 13766 native uint SampleBias(Texture2DArray<uint>, sampler, float3 location, float Bias); 13767 native uint SampleBias(Texture2DArray<uint>, sampler, float3 location, float Bias, int2 offset); 13768 native uint SampleBias(TextureCube<uint>, sampler, float3 location, float Bias); 13769 native uint2 SampleBias(Texture2D<uint2>, sampler, float2 location, float Bias); 13770 native uint2 SampleBias(Texture2D<uint2>, sampler, float2 location, float Bias, int2 offset); 13771 native uint2 SampleBias(Texture2DArray<uint2>, sampler, float3 location, float Bias); 13772 native uint2 SampleBias(Texture2DArray<uint2>, sampler, float3 location, float Bias, int2 offset); 13773 native uint2 SampleBias(TextureCube<uint2>, sampler, float3 location, float Bias); 13774 native uint3 SampleBias(Texture2D<uint3>, sampler, float2 location, float Bias); 13775 native uint3 SampleBias(Texture2D<uint3>, sampler, float2 location, float Bias, int2 offset); 13776 native uint3 SampleBias(Texture2DArray<uint3>, sampler, float3 location, float Bias); 13777 native uint3 SampleBias(Texture2DArray<uint3>, sampler, float3 location, float Bias, int2 offset); 13778 native uint3 SampleBias(TextureCube<uint3>, sampler, float3 location, float Bias); 13779 native uint4 SampleBias(Texture2D<uint4>, sampler, float2 location, float Bias); 13780 native uint4 SampleBias(Texture2D<uint4>, sampler, float2 location, float Bias, int2 offset); 13781 native uint4 SampleBias(Texture2DArray<uint4>, sampler, float3 location, float Bias); 13782 native uint4 SampleBias(Texture2DArray<uint4>, sampler, float3 location, float Bias, int2 offset); 13783 native uint4 SampleBias(TextureCube<uint4>, sampler, float3 location, float Bias); 13784 native int SampleBias(Texture2D<int>, sampler, float2 location, float Bias); 13785 native int SampleBias(Texture2D<int>, sampler, float2 location, float Bias, int2 offset); 13786 native int SampleBias(Texture2DArray<int>, sampler, float3 location, float Bias); 13787 native int SampleBias(Texture2DArray<int>, sampler, float3 location, float Bias, int2 offset); 13788 native int SampleBias(TextureCube<int>, sampler, float3 location, float Bias); 13789 native int2 SampleBias(Texture2D<int2>, sampler, float2 location, float Bias); 13790 native int2 SampleBias(Texture2D<int2>, sampler, float2 location, float Bias, int2 offset); 13791 native int2 SampleBias(Texture2DArray<int2>, sampler, float3 location, float Bias); 13792 native int2 SampleBias(Texture2DArray<int2>, sampler, float3 location, float Bias, int2 offset); 13793 native int2 SampleBias(TextureCube<int2>, sampler, float3 location, float Bias); 13794 native int3 SampleBias(Texture2D<int3>, sampler, float2 location, float Bias); 13795 native int3 SampleBias(Texture2D<int3>, sampler, float2 location, float Bias, int2 offset); 13796 native int3 SampleBias(Texture2DArray<int3>, sampler, float3 location, float Bias); 13797 native int3 SampleBias(Texture2DArray<int3>, sampler, float3 location, float Bias, int2 offset); 13798 native int3 SampleBias(TextureCube<int3>, sampler, float3 location, float Bias); 13799 native int4 SampleBias(Texture2D<int4>, sampler, float2 location, float Bias); 13800 native int4 SampleBias(Texture2D<int4>, sampler, float2 location, float Bias, int2 offset); 13801 native int4 SampleBias(Texture2DArray<int4>, sampler, float3 location, float Bias); 13802 native int4 SampleBias(Texture2DArray<int4>, sampler, float3 location, float Bias, int2 offset); 13803 native int4 SampleBias(TextureCube<int4>, sampler, float3 location, float Bias); 13804 native float SampleBias(Texture2D<float>, sampler, float2 location, float Bias); 13805 native float SampleBias(Texture2D<float>, sampler, float2 location, float Bias, int2 offset); 13806 native float SampleBias(Texture2DArray<float>, sampler, float3 location, float Bias); 13807 native float SampleBias(Texture2DArray<float>, sampler, float3 location, float Bias, int2 offset); 13808 native float SampleBias(TextureCube<float>, sampler, float3 location, float Bias); 13809 native float2 SampleBias(Texture2D<float2>, sampler, float2 location, float Bias); 13810 native float2 SampleBias(Texture2D<float2>, sampler, float2 location, float Bias, int2 offset); 13811 native float2 SampleBias(Texture2DArray<float2>, sampler, float3 location, float Bias); 13812 native float2 SampleBias(Texture2DArray<float2>, sampler, float3 location, float Bias, int2 offset); 13813 native float2 SampleBias(TextureCube<float2>, sampler, float3 location, float Bias); 13814 native float3 SampleBias(Texture2D<float3>, sampler, float2 location, float Bias); 13815 native float3 SampleBias(Texture2D<float3>, sampler, float2 location, float Bias, int2 offset); 13816 native float3 SampleBias(Texture2DArray<float3>, sampler, float3 location, float Bias); 13817 native float3 SampleBias(Texture2DArray<float3>, sampler, float3 location, float Bias, int2 offset); 13818 native float3 SampleBias(TextureCube<float3>, sampler, float3 location, float Bias); 13819 native float4 SampleBias(Texture2D<float4>, sampler, float2 location, float Bias); 13820 native float4 SampleBias(Texture2D<float4>, sampler, float2 location, float Bias, int2 offset); 13821 native float4 SampleBias(Texture2DArray<float4>, sampler, float3 location, float Bias); 13822 native float4 SampleBias(Texture2DArray<float4>, sampler, float3 location, float Bias, int2 offset); 13823 native float4 SampleBias(TextureCube<float4>, sampler, float3 location, float Bias); 13824 native float SampleBias(TextureDepth2D<float>, sampler, float2 location, float Bias); 13825 native float SampleBias(TextureDepth2D<float>, sampler, float2 location, float Bias, int2 offset); 13826 native float SampleBias(TextureDepth2DArray<float>, sampler, float3 location, float Bias); 13827 native float SampleBias(TextureDepth2DArray<float>, sampler, float3 location, float Bias, int2 offset); 13828 native float SampleBias(TextureDepthCube<float>, sampler, float3 location, float Bias); 13829 13830 /* Functions named SampleGrad */ 13831 native uint SampleGrad(Texture2D<uint>, sampler, float2 location, float2 DDX, float2 DDY); 13832 native uint SampleGrad(Texture2D<uint>, sampler, float2 location, float2 DDX, float2 DDY, int2 offset); 13833 native uint SampleGrad(Texture2DArray<uint>, sampler, float3 location, float2 DDX, float2 DDY); 13834 native uint SampleGrad(Texture2DArray<uint>, sampler, float3 location, float2 DDX, float2 DDY, int2 offset); 13835 native uint SampleGrad(TextureCube<uint>, sampler, float3 location, float3 DDX, float3 DDY); 13836 native uint2 SampleGrad(Texture2D<uint2>, sampler, float2 location, float2 DDX, float2 DDY); 13837 native uint2 SampleGrad(Texture2D<uint2>, sampler, float2 location, float2 DDX, float2 DDY, int2 offset); 13838 native uint2 SampleGrad(Texture2DArray<uint2>, sampler, float3 location, float2 DDX, float2 DDY); 13839 native uint2 SampleGrad(Texture2DArray<uint2>, sampler, float3 location, float2 DDX, float2 DDY, int2 offset); 13840 native uint2 SampleGrad(TextureCube<uint2>, sampler, float3 location, float3 DDX, float3 DDY); 13841 native uint3 SampleGrad(Texture2D<uint3>, sampler, float2 location, float2 DDX, float2 DDY); 13842 native uint3 SampleGrad(Texture2D<uint3>, sampler, float2 location, float2 DDX, float2 DDY, int2 offset); 13843 native uint3 SampleGrad(Texture2DArray<uint3>, sampler, float3 location, float2 DDX, float2 DDY); 13844 native uint3 SampleGrad(Texture2DArray<uint3>, sampler, float3 location, float2 DDX, float2 DDY, int2 offset); 13845 native uint3 SampleGrad(TextureCube<uint3>, sampler, float3 location, float3 DDX, float3 DDY); 13846 native uint4 SampleGrad(Texture2D<uint4>, sampler, float2 location, float2 DDX, float2 DDY); 13847 native uint4 SampleGrad(Texture2D<uint4>, sampler, float2 location, float2 DDX, float2 DDY, int2 offset); 13848 native uint4 SampleGrad(Texture2DArray<uint4>, sampler, float3 location, float2 DDX, float2 DDY); 13849 native uint4 SampleGrad(Texture2DArray<uint4>, sampler, float3 location, float2 DDX, float2 DDY, int2 offset); 13850 native uint4 SampleGrad(TextureCube<uint4>, sampler, float3 location, float3 DDX, float3 DDY); 13851 native int SampleGrad(Texture2D<int>, sampler, float2 location, float2 DDX, float2 DDY); 13852 native int SampleGrad(Texture2D<int>, sampler, float2 location, float2 DDX, float2 DDY, int2 offset); 13853 native int SampleGrad(Texture2DArray<int>, sampler, float3 location, float2 DDX, float2 DDY); 13854 native int SampleGrad(Texture2DArray<int>, sampler, float3 location, float2 DDX, float2 DDY, int2 offset); 13855 native int SampleGrad(TextureCube<int>, sampler, float3 location, float3 DDX, float3 DDY); 13856 native int2 SampleGrad(Texture2D<int2>, sampler, float2 location, float2 DDX, float2 DDY); 13857 native int2 SampleGrad(Texture2D<int2>, sampler, float2 location, float2 DDX, float2 DDY, int2 offset); 13858 native int2 SampleGrad(Texture2DArray<int2>, sampler, float3 location, float2 DDX, float2 DDY); 13859 native int2 SampleGrad(Texture2DArray<int2>, sampler, float3 location, float2 DDX, float2 DDY, int2 offset); 13860 native int2 SampleGrad(TextureCube<int2>, sampler, float3 location, float3 DDX, float3 DDY); 13861 native int3 SampleGrad(Texture2D<int3>, sampler, float2 location, float2 DDX, float2 DDY); 13862 native int3 SampleGrad(Texture2D<int3>, sampler, float2 location, float2 DDX, float2 DDY, int2 offset); 13863 native int3 SampleGrad(Texture2DArray<int3>, sampler, float3 location, float2 DDX, float2 DDY); 13864 native int3 SampleGrad(Texture2DArray<int3>, sampler, float3 location, float2 DDX, float2 DDY, int2 offset); 13865 native int3 SampleGrad(TextureCube<int3>, sampler, float3 location, float3 DDX, float3 DDY); 13866 native int4 SampleGrad(Texture2D<int4>, sampler, float2 location, float2 DDX, float2 DDY); 13867 native int4 SampleGrad(Texture2D<int4>, sampler, float2 location, float2 DDX, float2 DDY, int2 offset); 13868 native int4 SampleGrad(Texture2DArray<int4>, sampler, float3 location, float2 DDX, float2 DDY); 13869 native int4 SampleGrad(Texture2DArray<int4>, sampler, float3 location, float2 DDX, float2 DDY, int2 offset); 13870 native int4 SampleGrad(TextureCube<int4>, sampler, float3 location, float3 DDX, float3 DDY); 13871 native float SampleGrad(Texture2D<float>, sampler, float2 location, float2 DDX, float2 DDY); 13872 native float SampleGrad(Texture2D<float>, sampler, float2 location, float2 DDX, float2 DDY, int2 offset); 13873 native float SampleGrad(Texture2DArray<float>, sampler, float3 location, float2 DDX, float2 DDY); 13874 native float SampleGrad(Texture2DArray<float>, sampler, float3 location, float2 DDX, float2 DDY, int2 offset); 13875 native float SampleGrad(TextureCube<float>, sampler, float3 location, float3 DDX, float3 DDY); 13876 native float2 SampleGrad(Texture2D<float2>, sampler, float2 location, float2 DDX, float2 DDY); 13877 native float2 SampleGrad(Texture2D<float2>, sampler, float2 location, float2 DDX, float2 DDY, int2 offset); 13878 native float2 SampleGrad(Texture2DArray<float2>, sampler, float3 location, float2 DDX, float2 DDY); 13879 native float2 SampleGrad(Texture2DArray<float2>, sampler, float3 location, float2 DDX, float2 DDY, int2 offset); 13880 native float2 SampleGrad(TextureCube<float2>, sampler, float3 location, float3 DDX, float3 DDY); 13881 native float3 SampleGrad(Texture2D<float3>, sampler, float2 location, float2 DDX, float2 DDY); 13882 native float3 SampleGrad(Texture2D<float3>, sampler, float2 location, float2 DDX, float2 DDY, int2 offset); 13883 native float3 SampleGrad(Texture2DArray<float3>, sampler, float3 location, float2 DDX, float2 DDY); 13884 native float3 SampleGrad(Texture2DArray<float3>, sampler, float3 location, float2 DDX, float2 DDY, int2 offset); 13885 native float3 SampleGrad(TextureCube<float3>, sampler, float3 location, float3 DDX, float3 DDY); 13886 native float4 SampleGrad(Texture2D<float4>, sampler, float2 location, float2 DDX, float2 DDY); 13887 native float4 SampleGrad(Texture2D<float4>, sampler, float2 location, float2 DDX, float2 DDY, int2 offset); 13888 native float4 SampleGrad(Texture2DArray<float4>, sampler, float3 location, float2 DDX, float2 DDY); 13889 native float4 SampleGrad(Texture2DArray<float4>, sampler, float3 location, float2 DDX, float2 DDY, int2 offset); 13890 native float4 SampleGrad(TextureCube<float4>, sampler, float3 location, float3 DDX, float3 DDY); 13891 native float SampleGrad(TextureDepth2D<float>, sampler, float2 location, float2 DDX, float2 DDY); 13892 native float SampleGrad(TextureDepth2D<float>, sampler, float2 location, float2 DDX, float2 DDY, int2 offset); 13893 native float SampleGrad(TextureDepth2DArray<float>, sampler, float3 location, float2 DDX, float2 DDY); 13894 native float SampleGrad(TextureDepth2DArray<float>, sampler, float3 location, float2 DDX, float2 DDY, int2 offset); 13895 native float SampleGrad(TextureDepthCube<float>, sampler, float3 location, float3 DDX, float3 DDY); 13896 13696 13897 /* Functions named sinh */ 13697 13898 native float sinh(float);
Note: See TracChangeset
for help on using the changeset viewer.