Skip to content

Commit e0423e4

Browse files
committed
WIP
1 parent 285dc39 commit e0423e4

File tree

2 files changed

+6
-27
lines changed

2 files changed

+6
-27
lines changed

crates/bevy_render/src/camera/camera.rs

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ use super::{ClearColorConfig, Projection};
66
use crate::{
77
batching::gpu_preprocessing::{GpuPreprocessingMode, GpuPreprocessingSupport},
88
camera::{CameraProjection, ManualTextureViewHandle, ManualTextureViews},
9-
primitives::Frustum,
9+
primitives::{Frustum, SubRect},
1010
render_asset::RenderAssets,
1111
render_graph::{InternedRenderSubGraph, RenderSubGraph},
1212
render_resource::TextureView,
@@ -112,18 +112,6 @@ impl Viewport {
112112
}
113113
}
114114

115-
}
116-
117-
impl Default for SubCameraView {
118-
fn default() -> Self {
119-
Self {
120-
full_size: UVec2::new(1, 1),
121-
offset: Vec2::new(0., 0.),
122-
size: UVec2::new(1, 1),
123-
}
124-
}
125-
}
126-
127115
/// Information about the current [`RenderTarget`].
128116
#[derive(Default, Debug, Clone)]
129117
pub struct RenderTargetInfo {
@@ -143,7 +131,7 @@ pub struct ComputedCameraValues {
143131
target_info: Option<RenderTargetInfo>,
144132
// size of the `Viewport`
145133
old_viewport_size: Option<UVec2>,
146-
old_sub_camera_view: Option<SubCameraView>,
134+
old_crop: Option<SubRect>,
147135
}
148136

149137
/// How much energy a `Camera3d` absorbs from incoming light.
@@ -956,7 +944,7 @@ pub fn camera_system(
956944
|| camera.is_added()
957945
|| camera_projection.is_changed()
958946
|| camera.computed.old_viewport_size != viewport_size
959-
|| camera.computed.old_sub_camera_view != camera.crop
947+
|| camera.computed.old_crop != camera.crop
960948
{
961949
let new_computed_target_info = normalized_target.get_render_target_info(
962950
windows,
@@ -1017,8 +1005,8 @@ pub fn camera_system(
10171005
camera.computed.old_viewport_size = viewport_size;
10181006
}
10191007

1020-
if camera.computed.old_sub_camera_view != camera.crop {
1021-
camera.computed.old_sub_camera_view = camera.crop;
1008+
if camera.computed.old_crop != camera.crop {
1009+
camera.computed.old_crop = camera.crop;
10221010
}
10231011
}
10241012
}

crates/bevy_render/src/primitives/mod.rs

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -278,16 +278,7 @@ impl SubRect {
278278

279279
//TODO: include this? if so, docs. Also fix it omg.
280280
pub fn chained(self, inner: &Self) -> Self {
281-
let lcm_x = ops::lcm(self.full_size.x, inner.full_size.x);
282-
let lcm_y = ops::lcm(self.full_size.y, inner.full_size.y);
283-
let lcm = UVec2::new(lcm_x, lcm_y);
284-
let inner_ratio = lcm / inner.full_size;
285-
286-
Self {
287-
full_size: lcm,
288-
offset: self.offset + inner.offset * inner_ratio.as_vec2(),
289-
size: inner.size * inner_ratio,
290-
}
281+
todo!()
291282
}
292283

293284
// Returns the inverse of this [`SubRect`].

0 commit comments

Comments
 (0)