4343#include " experimental/filament/filament/imgui_editor.h"
4444#include " experimental/filament/filament/model_util.h"
4545#include " experimental/filament/filament/object_manager.h"
46- #include " experimental/filament/filament/render_target_util .h"
46+ #include " experimental/filament/filament/render_target .h"
4747#include " experimental/filament/filament/scene_view.h"
4848#include " experimental/filament/filament/texture.h"
4949#include " experimental/filament/render_context_filament.h"
@@ -185,12 +185,12 @@ void FilamentContext::SetFrameBuffer(int framebuffer) {
185185}
186186
187187void FilamentContext::PrepareRenderTargets (int width, int height) {
188- color_target_ = std::make_unique<RenderTargetAndTextures >(
188+ color_target_ = std::make_unique<RenderTarget >(
189189 engine_, RenderTargetTextureType::kColor ,
190190 RenderTargetTextureType::kDepth );
191191 color_target_->Prepare (width, height);
192192
193- depth_target_ = std::make_unique<RenderTargetAndTextures >(
193+ depth_target_ = std::make_unique<RenderTarget >(
194194 engine_, RenderTargetTextureType::kDepthColor ,
195195 RenderTargetTextureType::kDepth );
196196 depth_target_->Prepare (width, height);
@@ -202,23 +202,25 @@ void FilamentContext::DestroyRenderTargets() {
202202}
203203
204204static void ReadColorPixels (filament::Renderer* renderer,
205- filament:: RenderTarget* target, mjrRect viewport,
205+ RenderTarget* target, mjrRect viewport,
206206 unsigned char * buffer, size_t num_bytes) {
207207 filament::backend::PixelBufferDescriptor descriptor (
208208 buffer, num_bytes, filament::backend::PixelDataFormat::RGB,
209209 filament::backend::PixelDataType::UBYTE);
210- renderer->readPixels (target, viewport.left , viewport.bottom , viewport.width ,
211- viewport.height , std::move (descriptor));
210+ renderer->readPixels (target->GetFilamentRenderTarget (), viewport.left ,
211+ viewport.bottom , viewport.width , viewport.height ,
212+ std::move (descriptor));
212213}
213214
214215static void ReadDepthPixels (filament::Renderer* renderer,
215- filament:: RenderTarget* target, mjrRect viewport,
216+ RenderTarget* target, mjrRect viewport,
216217 float * buffer, size_t num_bytes) {
217218 filament::backend::PixelBufferDescriptor descriptor (
218219 buffer, num_bytes, filament::backend::PixelDataFormat::R,
219220 filament::backend::PixelDataType::FLOAT);
220- renderer->readPixels (target, viewport.left , viewport.bottom , viewport.width ,
221- viewport.height , std::move (descriptor));
221+ renderer->readPixels (target->GetFilamentRenderTarget (), viewport.left ,
222+ viewport.bottom , viewport.width , viewport.height ,
223+ std::move (descriptor));
222224}
223225
224226void FilamentContext::ReadPixels (mjrRect viewport, unsigned char * rgb,
@@ -238,17 +240,15 @@ void FilamentContext::ReadPixels(mjrRect viewport, unsigned char* rgb,
238240
239241 if (rgb) {
240242 if (renderer_->beginFrame (offscreen_swap_chain_)) {
241- scene_view_->Render (renderer_, last_render_mode_,
242- color_target_->GetRenderTarget ());
243+ scene_view_->Render (renderer_, last_render_mode_, color_target_.get ());
243244
244245 // Render the GUI to the texture as well if requested.
245246 if (gui_view_ && gui_swap_chain_target_ == kOffscreenSwapChain ) {
246- gui_view_->Render (renderer_, color_target_-> GetRenderTarget ());
247+ gui_view_->Render (renderer_, color_target_. get ());
247248 }
248249
249250 const size_t num_bytes = viewport.width * viewport.height * 3 ;
250- ReadColorPixels (renderer_, color_target_->GetRenderTarget (), viewport,
251- rgb, num_bytes);
251+ ReadColorPixels (renderer_, color_target_.get (), viewport, rgb, num_bytes);
252252
253253 renderer_->endFrame ();
254254 }
@@ -257,11 +257,11 @@ void FilamentContext::ReadPixels(mjrRect viewport, unsigned char* rgb,
257257 if (depth) {
258258 if (renderer_->beginFrame (offscreen_swap_chain_)) {
259259 scene_view_->Render (renderer_, SceneView::DrawMode::kDepth ,
260- depth_target_-> GetRenderTarget ());
260+ depth_target_. get ());
261261
262262 const size_t num_bytes = viewport.width * viewport.height * sizeof (float );
263- ReadDepthPixels (renderer_, depth_target_-> GetRenderTarget (), viewport,
264- depth, num_bytes);
263+ ReadDepthPixels (renderer_, depth_target_. get (), viewport, depth ,
264+ num_bytes);
265265
266266 renderer_->endFrame ();
267267 }
0 commit comments