… | |
… | |
133 | { |
133 | { |
134 | matrix &m = perspective; |
134 | matrix &m = perspective; |
135 | |
135 | |
136 | m(0,0) = 1.F / xmax; m(0,1) = 0; m(0,2) = 0; m(0,3) = 0; |
136 | m(0,0) = 1.F / xmax; m(0,1) = 0; m(0,2) = 0; m(0,3) = 0; |
137 | m(1,0) = 0; m(1,1) = 1.F / ymax; m(1,2) = 0; m(1,3) = 0; |
137 | m(1,0) = 0; m(1,1) = 1.F / ymax; m(1,2) = 0; m(1,3) = 0; |
138 | m(2,0) = 0; m(2,1) = 0; m(2,2) = -1e18F / z_far; m(2,3) = 0; |
138 | m(2,0) = 0; m(2,1) = 0; m(2,2) = -1e30F / z_far; m(2,3) = 0; |
139 | m(3,0) = 0; m(3,1) = 0; m(3,2) = -1.F; m(3,3) = 0; |
139 | m(3,0) = 0; m(3,1) = 0; m(3,2) = -1.F; m(3,3) = 0; |
140 | |
140 | |
141 | glLoadMatrixf (perspective); |
141 | glLoadMatrixf (perspective); |
142 | } |
142 | } |
143 | //glFrustum (-xmax, xmax, -ymax, ymax, z_near, z_far); |
143 | //glFrustum (-xmax, xmax, -ymax, ymax, z_near, z_far); |
… | |
… | |
160 | m(0,0) = rx.x; m(0,1) = rx.y; m(0,2) = rx.z; m(0,3) = 0; |
160 | m(0,0) = rx.x; m(0,1) = rx.y; m(0,2) = rx.z; m(0,3) = 0; |
161 | m(1,0) = ry.x; m(1,1) = ry.y; m(1,2) = ry.z; m(1,3) = 0; |
161 | m(1,0) = ry.x; m(1,1) = ry.y; m(1,2) = ry.z; m(1,3) = 0; |
162 | m(2,0) = rz.x; m(2,1) = rz.y; m(2,2) = rz.z; m(2,3) = 0; |
162 | m(2,0) = rz.x; m(2,1) = rz.y; m(2,2) = rz.z; m(2,3) = 0; |
163 | m(3,0) = 0; m(3,1) = 0; m(3,2) = 0; m(3,3) = 1.F; |
163 | m(3,0) = 0; m(3,1) = 0; m(3,2) = 0; m(3,3) = 1.F; |
164 | |
164 | |
165 | diagfact = abs (rz.x) + abs (rz.y) + abs (rz.z); |
165 | //diagfact = abs (rz.x) + abs (rz.y) + abs (rz.z); |
|
|
166 | diagfact = sqrtf (3.F); |
166 | //printf ("diagfact = %f\n", diagfact); |
167 | //printf ("diagfact = %f\n", diagfact); |
167 | //diagfact = sqrtf (3.);//D WHY??? |
168 | //diagfact = sqrtf (3.);//D WHY??? |
168 | |
169 | |
169 | glMultMatrixf (m); |
170 | glMultMatrixf (m); |
170 | |
171 | |