48 |
if(initStencil != null) return; |
if(initStencil != null) return; |
49 |
|
|
50 |
initStencil = GLRen.createCallList( |
initStencil = GLRen.createCallList( |
51 |
" PushAttrib DEPTH_BUFFER_BIT ENABLE_BIT STENCIL_BUFFER_BIT COLOR_BUFFER_BIT\n"+ |
" PushAttrib DEPTH_BUFFER_BIT ENABLE_BIT STENCIL_BUFFER_BIT COLOR_BUFFER_BIT DEPTH_BUFFER_BIT\n"+ |
52 |
" Enable STENCIL_TEST\n"+ |
" Enable STENCIL_TEST\n"+ |
53 |
|
" Enable DEPTH_TEST\n"+ |
54 |
" StencilFunc ALWAYS 1 255\n"+ |
" StencilFunc ALWAYS 1 255\n"+ |
55 |
" StencilOp ZERO ZERO REPLACE\n"+ // XXX |
" StencilOp ZERO ZERO REPLACE\n"+ // XXX |
56 |
" StencilMask 255\n"+ |
" StencilMask 255\n"+ |
60 |
|
|
61 |
initOutside = GLRen.createCallList( |
initOutside = GLRen.createCallList( |
62 |
" StencilFunc EQUAL 0 1\n"+ |
" StencilFunc EQUAL 0 1\n"+ |
63 |
|
" Enable DEPTH_TEST\n"+ |
64 |
" ColorMask 1 1 1 1\n"+ |
" ColorMask 1 1 1 1\n"+ |
65 |
" StencilMask 0\n"+ |
" StencilMask 0\n"+ |
66 |
" DepthMask 1\n" |
" DepthMask 1\n" |
67 |
); |
); |
68 |
|
|
69 |
initBackplane = GLRen.createCallList( |
initBackplane = GLRen.createCallList( |
70 |
" PushAttrib ENABLE_BIT STENCIL_BUFFER_BIT COLOR_BUFFER_BIT\n"+ |
" PushAttrib ENABLE_BIT STENCIL_BUFFER_BIT COLOR_BUFFER_BIT DEPTH_BUFFER_BIT\n"+ |
71 |
" PushMatrix \n"+ |
" PushMatrix \n"+ |
72 |
" Translate 0 0 10000 \n"+ |
" Translate 0 0 1000 \n"+ |
73 |
" StencilFunc EQUAL 1 1\n"+ |
" StencilFunc EQUAL 1 1\n"+ |
74 |
" Disable DEPTH_TEST\n" |
" Enable DEPTH_TEST\n"+ |
75 |
|
" DepthFunc ALWAYS\n"+ |
76 |
|
" DepthMask 1\n" |
77 |
); |
); |
78 |
|
|
79 |
exitBackplane = GLRen.createCallList( |
exitBackplane = GLRen.createCallList( |
84 |
initContents_depth = GLRen.createCallList( |
initContents_depth = GLRen.createCallList( |
85 |
" ColorMask 1 1 1 1\n"+ |
" ColorMask 1 1 1 1\n"+ |
86 |
" StencilFunc EQUAL 1 1\n"+ |
" StencilFunc EQUAL 1 1\n"+ |
87 |
" StencilMask 0\n" |
" StencilMask 0\n"+ |
88 |
|
" DepthMask 1\n"+ |
89 |
|
" Enable DEPTH_TEST\n" |
90 |
); |
); |
91 |
initContents_nodepth = GLRen.createCallList( |
initContents_nodepth = GLRen.createCallList( |
92 |
" ColorMask 1 1 1 1\n"+ |
" ColorMask 1 1 1 1\n"+ |
93 |
" StencilFunc EQUAL 1 1\n"+ |
" StencilFunc EQUAL 1 1\n"+ |
|
" DepthMask 0\n"+ |
|
94 |
" StencilMask 0\n"+ |
" StencilMask 0\n"+ |
95 |
|
" DepthMask 0\n"+ |
96 |
" Disable DEPTH_TEST\n" |
" Disable DEPTH_TEST\n" |
97 |
); |
); |
98 |
|
|
100 |
" StencilFunc EQUAL 1 1\n"+ |
" StencilFunc EQUAL 1 1\n"+ |
101 |
" StencilOp ZERO ZERO ZERO\n"+ // XXX |
" StencilOp ZERO ZERO ZERO\n"+ // XXX |
102 |
" StencilMask 255\n"+ |
" StencilMask 255\n"+ |
103 |
|
" Enable DEPTH_TEST\n"+ |
104 |
|
" DepthFunc ALWAYS\n"+ |
105 |
" DepthMask 1\n"+ // Do write now. |
" DepthMask 1\n"+ // Do write now. |
106 |
" ColorMask 0 0 0 0\n" |
" ColorMask 0 0 0 0\n" |
107 |
); |
); |