Walks ECS Renderable2D views and draws via Graphics batch path. 更多...
#include <RenderSystem.h>
静态 Public 成员函数 | |
| static void | render (Graphics &gfx) |
| Full sprite pass + present (existing tests / sprite-only scenes). | |
| static void | collectSprites (std::vector< DrawItem2D > &out) |
| Append visible Renderable2D sprites into a shared queue. | |
| static void | drawItems (Graphics &gfx, std::vector< DrawItem2D > &items, bool present) |
| Sort and draw items. If present=true, calls gfx.present() at the end. Map::render uses present=false so the frame can continue drawing. | |
详细描述
Walks ECS Renderable2D views and draws via Graphics batch path.
在文件 RenderSystem.h 第 105 行定义.
成员函数说明
◆ collectSprites()
|
static |
Append visible Renderable2D sprites into a shared queue.
在文件 RenderSystem.cpp 第 197 行定义.
引用了 eve::graphics::DrawItem2D::camAmbientB, eve::graphics::DrawItem2D::camAmbientG, eve::graphics::DrawItem2D::camAmbientR, eve::graphics::DrawItem2D::camClear, eve::graphics::DrawItem2D::camera, eve::graphics::DrawItem2D::camValid, eve::graphics::DrawItem2D::camX, eve::graphics::DrawItem2D::camY, eve::graphics::DrawItem2D::camZoom, eve::graphics::DrawItem2D::canvas, eve::graphics::DrawItem2D::color, data, eve::graphics::DrawItem2D::depthY, eve::graphics::Texture::getHeight(), eve::graphics::Quad::getUV(), eve::graphics::Texture::getWidth(), eve::graphics::DrawItem2D::h, eve::graphics::DrawItem2D::hasUV, eve::graphics::DrawItem2D::layer, eve::graphics::DrawItem2D::litPath, eve::graphics::DrawItem2D::normal, eve::graphics::DrawItem2D::quad, eve::graphics::DrawItem2D::receiveLight, eve::graphics::DrawItem2D::shader, eve::graphics::DrawItem2D::texture, eve::graphics::DrawItem2D::u0, eve::graphics::DrawItem2D::u1, eve::graphics::DrawItem2D::v0, eve::graphics::DrawItem2D::v1, view, eve::graphics::DrawItem2D::w, eve::graphics::DrawItem2D::x , 以及 eve::graphics::DrawItem2D::y.
被这些函数引用 render(), eve::avatar::Avatar::render() , 以及 eve::map::Map::render().
◆ drawItems()
|
static |
Sort and draw items. If present=true, calls gfx.present() at the end. Map::render uses present=false so the frame can continue drawing.
在文件 RenderSystem.cpp 第 257 行定义.
引用了 c, eve::graphics::Canvas::clear(), data, eve::graphics::Graphics::drawSolidRect(), eve::graphics::Graphics::drawSolidRectRotated(), eve::graphics::Graphics::drawTexturedRectLitUV(), eve::graphics::Graphics::drawTexturedRectShaderUV(), eve::graphics::Graphics::drawTexturedRectShaderUVRotated(), eve::graphics::Graphics::getBackgroundColor(), eve::graphics::Graphics::getHeight(), eve::graphics::Canvas::getHeight(), eve::graphics::Graphics::getWidth(), eve::graphics::Canvas::getWidth(), eve::graphics::Graphics::present(), eve::debug::rtBind(), eve::debug::rtDraw(), eve::debug::rtPassBegin(), eve::debug::rtPassEnd(), eve::debug::rtTarget(), eve::graphics::Graphics::setCanvas(), eve::graphics::Graphics::setLighting2D() , 以及 eve::graphics::sortDrawItems2D().
被这些函数引用 eve::animation::SpineAnim::draw(), render(), eve::avatar::Avatar::render(), eve::map::Map::render(), eve::map::TileRenderSystem::render() , 以及 eve::particles::ParticleRenderSystem::render().
◆ render()
|
static |
Full sprite pass + present (existing tests / sprite-only scenes).
在文件 RenderSystem.cpp 第 376 行定义.
引用了 collectSprites(), drawItems(), eve::debug::rtFrameBegin() , 以及 eve::debug::rtFrameEnd().
该类的文档由以下文件生成:
- src/modules/graphics/RenderSystem.h
- src/modules/graphics/RenderSystem.cpp