Skip to content

Commit

Permalink
Add view transform to view uniform
Browse files Browse the repository at this point in the history
  • Loading branch information
lwansbrough committed Feb 7, 2022
1 parent b13f238 commit de94338
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 1 deletion.
1 change: 1 addition & 0 deletions crates/bevy_pbr/src/render/mesh_view_bind_group.wgsl
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
struct View {
view_proj: mat4x4<f32>;
view: mat4x4<f32>;
inverse_view: mat4x4<f32>;
projection: mat4x4<f32>;
world_position: vec3<f32>;
Expand Down
5 changes: 4 additions & 1 deletion crates/bevy_render/src/view/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ pub struct ExtractedView {
#[derive(Clone, AsStd140)]
pub struct ViewUniform {
view_proj: Mat4,
view: Mat4,
inverse_view: Mat4,
projection: Mat4,
world_position: Vec3,
Expand Down Expand Up @@ -145,10 +146,12 @@ fn prepare_view_uniforms(
view_uniforms.uniforms.clear();
for (entity, camera) in views.iter() {
let projection = camera.projection;
let inverse_view = camera.transform.compute_matrix().inverse();
let view = camera.transform.compute_matrix();
let inverse_view = view.inverse();
let view_uniforms = ViewUniformOffset {
offset: view_uniforms.uniforms.push(ViewUniform {
view_proj: projection * inverse_view,
view,
inverse_view,
projection,
world_position: camera.transform.translation,
Expand Down
1 change: 1 addition & 0 deletions crates/bevy_sprite/src/mesh2d/mesh2d_view_bind_group.wgsl
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
struct View {
view_proj: mat4x4<f32>;
view: mat4x4<f32>;
inverse_view: mat4x4<f32>;
projection: mat4x4<f32>;
world_position: vec3<f32>;
Expand Down

0 comments on commit de94338

Please sign in to comment.