From: Rune P. <ru...@me...> - 2006-05-15 17:55:20
|
Brian Paul wrote: > Rune Petersen wrote: >> Brian Paul wrote: >> >>> Rune Petersen wrote: >>> >>>> I found the problem: >>>> In Mesa MAX_TEXTURE_UNITS, MAX_TEXTURE_COORD_UNITS, and >>>> MAX_TEXTURE_IMAGE_UNITS are all set to 8. (src/mesa/main/config.h) >>>> >>>> And there are no sanity-checks done on the values returned by the >>>> drivers. >>>> >>>> Changing the defines to 16 makes everything work. >>>> >>>> Changing only MAX_TEXTURE_IMAGE_UNITS should be valid according to >>>> src/mesa/main/config.h but a sanity-check fails (if commented out it >>>> lockups like before). >>>> >>>> In the future it would be nice to have bounds checks on the Const.* >>>> values. >>> >>> >>> I've added a new function that does some sanity checks on the >>> ctx->Const.* values the first time a context is bound. >> >> >> Great I hope it not a silent check... > > That wouldn't be much good, would it? You could just clamp the value in the case of tex units to 8. I just wanted to make sure the user/devel is notified when the limits of Mesa is reached, so the either Mesa or the driver can be fixed. > > >>> As discussed a few days ago, we're presently limited to 8 texture >>> image and coordinate units in core Mesa. >>> >> I see in other words the restriction on MAX_TEXTURE_IMAGE_UNITS have >> to be there until splitting of the 2 units is completed in Mesa. >> (managed to find a working mesa3d-dev archive) > > The splitting is largely complete. The larger issue has to do with the > allocation and processing of vertex and fragment attributes. Ok, thank you. Rune Petersen |