Cyrille
Go ahead and commit those changes.
This turned out to be an architecture problem where PowerPC conformed to the casts and x86 didn't. The MacBook here also had the same problem.
Looks like some further vetting of the code is needed to deal with 'x86 float' issues.
cgc
finally : i replace all GLclampd by float
and cast the value on the glClearDepth.
like in the attachment.
this solve the problem.
is it clean enough to be commited on the cvs?
cyrille
cyrille henry a écrit :
> i made more test.
> the depth buffer is empty, but not with the correct value.
> the problem comes from GEMglClearDepth
>
> this code :
>
> /////////////////////////////////////////////////////////
> // Render
> //
> void GEMglClearDepth :: render(GemState *state) {
> glClearDepth (10); // <- fix for test only
> post("depth : %d", depth); // <- ...
>
> }
>
> gives :
> depth : 1073741824 in the log
> and the patch is working.
>
> look like there is a problem with (GLclampd) casting.
>
>
> cyrille
>
>
> chris clepper a écrit :
>> Yes, that mask is only for the depth buffer. The mask for color and
>> depth would be 256 + 16384.
>> On 8/21/06, *cyrille henry* < cyrille.henry@la-kitchen.fr
>> <mailto:cyrille.henry@la-kitchen.fr>> wrote:
>>
>> I add the line :
>>
>> post("mask %d, depth %d, current %d, color %d", mask,
>> GL_DEPTH_BUFFER_BIT, GL_CURRENT_BIT, GL_COLOR_BUFFER_BIT);
>>
>>
>> and it gives me :
>> mask 256, depth 256, current 1, color 16384
>>
>> looks OK.
>> ???
>>
>> cyrille
>>
>> chris clepper a écrit :
>> > On 8/21/06, *cyrille henry* < cyrille.henry@la-kitchen.fr
>> <mailto:cyrille.henry@la-kitchen.fr>
>> > <mailto:cyrille.henry@la-kitchen.fr
>> <mailto:cyrille.henry@la-kitchen.fr>>> wrote:
>> >
>> > well, if you see something, then it "work better"
>> > i think we have the same problem.
>> >
>> > so, i think the gemglcleardeph and gemglclear does not only
>> clear depth
>> > buffer, but also the color buffer.
>> > but i don't really see why, and how to solve this.
>> >
>> >
>> > It works on both Nvidia and ATI on OSX, but not ATI on
>> Windows. The
>> > code only clears the depth buffer, so I can't see what would
>> trigger the
>> > clearing of any other buffers. Maybe the GLdefine constants are
>> wrong
>> > or there is an OR being done? Try printing out
>> GL_DEPTH_BUFFER_BIT,
>> > GL_CURRENT_BIT and GL_COLOR_BUFFER_BIT to the console.
>> >
>> > cgc
>> >
>> >
>> >
>> >
>>
>> ------------------------------------------------------------------------
>>
>> >
>> > _______________________________________________
>> > GEM-dev mailing list
>> > GEM-dev@iem.at <mailto: GEM-dev@iem.at>
>> > http://lists.puredata.info/listinfo/gem-dev
>> < http://lists.puredata.info/listinfo/gem-dev>
>>
>>
>
> _______________________________________________
> GEM-dev mailing list
> GEM-dev@iem.at
> http://lists.puredata.info/listinfo/gem-dev
>
>