Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Salve a a tutti stavo studiando un pò directx 11 e sono inceppato in un problema.... in pratica non riesco a compilare il file.hlsl ne con fxc da mingw ne da visual studio.... entrambi mi danno questo errore
Codice sorgente - presumibilmente Delphi
You specified multiple input files.We did not expect to receive this,and aren't prepared to handle multiple input files. You'll have to edit the source to behave the way you want.
qualcuno sa come potrei risolvere questo problema????
Ultima modifica effettuata da Gemini il 15/03/2022 alle 18:54
Ciao. E scusami se rispondo ora...in pratica io nn specifico due file...ora spiego i passaggi che faccio con visual studio compilo semplicemente il file.hlsl premendo tasto destro sul file e poi compila... e visual studio usa fxc... mentre con mingw nella cartella dove sta il file.hlsl lancio il comando fxc /T vs_5_0 /Fo file.hlsl file.cso Premetto che ho provato anche a fare Fxc /T vs_5_0 /Fo file.hls e anche Fxc /T vs_5_0 /Fo file.cso giusto per provare ma mi da lo stesso errore....io nn gli dico di compilare due file ma uno solo..
Forse sto sbagliando io qualcosa.. vedendo su google visual studio dovrebbe compilarlo senza problemi e invece anche compilando solo un file mi dice che gli do due file input... .non so dove sto sbagliando vi dico la verita Da premettere che ho visto la guida di windows per fxc
Nella guida che sto seguendo mi dice di compilarlo nel file .cso.. Purtroppo sono ancora alle prime armi con directx
Cmq non uso dxc.. .anche se ho visto alcune guide xo non so come usarlo dxc e nn so cosa sia meglio fxc o dxc....puoi spiegarmi anche questo eventualmente.. Grazie in anticipo
Ultima modifica effettuata da Gemini il 16/03/2022 alle 17:58
dxc è il nuovo compilatore open source di microsoft che compila per dx12 e spir-v per vulkan. Prova ad usare dxc al posto di fxc.
In generale comunque non capisco il problema, passami il file che provo a vedere. Un errore come quello che ti viene dato non mi sembra abbia molto senso in questo contesto...
Potrei dire una cavolata.
Nei miei precedenti shader che ho scritto per mire SV_Position scritto in corsivo dava problemi.
Andrebbe scritto in Mauiscolo.
Così come POSITION che non è refereziato a nessuno Punto
Andrebbe scritto come POSITION0
Ora non sò se questo faccia al tuo caso, ma tentare non nouce.
Ho provato a compilare con dxc e sembra andare tutto bene durante la compilazione apparte l'errore warning: DXIL.dll not found. Resulting DXIL will not be signed for use in release environments. dopo aver compilato ma credo che sia risolvibile...cercherò su google....in ogni caso ancora devo provare però il file compilato se funziona....farò sapere a breve
//----------- EDIT --------------
Allora il programma si compila senza errori però quando avvio il gioco mi da questo errore
forse perchè ho sbagliato qualcosa nel compilare? il comando che ho eseguito dal prompt è questo
dxc -T vs_6_0 -Fo 11.cso 11.hlsl....
sicuramente ora l'errore è il file hlsl o come lo compilato che non va bene
Ho provato a compilare lo shader con dxc e si compila. Io uso dxc per compilare in spir-v ed usare il risultato con vulkan e i vertex sheder che ho usano POSITION non POSITIN0. Indagherò..... In ogni caso assicurati si selezionare il profilo di compilazione corretto perché mi risulta che versioni diverse delle DirectX abbiano bytecode diversi.... Magari dxc ti compila di default per DirectX 12 visto che è il compilatore nuovo..... Potrei dire stupidaggini comunque, non conosco DirectX e nemmeno windows così tanto per esseri di maggior aiuto. Posso darti i sorgenti dei miei shader che uso nel mio engine e le opzioni di compilazione, ma non so quanto possano esseri di aiuto visto che usi directx.... Sicuramente il fatto che si compili è un passo in avanti.... In ogni caso quel warning mi sembra ti stia solo dicendo "non rilasciare il tuo gioco ne su steam compilato così" puoi tranquilla.ente ignorarlo e concentrati sul vero problema!
Ho provato a Ricompilare con altre opzioni ma mi da sempre lo stesso errore...vedendo il tutorial che sto seguendo lui compila il vertex shader in vs_5_0 e con dxc ho visto che c'è solo la versione vs_6_0 inoltre il tutorial che sto seguendo usa directx 11 forse è questo il problema... inogni caso c'è un modo x risolvere senza usare directx 12 ??