 9a78addff0
			
		
	
	
		9a78addff0
		
	
	
	
	
		
			
			This PR adds normal maps on top of PBR #1554. Once that PR lands, the changes should look simpler. Edit: Turned out to be so little extra work, I added metallic/roughness texture too. And occlusion and emissive. Co-authored-by: Carter Anderson <mcanders1@gmail.com>
		
			
				
	
	
		
			40 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Rust
		
	
	
	
	
	
| use bevy::{pbr::AmbientLight, prelude::*};
 | |
| 
 | |
| fn main() {
 | |
|     App::build()
 | |
|         .insert_resource(AmbientLight {
 | |
|             color: Color::WHITE,
 | |
|             brightness: 1.0 / 5.0f32,
 | |
|         })
 | |
|         .insert_resource(Msaa { samples: 4 })
 | |
|         .add_plugins(DefaultPlugins)
 | |
|         .add_startup_system(setup.system())
 | |
|         .add_system(rotator_system.system())
 | |
|         .run();
 | |
| }
 | |
| 
 | |
| fn setup(mut commands: Commands, asset_server: Res<AssetServer>) {
 | |
|     commands.spawn_scene(asset_server.load("models/FlightHelmet/FlightHelmet.gltf#Scene0"));
 | |
|     commands.spawn_bundle(PerspectiveCameraBundle {
 | |
|         transform: Transform::from_xyz(0.7, 0.7, 1.0).looking_at(Vec3::new(0.0, 0.3, 0.0), Vec3::Y),
 | |
|         ..Default::default()
 | |
|     });
 | |
|     commands
 | |
|         .spawn_bundle(LightBundle {
 | |
|             transform: Transform::from_xyz(3.0, 5.0, 3.0),
 | |
|             ..Default::default()
 | |
|         })
 | |
|         .insert(Rotates);
 | |
| }
 | |
| 
 | |
| /// this component indicates what entities should rotate
 | |
| struct Rotates;
 | |
| 
 | |
| fn rotator_system(time: Res<Time>, mut query: Query<&mut Transform, With<Rotates>>) {
 | |
|     for mut transform in query.iter_mut() {
 | |
|         *transform = Transform::from_rotation(Quat::from_rotation_y(
 | |
|             (4.0 * std::f32::consts::PI / 20.0) * time.delta_seconds(),
 | |
|         )) * *transform;
 | |
|     }
 | |
| }
 |