#pragma profileoption directive

From the manual:
“ARB_vertex_program with no instruction limit and ARB_fragment_program with 1024 instruction limit (512 texture + 512 arithmetic), 32 temporary registers and 4 texture indirections. It is possible to override these limits using #pragma profileoption directive. E.g. #pragma profileoption MaxTexIndirections=256 raises texture indirections limit to 256.”

The question is: what are the other keywords except for “MaxTexIndirections” to be used with this directive?

thanks

No, these are limits of the hardware and shader model specified.

raising the limit there won’t solve restrictions of the shader model, if you really run on a sm2 or sm3 hardware, especially ati, the raise there will only ensure it totally nuts out.

I understand that.

I just want to know the other keywords ).

me too, where is the list of words?

Googled into this thread…

Having problems with error:
“Program ‘frag’, Temporary register limit of 32 exceeded; 48 registers needed to compile program at line 15”

And if you use “#pragma target 3.0”

then this next line does nothing: (?)
#pragma profileoption NumTemps=64

Also founded some more options here (not sure if they all work in unity…)

Profile Options

NumTemps=n
NumInstructionSlots=n
NumTexInstructionSlots=n
NumMathInstructionSlots=n
MaxTexIndirections=n
ATI_draw_buffers
ARB_draw_buffers
MaxDrawBuffers=n
MaxLocalParams=n
pixel_center_integer=b
origin_upper_left=b

http://http.developer.nvidia.com/Cg/arbfp1.html