|
textureLod into HLSL
#479450
03/30/20 18:01
03/30/20 18:01
|
Joined: May 2009
Posts: 5,370 Caucasus
3run
OP
Senior Expert
|
OP
Senior Expert
Joined: May 2009
Posts: 5,370
Caucasus
|
Hey, I've been trying to convert some stuff from shadertoy into HLSL and faced this textureLod thing: vec3 col = textureLod(iChannel0, UV+n, focus).rgb; Here how I tried to solve it: float4 s = float4(UV.x + n.x, UV.y + n.y, 0, focus);
float3 col = tex2Dlod(postTex, s).rgb; This one does compile, but it doesn't seems to work correctly (doesn't get blurred)... Then I tried this: Texture2D MyTexture;
float4 FP(float2 fragCoord: VPOS) : COLOR
{
/// ... ///
float3 col = MyTexture.SampleLevel(postTex, UV+n, focus).rgb;
/// ... ///
}
But it gave me malfunction W1550: Here is original version: https://www.shadertoy.com/view/ltffzlBest regards!
|
|
|
Re: textureLod into HLSL
[Re: Emre]
#479460
03/31/20 09:28
03/31/20 09:28
|
Joined: May 2009
Posts: 5,370 Caucasus
3run
OP
Senior Expert
|
OP
Senior Expert
Joined: May 2009
Posts: 5,370
Caucasus
|
i think "SampleLevel" is part of shader 4.0. (Minimum dx10) That's sad... so I guess there is no easy way to convert this line?
|
|
|
Re: textureLod into HLSL
[Re: 3run]
#479461
03/31/20 09:36
03/31/20 09:36
|
Joined: Jun 2007
Posts: 1,337 Hiporope and its pain
txesmi
Serious User
|
Serious User
Joined: Jun 2007
Posts: 1,337
Hiporope and its pain
|
float4 s = float4(UV.x + n.x, UV.y + n.y, 0, focus);
float3 col = tex2Dlod(postTex, s).rgb; This one does compile, but it doesn't seems to work correctly (doesn't get blurred)... You are right there, 'tex2Dlod' is the corresponding function but the source image needs mipmaps to make a difference. It seems you are trying to blur a scene through its render target and render targets never have mipmaps.
|
|
|
|