Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 08.03.2024
Сообщений: 3

У меня ошибка шейдера в WebGL

08.03.2024, 17:52. Показов 1267. Ответов 4

Студворк — интернет-сервис помощи студентам
Здравствуйте!

У меня проблема:

Я нашел в Unity (версия Unity 2021.3.4f1) игру FPS-Microgame на WebGL.

Смодифицировал ее, добавил много разных штучек. Получилась неплохая версия собственной игры.

Вообще-то такие игры я делаю не в первый раз и до сих пор все работало без проблем.

На этот же раз все работало до тех пор, пока я не стал компилировать мой проект.

И вот тут появляется ошибка, которая прерывает компилляцию:

"Shader error in ‘Hidden/PostProcessing/Final Pass’: Input signature parameter (1- based Entry 3) type must be a scalar unit"

Я ничего не менял в скриптах Microgame.

Что означает эта ошибка?

У меня операционная система Windows 10 Pro

Не дайте погибнуть бедному гимназисту.
Спасибо всем, кто отзовется.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.03.2024, 17:52
Ответы с готовыми решениями:

Ошибка геометрического шейдера
Здравствуйте Разбираюсь с либой, при компиляции тамошнего геометрического шейдера получаю такую бяку NVIDIA Corporation GeForce...

Ошибка линковки шейдера
Здравствуйте! Подскажите, пожалуйста, как исправить такую ошибку: error C5052: gl_FragColor is not accessible in this profile

Ошибка 1282 при использовании вычислительного шейдера в цикле
Всем доброго времени суток! Я написал вычислительный шейдер, используя OpenGL 4.3 (и Qt 5.15), который, по плану, должен участвовать в...

4
Никто
 Аватар для ZIU
33 / 19 / 2
Регистрация: 16.07.2023
Сообщений: 344
08.03.2024, 18:20
Цитата Сообщение от TheFoxMakes Посмотреть сообщение
Смодифицировал ее, добавил много разных штучек.
В чего иммено ты изменил?

Добавлено через 1 минуту
И случайно ничего не удалил ,что шло в оригинальном проекте?

Добавлено через 1 минуту
И этот путь Hidden/PostProcessing/Final Pass(Если это путь конечно) , тебе о чем-то говорит? Он же на шейдер жалуется
1
0 / 0 / 0
Регистрация: 08.03.2024
Сообщений: 3
09.03.2024, 18:00  [ТС]
Спасибо Вам за то что отозвались.
Изменения в первоначальном проекте ограничены исключительно вводом новых компонентов (оружия, артефактов и пр.), которые я скачал непосредственно на портале Юнити Unity Asset Store.

Мне кажется, что проблема в одном копоненте, который я установил. Он использует свой собственный шейдер.

Hidden/PostProcessing/Final Pass и вправду оказался путем. Он привел меня к шейдер-скрипту этого нового мною скачанного компонента. Скорее всего этот новый шейдер не писывается в мою первоначальную программу. Вот скрипт этого шейдера:


