Pergunta

Eu tenho tentado construir suporte de shader HLSL para Vlc jogador. Eu atingi uma parede de tijolos devido à falta de métodos de utilidade no D3D9.H em Mingw para carregar um arquivo .fx e compilar o shader. Então, sob aconselhamento dos desenvolvedores de VLC, peguei emprestado os cabeçalhos DX9 de Vinho.

Agora, com o D3DX9.H INCLUÍDO EMBLEFICADO, tenho muitos erros do compilador no formulário:

Descrição Caminho do recurso Tipo de localização /mingw/lib/gcc/mingw32/3.4.5/../../../../include/d3dx9core.h Declaração para o parâmetro "d3dxcheckversion", mas não tal parâmetro shadeddxplugin linha 475 c/ Problema C ++

Qualquer corpo familiarizado com Mingw, GCC, DirectX e Wine lançam alguma luz sobre como fazer com que os Shaders HLSL funcionassem via GCC?

Foi útil?

Solução

A equipe do VLC voltou novamente com algumas sugestões maravilhosas e eu gostaria que elas entrassem na corrida de ratos da reputação de Stackoverflow em algum momento:

1) Compile as chamadas para o Shader DirectX carregando e montando em um DLLs baseado em MSVC separado, que pode acessar os cabeçalhos Microsoft padrão. Em seguida, ligue para esta DLL da VLC.

2) Insira o truque getProcaddress para obter d3dxassembleShaderFromFile no D3D9.H. A referida função em um utilitário diretor de produzir um shader de montagem da HLSL.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top