12
12
//! ```
13
13
14
14
use shared:: * ;
15
- use spirv_std:: glam:: { const_mat2 , vec2, vec3, Mat2 , Vec2 , Vec3 , Vec3Swizzles , Vec4 } ;
15
+ use spirv_std:: glam:: { mat2 , vec2, vec3, Mat2 , Vec2 , Vec3 , Vec3Swizzles , Vec4 } ;
16
16
17
17
// Note: This cfg is incorrect on its surface, it really should be "are we compiling with std", but
18
18
// we tie #[no_std] above to the same condition, so it's fine.
@@ -41,7 +41,7 @@ const SPEED: f32 = 0.5;
41
41
// math functions
42
42
//
43
43
44
- const _MR: Mat2 = const_mat2 ! ( [ 0.84147 , 0.54030 , 0.54030 , -0.84147 ] ) ;
44
+ const _MR: Mat2 = mat2 ( vec2 ( 0.84147 , 0.54030 ) , vec2 ( 0.54030 , -0.84147 ) ) ;
45
45
fn hash ( n : f32 ) -> f32 {
46
46
( n. sin ( ) * 43758.5453 ) . gl_fract ( )
47
47
}
@@ -135,16 +135,16 @@ impl Inputs {
135
135
* dist = MAXDISTANCE ;
136
136
let mut distcheck: f32 = 0.0 ;
137
137
138
- let mut sphere_center: Vec3 = Vec3 :: zero ( ) ;
138
+ let mut sphere_center: Vec3 = Vec3 :: ZERO ;
139
139
let mut col: Vec3 ;
140
- let mut normalcheck: Vec3 = Vec3 :: zero ( ) ;
140
+ let mut normalcheck: Vec3 = Vec3 :: ZERO ;
141
141
if intersect_plane ( ro, rd, 0.0 , & mut distcheck) && distcheck < MAXDISTANCE {
142
142
* dist = distcheck;
143
143
* material = 1 ;
144
144
* normal = vec3 ( 0.0 , 1.0 , 0.0 ) ;
145
- col = Vec3 :: one ( ) ;
145
+ col = Vec3 :: ONE ;
146
146
} else {
147
- col = Vec3 :: zero ( ) ;
147
+ col = Vec3 :: ZERO ;
148
148
}
149
149
150
150
// trace grid
@@ -159,7 +159,7 @@ impl Inputs {
159
159
if * material > 1 || ro. xz ( ) . distance ( pos. xz ( ) ) > * dist + GRIDSIZE {
160
160
break ;
161
161
}
162
- let mut offset: Vec2 = Vec2 :: zero ( ) ;
162
+ let mut offset: Vec2 = Vec2 :: ZERO ;
163
163
get_sphere_offset ( pos. xz ( ) , & mut offset) ;
164
164
165
165
self . get_moving_sphere_position ( pos. xz ( ) , -offset, & mut sphere_center) ;
@@ -187,7 +187,7 @@ impl Inputs {
187
187
i += 1 ;
188
188
}
189
189
190
- let mut color: Vec3 = Vec3 :: zero ( ) ;
190
+ let mut color: Vec3 = Vec3 :: ZERO ;
191
191
if * material > 0 {
192
192
* intersection = ro + rd * * dist;
193
193
let map: Vec2 = ( intersection. xz ( ) / GRIDSIZE ) . floor ( ) * GRIDSIZE ;
@@ -200,10 +200,10 @@ impl Inputs {
200
200
let mut y = 0 ;
201
201
while y < 3 {
202
202
let mapoffset: Vec2 = map + vec2 ( [ c. x , c. y , c. z ] [ x] , [ c. x , c. y , c. z ] [ y] ) ;
203
- let mut offset: Vec2 = Vec2 :: zero ( ) ;
203
+ let mut offset: Vec2 = Vec2 :: ZERO ;
204
204
get_sphere_offset ( mapoffset, & mut offset) ;
205
205
let lcolor: Vec3 = get_sphere_color ( mapoffset) ;
206
- let mut lpos: Vec3 = Vec3 :: zero ( ) ;
206
+ let mut lpos: Vec3 = Vec3 :: ZERO ;
207
207
self . get_moving_sphere_position ( mapoffset, -offset, & mut lpos) ;
208
208
209
209
let mut shadow: f32 = 1.0 ;
@@ -220,10 +220,10 @@ impl Inputs {
220
220
221
221
let smapoffset: Vec2 =
222
222
map + vec2 ( [ c. x , c. y , c. z ] [ x] , [ c. x , c. y , c. z ] [ y] ) ;
223
- let mut soffset: Vec2 = Vec2 :: zero ( ) ;
223
+ let mut soffset: Vec2 = Vec2 :: ZERO ;
224
224
get_sphere_offset ( smapoffset, & mut soffset) ;
225
- let mut slpos: Vec3 = Vec3 :: zero ( ) ;
226
- let mut sn: Vec3 = Vec3 :: zero ( ) ;
225
+ let mut slpos: Vec3 = Vec3 :: ZERO ;
226
+ let mut sn: Vec3 = Vec3 :: ZERO ;
227
227
get_sphere_position ( smapoffset, soffset, & mut slpos) ;
228
228
let mut sd: f32 = 0.0 ;
229
229
if intersect_unit_sphere (
@@ -285,8 +285,8 @@ impl Inputs {
285
285
let mut rd: Vec3 = ( p. x * cu + p. y * cv + 1.5 * cw) . normalize ( ) ;
286
286
// raytrace
287
287
let mut material: i32 = 0 ;
288
- let mut normal: Vec3 = Vec3 :: zero ( ) ;
289
- let mut intersection: Vec3 = Vec3 :: zero ( ) ;
288
+ let mut normal: Vec3 = Vec3 :: ZERO ;
289
+ let mut intersection: Vec3 = Vec3 :: ZERO ;
290
290
let mut dist: f32 = 0.0 ;
291
291
292
292
let mut col: Vec3 = self . trace (
@@ -312,7 +312,7 @@ impl Inputs {
312
312
}
313
313
314
314
col = col. powf_vec ( vec3 ( EXPOSURE , EXPOSURE , EXPOSURE ) ) ;
315
- col = col. clamp ( Vec3 :: zero ( ) , Vec3 :: one ( ) ) ;
315
+ col = col. clamp ( Vec3 :: ZERO , Vec3 :: ONE ) ;
316
316
// vigneting
317
317
col *= 0.25 + 0.75 * ( 16.0 * q. x * q. y * ( 1.0 - q. x ) * ( 1.0 - q. y ) ) . powf ( 0.15 ) ;
318
318
0 commit comments