Prodislexos Game
Cyberpunk Game
Carregando...
Procurando...
Nenhuma entrada encontrado
Membros Públicos | Membros públicos estáticos | Lista de todos os Membros
Referência da Classe Gerenciador::Renderer

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 RenderergetInstance (int largura=1280, int altura=720, const std::string &titulo="Prodilexos Game")
 Retorna uma instância para o gerenciador gráfico.
 

Descrição detalhada

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.

Autor
Vitor-tml

Construtores e Destrutores

◆ Renderer()

Gerenciador::Renderer::Renderer ( const Renderer )
delete

Documentação das funções

◆ addDrawable()

void Gerenciador::Renderer::addDrawable ( const sf::Drawable &  drawable,
int  camada = 4 
)

Adiciona elementos na fila de renderização.

Parâmetros
drawablequalquer objeto desenhável do SFML (sprite, texto, etc)
camadaordem em que vai ser renderizado, os últimos são os que aparecem por cima
Atividades futuras:
Inserir um método para colocar a camada por ordem de inserção.

◆ carregarShaders()

void Gerenciador::Renderer::carregarShaders ( )

Carrega os shaders.

◆ clearDrawables()

void Gerenciador::Renderer::clearDrawables ( )

Limpa a fila de renderização.

◆ close()

void Gerenciador::Renderer::close ( )

Fecha a janela de execução.

◆ getInstance()

Renderer * Gerenciador::Renderer::getInstance ( int  largura = 1280,
int  altura = 720,
const std::string &  titulo = "Prodilexos Game" 
)
static

Retorna uma instância para o gerenciador gráfico.

Exceções
Naprimeira chamada aloca o gerenciador.
Parâmetros
larguravalor padrão: 800px
alturavalor padrão: 800px
titulovalor padrão: "Nova Janela"
Retorna
ponteiro singleton do gerenciador.

◆ getTamanho()

sf::Vector2u Gerenciador::Renderer::getTamanho ( ) const

Retorna o tamanho da janela.

Retorna
sf::Vector2u (.x e .y).

◆ getView()

sf::View & Gerenciador::Renderer::getView ( )

Retorna a view/câmera atual.

Retorna
Referência para a view/câmera.

◆ isOpen()

bool Gerenciador::Renderer::isOpen ( )

Retorna o estado da janela.

Retorna
true para janela aberta, false para fechada.

◆ isPlayerOutsideBounds()

bool Gerenciador::Renderer::isPlayerOutsideBounds ( const sf::Vector2f &  playerPos) const

◆ moveCamera()

void Gerenciador::Renderer::moveCamera ( float  x,
float  y 
)

Move o que a janela mostra para o usuário.

Parâmetros
xcoordenada x do centro da view/câmera.
ycoordenada y do centro da view/câmera.

◆ operator=()

void Gerenciador::Renderer::operator= ( const Renderer )
delete

◆ pollEvent()

bool Gerenciador::Renderer::pollEvent ( sf::Event &  evento)

Lê os eventos do jogo (interações com a janela).

Retorna
true caso tenha ocorrido algum evento, false se todos os eventos já foram tratados.
Parâmetros
eventoobjeto do tipo Event passado por parâmetro para receber os eventos não tratados.

◆ render()

void Gerenciador::Renderer::render ( )

Limpa a tela atual e renderiza os elementos da lista drawables.

◆ setCentroCamera()

void Gerenciador::Renderer::setCentroCamera ( float  x,
float  y 
)

Muda a origem da câmera em relação ao que vai ser mostrado.

Parâmetros
xcoordenada x do centro da view/câmera.
ycoordenada y do centro da view/câmera.

◆ setIsShader()

void Gerenciador::Renderer::setIsShader ( bool  sd)
inline

◆ setMoveBounds()

void Gerenciador::Renderer::setMoveBounds ( const sf::FloatRect &  bounds)

Define os limites de movimento da câmera.

Parâmetros
boundsRetângulo que define os limites de movimento.

◆ setTamanhoCamera()

void Gerenciador::Renderer::setTamanhoCamera ( float  largura,
float  altura 
)

Muda o que vai ser mostrado em relação ao que vai ser renderizado.

Observação
Adequa a view à janela de renderização, pode distorcer a imagem.
Parâmetros
larguralargura da view.
alturaaltura da view.

◆ tirarShader()

void Gerenciador::Renderer::tirarShader ( )

Remove os shaders.

◆ updateCamera()

void Gerenciador::Renderer::updateCamera ( const sf::Vector2f &  playerPos)

Atualiza a posição da câmera com base na posição do jogador.

Parâmetros
playerPosPosição do jogador.

A documentação para essa classe foi gerada a partir dos seguintes arquivos: