Blender
V4.3
source
blender
render
hydra
viewport_engine.hh
Go to the documentation of this file.
1
/* SPDX-FileCopyrightText: 2011-2022 Blender Authors
2
*
3
* SPDX-License-Identifier: GPL-2.0-or-later */
4
5
#pragma once
6
7
#include <pxr/imaging/hd/renderBuffer.h>
8
9
#include "
GPU_batch.hh
"
10
#include "
GPU_shader.hh
"
11
#include "
GPU_texture.hh
"
12
13
#include "
engine.hh
"
14
15
namespace
blender::render::hydra
{
16
17
class
DrawTexture
{
18
private
:
19
GPUTexture *texture_ =
nullptr
;
20
gpu::Batch *batch_;
21
22
public
:
23
DrawTexture
();
24
~DrawTexture
();
25
26
void
write_data
(
int
width,
int
height,
const
void
*data);
27
void
draw
(
GPUShader
*shader,
const
pxr::GfVec4d &viewport, GPUTexture *
tex
=
nullptr
);
28
GPUTexture *
texture
()
const
;
29
30
private
:
31
};
32
33
class
ViewportEngine
:
public
Engine
{
34
private
:
35
double
time_begin_;
36
DrawTexture
draw_texture_;
37
38
public
:
39
using
Engine::Engine
;
40
41
void
render
()
override
;
42
void
render
(
bContext
*context);
43
44
protected
:
45
void
notify_status
(
float
progress,
const
std::string &title,
const
std::string &info)
override
;
46
};
47
48
}
// namespace blender::render::hydra
GPU_batch.hh
GPU_shader.hh
GPU_texture.hh
GPUShader
struct GPUShader GPUShader
Definition
blender/display_driver.h:21
blender::render::hydra::DrawTexture
Definition
viewport_engine.hh:17
blender::render::hydra::DrawTexture::DrawTexture
DrawTexture()
Definition
viewport_engine.cc:135
blender::render::hydra::DrawTexture::texture
GPUTexture * texture() const
Definition
viewport_engine.cc:197
blender::render::hydra::DrawTexture::~DrawTexture
~DrawTexture()
Definition
viewport_engine.cc:150
blender::render::hydra::DrawTexture::write_data
void write_data(int width, int height, const void *data)
Definition
viewport_engine.cc:158
blender::render::hydra::DrawTexture::draw
void draw(GPUShader *shader, const pxr::GfVec4d &viewport, GPUTexture *tex=nullptr)
Definition
viewport_engine.cc:180
blender::render::hydra::Engine
Definition
engine.hh:33
blender::render::hydra::Engine::Engine
Engine(RenderEngine *bl_engine, const std::string &render_delegate_name)
Definition
hydra/engine.cc:30
blender::render::hydra::ViewportEngine
Definition
viewport_engine.hh:33
blender::render::hydra::ViewportEngine::render
void render() override
Definition
viewport_engine.cc:202
blender::render::hydra::ViewportEngine::notify_status
void notify_status(float progress, const std::string &title, const std::string &info) override
Definition
viewport_engine.cc:277
tex
Tex tex
Definition
deg_eval_copy_on_write.cc:109
engine.hh
blender::render::hydra
Definition
render/hydra/camera.cc:15
bContext
Definition
blenkernel/intern/context.cc:61
Generated on Thu Feb 6 2025 07:36:39 for Blender by
doxygen
1.11.0