![]() |
Prodislexos Game
Cyberpunk Game
|
Gerencia a renderização de elementos gráficos. Mais...
#include <Renderer.h>
Membros Públicos | |
void | operator= (const Renderer &)=delete |
Renderer (const Renderer &)=delete | |
void | addDrawable (const sf::Drawable &drawable, int camada=4) |
Adiciona elementos na fila de renderização. | |
void | clearDrawables () |
Limpa a fila de renderização. | |
void | render () |
Limpa a tela atual e renderiza os elementos da lista drawables. | |
bool | isOpen () |
Retorna o estado da janela. | |
void | close () |
Fecha a janela de execução. | |
void | moveCamera (float x, float y) |
Move o que a janela mostra para o usuário. | |
void | setCentroCamera (float x, float y) |
Muda a origem da câmera em relação ao que vai ser mostrado. | |
void | setTamanhoCamera (float largura, float altura) |
Muda o que vai ser mostrado em relação ao que vai ser renderizado. | |
bool | pollEvent (sf::Event &evento) |
Lê os eventos do jogo (interações com a janela). | |
sf::Vector2u | getTamanho () const |
Retorna o tamanho da janela. | |
void | carregarShaders () |
Carrega os shaders. | |
void | tirarShader () |
Remove os shaders. | |
sf::View & | getView () |
Retorna a view/câmera atual. | |
void | setMoveBounds (const sf::FloatRect &bounds) |
Define os limites de movimento da câmera. | |
void | updateCamera (const sf::Vector2f &playerPos) |
Atualiza a posição da câmera com base na posição do jogador. | |
bool | isPlayerOutsideBounds (const sf::Vector2f &playerPos) const |
void | setIsShader (bool sd) |
Membros públicos estáticos | |
static Renderer * | getInstance (int largura=1280, int altura=720, const std::string &titulo="Prodilexos Game") |
Retorna uma instância para o gerenciador gráfico. | |
Gerencia a renderização de elementos gráficos.
A classe Renderer é responsável por controlar a janela de renderização, gerenciar a fila de elementos desenháveis e controlar a câmera. Implementa o padrão Singleton para garantir que apenas uma instância exista durante a execução.
Esta classe utiliza o SFML para renderizar sprites, textos e outros objetos gráficos. Além disso, permite manipular a câmera para mover a visão sobre a cena renderizada.
|
delete |
void Gerenciador::Renderer::addDrawable | ( | const sf::Drawable & | drawable, |
int | camada = 4 |
||
) |
Adiciona elementos na fila de renderização.
drawable | qualquer objeto desenhável do SFML (sprite, texto, etc) |
camada | ordem em que vai ser renderizado, os últimos são os que aparecem por cima |
void Gerenciador::Renderer::carregarShaders | ( | ) |
Carrega os shaders.
void Gerenciador::Renderer::clearDrawables | ( | ) |
Limpa a fila de renderização.
void Gerenciador::Renderer::close | ( | ) |
Fecha a janela de execução.
|
static |
Retorna uma instância para o gerenciador gráfico.
Na | primeira chamada aloca o gerenciador. |
largura | valor padrão: 800px |
altura | valor padrão: 800px |
titulo | valor padrão: "Nova Janela" |
sf::Vector2u Gerenciador::Renderer::getTamanho | ( | ) | const |
Retorna o tamanho da janela.
sf::View & Gerenciador::Renderer::getView | ( | ) |
Retorna a view/câmera atual.
bool Gerenciador::Renderer::isOpen | ( | ) |
Retorna o estado da janela.
bool Gerenciador::Renderer::isPlayerOutsideBounds | ( | const sf::Vector2f & | playerPos | ) | const |
void Gerenciador::Renderer::moveCamera | ( | float | x, |
float | y | ||
) |
Move o que a janela mostra para o usuário.
x | coordenada x do centro da view/câmera. |
y | coordenada y do centro da view/câmera. |
|
delete |
bool Gerenciador::Renderer::pollEvent | ( | sf::Event & | evento | ) |
Lê os eventos do jogo (interações com a janela).
evento | objeto do tipo Event passado por parâmetro para receber os eventos não tratados. |
void Gerenciador::Renderer::render | ( | ) |
Limpa a tela atual e renderiza os elementos da lista drawables.
void Gerenciador::Renderer::setCentroCamera | ( | float | x, |
float | y | ||
) |
Muda a origem da câmera em relação ao que vai ser mostrado.
x | coordenada x do centro da view/câmera. |
y | coordenada y do centro da view/câmera. |
|
inline |
void Gerenciador::Renderer::setMoveBounds | ( | const sf::FloatRect & | bounds | ) |
Define os limites de movimento da câmera.
bounds | Retângulo que define os limites de movimento. |
void Gerenciador::Renderer::setTamanhoCamera | ( | float | largura, |
float | altura | ||
) |
Muda o que vai ser mostrado em relação ao que vai ser renderizado.
largura | largura da view. |
altura | altura da view. |
void Gerenciador::Renderer::tirarShader | ( | ) |
Remove os shaders.
void Gerenciador::Renderer::updateCamera | ( | const sf::Vector2f & | playerPos | ) |
Atualiza a posição da câmera com base na posição do jogador.
playerPos | Posição do jogador. |