C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
Shader "Hidden/PostProcessing/FinalPass"
{
    HLSLINCLUDE
 
        #pragma multi_compile __ FXAA FXAA_LOW
        #pragma multi_compile __ FXAA_KEEP_ALPHA
 
        #pragma vertex VertUVTransform
        #pragma fragment Frag
 
        #include "../StdLib.hlsl"
        #include "../Colors.hlsl"
        #include "Dithering.hlsl"
 
        // PS3 and XBOX360 aren't supported in Unity anymore, only use the PC variant
        #define FXAA_PC 1
 
        #if FXAA_KEEP_ALPHA
            // Luma hasn't been encoded in alpha
            #define FXAA_GREEN_AS_LUMA 1
        #else
            // Luma is encoded in alpha after the first Uber pass
            #define FXAA_GREEN_AS_LUMA 0
        #endif
 
        #if FXAA_LOW
            #define FXAA_QUALITY__PRESET 12
            #define FXAA_QUALITY_SUBPIX 1.0
            #define FXAA_QUALITY_EDGE_THRESHOLD 0.166
            #define FXAA_QUALITY_EDGE_THRESHOLD_MIN 0.0625
        #else
            #define FXAA_QUALITY__PRESET 28
            #define FXAA_QUALITY_SUBPIX 1.0
            #define FXAA_QUALITY_EDGE_THRESHOLD 0.063
            #define FXAA_QUALITY_EDGE_THRESHOLD_MIN 0.0312
        #endif
 
        #include "FastApproximateAntialiasing.hlsl"
 
        TEXTURE2D_SAMPLER2D(_MainTex, sampler_MainTex);
        float4 _MainTex_TexelSize;
 
        float4 Frag(VaryingsDefault i) : SV_Target
        {
            half4 color = 0.0;
 
            // Fast Approximate Anti-aliasing
            #if FXAA || FXAA_LOW
            {
                #if FXAA_HLSL_4 || FXAA_HLSL_5
                    FxaaTex mainTex;
                    mainTex.tex = _MainTex;
                    mainTex.smpl = sampler_MainTex;
                #else
                    FxaaTex mainTex = _MainTex;
                #endif
 
                color = FxaaPixelShader(
                    i.texcoord,                 // pos
                    0.0,                        // fxaaConsolePosPos (unused)
                    mainTex,                    // tex
                    mainTex,                    // fxaaConsole360TexExpBiasNegOne (unused)
                    mainTex,                    // fxaaConsole360TexExpBiasNegTwo (unused)
                    _MainTex_TexelSize.xy,      // fxaaQualityRcpFrame
                    0.0,                        // fxaaConsoleRcpFrameOpt (unused)
                    0.0,                        // fxaaConsoleRcpFrameOpt2 (unused)
                    0.0,                        // fxaaConsole360RcpFrameOpt2 (unused)
                    FXAA_QUALITY_SUBPIX,
                    FXAA_QUALITY_EDGE_THRESHOLD,
                    FXAA_QUALITY_EDGE_THRESHOLD_MIN,
                    0.0,                        // fxaaConsoleEdgeSharpness (unused)
                    0.0,                        // fxaaConsoleEdgeThreshold (unused)
                    0.0,                        // fxaaConsoleEdgeThresholdMin (unused)
                    0.0                         // fxaaConsole360ConstDir (unused)
                );
 
                #if FXAA_KEEP_ALPHA
                {
                    color.a = SAMPLE_TEXTURE2D(_MainTex, sampler_MainTex, i.texcoordStereo).a;
                }
                #endif
            }
            #else
            {
                color = SAMPLE_TEXTURE2D(_MainTex, sampler_MainTex, i.texcoordStereo);
            }
            #endif
 
            color.rgb = Dither(color.rgb, i.texcoord);
            return color;
        }
 
    ENDHLSL
 
    SubShader
    {
        Cull Off ZWrite Off ZTest Always
 
        Pass
        {
            HLSLPROGRAM
                #pragma exclude_renderers gles vulkan switch
 
                #pragma multi_compile __ STEREO_INSTANCING_ENABLED STEREO_DOUBLEWIDE_TARGET
                #pragma target 5.0
 
            ENDHLSL
        }
    }
 
    SubShader
    {
        Cull Off ZWrite Off ZTest Always
 
        Pass
        {
            HLSLPROGRAM
                #pragma exclude_renderers gles vulkan switch
 
                #pragma multi_compile __ STEREO_INSTANCING_ENABLED STEREO_DOUBLEWIDE_TARGET
                #pragma target 3.0
 
            ENDHLSL
        }
    }
 
    SubShader
    {
        Cull Off ZWrite Off ZTest Always
 
        Pass
        {
            HLSLPROGRAM
                #pragma only_renderers gles
 
                #pragma multi_compile __ STEREO_INSTANCING_ENABLED STEREO_DOUBLEWIDE_TARGET
                #pragma target es3.0
 
            ENDHLSL
        }
    }
 
    SubShader
    {
        Cull Off ZWrite Off ZTest Always
 
        Pass
        {
            HLSLPROGRAM
                #pragma only_renderers gles vulkan switch
 
                #pragma multi_compile __ STEREO_DOUBLEWIDE_TARGET //not supporting STEREO_INSTANCING_ENABLED
            ENDHLSL
        }
    }
}
0
Никто
 Аватар для ZIU
33 / 19 / 2
Регистрация: 16.07.2023
Сообщений: 344
09.03.2024, 18:18
Лучший ответ Сообщение было отмечено TheFoxMakes как решение

Решение

К сожалению в шейдерах не силён...
Но , обратимся к переводу ошибки: "Ошибка шейдера в ‘Скрытом/постобработке/финальном проходе’: Тип входного параметра подписи (запись на основе 1 3) должен быть скалярной единицей"
Сразу вопрос, что это за компонент, и что он делать должен.


Цитата Сообщение от TheFoxMakes Посмотреть сообщение
Скорее всего этот новый шейдер не писывается в мою первоначальную программу
А возможно и в версию Unity ... Пока ничего особого не понятно


Если есть аналоги этого компонента, лучше поменять
1
0 / 0 / 0
Регистрация: 08.03.2024
Сообщений: 3
16.03.2024, 20:15  [ТС]
Спасибо Вам большое за помощь. И в самом деле причина крылась в самом компоненте. Мне пришлось изъять его из проекта, жаль, конечно, что я за него отвалил кучку денег , но теперь все фурычит. Спасибо еще раз.

https://assetstore.unity.com/p... les-105817
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.03.2024, 20:15
Помогаю со студенческими работами здесь

WEBGL ошибка алгоритма
Если вам не трудно посмотрите код, немогу понять вместо трех треугольника показывает один. Никак немогу понять, координаты у всех разные,...

Ошибка экспорта в WebGL
Ошибка экспорта в WebGL формате в Unity. Текст ошибки: System.ComponentModel.Win32Exception (2): Не удается найти указанный файл. ...

Как проверить подключен ли javascript или у меня другая ошибка,у меня на сайте этот код не работает
<p> <select name="id_mon" id="select_mon"> <?php $result = mysql_query("SELECT name_mon,id FROM...

Ошибка компиляции WebGl в Unity
Win32Exception:...

WebGL. Ошибка создания сборки FileNotFoundException
Салют, All! При попытке создать сборку в WebGL, возникает ошибка: FileNotFoundException:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru