이것은 계산 쉐이더에 있지만, 일반적인 hlsl 일이라고 생각합니다.Texture2D as function parameter
Texture2D<float> Ground : register(t1);
Texture2D<float> Water : register(t2);
SamplerState LinearSampler
{
Filter = MIN_MAG_MIP_LINEAR;
AddressU = Clamp;
AddressV = Clamp;
};
float4 Get(Texture2D source, float x, float y)
{
return source.SampleLevel(LinearSampler, float2(x * dimension.z, y * dimension.w), 0);
}
[numthreads(32, 32, 1)]
void main(uint3 threadID : SV_DispatchThreadID, uint3 groupThreadID : SV_GroupThreadID, uint3 blockID : SV_GroupID)
{
float4 g = GetGround(Ground, 0, 0);
Output[threadID.xy] = g.z;
}
Get 메소드에 대한 모든 호출하는 것은 나에게 줄 :
오류 X3017 : 여기 단편이다 '가져 오기'암시 'Texture2D'가
'float4 Get (const Texture2D source, float x, float y)'을 시도해 보셨습니까? – Gnietschow
어떻게 Get()을 호출합니까? 매개 변수 유형은 무엇입니까? – Drop
어디에서이 함수를 호출 했습니까? 호출 코드가 없으면 근본 원인을 식별하기가 어렵습니다. – zdd