Udostępnij za pośrednictwem


Eksportowanie cieniowania

W tym artykule pokazano, jak używać cieniowania Projektant do eksportowania cieniowania programu Graph Shader Language (DGSL), aby można było go używać w aplikacji.

Uwaga

Nie można wyeksportować cieniowania wierzchołków.

Eksportowanie cieniowania

Po utworzeniu cieniowania przy użyciu narzędzia Shader Projektant i zanim będzie można go użyć w aplikacji, musisz wyeksportować go w formacie zrozumiałym dla interfejsu API grafiki. Cieniowania można wyeksportować na różne sposoby, aby spełnić różne potrzeby.

  1. W programie Visual Studio otwórz plik Visual Shader Graph (dgsl).

    Jeśli nie masz pliku programu Visual Shader Graph (dgsl) do otwarcia, utwórz go zgodnie z opisem w temacie How to: Create a basic color shader (Tworzenie cieniowania kolorów podstawowych).

  2. Na pasku narzędzi cieniowania Projektant wybierz pozycję Eksportuj zaawansowane>>jako. Zostanie wyświetlone okno dialogowe Eksportowanie cieniowania .

  3. Z listy rozwijanej Zapisz jako typ wybierz format, który chcesz wyeksportować.

    Poniżej przedstawiono formaty, które można wybrać:

    Cieniowanie pikseli HLSL (*.hlsl) eksportuje cieniowanie jako kod źródłowy języka cieniowania wysokiego poziomu (HLSL). Ta opcja umożliwia późniejsze zmodyfikowanie cieniowania, nawet po wdrożeniu w aplikacji. Może to ułatwić debugowanie i stosowanie poprawek kodu na podstawie problemów użytkowników końcowych, ale także ułatwia użytkownikowi modyfikowanie cieniowania w niepożądany sposób — na przykład w celu uzyskania niesprawiedliwej przewagi w grze konkurencyjnej. Może również zwiększyć czas ładowania cieniowania.

    Skompilowany moduł cieniowania pikseli (*.cso) eksportuje cieniowanie jako kod bajtowy HLSL. Ta opcja umożliwia późniejsze zmodyfikowanie cieniowania, nawet po wdrożeniu w aplikacji. Może to ułatwić debugowanie i poprawianie kodu na podstawie problemów użytkowników końcowych, ale ponieważ moduł cieniowania jest wstępnie skompilowany, nie wiąże się z dodatkowym obciążeniem środowiska uruchomieniowego podczas ładowania cieniowania przez aplikację. Wystarczająco wykwalifikowanych użytkowników może nadal modyfikować cieniowanie w niepożądany sposób, ale kompilowanie cieniowania sprawia, że znacznie trudniejsze.

    Nagłówek języka C++ (*.h) eksportuje cieniowanie jako nagłówek w stylu języka C, który definiuje tablicę bajtów zawierającą kod bajtowy HLSL. Ta opcja może sprawić, że debugowanie i stosowanie poprawek kodu w oparciu o problemy użytkowników końcowych może być czasochłonne, ponieważ aplikacja musi zostać ponownie skompilowana, aby przetestować poprawkę. Jednak ponieważ ta opcja utrudnia, choć nie niemożliwe, modyfikowanie cieniowania po jej wdrożeniu w aplikacji, stanowi on najtrudniejsze dla użytkownika, który chce zmodyfikować cieniowania w niepożądany sposób.

  4. W polu kombi Nazwa pliku określ nazwę wyeksportowanego cieniowania, a następnie wybierz przycisk Zapisz .