Как можно обернуть WebGL в Script #.Сценарий # Wrap WebGL?
Я попытался добавить материал в исходный код, но получить ошибки компиляции, которые я не понимаю.
[ScriptIgnoreNamespace]
[ScriptImport]
[ScriptName("webGL")]
public sealed class WebGL
{
[ScriptName("fooGL")]
public void Foo(string test)
{
}
}
Ошибка 1 Базовый класс или интерфейс 'System.FormatException' в сборки 'mscorlib, Version = 2.0.0.0, культура = нейтральной, PublicKeyToken = b77a5c561934e089' ссылается типа «System.UriFormatException 'не может быть решена C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ System.dll Web
Или есть способ лучше, чтобы добавить поддержку WebGL как Lib, а затем добавить его непосредственно к основному источнику?
EDIT: Похоже, что ошибка компилятора исходила от VS от автоматического добавления System.dll в проект, и этого не должно быть. После удаления его теперь компилируется. Итак, теперь вопрос заключается в том, что лучший способ обернуть javaScript API в Script #?
GLSL, что использует WebGL, это не JavaScript. Сценарий #, похоже, генерирует только JavaScript. Я не совсем уверен, почему вы думаете, что это сработает. – JayC
«GLSL» - это шейдерный язык, а не GLES2 lang. WebGL управляет GLES2 с помощью javaScript, он не контролирует GLSL, GLES2 - это то, что отвечает за GLSL ... – zezba9000
Это похоже на разницу между Subaru Forester и Subaru Outback. Они оба - Субару. Даже спецификация WebGL отличает это. «Шейдер, ссылающийся на переменные состояния или функции, доступные в других версиях GLSL, например, найденные в версиях OpenGL для рабочего стола, не может быть загружен». Если мы хотим быть педантичными, шейдеры в WebGL не являются GLES2, это * в основном * подмножество. См. => Https://www.khronos.org/registry/webgl/specs/1.0/#6 – JayC