glCombinerParameteri(GL_NUM_GENERAL_COMBINERS, 0)

Hi,

I’m using register combiners for some fragment processing but I can compute everything I want just in the final stage. The spec mandates at least one general combiner stage. Do I really need to request one GCS (discarding all outputs of that stage) ?

Yes, you have to enable at least one general combiner stage, otherwise you will get an OpenGL error. Strange, but that’s how it is …

[This message has been edited by KlausE (edited 04-18-2003).]

Originally posted by vincoof:
[b]Hi,

I’m using register combiners for some fragment processing but I can compute everything I want just in the final stage. The spec mandates at least one general combiner stage. Do I really need to request one GCS (discarding all outputs of that stage) ?[/b]

Yes.

The reason is that a single general combiner is always free, hence you always use at least one combiner (even if you choose to discard that single combiner’s outputs and settle for just the final combiner math).

Perhaps being able to request zero combiners would be a nice API feature, but at this point, there’s too many GeForce drivers out there that require at lesat one general combiner and discarding the first general combiner’s set of outputs is not too difficult.

I hope this helps.

  • Mark

Thanks for the answer.

If the first general combiner stage is free, then the only slowdown comes to setting the OpenGL state to “discard all outputs” which is really negligible I think.

Thanks,
Vincent