On 28 April 2010 14:29, Roderick Colenbrander thunderbird2k@gmail.com wrote:
This patch fixes an issue in "King's Bounty: The Legend" for which a shader of the form: 'texture2D(sampler2D, tmp0.xyz)' was generated. The nvidia GLSL compiler wants to have tmp0.xyz.
We talked about this on IRC yesterday, the reason this happens is that the sampler type is wrong.
I didn't make up out of that discussion that another solution was needed but no problem. Yesterday I mentioned that 'setting fake 2d sampler' line but after a more thorough look pixel_shader_update_samplers which is called before the shader is generated again sets a 2D sampler (it gets this from the texture). This makes me believe the patch is fine unless the call which retrieves this info from the texture is wrong but I doubt it is wrong but if you want I can look closer to that.
Roderick
On Wed, Apr 28, 2010 at 2:54 PM, Henri Verbeet hverbeet@gmail.com wrote:
On 28 April 2010 14:29, Roderick Colenbrander thunderbird2k@gmail.com wrote:
This patch fixes an issue in "King's Bounty: The Legend" for which a shader of the form: 'texture2D(sampler2D, tmp0.xyz)' was generated. The nvidia GLSL compiler wants to have tmp0.xyz.
We talked about this on IRC yesterday, the reason this happens is that the sampler type is wrong.
On 28 April 2010 19:40, Roderick Colenbrander thunderbird2k@gmail.com wrote:
I didn't make up out of that discussion that another solution was needed but no problem. Yesterday I mentioned that 'setting fake 2d sampler' line but after a more thorough look pixel_shader_update_samplers which is called before the shader is generated again sets a 2D sampler (it gets this from the texture). This makes me believe the patch is fine unless the call which retrieves this info from the texture is wrong but I doubt it is wrong but if you want I can look closer to that.
Maybe it just needs a test then.