Este é um injetor de pós-processamento genérico para jogos e software de vídeo. Ele expõe uma maneira automatizada de acessar informações de cor e profundidade do quadro e uma linguagem de shader personalizada chamada ReShade FX para escrever efeitos como oclusão de ambiente, profundidade de campo, correção de cores e muito mais, que funcionam em qualquer lugar.
O ReShade pode opcionalmente carregar complementos , DLLs que fazem uso da API ReShade para estender a funcionalidade do ReShade e/ou do aplicativo ao qual o ReShade está sendo aplicado. Para começar a escrever seu próprio complemento, confira a referência da API.
O compilador de shader ReShade FX contido neste repositório é independente, portanto também pode ser integrado a outros projetos. Basta adicionar todos os arquivos source/effect_*.*
ao seu projeto e usá-los de forma semelhante ao exemplo fxc.
Você precisará do Visual Studio 2017 ou superior para criar ReShade e Python para a dependência gl3w
.
git clone --recurse-submodules https://github.com/crosire/reshade
32-bit
ou 64-bit
e crie a solução.Release
para destinos 32-bit
e 64-bit
e só depois crie a configuração Release Setup
(não importa qual destino está selecionado).Uma rápida visão geral do que alguns arquivos de código-fonte contêm:
Arquivo | Descrição |
---|---|
dll_log.cpp | Implementação simples do registrador de arquivos |
dll_main.cpp | Ponto de entrada principal (e aplicação de teste opcional) |
dll_resources.cpp | Acesso a dados de recursos DLL (por exemplo, shaders integrados) |
effect_lexer.cpp | Analisador léxico para linguagens semelhantes a C |
effect_parser_stmt.cpp | Analisador para a linguagem de shader ReShade FX |
effect_preprocessor.cpp | Implementação de pré-processador tipo C |
gancho.cpp | Wrapper em torno do MinHook que rastreia ponteiros de função associados |
hook_manager.cpp | Instalação automática de hook baseada em exportações de DLL |
entrada.cpp | Gerenciamento de entrada de teclado e mouse e ganchos de fila de mensagens em janelas |
tempo de execução.cpp | Tempo de execução do Core ReShade, incluindo gerenciamento de efeitos e predefinições |
runtime_gui.cpp | Renderização de sobreposição e tudo relacionado à interface do usuário |
Quaisquer contribuições para o projeto são bem-vindas, é recomendado usar pull requests do GitHub.
Consulte o Fórum ReShade e o servidor Discord para feedback e suporte.
ReShade é licenciado sob os termos da licença BSD de 3 cláusulas.
Alguns arquivos de código-fonte têm licença dupla e também estão disponíveis sob os termos da licença do MIT, quando indicado como tal na parte superior desses arquivos.