Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
70 lines (61 loc) · 2.32 KB

File metadata and controls

70 lines (61 loc) · 2.32 KB
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
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
using System.Runtime.InteropServices.JavaScript;
using ProGPU.Browser;
using Microsoft.UI.Xaml;
namespace ProGPU.Samples.Browser;
public static partial class Program
{
public static async Task Main()
{
SamplePlatformServices.GetBrowserDiagnosticsVisible = GetDiagnosticsVisible;
SamplePlatformServices.SetBrowserDiagnosticsVisible = SetDiagnosticsVisible;
try
{
var capabilities = await BrowserGpuRuntime.InitializeAsync(new BrowserAppHostOptions
{
CanvasSelector = "#progpu-canvas",
ExecutionMode = BrowserExecutionMode.Auto,
GpuProfile = BrowserGpuProfile.Full,
EnableDiagnostics = true
});
if (!capabilities.IsSupported)
{
SetStatus("WebGPU is unavailable", string.Join("\n", capabilities.Diagnostics), true);
return;
}
SetStatus(
"WebGPU dispatcher online",
$"{capabilities.AdapterName}\n{capabilities.CanvasFormat} · {capabilities.ExecutionMode} · {capabilities.ActiveProfile}",
false);
using var host = new BrowserWindowHost(capabilities);
WindowHostServices.Current = host;
try
{
await AppBuilder<ProGPU.Samples.App>
.Configure()
.WithTitle("ProGPU Browser Gallery")
.WithSize(1280, 800)
.Build()
.RunAsync();
}
finally
{
WindowHostServices.Current = null;
}
}
catch (Exception exception)
{
SetStatus("Browser startup failed", exception.ToString(), true);
}
finally
{
SamplePlatformServices.GetBrowserDiagnosticsVisible = null;
SamplePlatformServices.SetBrowserDiagnosticsVisible = null;
}
}
[JSImport("setStatus", "progpu-browser")]
private static partial void SetStatus(string title, string detail, bool isError);
[JSImport("getDiagnosticsVisible", "progpu-browser")]
private static partial bool GetDiagnosticsVisible();
[JSImport("setDiagnosticsVisible", "progpu-browser")]
private static partial void SetDiagnosticsVisible(bool visible);
}
Morty Proxy This is a proxified and sanitized view of the page, visit original site.