diff --git a/源代码/.vs/ProjectEvaluation/stgsharpdevelop.metadata.v7.bin b/源代码/.vs/ProjectEvaluation/stgsharpdevelop.metadata.v7.bin index 5e49a316..4133ea3d 100644 Binary files a/源代码/.vs/ProjectEvaluation/stgsharpdevelop.metadata.v7.bin and b/源代码/.vs/ProjectEvaluation/stgsharpdevelop.metadata.v7.bin differ diff --git a/源代码/.vs/ProjectEvaluation/stgsharpdevelop.projects.v7.bin b/源代码/.vs/ProjectEvaluation/stgsharpdevelop.projects.v7.bin index 48a80e70..084a95e9 100644 Binary files a/源代码/.vs/ProjectEvaluation/stgsharpdevelop.projects.v7.bin and b/源代码/.vs/ProjectEvaluation/stgsharpdevelop.projects.v7.bin differ diff --git a/源代码/.vs/StgSharpDevelop/DesignTimeBuild/.dtbcache.v2 b/源代码/.vs/StgSharpDevelop/DesignTimeBuild/.dtbcache.v2 index 69671fa8..76e67ef3 100644 Binary files a/源代码/.vs/StgSharpDevelop/DesignTimeBuild/.dtbcache.v2 and b/源代码/.vs/StgSharpDevelop/DesignTimeBuild/.dtbcache.v2 differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/0ba24ee7-c432-48ea-b1eb-c2e1df4bfcf7.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/0ba24ee7-c432-48ea-b1eb-c2e1df4bfcf7.vsidx deleted file mode 100644 index 5185a956..00000000 Binary files a/源代码/.vs/StgSharpDevelop/FileContentIndex/0ba24ee7-c432-48ea-b1eb-c2e1df4bfcf7.vsidx and /dev/null differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/19578858-1959-41f7-844e-f67fa1dbdae0.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/19578858-1959-41f7-844e-f67fa1dbdae0.vsidx deleted file mode 100644 index c919d5f8..00000000 Binary files a/源代码/.vs/StgSharpDevelop/FileContentIndex/19578858-1959-41f7-844e-f67fa1dbdae0.vsidx and /dev/null differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/1aea0cbb-d5ee-47c1-8934-f1f94ad9585a.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/1aea0cbb-d5ee-47c1-8934-f1f94ad9585a.vsidx new file mode 100644 index 00000000..4576d418 Binary files /dev/null and b/源代码/.vs/StgSharpDevelop/FileContentIndex/1aea0cbb-d5ee-47c1-8934-f1f94ad9585a.vsidx differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/5d14f360-08b2-47ca-93b1-d31ea78990e9.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/5d14f360-08b2-47ca-93b1-d31ea78990e9.vsidx new file mode 100644 index 00000000..fde198f3 Binary files /dev/null and b/源代码/.vs/StgSharpDevelop/FileContentIndex/5d14f360-08b2-47ca-93b1-d31ea78990e9.vsidx differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/7ae2020d-db73-4343-a3df-63ecc5d18e46.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/7ae2020d-db73-4343-a3df-63ecc5d18e46.vsidx new file mode 100644 index 00000000..82ecb3bd Binary files /dev/null and b/源代码/.vs/StgSharpDevelop/FileContentIndex/7ae2020d-db73-4343-a3df-63ecc5d18e46.vsidx differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/88d29d44-4e3e-498c-89e5-f9bcd11612b0.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/88d29d44-4e3e-498c-89e5-f9bcd11612b0.vsidx deleted file mode 100644 index 1dfa0a66..00000000 Binary files a/源代码/.vs/StgSharpDevelop/FileContentIndex/88d29d44-4e3e-498c-89e5-f9bcd11612b0.vsidx and /dev/null differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/9fcb332b-c4bc-44b6-9fc5-b6186fb1a7eb.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/9fcb332b-c4bc-44b6-9fc5-b6186fb1a7eb.vsidx new file mode 100644 index 00000000..0b94f032 Binary files /dev/null and b/源代码/.vs/StgSharpDevelop/FileContentIndex/9fcb332b-c4bc-44b6-9fc5-b6186fb1a7eb.vsidx differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/aaf29be7-c9a5-4bee-9d48-7a43b9d58039.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/aaf29be7-c9a5-4bee-9d48-7a43b9d58039.vsidx deleted file mode 100644 index 67a07247..00000000 Binary files a/源代码/.vs/StgSharpDevelop/FileContentIndex/aaf29be7-c9a5-4bee-9d48-7a43b9d58039.vsidx and /dev/null differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/bbc2d47c-f110-46bd-bbc6-4ddd1475c9b1.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/bbc2d47c-f110-46bd-bbc6-4ddd1475c9b1.vsidx deleted file mode 100644 index 0d7a2b14..00000000 Binary files a/源代码/.vs/StgSharpDevelop/FileContentIndex/bbc2d47c-f110-46bd-bbc6-4ddd1475c9b1.vsidx and /dev/null differ diff --git a/源代码/.vs/StgSharpDevelop/FileContentIndex/c165da7e-6b4a-4ca7-98c2-ab6c0c84eb21.vsidx b/源代码/.vs/StgSharpDevelop/FileContentIndex/c165da7e-6b4a-4ca7-98c2-ab6c0c84eb21.vsidx new file mode 100644 index 00000000..7c1f12c6 Binary files /dev/null and b/源代码/.vs/StgSharpDevelop/FileContentIndex/c165da7e-6b4a-4ca7-98c2-ab6c0c84eb21.vsidx differ diff --git a/源代码/.vs/StgSharpDevelop/v17/.futdcache.v2 b/源代码/.vs/StgSharpDevelop/v17/.futdcache.v2 index e7307a8b..63a9429b 100644 Binary files a/源代码/.vs/StgSharpDevelop/v17/.futdcache.v2 and b/源代码/.vs/StgSharpDevelop/v17/.futdcache.v2 differ diff --git a/源代码/.vs/StgSharpDevelop/v17/.suo b/源代码/.vs/StgSharpDevelop/v17/.suo index 6ea4b3e5..22fd79bd 100644 Binary files a/源代码/.vs/StgSharpDevelop/v17/.suo and b/源代码/.vs/StgSharpDevelop/v17/.suo differ diff --git a/源代码/.vs/StgSharpDevelop/v17/DocumentLayout.json b/源代码/.vs/StgSharpDevelop/v17/DocumentLayout.json index 8d5a608e..9476e33c 100644 --- a/源代码/.vs/StgSharpDevelop/v17/DocumentLayout.json +++ b/源代码/.vs/StgSharpDevelop/v17/DocumentLayout.json @@ -2,122 +2,208 @@ "Version": 1, "WorkspaceRootPath": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\", "Documents": [ - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\view\\viewrender.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\view\\viewrender.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\demo\\view\\render.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\demo\\view\\render.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\demo\\view\\viewmain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\demo\\view\\viewmain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\view\\view.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\view\\view.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\viewresponder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\viewresponder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\demo\\view\\control.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\demo\\view\\control.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\demo\\view\\design.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\demo\\view\\design.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\logic\\viewmodel\\showviewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\logic\\viewmodel\\showviewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\logic\\viewmodel\\viewmanage.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\logic\\viewmodel\\viewmanage.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\viewdesigner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\viewdesigner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\controlling\\viewresponder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\controlling\\viewresponder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\view\\viewrender.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\view\\viewrender.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\view\\view.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\view\\view.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\controlling\\viewdesigner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\controlling\\viewdesigner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\controlling\\controls\\buttongroup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\controlling\\controls\\buttongroup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\controls\\buttongroup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\controls\\buttongroup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\controls\\triggerbutton.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\controls\\triggerbutton.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, { "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\demo\\renderstream\\partical.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\demo\\renderstream\\partical.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\demo\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\demo\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\buffer\\fbo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\buffer\\fbo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\glrenderstream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\glrenderstream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\shader\\fbo.frag||{8B382828-6202-11D1-8870-0000F87579D2}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\shader\\fbo.frag||{8B382828-6202-11D1-8870-0000F87579D2}" }, { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\demo\\viewmodelmain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\demo\\viewmodelmain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\shader\\fbo.vert||{8B382828-6202-11D1-8870-0000F87579D2}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\shader\\fbo.vert||{8B382828-6202-11D1-8870-0000F87579D2}" }, { "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\stg\\collisiontexture.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\stg\\collisiontexture.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, + { + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\stg\\collisiontexture.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\stg\\collisiontexture.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\glfunction.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\glfunction.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\define\\glenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\define\\glenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\image.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\image.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\shader\\particle.vert||{8B382828-6202-11D1-8870-0000F87579D2}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\shader\\particle.vert||{8B382828-6202-11D1-8870-0000F87579D2}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\glapimanager.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\glapimanager.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\Nitlo\\AppData\\Local\\SourceServer\\c6a36f44105246e8389794d6b1ff0c946741477e6dd52e219c7f2f689247fedc\\src\\libraries\\System.Private.CoreLib\\src\\System\\Threading\\SemaphoreSlim.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\glrenderstream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\glrenderstream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, { "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\renderstream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\renderstream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\controls\\decorationbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\controls\\decorationbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\glexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\glexception.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\io\\glio.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\io\\glio.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\glapimanagerconst.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\glapimanagerconst.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\demo\\view\\newrender.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\demo\\view\\newrender.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\Nitlo\\AppData\\Local\\SourceServer\\3fbd2d3f2a21976ceea22ce6d61d2bfc56abbb0356d59a09e7367042f1d26101\\src\\libraries\\System.Private.CoreLib\\src\\System\\Object.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\math\\graphic\\camera.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\math\\graphic\\camera.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\mvvm\\view\\viewrender.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\mvvm\\view\\viewrender.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\demo\\view\\viewmain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\demo\\view\\viewmain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\glhandle.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\glhandle.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\define\\bufferobjectbase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\define\\bufferobjectbase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\define\\structdefine.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\define\\structdefine.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\demo\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\demo\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\cpuanimation\\imagehelper.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\cpuanimation\\imagehelper.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\shader\\particle.frag||{8B382828-6202-11D1-8870-0000F87579D2}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\shader\\particle.frag||{8B382828-6202-11D1-8870-0000F87579D2}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\demo\\view\\design.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\demo\\view\\design.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\demo\\viewmodelmain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\demo\\viewmodelmain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\controls\\triggerbutton.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\controls\\triggerbutton.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\mvvm\\view\\viewbase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\mvvm\\view\\viewbase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\mvvm\\viewmodel\\showviewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\mvvm\\viewmodel\\showviewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\mvvm\\viewmodel\\viewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\mvvm\\viewmodel\\viewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\plaingeometrymesh.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\plaingeometrymesh.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\demo\\view\\control.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\demo\\view\\control.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\mvvm\\view\\viewdesigner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\mvvm\\view\\viewdesigner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, { "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\controls\\battlefield.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\controls\\battlefield.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\textureprovider.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\textureprovider.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\controls\\buttongroup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\controls\\buttongroup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\texturepipeline.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\texturepipeline.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\mvvm\\view\\viewresponder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\mvvm\\view\\viewresponder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\mvvm\\view\\viewrender.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\mvvm\\view\\viewrender.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\globalsuppressions.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\globalsuppressions.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\stgsharpdebug.csproj||{04B8AB82-A572-4FEF-95CE-5222444B6B64}|", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\stgsharpdebug.csproj||{04B8AB82-A572-4FEF-95CE-5222444B6B64}|" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\mvvm\\viewmodel\\viewmanage.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\mvvm\\viewmodel\\viewmanage.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\mvvm\\viewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\mvvm\\viewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\environment\\timeprovider.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\environment\\timeprovider.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\geometries\\plaingeometry\\rectangle.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\geometries\\plaingeometry\\rectangle.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\geometries\\plaingeometry\\define\\plaingeometry.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\geometries\\plaingeometry\\define\\plaingeometry.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\controlling\\controls\\markinglable.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\controlling\\controls\\markinglable.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\controls\\markinglable.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\controls\\markinglable.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\controls\\decorationbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\controls\\decorationbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, { "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\controls\\controllingintem.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\controls\\controllingintem.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" @@ -127,69 +213,85 @@ "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\controls\\characterindeximage.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\logic\\viewmodel\\viewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\logic\\viewmodel\\viewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\textureprovider.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\textureprovider.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\logic\\viewmodel\\databinding.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\logic\\viewmodel\\databinding.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\logic\\viewmodel\\databinding.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\logic\\viewmodel\\databinding.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\keyeventattribute.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\keyeventattribute.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\usractivity\\keytrigger.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\usractivity\\keytrigger.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\keycontrol.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\keycontrol.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\logic\\viewmodel\\showviewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\logic\\viewmodel\\showviewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\mvvm\\viewmodel\\databinding.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\mvvm\\viewmodel\\databinding.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\view\\viewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\view\\viewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\View\\View.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:StgSharpDebug\\Graphics\\View\\View.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\stgsharpdebug.csproj||{04B8AB82-A572-4FEF-95CE-5222444B6B64}|", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\stgsharpdebug.csproj||{04B8AB82-A572-4FEF-95CE-5222444B6B64}|" + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\mvvm\\viewmodel\\showviewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\mvvm\\viewmodel\\showviewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\logic\\viewmodel\\viewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\logic\\viewmodel\\viewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\mvvm\\viewmodel\\viewmanage.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\mvvm\\viewmodel\\viewmanage.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\logic\\viewmodel\\viewmanage.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\logic\\viewmodel\\viewmanage.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\mvvm\\view\\viewdesigner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\mvvm\\view\\viewdesigner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\stgsharpdebug.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\stgsharpdebug.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|" + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\mvvm\\view\\viewbase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\mvvm\\view\\viewbase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\mvvm\\view\\viewresponder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\mvvm\\view\\viewresponder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\renderstream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\renderstream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\mvvm\\viewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\mvvm\\viewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\mvvm\\viewmodel\\viewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\mvvm\\viewmodel\\viewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\mvvm\\viewmodel\\databinding.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\mvvm\\viewmodel\\databinding.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, { "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\stgsharp.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\stgsharp.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|" }, + { + "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\controlling\\controls\\buttongroup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\controlling\\controls\\buttongroup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\texturepipeline.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\texturepipeline.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\controlling\\keyeventattribute.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\controlling\\keyeventattribute.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\stgsharpdebug.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|", + "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\stgsharpdebug.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|" + }, { "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\logic\\timefunction.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\logic\\timefunction.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\define\\bufferobjectbase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\define\\bufferobjectbase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\shader\\particle.vert||{8B382828-6202-11D1-8870-0000F87579D2}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\shader\\particle.vert||{8B382828-6202-11D1-8870-0000F87579D2}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\shader\\particle.frag||{8B382828-6202-11D1-8870-0000F87579D2}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\shader\\particle.frag||{8B382828-6202-11D1-8870-0000F87579D2}" - }, { "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\math\\linear\\vec3d.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\math\\linear\\vec3d.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" @@ -206,34 +308,10 @@ "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\buffer\\texturegl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\buffer\\texturegl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\glfunction.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\glfunction.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\define\\glenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\define\\glenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, { "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\buffer\\vao.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\buffer\\vao.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\image.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\image.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\buffer\\fbo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\buffer\\fbo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\shader\\fbo.vert||{8B382828-6202-11D1-8870-0000F87579D2}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\shader\\fbo.vert||{8B382828-6202-11D1-8870-0000F87579D2}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\shader\\fbo.frag||{8B382828-6202-11D1-8870-0000F87579D2}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\shader\\fbo.frag||{8B382828-6202-11D1-8870-0000F87579D2}" - }, { "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\opengl\\glfunction.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\opengl\\glfunction.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" @@ -242,10 +320,6 @@ "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\define\\glenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\define\\glenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, - { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\stg\\collisiontexture.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\stg\\collisiontexture.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, { "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\Nitlo\\AppData\\Local\\SourceServer\\74ed84df48c00229a8da75e7d99c26a3409b78c17ddfc863196b29969f1b9863\\src\\libraries\\Common\\src\\System\\SR.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, @@ -257,10 +331,6 @@ "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\opengl\\buffer\\texturegl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\opengl\\buffer\\texturegl.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\cpuanimation\\imagehelper.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\cpuanimation\\imagehelper.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, { "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\opengl\\glhandle.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\opengl\\glhandle.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" @@ -268,14 +338,6 @@ { "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\Nitlo\\AppData\\Local\\SourceServer\\6c91e49c16b65a4a6086c168a4f34965ffdd867f9cb4d0d10207e862c24f2808\\src\\libraries\\System.Private.CoreLib\\src\\System\\Threading\\Tasks\\Task.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\glhandle.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\glhandle.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\glapimanager.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\glapimanager.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, { "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\opengl\\glrenderstream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\opengl\\glrenderstream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" @@ -304,10 +366,6 @@ "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\opengl\\buffer\\ebo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\opengl\\buffer\\ebo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, - { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\view\\viewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\view\\viewport.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, { "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\shaderedit\\shaderstruct.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\shaderedit\\shaderstruct.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" @@ -316,10 +374,6 @@ "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\opengl\\shaderedit\\uniform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\opengl\\shaderedit\\uniform.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, - { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\globalsuppressions.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\globalsuppressions.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, { "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\opengl\\shaderedit\\shader.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\opengl\\shaderedit\\shader.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" @@ -392,10 +446,6 @@ "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\graphics\\shaderedit\\shaderstruct.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\graphics\\shaderedit\\shaderstruct.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, - { - "AbsoluteMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharpdebug\\math\\graphic\\camera.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{610B992B-BB34-49C3-9993-676C595FC12E}|StgSharpDebug\\StgSharpDebug.csproj|solutionrelative:stgsharpdebug\\math\\graphic\\camera.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, { "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\igraphicapis.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\igraphicapis.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" @@ -512,10 +562,6 @@ "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\logic\\blueprint\\routeswitch.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\logic\\blueprint\\routeswitch.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, - { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\graphics\\renderstream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\graphics\\renderstream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, { "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\logic\\timespanprovider.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\logic\\timespanprovider.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" @@ -552,10 +598,6 @@ "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\controlling\\controls\\controllingintem.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\controlling\\controls\\controllingintem.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" }, - { - "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\controlling\\controls\\markinglable.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\controlling\\controls\\markinglable.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - }, { "AbsoluteMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|d:\\nitloadindustry\\\u7814\u7A76\u9879\u76EE\\1-flagship\\th2020\\projectfile\\\u6E90\u4EE3\u7801\\stgsharp\\geometries\\plaingeometry\\define\\particleonplain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{3EAF2EE6-FA9E-4F57-951F-7E6F8125DFBF}|StgSharp\\StgSharp.csproj|solutionrelative:stgsharp\\geometries\\plaingeometry\\define\\particleonplain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" @@ -775,6 +817,42 @@ { "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Test\\MainRenderStream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:StgSharpDebug\\Test\\MainRenderStream.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\Render.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:StgSharpDebug\\Demo\\View\\Render.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Logic\\ViewModel\\DataBinding.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:StgSharpDebug\\Logic\\ViewModel\\DataBinding.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Logic\\ViewModel\\ShowViewPort.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:StgSharpDebug\\Logic\\ViewModel\\ShowViewPort.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\View\\ViewPort.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:StgSharpDebug\\Graphics\\View\\ViewPort.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\ViewResponder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:StgSharpDebug\\Controlling\\ViewResponder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\View\\ViewRender.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:StgSharpDebug\\Graphics\\View\\ViewRender.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\ViewDesigner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:StgSharpDebug\\Controlling\\ViewDesigner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Logic\\ViewModel\\ViewManage.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:StgSharpDebug\\Logic\\ViewModel\\ViewManage.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Logic\\ViewModel\\ViewModel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:StgSharpDebug\\Logic\\ViewModel\\ViewModel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" } ], "DocumentGroupContainers": [ @@ -784,100 +862,344 @@ "DocumentGroups": [ { "DockedWidth": 197, - "SelectedChildIndex": 29, + "SelectedChildIndex": 24, "Children": [ { "$type": "Document", - "DocumentIndex": 10, - "Title": "ViewResponder.cs", - "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\ViewResponder.cs", - "RelativeDocumentMoniker": "StgSharp\\Controlling\\ViewResponder.cs", - "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\ViewResponder.cs", - "RelativeToolTip": "StgSharp\\Controlling\\ViewResponder.cs", - "ViewState": "AQIAAAAAAAAAAAAAAAAAAAsAAAA2AAAA", + "DocumentIndex": 16, + "Title": "glApiManagerConst.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\glApiManagerConst.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\OpenGL\\glApiManagerConst.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\glApiManagerConst.cs", + "RelativeToolTip": "StgSharpDebug\\Graphics\\OpenGL\\glApiManagerConst.cs", + "ViewState": "AQIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-24T14:44:59.912Z", + "WhenOpened": "2024-07-29T22:56:27.205Z", "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 11, - "Title": "ViewRender.cs", - "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\View\\ViewRender.cs", - "RelativeDocumentMoniker": "StgSharp\\Graphics\\View\\ViewRender.cs", - "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\View\\ViewRender.cs", - "RelativeToolTip": "StgSharp\\Graphics\\View\\ViewRender.cs", - "ViewState": "AQIAABgAAAAAAAAAAAAqwDgAAABRAAAA", + "DocumentIndex": 18, + "Title": "Object.cs", + "DocumentMoniker": "C:\\Users\\Nitlo\\AppData\\Local\\SourceServer\\3fbd2d3f2a21976ceea22ce6d61d2bfc56abbb0356d59a09e7367042f1d26101\\src\\libraries\\System.Private.CoreLib\\src\\System\\Object.cs", + "ToolTip": "C:\\Users\\Nitlo\\AppData\\Local\\SourceServer\\3fbd2d3f2a21976ceea22ce6d61d2bfc56abbb0356d59a09e7367042f1d26101\\src\\libraries\\System.Private.CoreLib\\src\\System\\Object.cs", + "ViewState": "AQIAABIAAAAAAAAAAIAxwBkAAAAIAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-24T14:44:50.254Z", + "WhenOpened": "2024-07-29T22:53:04.659Z", "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 13, - "Title": "ViewDesigner.cs", - "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\ViewDesigner.cs", - "RelativeDocumentMoniker": "StgSharp\\Controlling\\ViewDesigner.cs", - "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\ViewDesigner.cs", - "RelativeToolTip": "StgSharp\\Controlling\\ViewDesigner.cs", - "ViewState": "AQIAAAMAAAAAAAAAAAAswBIAAAA8AAAA", + "DocumentIndex": 14, + "Title": "GlException.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\GlException.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\OpenGL\\GlException.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\GlException.cs", + "RelativeToolTip": "StgSharpDebug\\Graphics\\OpenGL\\GlException.cs", + "ViewState": "AQIAAAQAAAAAAAAAAAAuwA8AAAA2AAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-24T14:42:19.45Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 5, - "Title": "Control.cs", - "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\Control.cs", - "RelativeDocumentMoniker": "StgSharpDebug\\Demo\\View\\Control.cs", - "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\Control.cs", - "RelativeToolTip": "StgSharpDebug\\Demo\\View\\Control.cs", - "ViewState": "AQIAAAAAAAAAAAAAAAAAAAoAAAAiAAAA", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-22T23:13:34.964Z", - "EditorCaption": "" - }, - { - "$type": "Document", - "DocumentIndex": 17, - "Title": "Partical.cs", - "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\RenderStream\\Partical.cs", - "RelativeDocumentMoniker": "StgSharpDebug\\Demo\\RenderStream\\Partical.cs", - "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\RenderStream\\Partical.cs", - "RelativeToolTip": "StgSharpDebug\\Demo\\RenderStream\\Partical.cs", - "ViewState": "AQIAABMBAAAAAAAAAAA1wDUBAAA3AAAA", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-22T18:54:09.535Z" - }, - { - "$type": "Document", - "DocumentIndex": 1, - "Title": "Render.cs", - "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\Render.cs", - "RelativeDocumentMoniker": "StgSharpDebug\\Demo\\View\\Render.cs", - "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\Render.cs", - "RelativeToolTip": "StgSharpDebug\\Demo\\View\\Render.cs", - "ViewState": "AQIAAAEAAAAAAAAAAAAswAoAAAAgAAAA", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-22T18:52:26.586Z", + "WhenOpened": "2024-07-29T22:18:29.968Z", "EditorCaption": "" }, { "$type": "Document", "DocumentIndex": 24, + "Title": "StructDefine.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\Define\\StructDefine.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\Define\\StructDefine.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\Define\\StructDefine.cs", + "RelativeToolTip": "StgSharpDebug\\Graphics\\Define\\StructDefine.cs", + "ViewState": "AQIAABgAAAAAAAAAAAAAALsDAAAdAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-29T22:08:05.513Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 15, + "Title": "GLIO.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\IO\\GLIO.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\IO\\GLIO.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\IO\\GLIO.cs", + "RelativeToolTip": "StgSharpDebug\\Controlling\\IO\\GLIO.cs", + "ViewState": "AQIAAIMBAAAAAAAAAAAqwPACAAAyAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-29T22:06:08.827Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 43, + "Title": "ViewManage.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\ViewModel\\ViewManage.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\MVVM\\ViewModel\\ViewManage.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\ViewModel\\ViewManage.cs", + "RelativeToolTip": "StgSharpDebug\\MVVM\\ViewModel\\ViewManage.cs", + "ViewState": "AQIAABoAAAAAAAAAAAA1wDIAAAAYAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-28T20:47:56.998Z" + }, + { + "$type": "Document", + "DocumentIndex": 45, + "Title": "TimeProvider.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Environment\\TimeProvider.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\Environment\\TimeProvider.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Environment\\TimeProvider.cs", + "RelativeToolTip": "StgSharpDebug\\Environment\\TimeProvider.cs", + "ViewState": "AQIAAHkAAAAAAAAAAADwv4cAAAA1AAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-28T20:44:41.918Z" + }, + { + "$type": "Document", + "DocumentIndex": 11, + "Title": "SemaphoreSlim.cs", + "DocumentMoniker": "C:\\Users\\Nitlo\\AppData\\Local\\SourceServer\\c6a36f44105246e8389794d6b1ff0c946741477e6dd52e219c7f2f689247fedc\\src\\libraries\\System.Private.CoreLib\\src\\System\\Threading\\SemaphoreSlim.cs", + "ToolTip": "C:\\Users\\Nitlo\\AppData\\Local\\SourceServer\\c6a36f44105246e8389794d6b1ff0c946741477e6dd52e219c7f2f689247fedc\\src\\libraries\\System.Private.CoreLib\\src\\System\\Threading\\SemaphoreSlim.cs", + "ViewState": "AQIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-28T20:44:32.439Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 44, + "Title": "ViewPort.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\ViewPort.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\MVVM\\ViewPort.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\ViewPort.cs", + "RelativeToolTip": "StgSharpDebug\\MVVM\\ViewPort.cs", + "ViewState": "AQIAAB8AAAAAAAAAAAA1wDoAAAAUAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-28T20:31:16.196Z" + }, + { + "$type": "Document", + "DocumentIndex": 39, + "Title": "ViewResponder.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\View\\ViewResponder.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\MVVM\\View\\ViewResponder.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\View\\ViewResponder.cs", + "RelativeToolTip": "StgSharpDebug\\MVVM\\View\\ViewResponder.cs", + "ViewState": "AQIAAEgAAAAAAAAAAIBAwFgAAAAjAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-28T20:20:17.17Z" + }, + { + "$type": "Document", + "DocumentIndex": 32, + "Title": "ShowViewPort.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\ViewModel\\ShowViewPort.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\MVVM\\ViewModel\\ShowViewPort.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\ViewModel\\ShowViewPort.cs", + "RelativeToolTip": "StgSharpDebug\\MVVM\\ViewModel\\ShowViewPort.cs", + "ViewState": "AQIAADIAAAAAAAAAAAAtwEgAAAAZAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-28T19:28:00.87Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 33, + "Title": "ViewModel.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\ViewModel\\ViewModel.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\MVVM\\ViewModel\\ViewModel.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\ViewModel\\ViewModel.cs", + "RelativeToolTip": "StgSharpDebug\\MVVM\\ViewModel\\ViewModel.cs", + "ViewState": "AQIAAHUAAAAAAAAAAADwv00AAAASAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-28T19:24:58.03Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 47, + "Title": "PlainGeometry.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Geometries\\PlainGeometry\\Define\\PlainGeometry.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\Geometries\\PlainGeometry\\Define\\PlainGeometry.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Geometries\\PlainGeometry\\Define\\PlainGeometry.cs", + "RelativeToolTip": "StgSharpDebug\\Geometries\\PlainGeometry\\Define\\PlainGeometry.cs", + "ViewState": "AQIAABsAAAAAAAAAAAAqwC0AAAAAAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-28T19:16:05.323Z" + }, + { + "$type": "Document", + "DocumentIndex": 46, + "Title": "Rectangle.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Geometries\\PlainGeometry\\Rectangle.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\Geometries\\PlainGeometry\\Rectangle.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Geometries\\PlainGeometry\\Rectangle.cs", + "RelativeToolTip": "StgSharpDebug\\Geometries\\PlainGeometry\\Rectangle.cs", + "ViewState": "AQIAABAAAAAAAAAAAAA1wCUAAAAFAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-28T19:14:47.657Z" + }, + { + "$type": "Document", + "DocumentIndex": 36, + "Title": "ViewDesigner.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\View\\ViewDesigner.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\MVVM\\View\\ViewDesigner.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\View\\ViewDesigner.cs", + "RelativeToolTip": "StgSharpDebug\\MVVM\\View\\ViewDesigner.cs", + "ViewState": "AQIAAFEAAAAAAAAAAAAmwGUAAAAUAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-28T18:02:40.594Z" + }, + { + "$type": "Document", + "DocumentIndex": 54, + "Title": "KeyTrigger.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\UsrActivity\\KeyTrigger.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\UsrActivity\\KeyTrigger.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\UsrActivity\\KeyTrigger.cs", + "RelativeToolTip": "StgSharpDebug\\Controlling\\UsrActivity\\KeyTrigger.cs", + "ViewState": "AQIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-26T22:07:04.226Z" + }, + { + "$type": "Document", + "DocumentIndex": 56, + "Title": "DataBinding.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\ViewModel\\DataBinding.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\MVVM\\ViewModel\\DataBinding.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\ViewModel\\DataBinding.cs", + "RelativeToolTip": "StgSharpDebug\\MVVM\\ViewModel\\DataBinding.cs", + "ViewState": "AQIAADgAAAAAAAAAAAA0wC8AAAAAAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-26T21:50:43.739Z" + }, + { + "$type": "Document", + "DocumentIndex": 31, + "Title": "ViewBase.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\View\\ViewBase.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\MVVM\\View\\ViewBase.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\View\\ViewBase.cs", + "RelativeToolTip": "StgSharpDebug\\MVVM\\View\\ViewBase.cs", + "ViewState": "AQIAAKcAAAAAAAAAAAA1wLIAAAANAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-26T21:46:52.221Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 20, + "Title": "ViewRender.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\View\\ViewRender.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\MVVM\\View\\ViewRender.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\MVVM\\View\\ViewRender.cs", + "RelativeToolTip": "StgSharpDebug\\MVVM\\View\\ViewRender.cs", + "ViewState": "AQIAAG4AAAAAAAAAAAAmwHUAAAAQAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-26T21:02:28.873Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 17, + "Title": "NewRender.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\NewRender.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\Demo\\View\\NewRender.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\NewRender.cs", + "RelativeToolTip": "StgSharpDebug\\Demo\\View\\NewRender.cs", + "ViewState": "AQIAABIAAAAAAAAAAAAcwBgAAAA7AAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-26T21:00:30.407Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 62, + "Title": "ViewResponder.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\View\\ViewResponder.cs", + "RelativeDocumentMoniker": "StgSharp\\MVVM\\View\\ViewResponder.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\View\\ViewResponder.cs", + "RelativeToolTip": "StgSharp\\MVVM\\View\\ViewResponder.cs", + "ViewState": "AQIAACIAAAAAAAAAAAAAADsAAAAuAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-24T14:44:59.912Z" + }, + { + "$type": "Document", + "DocumentIndex": 40, + "Title": "ViewRender.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\View\\ViewRender.cs", + "RelativeDocumentMoniker": "StgSharp\\MVVM\\View\\ViewRender.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\View\\ViewRender.cs", + "RelativeToolTip": "StgSharp\\MVVM\\View\\ViewRender.cs", + "ViewState": "AQIAAGkAAAAAAAAAAAA8wG0AAAAgAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-24T14:44:50.254Z" + }, + { + "$type": "Document", + "DocumentIndex": 60, + "Title": "ViewDesigner.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\View\\ViewDesigner.cs", + "RelativeDocumentMoniker": "StgSharp\\MVVM\\View\\ViewDesigner.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\View\\ViewDesigner.cs", + "RelativeToolTip": "StgSharp\\MVVM\\View\\ViewDesigner.cs", + "ViewState": "AQIAAAAAAAAAAAAAAAAAAIYAAAABAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-24T14:42:19.45Z" + }, + { + "$type": "Document", + "DocumentIndex": 35, + "Title": "Control.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\Control.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\Demo\\View\\Control.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\Control.cs", + "RelativeToolTip": "StgSharpDebug\\Demo\\View\\Control.cs", + "ViewState": "AQIAAAAAAAAAAAAAAAAAABAAAAAAAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-22T23:13:34.964Z" + }, + { + "$type": "Document", + "DocumentIndex": 0, + "Title": "Partical.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\RenderStream\\Partical.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\Demo\\RenderStream\\Partical.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\RenderStream\\Partical.cs", + "RelativeToolTip": "StgSharpDebug\\Demo\\RenderStream\\Partical.cs", + "ViewState": "AQIAAHEAAAAAAAAAAAAswHYAAAAiAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-22T18:54:09.535Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 205, + "Title": "Render.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\Render.cs", + "RelativeDocumentMoniker": "StgSharpDebug\\Demo\\View\\Render.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\Render.cs", + "RelativeToolTip": "StgSharpDebug\\Demo\\View\\Render.cs", + "ViewState": "AQIAAAAAAAAAAAAAAAAAABIAAAAAAAAA", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2024-07-22T18:52:26.586Z" + }, + { + "$type": "Document", + "DocumentIndex": 34, "Title": "PlainGeometryMesh.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\PlainGeometryMesh.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\PlainGeometryMesh.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\PlainGeometryMesh.cs", "RelativeToolTip": "StgSharpDebug\\Graphics\\PlainGeometryMesh.cs", - "ViewState": "AQIAACgAAAAAAAAAAAA1wD4AAABvAAAA", + "ViewState": "AQIAACoAAAAAAAAAAAAwwDoAAAAJAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-21T18:21:10.362Z" + "WhenOpened": "2024-07-21T18:21:10.362Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 27, + "DocumentIndex": 69, "Title": "TexturePipeline.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\TexturePipeline.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\TexturePipeline.cs", @@ -889,117 +1211,117 @@ }, { "$type": "Document", - "DocumentIndex": 28, + "DocumentIndex": 49, "Title": "MarkingLable.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\MarkingLable.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\Controls\\MarkingLable.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\MarkingLable.cs", "RelativeToolTip": "StgSharpDebug\\Controlling\\Controls\\MarkingLable.cs", - "ViewState": "AQIAAAAAAAAAAAAAAAAAAA4AAAArAAAA", + "ViewState": "AQIAAAYAAAAAAAAAAAAAAC8AAAAOAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-07-21T18:08:20.718Z" }, { "$type": "Document", - "DocumentIndex": 23, + "DocumentIndex": 50, "Title": "DecorationBox.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\DecorationBox.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\Controls\\DecorationBox.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\DecorationBox.cs", "RelativeToolTip": "StgSharpDebug\\Controlling\\Controls\\DecorationBox.cs", - "ViewState": "AQIAAAcAAAAAAAAAAAAqwBkAAABOAAAA", + "ViewState": "AQIAAAAAAAAAAAAAAAAuwBMAAAAAAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-07-21T18:08:04.698Z" }, { "$type": "Document", - "DocumentIndex": 30, + "DocumentIndex": 52, "Title": "CharacterIndexImage.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\CharacterIndexImage.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\Controls\\CharacterIndexImage.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\CharacterIndexImage.cs", "RelativeToolTip": "StgSharpDebug\\Controlling\\Controls\\CharacterIndexImage.cs", - "ViewState": "AQIAAAAAAAAAAAAAAAAAABYAAAArAAAA", + "ViewState": "AQIAAAkAAAAAAAAAAAAAAA0AAAAzAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-07-21T18:07:37.453Z" }, { "$type": "Document", - "DocumentIndex": 25, + "DocumentIndex": 37, "Title": "BattleField.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\BattleField.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\Controls\\BattleField.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\BattleField.cs", "RelativeToolTip": "StgSharpDebug\\Controlling\\Controls\\BattleField.cs", - "ViewState": "AQIAABUAAAAAAAAAAAAAAC8AAAA4AAAA", + "ViewState": "AQIAAB4AAAAAAAAAAAAqwC0AAAAOAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-07-21T18:06:14.126Z" }, { "$type": "Document", - "DocumentIndex": 29, + "DocumentIndex": 51, "Title": "ControllingIntem.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\ControllingIntem.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\Controls\\ControllingIntem.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\ControllingIntem.cs", "RelativeToolTip": "StgSharpDebug\\Controlling\\Controls\\ControllingIntem.cs", - "ViewState": "AQIAAAAAAAAAAAAAAAAAABAAAAAqAAAA", + "ViewState": "AQIAAAAAAAAAAAAAAAAuwA4AAAAXAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-07-21T18:05:39.942Z" }, { "$type": "Document", - "DocumentIndex": 26, + "DocumentIndex": 53, "Title": "TextureProvider.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\TextureProvider.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\TextureProvider.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\TextureProvider.cs", "RelativeToolTip": "StgSharpDebug\\Graphics\\TextureProvider.cs", - "ViewState": "AQIAABEAAAAAAAAAAAAcwCcAAAAAAAAA", + "ViewState": "AQIAABIAAAAAAAAAAAAcwCMAAAAjAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-07-21T17:09:02.036Z" }, { "$type": "Document", - "DocumentIndex": 6, + "DocumentIndex": 28, "Title": "Design.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\Design.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Demo\\View\\Design.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\Design.cs", "RelativeToolTip": "StgSharpDebug\\Demo\\View\\Design.cs", - "ViewState": "AQIAAAoAAAAAAAAAAAAcwBsAAAA2AAAA", + "ViewState": "AQIAABQAAAAAAAAAAAAqwCYAAAAkAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-07-21T08:07:56.357Z", "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 2, + "DocumentIndex": 21, "Title": "ViewMain.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\ViewMain.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Demo\\View\\ViewMain.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\View\\ViewMain.cs", "RelativeToolTip": "StgSharpDebug\\Demo\\View\\ViewMain.cs", - "ViewState": "AQIAAAYAAAAAAAAAAAAAACIAAAARAAAA", + "ViewState": "AQIAACQAAAAAAAAAAAAYwDkAAAAVAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-07-21T08:06:54.118Z", "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 33, + "DocumentIndex": 66, "Title": "DataBinding.cs", - "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\ViewModel\\DataBinding.cs", - "RelativeDocumentMoniker": "StgSharp\\Logic\\ViewModel\\DataBinding.cs", - "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\ViewModel\\DataBinding.cs", - "RelativeToolTip": "StgSharp\\Logic\\ViewModel\\DataBinding.cs", - "ViewState": "AQIAAAYAAAAAAAAAAAAqwBsAAAAAAAAA", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\ViewModel\\DataBinding.cs", + "RelativeDocumentMoniker": "StgSharp\\MVVM\\ViewModel\\DataBinding.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\ViewModel\\DataBinding.cs", + "RelativeToolTip": "StgSharp\\MVVM\\ViewModel\\DataBinding.cs", + "ViewState": "AQIAAAAAAAAAAAAAAAAAACgAAAAhAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-07-19T16:41:06.14Z" }, { "$type": "Document", - "DocumentIndex": 34, + "DocumentIndex": 70, "Title": "KeyEventAttribute.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\KeyEventAttribute.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\KeyEventAttribute.cs", @@ -1011,7 +1333,7 @@ }, { "$type": "Document", - "DocumentIndex": 32, + "DocumentIndex": 206, "Title": "DataBinding.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Logic\\ViewModel\\DataBinding.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Logic\\ViewModel\\DataBinding.cs", @@ -1023,7 +1345,7 @@ }, { "$type": "Document", - "DocumentIndex": 38, + "DocumentIndex": 42, "Title": "StgSharpDebug", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\StgSharpDebug.csproj", "RelativeDocumentMoniker": "StgSharpDebug\\StgSharpDebug.csproj", @@ -1034,19 +1356,20 @@ }, { "$type": "Document", - "DocumentIndex": 20, + "DocumentIndex": 29, "Title": "ViewModelMain.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\ViewModelMain.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Demo\\ViewModelMain.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\ViewModelMain.cs", "RelativeToolTip": "StgSharpDebug\\Demo\\ViewModelMain.cs", - "ViewState": "AQIAAAAAAAAAAAAAAAAAACwAAAAAAAAA", + "ViewState": "AQIAAA8AAAAAAAAAAAAuwBEAAAA0AAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-16T07:19:49.481Z" + "WhenOpened": "2024-07-16T07:19:49.481Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 41, + "DocumentIndex": 71, "Title": "StgSharpDebug.csproj", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\StgSharpDebug.csproj", "RelativeDocumentMoniker": "StgSharpDebug\\StgSharpDebug.csproj", @@ -1058,7 +1381,7 @@ }, { "$type": "Document", - "DocumentIndex": 43, + "DocumentIndex": 72, "Title": "TimeFunction.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Logic\\TimeFunction.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Logic\\TimeFunction.cs", @@ -1070,31 +1393,32 @@ }, { "$type": "Document", - "DocumentIndex": 16, + "DocumentIndex": 30, "Title": "TriggerButton.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\TriggerButton.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\Controls\\TriggerButton.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\TriggerButton.cs", "RelativeToolTip": "StgSharpDebug\\Controlling\\Controls\\TriggerButton.cs", - "ViewState": "AQIAAJQAAAAAAAAAAAA1wKYAAAAAAAAA", + "ViewState": "AQIAAK8AAAAAAAAAAAAQwMkAAAAMAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-15T19:54:09.954Z" + "WhenOpened": "2024-07-15T19:54:09.954Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 15, + "DocumentIndex": 38, "Title": "ButtonGroup.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\ButtonGroup.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\Controls\\ButtonGroup.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\ButtonGroup.cs", "RelativeToolTip": "StgSharpDebug\\Controlling\\Controls\\ButtonGroup.cs", - "ViewState": "AQIAAF0AAAAAAAAAAAAYwHAAAAAUAAAA", + "ViewState": "AQIAADAAAAAAAAAAAAAqwEEAAAArAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-07-15T19:53:42.786Z" }, { "$type": "Document", - "DocumentIndex": 7, + "DocumentIndex": 207, "Title": "ShowViewPort.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Logic\\ViewModel\\ShowViewPort.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Logic\\ViewModel\\ShowViewPort.cs", @@ -1102,12 +1426,11 @@ "RelativeToolTip": "StgSharpDebug\\Logic\\ViewModel\\ShowViewPort.cs", "ViewState": "AQIAAAAAAAAAAAAAAAAuwA0AAAASAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-15T19:07:20.391Z", - "EditorCaption": "" + "WhenOpened": "2024-07-15T19:07:20.391Z" }, { "$type": "Document", - "DocumentIndex": 37, + "DocumentIndex": 208, "Title": "ViewPort.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\View\\ViewPort.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\View\\ViewPort.cs", @@ -1119,71 +1442,66 @@ }, { "$type": "Document", - "DocumentIndex": 35, + "DocumentIndex": 55, "Title": "KeyControl.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\KeyControl.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\KeyControl.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\KeyControl.cs", "RelativeToolTip": "StgSharpDebug\\Controlling\\KeyControl.cs", - "ViewState": "AQIAAD4AAAAAAAAAAAAcwAAAAAAAAAAA", + "ViewState": "AQIAABAAAAAAAAAAAAAqwCQAAAAbAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-07-15T18:23:56.059Z" }, { "$type": "Document", - "DocumentIndex": 4, + "DocumentIndex": 209, "Title": "ViewResponder.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\ViewResponder.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\ViewResponder.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\ViewResponder.cs", "RelativeToolTip": "StgSharpDebug\\Controlling\\ViewResponder.cs", - "ViewState": "AQIAAAAAAAAAAAAAAAAuwAsAAAA+AAAA", + "ViewState": "AQIAAAAAAAAAAAAAAAAuwBYAAABcAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-15T18:00:35.036Z", - "EditorCaption": "" + "WhenOpened": "2024-07-15T18:00:35.036Z" }, { "$type": "Document", - "DocumentIndex": 0, + "DocumentIndex": 210, "Title": "ViewRender.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\View\\ViewRender.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\View\\ViewRender.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\View\\ViewRender.cs", "RelativeToolTip": "StgSharpDebug\\Graphics\\View\\ViewRender.cs", - "ViewState": "AQIAACYAAAAAAAAAAAAYwC0AAAAeAAAA", + "ViewState": "AQIAACYAAAAAAAAAAAAAADYAAAAkAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-15T17:27:33.542Z", - "EditorCaption": "" + "WhenOpened": "2024-07-15T17:27:33.542Z" }, { "$type": "Document", - "DocumentIndex": 9, + "DocumentIndex": 211, "Title": "ViewDesigner.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\ViewDesigner.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\ViewDesigner.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\ViewDesigner.cs", "RelativeToolTip": "StgSharpDebug\\Controlling\\ViewDesigner.cs", - "ViewState": "AQIAADIAAAAAAAAAAAAUwEYAAAAcAAAA", + "ViewState": "AQIAABoAAAAAAAAAAAAqwDcAAAAZAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-15T17:21:21.477Z", - "EditorCaption": "" + "WhenOpened": "2024-07-15T17:21:21.477Z" }, { "$type": "Document", - "DocumentIndex": 3, + "DocumentIndex": 57, "Title": "View.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\View\\View.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\View\\View.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\View\\View.cs", "RelativeToolTip": "StgSharpDebug\\Graphics\\View\\View.cs", - "ViewState": "AQIAAG8AAAAAAAAAAAAUwLwAAAAQAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-15T15:23:07.924Z", - "EditorCaption": "" + "WhenOpened": "2024-07-15T15:23:07.924Z" }, { "$type": "Document", - "DocumentIndex": 47, + "DocumentIndex": 73, "Title": "vec3d.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Math\\Linear\\vec3d.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Math\\Linear\\vec3d.cs", @@ -1195,7 +1513,7 @@ }, { "$type": "Document", - "DocumentIndex": 48, + "DocumentIndex": 74, "Title": "GeometryOperation.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Geometries\\GeometryOperation\\GeometryOperation.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Geometries\\GeometryOperation\\GeometryOperation.cs", @@ -1207,7 +1525,7 @@ }, { "$type": "Document", - "DocumentIndex": 46, + "DocumentIndex": 27, "Title": "particle.frag", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Shader\\particle.frag", "RelativeDocumentMoniker": "StgSharpDebug\\Shader\\particle.frag", @@ -1215,11 +1533,12 @@ "RelativeToolTip": "StgSharpDebug\\Shader\\particle.frag", "ViewState": "AQIAAAAAAAAAAAAAAAAAAAkAAAA4AAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001001|", - "WhenOpened": "2024-07-13T05:34:34.109Z" + "WhenOpened": "2024-07-13T05:34:34.109Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 45, + "DocumentIndex": 9, "Title": "particle.vert", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Shader\\particle.vert", "RelativeDocumentMoniker": "StgSharpDebug\\Shader\\particle.vert", @@ -1227,11 +1546,12 @@ "RelativeToolTip": "StgSharpDebug\\Shader\\particle.vert", "ViewState": "AQIAAAAAAAAAAAAAAAAAABoAAAAoAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001001|", - "WhenOpened": "2024-07-13T05:34:25.67Z" + "WhenOpened": "2024-07-13T05:34:25.67Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 56, + "DocumentIndex": 3, "Title": "fbo.vert", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Shader\\fbo.vert", "RelativeDocumentMoniker": "StgSharpDebug\\Shader\\fbo.vert", @@ -1239,47 +1559,51 @@ "RelativeToolTip": "StgSharpDebug\\Shader\\fbo.vert", "ViewState": "AQIAAAAAAAAAAAAAAAAAAAoAAAAWAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001001|", - "WhenOpened": "2024-07-12T17:46:54.077Z" + "WhenOpened": "2024-07-12T17:46:54.077Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 57, + "DocumentIndex": 2, "Title": "fbo.frag", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Shader\\fbo.frag", "RelativeDocumentMoniker": "StgSharpDebug\\Shader\\fbo.frag", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Shader\\fbo.frag", "RelativeToolTip": "StgSharpDebug\\Shader\\fbo.frag", - "ViewState": "AQIAAAAAAAAAAAAAAAAAAAoAAAAqAAAA", + "ViewState": "AQIAAAAAAAAAAAAAAAAAAAoAAAAEAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001001|", - "WhenOpened": "2024-07-12T17:46:52.616Z" + "WhenOpened": "2024-07-12T17:46:52.616Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 52, + "DocumentIndex": 7, "Title": "glEnum.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\Define\\glEnum.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\Define\\glEnum.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\Define\\glEnum.cs", "RelativeToolTip": "StgSharpDebug\\Graphics\\Define\\glEnum.cs", - "ViewState": "AQIAAE0AAAAAAAAAAAAqwGEAAAAfAAAA", + "ViewState": "AQIAAL8AAAAAAAAAAAAkwGUAAAAFAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-12T17:36:17.134Z" + "WhenOpened": "2024-07-12T17:36:17.134Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 22, + "DocumentIndex": 13, "Title": "RenderStream.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\RenderStream.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\RenderStream.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\RenderStream.cs", "RelativeToolTip": "StgSharpDebug\\Graphics\\RenderStream.cs", - "ViewState": "AQIAAEIAAAAAAAAAAAA0wFgAAAAMAAAA", + "ViewState": "AQIAALoAAAAAAAAAAAAuwMUAAAAMAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-12T16:50:10.581Z" + "WhenOpened": "2024-07-12T16:50:10.581Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 53, + "DocumentIndex": 77, "Title": "VAO.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\Buffer\\VAO.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\OpenGL\\Buffer\\VAO.cs", @@ -1291,7 +1615,7 @@ }, { "$type": "Document", - "DocumentIndex": 50, + "DocumentIndex": 76, "Title": "TextureGL.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\Buffer\\TextureGL.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\OpenGL\\Buffer\\TextureGL.cs", @@ -1303,7 +1627,7 @@ }, { "$type": "Document", - "DocumentIndex": 61, + "DocumentIndex": 80, "Title": "SR.cs", "DocumentMoniker": "C:\\Users\\Nitlo\\AppData\\Local\\SourceServer\\74ed84df48c00229a8da75e7d99c26a3409b78c17ddfc863196b29969f1b9863\\src\\libraries\\Common\\src\\System\\SR.cs", "ToolTip": "C:\\Users\\Nitlo\\AppData\\Local\\SourceServer\\74ed84df48c00229a8da75e7d99c26a3409b78c17ddfc863196b29969f1b9863\\src\\libraries\\Common\\src\\System\\SR.cs", @@ -1313,19 +1637,20 @@ }, { "$type": "Document", - "DocumentIndex": 64, + "DocumentIndex": 26, "Title": "ImageHelper.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\CPUanimation\\ImageHelper.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\CPUanimation\\ImageHelper.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\CPUanimation\\ImageHelper.cs", "RelativeToolTip": "StgSharpDebug\\Graphics\\CPUanimation\\ImageHelper.cs", - "ViewState": "AQIAAAAAAAAAAAAAAAAAAA4AAABBAAAA", + "ViewState": "AQIAAAAAAAAAAAAAAAAAABgAAAA3AAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-11T13:33:11Z" + "WhenOpened": "2024-07-11T13:33:11Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 54, + "DocumentIndex": 8, "Title": "Image.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\Image.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\Image.cs", @@ -1333,11 +1658,12 @@ "RelativeToolTip": "StgSharpDebug\\Graphics\\Image.cs", "ViewState": "AQIAAIsAAAAAAAAAAAAYwJ4AAAAfAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-11T13:30:30.357Z" + "WhenOpened": "2024-07-11T13:30:30.357Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 66, + "DocumentIndex": 84, "Title": "Task.cs", "DocumentMoniker": "C:\\Users\\Nitlo\\AppData\\Local\\SourceServer\\6c91e49c16b65a4a6086c168a4f34965ffdd867f9cb4d0d10207e862c24f2808\\src\\libraries\\System.Private.CoreLib\\src\\System\\Threading\\Tasks\\Task.cs", "ToolTip": "C:\\Users\\Nitlo\\AppData\\Local\\SourceServer\\6c91e49c16b65a4a6086c168a4f34965ffdd867f9cb4d0d10207e862c24f2808\\src\\libraries\\System.Private.CoreLib\\src\\System\\Threading\\Tasks\\Task.cs [\u53EA\u8BFB]", @@ -1348,7 +1674,7 @@ }, { "$type": "Document", - "DocumentIndex": 67, + "DocumentIndex": 22, "Title": "GlHandle.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\GlHandle.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\OpenGL\\GlHandle.cs", @@ -1356,11 +1682,12 @@ "RelativeToolTip": "StgSharpDebug\\Graphics\\OpenGL\\GlHandle.cs", "ViewState": "AQIAACQAAAAAAAAAAAAYwDoAAAAJAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-10T18:49:23.76Z" + "WhenOpened": "2024-07-10T18:49:23.76Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 8, + "DocumentIndex": 212, "Title": "ViewManage.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Logic\\ViewModel\\ViewManage.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Logic\\ViewModel\\ViewManage.cs", @@ -1368,36 +1695,37 @@ "RelativeToolTip": "StgSharpDebug\\Logic\\ViewModel\\ViewManage.cs", "ViewState": "AQIAAAAAAAAAAAAAAAAAABQAAAAjAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-10T18:32:18.12Z", - "EditorCaption": "" + "WhenOpened": "2024-07-10T18:32:18.12Z" }, { "$type": "Document", - "DocumentIndex": 19, + "DocumentIndex": 12, "Title": "glRenderStream.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\glRenderStream.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\OpenGL\\glRenderStream.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\glRenderStream.cs", "RelativeToolTip": "StgSharpDebug\\Graphics\\OpenGL\\glRenderStream.cs", - "ViewState": "AQIAABoAAAAAAAAAAAAAwI0AAAAAAAAA", + "ViewState": "AQIAAFoAAAAAAAAAAAAmwGIAAAAIAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-10T18:31:57.791Z" + "WhenOpened": "2024-07-10T18:31:57.791Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 68, + "DocumentIndex": 10, "Title": "glApiManager.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\glApiManager.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\OpenGL\\glApiManager.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\glApiManager.cs", "RelativeToolTip": "StgSharpDebug\\Graphics\\OpenGL\\glApiManager.cs", - "ViewState": "AQIAAEQAAAAAAAAAAAA0wF0AAAARAAAA", + "ViewState": "AQIAAIcAAAAAAAAAAAAqwJ4AAAAyAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-10T18:26:52.544Z" + "WhenOpened": "2024-07-10T18:26:52.544Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 70, + "DocumentIndex": 86, "Title": "glApiManager.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\glApiManager.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\glApiManager.cs", @@ -1409,7 +1737,7 @@ }, { "$type": "Document", - "DocumentIndex": 71, + "DocumentIndex": 87, "Title": "glApiManagerConst.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\glApiManagerConst.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\glApiManagerConst.cs", @@ -1421,19 +1749,20 @@ }, { "$type": "Document", - "DocumentIndex": 51, + "DocumentIndex": 6, "Title": "glFunction.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\glFunction.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\OpenGL\\glFunction.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\glFunction.cs", "RelativeToolTip": "StgSharpDebug\\Graphics\\OpenGL\\glFunction.cs", - "ViewState": "AQIAAI0AAAAAAAAAAAA9wJ8AAAAkAAAA", + "ViewState": "AQIAALIAAAAAAAAAAAAswMYAAABTAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-10T18:05:53.065Z" + "WhenOpened": "2024-07-10T18:05:53.065Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 73, + "DocumentIndex": 89, "Title": "Camera.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Math\\Graphic\\Camera.cs", "RelativeDocumentMoniker": "StgSharp\\Math\\Graphic\\Camera.cs", @@ -1445,19 +1774,20 @@ }, { "$type": "Document", - "DocumentIndex": 55, + "DocumentIndex": 1, "Title": "FBO.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\Buffer\\FBO.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\OpenGL\\Buffer\\FBO.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\Buffer\\FBO.cs", "RelativeToolTip": "StgSharpDebug\\Graphics\\OpenGL\\Buffer\\FBO.cs", - "ViewState": "AQIAABIAAAAAAAAAAAAswCwAAAAgAAAA", + "ViewState": "AQIAABAAAAAAAAAAAAAqwCYAAABLAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-10T17:58:38.22Z" + "WhenOpened": "2024-07-10T17:58:38.22Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 75, + "DocumentIndex": 91, "Title": "EBO.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\OpenGL\\Buffer\\EBO.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\OpenGL\\Buffer\\EBO.cs", @@ -1469,7 +1799,7 @@ }, { "$type": "Document", - "DocumentIndex": 79, + "DocumentIndex": 41, "Title": "GlobalSuppressions.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\GlobalSuppressions.cs", "RelativeDocumentMoniker": "StgSharp\\GlobalSuppressions.cs", @@ -1481,19 +1811,20 @@ }, { "$type": "Document", - "DocumentIndex": 44, + "DocumentIndex": 23, "Title": "BufferObjectBase.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\Define\\BufferObjectBase.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\Define\\BufferObjectBase.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\Define\\BufferObjectBase.cs", "RelativeToolTip": "StgSharpDebug\\Graphics\\Define\\BufferObjectBase.cs", - "ViewState": "AQIAADUAAAAAAAAAAAA2wE4AAAAJAAAA", + "ViewState": "AQIAADYAAAAAAAAAAAAAAE4AAAAJAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-07-10T17:23:55.021Z" + "WhenOpened": "2024-07-10T17:23:55.021Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 82, + "DocumentIndex": 96, "Title": "glConst.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\Define\\glConst.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\Define\\glConst.cs", @@ -1505,7 +1836,7 @@ }, { "$type": "Document", - "DocumentIndex": 81, + "DocumentIndex": 95, "Title": "VBO.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\Buffer\\VBO.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\Buffer\\VBO.cs", @@ -1517,7 +1848,7 @@ }, { "$type": "Document", - "DocumentIndex": 83, + "DocumentIndex": 97, "Title": "VAO.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\Buffer\\VAO.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\Buffer\\VAO.cs", @@ -1529,7 +1860,7 @@ }, { "$type": "Document", - "DocumentIndex": 85, + "DocumentIndex": 99, "Title": "FBO.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\Buffer\\FBO.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\Buffer\\FBO.cs", @@ -1541,7 +1872,7 @@ }, { "$type": "Document", - "DocumentIndex": 90, + "DocumentIndex": 104, "Title": "InternalIO.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\IO\\InternalIO.cs", "RelativeDocumentMoniker": "StgSharp\\Controlling\\IO\\InternalIO.cs", @@ -1553,7 +1884,7 @@ }, { "$type": "Document", - "DocumentIndex": 72, + "DocumentIndex": 88, "Title": "Pixels.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\Pixels.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\Pixels.cs", @@ -1565,7 +1896,7 @@ }, { "$type": "Document", - "DocumentIndex": 95, + "DocumentIndex": 109, "Title": "GlException.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\GlException.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\GlException.cs", @@ -1577,7 +1908,7 @@ }, { "$type": "Document", - "DocumentIndex": 42, + "DocumentIndex": 67, "Title": "StgSharp.csproj", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\StgSharp.csproj", "RelativeDocumentMoniker": "StgSharp\\StgSharp.csproj", @@ -1589,7 +1920,7 @@ }, { "$type": "Document", - "DocumentIndex": 84, + "DocumentIndex": 98, "Title": "RBO.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\Buffer\\RBO.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\Buffer\\RBO.cs", @@ -1601,7 +1932,7 @@ }, { "$type": "Document", - "DocumentIndex": 65, + "DocumentIndex": 83, "Title": "GlHandle.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\GlHandle.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\GlHandle.cs", @@ -1613,7 +1944,7 @@ }, { "$type": "Document", - "DocumentIndex": 86, + "DocumentIndex": 100, "Title": "BufferObjectBase.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\Define\\BufferObjectBase.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\Define\\BufferObjectBase.cs", @@ -1625,7 +1956,7 @@ }, { "$type": "Document", - "DocumentIndex": 74, + "DocumentIndex": 90, "Title": "GLBufferObjectBase.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\Buffer\\GLBufferObjectBase.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\Buffer\\GLBufferObjectBase.cs", @@ -1637,7 +1968,7 @@ }, { "$type": "Document", - "DocumentIndex": 87, + "DocumentIndex": 101, "Title": "EBO.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\Buffer\\EBO.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\Buffer\\EBO.cs", @@ -1649,7 +1980,7 @@ }, { "$type": "Document", - "DocumentIndex": 96, + "DocumentIndex": 110, "Title": "OpenGLAPICalling.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\OpenGLAPICalling.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\OpenGLAPICalling.cs", @@ -1661,7 +1992,7 @@ }, { "$type": "Document", - "DocumentIndex": 193, + "DocumentIndex": 204, "Title": "MainRenderStream.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Test\\MainRenderStream.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Test\\MainRenderStream.cs", @@ -1673,7 +2004,7 @@ }, { "$type": "Document", - "DocumentIndex": 188, + "DocumentIndex": 199, "Title": "RBO.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\GL\\Buffer\\RBO.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\GL\\Buffer\\RBO.cs", @@ -1685,19 +2016,19 @@ }, { "$type": "Document", - "DocumentIndex": 31, + "DocumentIndex": 213, "Title": "ViewModel.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Logic\\ViewModel\\ViewModel.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Logic\\ViewModel\\ViewModel.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Logic\\ViewModel\\ViewModel.cs", "RelativeToolTip": "StgSharpDebug\\Logic\\ViewModel\\ViewModel.cs", - "ViewState": "AQIAAOYAAAAAAAAAAAAUwEQBAAAzAAAA", + "ViewState": "AQIAAPAAAAAAAAAAAAAgwEQBAAAzAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-06-28T00:00:20.456Z" }, { "$type": "Document", - "DocumentIndex": 97, + "DocumentIndex": 111, "Title": "ShaderStruct.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\ShaderEdit\\ShaderStruct.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\ShaderEdit\\ShaderStruct.cs", @@ -1705,11 +2036,12 @@ "RelativeToolTip": "StgSharpDebug\\Graphics\\ShaderEdit\\ShaderStruct.cs", "ViewState": "AQIAABQAAAAAAAAAAAA8wCgAAAA0AAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-06-28T00:00:17.716Z" + "WhenOpened": "2024-06-28T00:00:17.716Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 189, + "DocumentIndex": 200, "Title": "EBO.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\GL\\Buffer\\EBO.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\GL\\Buffer\\EBO.cs", @@ -1721,31 +2053,33 @@ }, { "$type": "Document", - "DocumentIndex": 21, + "DocumentIndex": 4, "Title": "CollisionTexture.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Stg\\CollisionTexture.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Stg\\CollisionTexture.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Stg\\CollisionTexture.cs", "RelativeToolTip": "StgSharpDebug\\Stg\\CollisionTexture.cs", - "ViewState": "AQIAAEUAAAAAAAAAAAA1wEcAAAA3AAAA", + "ViewState": "AQIAAGMAAAAAAAAAAAAqwHcAAABKAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-06-28T00:00:12.581Z" + "WhenOpened": "2024-06-28T00:00:12.581Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 98, + "DocumentIndex": 19, "Title": "Camera.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Math\\Graphic\\Camera.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Math\\Graphic\\Camera.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Math\\Graphic\\Camera.cs", "RelativeToolTip": "StgSharpDebug\\Math\\Graphic\\Camera.cs", - "ViewState": "AQIAAH0AAAAAAAAAAAAqwJEAAAATAAAA", + "ViewState": "AQIAADkAAAAAAAAAAAAcwEUAAAAIAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-06-28T00:00:11.807Z" + "WhenOpened": "2024-06-28T00:00:11.807Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 190, + "DocumentIndex": 201, "Title": "Shader.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\GL\\ShaderEdit\\Shader.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\GL\\ShaderEdit\\Shader.cs", @@ -1757,7 +2091,7 @@ }, { "$type": "Document", - "DocumentIndex": 191, + "DocumentIndex": 202, "Title": "VBO.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\GL\\Buffer\\VBO.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\GL\\Buffer\\VBO.cs", @@ -1769,7 +2103,7 @@ }, { "$type": "Document", - "DocumentIndex": 192, + "DocumentIndex": 203, "Title": "glRenderStream.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\GL\\glRenderStream.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\GL\\glRenderStream.cs", @@ -1781,7 +2115,7 @@ }, { "$type": "Document", - "DocumentIndex": 78, + "DocumentIndex": 93, "Title": "Uniform.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\ShaderEdit\\Uniform.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\ShaderEdit\\Uniform.cs", @@ -1793,7 +2127,7 @@ }, { "$type": "Document", - "DocumentIndex": 99, + "DocumentIndex": 112, "Title": "IGraphicAPIs.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\IGraphicAPIs.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\IGraphicAPIs.cs", @@ -1805,19 +2139,20 @@ }, { "$type": "Document", - "DocumentIndex": 18, + "DocumentIndex": 25, "Title": "Program.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\Program.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Demo\\Program.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Demo\\Program.cs", "RelativeToolTip": "StgSharpDebug\\Demo\\Program.cs", - "ViewState": "AQIAABEAAAAAAAAAAAAcwB0AAAAAAAAA", + "ViewState": "AQIAABEAAAAAAAAAAAA+wCEAAAAjAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-06-26T19:34:28.297Z" + "WhenOpened": "2024-06-26T19:34:28.297Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 100, + "DocumentIndex": 113, "Title": "BpNodeBuilder.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\Blueprint\\BpNodeBuilder.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\Blueprint\\BpNodeBuilder.cs", @@ -1829,7 +2164,7 @@ }, { "$type": "Document", - "DocumentIndex": 102, + "DocumentIndex": 115, "Title": "IConvertableToBlueprintNode.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\Blueprint\\IConvertableToBlueprintNode.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\Blueprint\\IConvertableToBlueprintNode.cs", @@ -1841,7 +2176,7 @@ }, { "$type": "Document", - "DocumentIndex": 101, + "DocumentIndex": 114, "Title": "BpNodeActionAttribute.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\Blueprint\\BpNodeActionAttribute.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\Blueprint\\BpNodeActionAttribute.cs", @@ -1853,7 +2188,7 @@ }, { "$type": "Document", - "DocumentIndex": 106, + "DocumentIndex": 119, "Title": "glfw3.h", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpC\\glfw3.h", "RelativeDocumentMoniker": "StgSharpC\\glfw3.h", @@ -1865,7 +2200,7 @@ }, { "$type": "Document", - "DocumentIndex": 187, + "DocumentIndex": 198, "Title": "CrossFrameBlueprintNode.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Logic\\Blueprint\\CrossFrameBlueprintNode.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Logic\\Blueprint\\CrossFrameBlueprintNode.cs", @@ -1876,7 +2211,7 @@ }, { "$type": "Document", - "DocumentIndex": 104, + "DocumentIndex": 117, "Title": "CrossFrameBlueprintNode.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\CrossFrameBlueprintNode.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\CrossFrameBlueprintNode.cs", @@ -1888,7 +2223,7 @@ }, { "$type": "Document", - "DocumentIndex": 105, + "DocumentIndex": 118, "Title": "PipeLine.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\Blueprint\\PipeLine.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\Blueprint\\PipeLine.cs", @@ -1900,7 +2235,7 @@ }, { "$type": "Document", - "DocumentIndex": 122, + "DocumentIndex": 135, "Title": "InternalData.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Data\\InternalData.cs", "RelativeDocumentMoniker": "StgSharp\\Data\\InternalData.cs", @@ -1912,7 +2247,7 @@ }, { "$type": "Document", - "DocumentIndex": 114, + "DocumentIndex": 127, "Title": "GlobalSetting.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Environment\\GlobalSetting.cs", "RelativeDocumentMoniker": "StgSharp\\Environment\\GlobalSetting.cs", @@ -1924,7 +2259,7 @@ }, { "$type": "Document", - "DocumentIndex": 124, + "DocumentIndex": 137, "Title": "globalKeyStat.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Environment\\globalKeyStat.cs", "RelativeDocumentMoniker": "StgSharp\\Environment\\globalKeyStat.cs", @@ -1936,7 +2271,7 @@ }, { "$type": "Document", - "DocumentIndex": 125, + "DocumentIndex": 138, "Title": "ErrorDefine.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Environment\\ErrorDefine.cs", "RelativeDocumentMoniker": "StgSharp\\Environment\\ErrorDefine.cs", @@ -1948,7 +2283,7 @@ }, { "$type": "Document", - "DocumentIndex": 112, + "DocumentIndex": 125, "Title": "CancellableTask.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\CancellableTask.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\CancellableTask.cs", @@ -1960,7 +2295,7 @@ }, { "$type": "Document", - "DocumentIndex": 126, + "DocumentIndex": 139, "Title": "SizeFixedList.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\SizeFixedList.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\SizeFixedList.cs", @@ -1972,7 +2307,7 @@ }, { "$type": "Document", - "DocumentIndex": 110, + "DocumentIndex": 123, "Title": "BlueprintRunner.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\Blueprint\\BlueprintRunner.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\Blueprint\\BlueprintRunner.cs", @@ -1984,7 +2319,7 @@ }, { "$type": "Document", - "DocumentIndex": 103, + "DocumentIndex": 116, "Title": "BlueprintNode.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\Blueprint\\BlueprintNode.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\Blueprint\\BlueprintNode.cs", @@ -1996,7 +2331,7 @@ }, { "$type": "Document", - "DocumentIndex": 111, + "DocumentIndex": 124, "Title": "SideNode.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\Blueprint\\SideNode.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\Blueprint\\SideNode.cs", @@ -2008,7 +2343,7 @@ }, { "$type": "Document", - "DocumentIndex": 109, + "DocumentIndex": 122, "Title": "Platform.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Environment\\Platform.cs", "RelativeDocumentMoniker": "StgSharp\\Environment\\Platform.cs", @@ -2020,7 +2355,7 @@ }, { "$type": "Document", - "DocumentIndex": 113, + "DocumentIndex": 126, "Title": "TimeProvider.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Environment\\TimeProvider.cs", "RelativeDocumentMoniker": "StgSharp\\Environment\\TimeProvider.cs", @@ -2032,7 +2367,7 @@ }, { "$type": "Document", - "DocumentIndex": 129, + "DocumentIndex": 141, "Title": "TimeSpanProvider.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\TimeSpanProvider.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\TimeSpanProvider.cs", @@ -2044,7 +2379,7 @@ }, { "$type": "Document", - "DocumentIndex": 127, + "DocumentIndex": 140, "Title": "RouteSwitch.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\Blueprint\\RouteSwitch.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\Blueprint\\RouteSwitch.cs", @@ -2056,7 +2391,7 @@ }, { "$type": "Document", - "DocumentIndex": 116, + "DocumentIndex": 129, "Title": "Area.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Data\\SSD\\Area.cs", "RelativeDocumentMoniker": "StgSharp\\Data\\SSD\\Area.cs", @@ -2068,7 +2403,7 @@ }, { "$type": "Document", - "DocumentIndex": 120, + "DocumentIndex": 133, "Title": "SSD.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Data\\SSD\\SSD.cs", "RelativeDocumentMoniker": "StgSharp\\Data\\SSD\\SSD.cs", @@ -2080,7 +2415,7 @@ }, { "$type": "Document", - "DocumentIndex": 119, + "DocumentIndex": 132, "Title": "SSDVirtualFolder.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Data\\SSD\\SSDVirtualFolder.cs", "RelativeDocumentMoniker": "StgSharp\\Data\\SSD\\SSDVirtualFolder.cs", @@ -2092,7 +2427,7 @@ }, { "$type": "Document", - "DocumentIndex": 88, + "DocumentIndex": 102, "Title": "Image.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\Image.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\Image.cs", @@ -2104,7 +2439,7 @@ }, { "$type": "Document", - "DocumentIndex": 143, + "DocumentIndex": 154, "Title": "TouhouBuilder.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Stg\\Touhou\\TouhouBuilder.cs", "RelativeDocumentMoniker": "StgSharp\\Stg\\Touhou\\TouhouBuilder.cs", @@ -2116,7 +2451,7 @@ }, { "$type": "Document", - "DocumentIndex": 144, + "DocumentIndex": 155, "Title": "TouhouWindow.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Stg\\Touhou\\TouhouWindow.cs", "RelativeDocumentMoniker": "StgSharp\\Stg\\Touhou\\TouhouWindow.cs", @@ -2128,7 +2463,7 @@ }, { "$type": "Document", - "DocumentIndex": 145, + "DocumentIndex": 156, "Title": "Program.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgsharpEnvDebug\\Program.cs", "RelativeDocumentMoniker": "StgsharpEnvDebug\\Program.cs", @@ -2140,55 +2475,55 @@ }, { "$type": "Document", - "DocumentIndex": 40, + "DocumentIndex": 59, "Title": "ViewManage.cs", - "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\ViewModel\\ViewManage.cs", - "RelativeDocumentMoniker": "StgSharp\\Logic\\ViewModel\\ViewManage.cs", - "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\ViewModel\\ViewManage.cs", - "RelativeToolTip": "StgSharp\\Logic\\ViewModel\\ViewManage.cs", - "ViewState": "AQIAAAMAAAAAAAAAAAAuwBMAAAAdAAAA", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\ViewModel\\ViewManage.cs", + "RelativeDocumentMoniker": "StgSharp\\MVVM\\ViewModel\\ViewManage.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\ViewModel\\ViewManage.cs", + "RelativeToolTip": "StgSharp\\MVVM\\ViewModel\\ViewManage.cs", + "ViewState": "AQIAACkAAAAAAAAAAAA2wDgAAAAuAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-06-06T08:10:50.451Z" }, { "$type": "Document", - "DocumentIndex": 36, + "DocumentIndex": 58, "Title": "ShowViewPort.cs", - "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\ViewModel\\ShowViewPort.cs", - "RelativeDocumentMoniker": "StgSharp\\Logic\\ViewModel\\ShowViewPort.cs", - "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\ViewModel\\ShowViewPort.cs", - "RelativeToolTip": "StgSharp\\Logic\\ViewModel\\ShowViewPort.cs", - "ViewState": "AQIAABoAAAAAAAAAAAAqwCcAAAAAAAAA", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\ViewModel\\ShowViewPort.cs", + "RelativeDocumentMoniker": "StgSharp\\MVVM\\ViewModel\\ShowViewPort.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\ViewModel\\ShowViewPort.cs", + "RelativeToolTip": "StgSharp\\MVVM\\ViewModel\\ShowViewPort.cs", + "ViewState": "AQIAAC0AAAAAAAAAAAA8wEYAAAA2AAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-06-06T07:49:36.575Z" }, { "$type": "Document", - "DocumentIndex": 76, + "DocumentIndex": 64, "Title": "ViewPort.cs", - "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\View\\ViewPort.cs", - "RelativeDocumentMoniker": "StgSharp\\Graphics\\View\\ViewPort.cs", - "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\View\\ViewPort.cs", - "RelativeToolTip": "StgSharp\\Graphics\\View\\ViewPort.cs", - "ViewState": "AQIAAGgAAAAAAAAAAAAAAHgAAAAAAAAA", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\ViewPort.cs", + "RelativeDocumentMoniker": "StgSharp\\MVVM\\ViewPort.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\ViewPort.cs", + "RelativeToolTip": "StgSharp\\MVVM\\ViewPort.cs", + "ViewState": "AQIAABUAAAAAAAAAAAAAwCsAAAAZAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-06-06T06:43:01.237Z" }, { "$type": "Document", - "DocumentIndex": 39, + "DocumentIndex": 65, "Title": "ViewModel.cs", - "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\ViewModel\\ViewModel.cs", - "RelativeDocumentMoniker": "StgSharp\\Logic\\ViewModel\\ViewModel.cs", - "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\ViewModel\\ViewModel.cs", - "RelativeToolTip": "StgSharp\\Logic\\ViewModel\\ViewModel.cs", - "ViewState": "AQIAAC8AAAAAAAAAAAAYwEIAAAAMAAAA", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\ViewModel\\ViewModel.cs", + "RelativeDocumentMoniker": "StgSharp\\MVVM\\ViewModel\\ViewModel.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\ViewModel\\ViewModel.cs", + "RelativeToolTip": "StgSharp\\MVVM\\ViewModel\\ViewModel.cs", + "ViewState": "AQIAAB0AAAAAAAAAAAAYwC8AAAAhAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-06-05T19:19:57.97Z" }, { "$type": "Document", - "DocumentIndex": 151, + "DocumentIndex": 162, "Title": "Cordinate.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Cordinate.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Cordinate.cs", @@ -2200,7 +2535,7 @@ }, { "$type": "Document", - "DocumentIndex": 152, + "DocumentIndex": 163, "Title": "Square.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Square.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Square.cs", @@ -2212,7 +2547,7 @@ }, { "$type": "Document", - "DocumentIndex": 149, + "DocumentIndex": 160, "Title": "Rectangle.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Rectangle.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Rectangle.cs", @@ -2224,7 +2559,7 @@ }, { "$type": "Document", - "DocumentIndex": 91, + "DocumentIndex": 105, "Title": "Triangle.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Triangle.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Triangle.cs", @@ -2236,7 +2571,7 @@ }, { "$type": "Document", - "DocumentIndex": 150, + "DocumentIndex": 161, "Title": "Parallelogram.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Parallelogram.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Parallelogram.cs", @@ -2248,7 +2583,7 @@ }, { "$type": "Document", - "DocumentIndex": 94, + "DocumentIndex": 108, "Title": "Polygon5.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Polygon5.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Polygon5.cs", @@ -2260,7 +2595,7 @@ }, { "$type": "Document", - "DocumentIndex": 92, + "DocumentIndex": 106, "Title": "Polygon6.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Polygon6.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Polygon6.cs", @@ -2272,7 +2607,7 @@ }, { "$type": "Document", - "DocumentIndex": 156, + "DocumentIndex": 167, "Title": "Class1.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\SpaceGeometry\\Class1.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\SpaceGeometry\\Class1.cs", @@ -2284,7 +2619,7 @@ }, { "$type": "Document", - "DocumentIndex": 155, + "DocumentIndex": 166, "Title": "SpaceCoordinate.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\Coordination\\SpaceCoordinate.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\Coordination\\SpaceCoordinate.cs", @@ -2296,7 +2631,7 @@ }, { "$type": "Document", - "DocumentIndex": 93, + "DocumentIndex": 107, "Title": "Polygon4.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Polygon4.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Polygon4.cs", @@ -2308,7 +2643,7 @@ }, { "$type": "Document", - "DocumentIndex": 160, + "DocumentIndex": 171, "Title": "Cordination.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Math\\Linear\\Cordination.cs", "RelativeDocumentMoniker": "StgSharp\\Math\\Linear\\Cordination.cs", @@ -2320,7 +2655,7 @@ }, { "$type": "Document", - "DocumentIndex": 154, + "DocumentIndex": 165, "Title": "Point.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\Point.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\Point.cs", @@ -2332,7 +2667,7 @@ }, { "$type": "Document", - "DocumentIndex": 161, + "DocumentIndex": 172, "Title": "Vector.Cross.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Math\\Linear\\Vector.Cross.cs", "RelativeDocumentMoniker": "StgSharp\\Math\\Linear\\Vector.Cross.cs", @@ -2344,7 +2679,7 @@ }, { "$type": "Document", - "DocumentIndex": 147, + "DocumentIndex": 158, "Title": "IGeometry.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\IGeometry.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\IGeometry.cs", @@ -2356,7 +2691,7 @@ }, { "$type": "Document", - "DocumentIndex": 167, + "DocumentIndex": 178, "Title": "JoystickTrigger.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\UsrActivity\\JoystickTrigger.cs", "RelativeDocumentMoniker": "StgSharp\\Controlling\\UsrActivity\\JoystickTrigger.cs", @@ -2368,7 +2703,7 @@ }, { "$type": "Document", - "DocumentIndex": 168, + "DocumentIndex": 179, "Title": "ITrigger.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\UsrActivity\\ITrigger.cs", "RelativeDocumentMoniker": "StgSharp\\Controlling\\UsrActivity\\ITrigger.cs", @@ -2380,7 +2715,7 @@ }, { "$type": "Document", - "DocumentIndex": 131, + "DocumentIndex": 143, "Title": "KeyTrigger.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\UsrActivity\\KeyTrigger.cs", "RelativeDocumentMoniker": "StgSharp\\Controlling\\UsrActivity\\KeyTrigger.cs", @@ -2392,19 +2727,19 @@ }, { "$type": "Document", - "DocumentIndex": 138, + "DocumentIndex": 48, "Title": "MarkingLable.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\Controls\\MarkingLable.cs", "RelativeDocumentMoniker": "StgSharp\\Controlling\\Controls\\MarkingLable.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\Controls\\MarkingLable.cs", "RelativeToolTip": "StgSharp\\Controlling\\Controls\\MarkingLable.cs", - "ViewState": "AQIAAAAAAAAAAAAAAAAuwBAAAAAnAAAA", + "ViewState": "AQIAAAAAAAAAAAAAAAAAAA4AAAAsAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-06-01T19:38:52.786Z" }, { "$type": "Document", - "DocumentIndex": 134, + "DocumentIndex": 146, "Title": "DecorationBox.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\Controls\\DecorationBox.cs", "RelativeDocumentMoniker": "StgSharp\\Controlling\\Controls\\DecorationBox.cs", @@ -2416,7 +2751,7 @@ }, { "$type": "Document", - "DocumentIndex": 136, + "DocumentIndex": 148, "Title": "BattleField.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\Controls\\BattleField.cs", "RelativeDocumentMoniker": "StgSharp\\Controlling\\Controls\\BattleField.cs", @@ -2428,7 +2763,7 @@ }, { "$type": "Document", - "DocumentIndex": 181, + "DocumentIndex": 192, "Title": "KeyEvent.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\KeyEvent.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\KeyEvent.cs", @@ -2439,7 +2774,7 @@ }, { "$type": "Document", - "DocumentIndex": 135, + "DocumentIndex": 147, "Title": "CharacterIndexImage.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\Controls\\CharacterIndexImage.cs", "RelativeDocumentMoniker": "StgSharp\\Controlling\\Controls\\CharacterIndexImage.cs", @@ -2451,7 +2786,7 @@ }, { "$type": "Document", - "DocumentIndex": 142, + "DocumentIndex": 153, "Title": "KeyControl.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\KeyControl.cs", "RelativeDocumentMoniker": "StgSharp\\Controlling\\KeyControl.cs", @@ -2463,7 +2798,7 @@ }, { "$type": "Document", - "DocumentIndex": 14, + "DocumentIndex": 68, "Title": "ButtonGroup.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\Controls\\ButtonGroup.cs", "RelativeDocumentMoniker": "StgSharp\\Controlling\\Controls\\ButtonGroup.cs", @@ -2475,7 +2810,7 @@ }, { "$type": "Document", - "DocumentIndex": 132, + "DocumentIndex": 144, "Title": "PlainGeometryMesh.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\PlainGeometryMesh.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\PlainGeometryMesh.cs", @@ -2487,7 +2822,7 @@ }, { "$type": "Document", - "DocumentIndex": 137, + "DocumentIndex": 149, "Title": "ControllingIntem.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\Controls\\ControllingIntem.cs", "RelativeDocumentMoniker": "StgSharp\\Controlling\\Controls\\ControllingIntem.cs", @@ -2499,7 +2834,7 @@ }, { "$type": "Document", - "DocumentIndex": 133, + "DocumentIndex": 145, "Title": "TriggerButton.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\Controls\\TriggerButton.cs", "RelativeDocumentMoniker": "StgSharp\\Controlling\\Controls\\TriggerButton.cs", @@ -2511,7 +2846,7 @@ }, { "$type": "Document", - "DocumentIndex": 182, + "DocumentIndex": 193, "Title": "KeyboardButton.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Controlling\\Controls\\KeyboardButton.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Controlling\\Controls\\KeyboardButton.cs", @@ -2522,7 +2857,7 @@ }, { "$type": "Document", - "DocumentIndex": 164, + "DocumentIndex": 175, "Title": "Plain.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Plain.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Plain.cs", @@ -2534,7 +2869,7 @@ }, { "$type": "Document", - "DocumentIndex": 165, + "DocumentIndex": 176, "Title": "IEntity.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Entities\\IEntity.cs", "RelativeDocumentMoniker": "StgSharp\\Entities\\IEntity.cs", @@ -2546,7 +2881,7 @@ }, { "$type": "Document", - "DocumentIndex": 115, + "DocumentIndex": 128, "Title": "DataSegment.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Data\\SSD\\DataSegment.cs", "RelativeDocumentMoniker": "StgSharp\\Data\\SSD\\DataSegment.cs", @@ -2558,7 +2893,7 @@ }, { "$type": "Document", - "DocumentIndex": 121, + "DocumentIndex": 134, "Title": "SSDraw.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Data\\SSD\\SSDraw.cs", "RelativeDocumentMoniker": "StgSharp\\Data\\SSD\\SSDraw.cs", @@ -2570,7 +2905,7 @@ }, { "$type": "Document", - "DocumentIndex": 179, + "DocumentIndex": 190, "Title": "Angle.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Geometries\\GeometryOperation\\Angle.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Geometries\\GeometryOperation\\Angle.cs", @@ -2581,7 +2916,7 @@ }, { "$type": "Document", - "DocumentIndex": 107, + "DocumentIndex": 120, "Title": "framework.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\framework.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\framework.cs", @@ -2593,7 +2928,7 @@ }, { "$type": "Document", - "DocumentIndex": 169, + "DocumentIndex": 180, "Title": "TimeFunction.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\TimeFunction.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\TimeFunction.cs", @@ -2605,7 +2940,7 @@ }, { "$type": "Document", - "DocumentIndex": 130, + "DocumentIndex": 142, "Title": "TimeSourceProvider.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\TimeSourceProvider.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\TimeSourceProvider.cs", @@ -2617,7 +2952,7 @@ }, { "$type": "Document", - "DocumentIndex": 162, + "DocumentIndex": 173, "Title": "Vector.Normalize.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Math\\Linear\\Vector.Normalize.cs", "RelativeDocumentMoniker": "StgSharp\\Math\\Linear\\Vector.Normalize.cs", @@ -2629,7 +2964,7 @@ }, { "$type": "Document", - "DocumentIndex": 139, + "DocumentIndex": 150, "Title": "ParticleOnPlain.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Define\\ParticleOnPlain.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Define\\ParticleOnPlain.cs", @@ -2641,7 +2976,7 @@ }, { "$type": "Document", - "DocumentIndex": 171, + "DocumentIndex": 182, "Title": "IInstancingBuffer.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\IInstancingBuffer.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\IInstancingBuffer.cs", @@ -2653,7 +2988,7 @@ }, { "$type": "Document", - "DocumentIndex": 140, + "DocumentIndex": 151, "Title": "IInstancing.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\IInstancing.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\IInstancing.cs", @@ -2665,7 +3000,7 @@ }, { "$type": "Document", - "DocumentIndex": 77, + "DocumentIndex": 92, "Title": "ShaderStruct.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\ShaderEdit\\ShaderStruct.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\ShaderEdit\\ShaderStruct.cs", @@ -2677,7 +3012,7 @@ }, { "$type": "Document", - "DocumentIndex": 172, + "DocumentIndex": 183, "Title": "ShaderGenerator.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\ShaderEdit\\ShaderGenerator.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\ShaderEdit\\ShaderGenerator.cs", @@ -2689,7 +3024,7 @@ }, { "$type": "Document", - "DocumentIndex": 173, + "DocumentIndex": 184, "Title": "GLIO.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Controlling\\IO\\GLIO.cs", "RelativeDocumentMoniker": "StgSharp\\Controlling\\IO\\GLIO.cs", @@ -2701,7 +3036,7 @@ }, { "$type": "Document", - "DocumentIndex": 63, + "DocumentIndex": 82, "Title": "TextureGL.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\Buffer\\TextureGL.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\Buffer\\TextureGL.cs", @@ -2713,7 +3048,7 @@ }, { "$type": "Document", - "DocumentIndex": 59, + "DocumentIndex": 79, "Title": "glEnum.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\Define\\glEnum.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\Define\\glEnum.cs", @@ -2725,7 +3060,7 @@ }, { "$type": "Document", - "DocumentIndex": 174, + "DocumentIndex": 185, "Title": "Angle.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\GeometryScaler\\Angle.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\GeometryScaler\\Angle.cs", @@ -2737,19 +3072,20 @@ }, { "$type": "Document", - "DocumentIndex": 60, + "DocumentIndex": 5, "Title": "CollisionTexture.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Stg\\CollisionTexture.cs", "RelativeDocumentMoniker": "StgSharp\\Stg\\CollisionTexture.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Stg\\CollisionTexture.cs", "RelativeToolTip": "StgSharp\\Stg\\CollisionTexture.cs", - "ViewState": "AQIAALwAAAAAAAAAAAAqwNAAAAAjAAAA", + "ViewState": "AQIAAGkAAAAAAAAAAAAqwHcAAABJAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-05-28T09:47:06.034Z" + "WhenOpened": "2024-05-28T09:47:06.034Z", + "EditorCaption": "" }, { "$type": "Document", - "DocumentIndex": 117, + "DocumentIndex": 130, "Title": "ISSDSerializable.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Data\\Serialize\\ISSDSerializable.cs", "RelativeDocumentMoniker": "StgSharp\\Data\\Serialize\\ISSDSerializable.cs", @@ -2761,7 +3097,7 @@ }, { "$type": "Document", - "DocumentIndex": 118, + "DocumentIndex": 131, "Title": "Define.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Data\\Serialize\\Define.cs", "RelativeDocumentMoniker": "StgSharp\\Data\\Serialize\\Define.cs", @@ -2773,7 +3109,7 @@ }, { "$type": "Document", - "DocumentIndex": 175, + "DocumentIndex": 186, "Title": "M128.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Data\\M128.cs", "RelativeDocumentMoniker": "StgSharp\\Data\\M128.cs", @@ -2785,7 +3121,7 @@ }, { "$type": "Document", - "DocumentIndex": 123, + "DocumentIndex": 136, "Title": "RandomGenerator.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Data\\RandomGenerator.cs", "RelativeDocumentMoniker": "StgSharp\\Data\\RandomGenerator.cs", @@ -2797,7 +3133,7 @@ }, { "$type": "Document", - "DocumentIndex": 170, + "DocumentIndex": 181, "Title": "StgSharpC.h", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpC\\StgSharpC.h", "RelativeDocumentMoniker": "StgSharpC\\StgSharpC.h", @@ -2809,7 +3145,7 @@ }, { "$type": "Document", - "DocumentIndex": 58, + "DocumentIndex": 78, "Title": "glFunction.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\glFunction.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\glFunction.cs", @@ -2821,7 +3157,7 @@ }, { "$type": "Document", - "DocumentIndex": 80, + "DocumentIndex": 94, "Title": "Shader.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\ShaderEdit\\Shader.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\ShaderEdit\\Shader.cs", @@ -2833,7 +3169,7 @@ }, { "$type": "Document", - "DocumentIndex": 108, + "DocumentIndex": 121, "Title": "Blueprint.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Logic\\Blueprint\\Blueprint.cs", "RelativeDocumentMoniker": "StgSharp\\Logic\\Blueprint\\Blueprint.cs", @@ -2845,20 +3181,19 @@ }, { "$type": "Document", - "DocumentIndex": 12, - "Title": "View.cs", - "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\View\\View.cs", - "RelativeDocumentMoniker": "StgSharp\\Graphics\\View\\View.cs", - "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\View\\View.cs", - "RelativeToolTip": "StgSharp\\Graphics\\View\\View.cs", - "ViewState": "AQIAACUAAAAAAAAAAAAYwEMAAAAgAAAA", + "DocumentIndex": 61, + "Title": "ViewBase.cs", + "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\View\\ViewBase.cs", + "RelativeDocumentMoniker": "StgSharp\\MVVM\\View\\ViewBase.cs", + "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\MVVM\\View\\ViewBase.cs", + "RelativeToolTip": "StgSharp\\MVVM\\View\\ViewBase.cs", + "ViewState": "AQIAAIMAAAAAAAAAAAA2wJoAAAAmAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2024-05-11T05:11:47.098Z", - "EditorCaption": "" + "WhenOpened": "2024-05-11T05:11:47.098Z" }, { "$type": "Document", - "DocumentIndex": 176, + "DocumentIndex": 187, "Title": "GeometryOperation.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Define\\GeometryOperation.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Define\\GeometryOperation.cs", @@ -2870,7 +3205,7 @@ }, { "$type": "Document", - "DocumentIndex": 49, + "DocumentIndex": 75, "Title": "GeometryOperation.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\GeometryOperation\\GeometryOperation.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\GeometryOperation\\GeometryOperation.cs", @@ -2882,7 +3217,7 @@ }, { "$type": "Document", - "DocumentIndex": 148, + "DocumentIndex": 159, "Title": "PlainGeometry.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Define\\PlainGeometry.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Define\\PlainGeometry.cs", @@ -2894,7 +3229,7 @@ }, { "$type": "Document", - "DocumentIndex": 141, + "DocumentIndex": 152, "Title": "IPlainEntity.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Define\\IPlainEntity.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Define\\IPlainEntity.cs", @@ -2906,7 +3241,7 @@ }, { "$type": "Document", - "DocumentIndex": 89, + "DocumentIndex": 103, "Title": "GLresourceGenrator.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\GLresourceGenrator.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\GLresourceGenrator.cs", @@ -2918,7 +3253,7 @@ }, { "$type": "Document", - "DocumentIndex": 69, + "DocumentIndex": 85, "Title": "glRenderStream.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\OpenGL\\glRenderStream.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\OpenGL\\glRenderStream.cs", @@ -2930,19 +3265,19 @@ }, { "$type": "Document", - "DocumentIndex": 128, + "DocumentIndex": 63, "Title": "RenderStream.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\RenderStream.cs", "RelativeDocumentMoniker": "StgSharp\\Graphics\\RenderStream.cs", "ToolTip": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Graphics\\RenderStream.cs", "RelativeToolTip": "StgSharp\\Graphics\\RenderStream.cs", - "ViewState": "AQIAAK0AAAAAAAAAAAA1wNAAAAArAAAA", + "ViewState": "AQIAABYAAAAAAAAAAAAzwCMAAAAAAAAA", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "WhenOpened": "2024-05-09T09:42:08.831Z" }, { "$type": "Document", - "DocumentIndex": 166, + "DocumentIndex": 177, "Title": "StreamLocalCoordinate.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\Coordination\\StreamLocalCoordinate.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\Coordination\\StreamLocalCoordinate.cs", @@ -2954,7 +3289,7 @@ }, { "$type": "Document", - "DocumentIndex": 178, + "DocumentIndex": 189, "Title": "vec3d.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Math\\Linear\\vec3d.cs", "RelativeDocumentMoniker": "StgSharp\\Math\\Linear\\vec3d.cs", @@ -2966,7 +3301,7 @@ }, { "$type": "Document", - "DocumentIndex": 159, + "DocumentIndex": 170, "Title": "vec4d.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Math\\Linear\\vec4d.cs", "RelativeDocumentMoniker": "StgSharp\\Math\\Linear\\vec4d.cs", @@ -2978,7 +3313,7 @@ }, { "$type": "Document", - "DocumentIndex": 163, + "DocumentIndex": 174, "Title": "Vector.Orthogonalize.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Math\\Linear\\Vector.Orthogonalize.cs", "RelativeDocumentMoniker": "StgSharp\\Math\\Linear\\Vector.Orthogonalize.cs", @@ -2990,7 +3325,7 @@ }, { "$type": "Document", - "DocumentIndex": 157, + "DocumentIndex": 168, "Title": "CoordinationBase.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\Coordination\\CoordinationBase.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\Coordination\\CoordinationBase.cs", @@ -3002,7 +3337,7 @@ }, { "$type": "Document", - "DocumentIndex": 153, + "DocumentIndex": 164, "Title": "PlainCoordinate.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\Coordination\\PlainCoordinate.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\Coordination\\PlainCoordinate.cs", @@ -3014,7 +3349,7 @@ }, { "$type": "Document", - "DocumentIndex": 158, + "DocumentIndex": 169, "Title": "PlainInstancingBuffer.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Geometries\\PlainGeometry\\Define\\PlainInstancingBuffer.cs", "RelativeDocumentMoniker": "StgSharp\\Geometries\\PlainGeometry\\Define\\PlainInstancingBuffer.cs", @@ -3026,7 +3361,7 @@ }, { "$type": "Document", - "DocumentIndex": 177, + "DocumentIndex": 188, "Title": "Bullet.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharp\\Stg\\Bullet.cs", "RelativeDocumentMoniker": "StgSharp\\Stg\\Bullet.cs", @@ -3038,7 +3373,7 @@ }, { "$type": "Document", - "DocumentIndex": 180, + "DocumentIndex": 191, "Title": "IInstancing.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Geometries\\PlainGeometry\\Define\\IInstancing.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Geometries\\PlainGeometry\\Define\\IInstancing.cs", @@ -3049,7 +3384,7 @@ }, { "$type": "Document", - "DocumentIndex": 62, + "DocumentIndex": 81, "Title": "StgSharpC.c", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpC\\StgSharpC.c", "RelativeDocumentMoniker": "StgSharpC\\StgSharpC.c", @@ -3061,7 +3396,7 @@ }, { "$type": "Document", - "DocumentIndex": 184, + "DocumentIndex": 195, "Title": "ShowForm.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\Form\\ShowForm.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\Form\\ShowForm.cs", @@ -3072,7 +3407,7 @@ }, { "$type": "Document", - "DocumentIndex": 146, + "DocumentIndex": 157, "Title": "MainForm.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\OEM\\MainForm.cs", "RelativeDocumentMoniker": "OEM\\MainForm.cs", @@ -3084,7 +3419,7 @@ }, { "$type": "Document", - "DocumentIndex": 185, + "DocumentIndex": 196, "Title": "FormThreading.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\Form\\FormThreading.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\Form\\FormThreading.cs", @@ -3095,7 +3430,7 @@ }, { "$type": "Document", - "DocumentIndex": 183, + "DocumentIndex": 194, "Title": "ICoord.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Geometries\\Coordination\\ICoord.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Geometries\\Coordination\\ICoord.cs", @@ -3106,7 +3441,7 @@ }, { "$type": "Document", - "DocumentIndex": 186, + "DocumentIndex": 197, "Title": "Form.cs", "DocumentMoniker": "D:\\NitloadIndustry\\\u7814\u7A76\u9879\u76EE\\1-Flagship\\TH2020\\ProjectFile\\\u6E90\u4EE3\u7801\\StgSharpDebug\\Graphics\\Form\\Form.cs", "RelativeDocumentMoniker": "StgSharpDebug\\Graphics\\Form\\Form.cs", diff --git a/源代码/.vs/StgSharpDevelop/v17/fileList.bin b/源代码/.vs/StgSharpDevelop/v17/fileList.bin index 4a8c81cc..684022b9 100644 Binary files a/源代码/.vs/StgSharpDevelop/v17/fileList.bin and b/源代码/.vs/StgSharpDevelop/v17/fileList.bin differ diff --git a/源代码/OEM/obj/Debug/net8.0/OEM.AssemblyInfo.cs b/源代码/OEM/obj/Debug/net8.0/OEM.AssemblyInfo.cs index f22d1ed3..1f60ef1b 100644 --- a/源代码/OEM/obj/Debug/net8.0/OEM.AssemblyInfo.cs +++ b/源代码/OEM/obj/Debug/net8.0/OEM.AssemblyInfo.cs @@ -14,7 +14,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("OEM")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+924fe6eef7b6b9441b297f211c82b4684f23d002")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+da75200347e2ff7f483c83ff224678d05b0aefd1")] [assembly: System.Reflection.AssemblyProductAttribute("OEM")] [assembly: System.Reflection.AssemblyTitleAttribute("OEM")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/源代码/Output/x64/Debug/net6.0/Shader/fbo.frag b/源代码/Output/x64/Debug/net6.0/Shader/fbo.frag index 4cbc169f..50cefd8b 100644 --- a/源代码/Output/x64/Debug/net6.0/Shader/fbo.frag +++ b/源代码/Output/x64/Debug/net6.0/Shader/fbo.frag @@ -9,5 +9,5 @@ uniform sampler2D tex; void main() { fragColor = texture(tex, texCoord.xy); - //fragColor = vec4(0.0f,0.0f,0.0f,0.0f); + //fragColor = vec4(0.099f,0.226f,0.335f,0.0f); } \ No newline at end of file diff --git a/源代码/StgSharp/Controlling/Controls/BattleField.cs b/源代码/StgSharp/Controlling/Controls/BattleField.cs index 647449cc..9253a0a5 100644 --- a/源代码/StgSharp/Controlling/Controls/BattleField.cs +++ b/源代码/StgSharp/Controlling/Controls/BattleField.cs @@ -43,12 +43,16 @@ namespace StgSharp.Controls { public class BattleField : ControllingItem { - public override ReadOnlySpan TextureBox + public ReadOnlySpan TextureBox { get => throw new NotImplementedException() ; } + public vec2d Position { get; set; } + public Rectangle BoundingBox { get; set; } - public override IEnumerator GetEnumerator() + public bool IsEntity => true; + + public IEnumerator GetEnumerator() { throw new NotImplementedException(); } diff --git a/源代码/StgSharp/Controlling/Controls/ButtonGroup.cs b/源代码/StgSharp/Controlling/Controls/ButtonGroup.cs index df2af953..800ef924 100644 --- a/源代码/StgSharp/Controlling/Controls/ButtonGroup.cs +++ b/源代码/StgSharp/Controlling/Controls/ButtonGroup.cs @@ -53,7 +53,7 @@ namespace StgSharp.Controls buttonList = new List(); } - public override ReadOnlySpan TextureBox + public ReadOnlySpan TextureBox { get => throw new NotSupportedException(); } @@ -63,6 +63,12 @@ namespace StgSharp.Controls get => current; } + public vec2d Position { get; set; } + + public Rectangle BoundingBox { get; set; } + + public bool IsEntity { get => false; } + protected List AllButton { get => buttonList; @@ -75,7 +81,7 @@ namespace StgSharp.Controls public abstract void Confirm(); - public override IEnumerator GetEnumerator() + public IEnumerator GetEnumerator() { foreach (TriggerButton item in buttonList) { diff --git a/源代码/StgSharp/Controlling/Controls/CharacterIndexImage.cs b/源代码/StgSharp/Controlling/Controls/CharacterIndexImage.cs index 6eb782e8..1b145aff 100644 --- a/源代码/StgSharp/Controlling/Controls/CharacterIndexImage.cs +++ b/源代码/StgSharp/Controlling/Controls/CharacterIndexImage.cs @@ -20,10 +20,17 @@ namespace StgSharp.Controls Dictionary texIndex; PlainGeometryMesh _tittleMesh; - public override ReadOnlySpan TextureBox + public bool IsEntity + { + get => true; + } + + public ReadOnlySpan TextureBox { get => throw new NotSupportedException(); } + public vec2d Position { get => throw new NotImplementedException(); set => throw new NotImplementedException(); } + public Rectangle BoundingBox { get => throw new NotImplementedException(); set => throw new NotImplementedException(); } public void Display(string message) { @@ -39,7 +46,7 @@ namespace StgSharp.Controls displayIndex = result.ToCharArray(); } - public override IEnumerator GetEnumerator() + public IEnumerator GetEnumerator() { yield return _tittleMesh; foreach (char item in displayIndex) diff --git a/源代码/StgSharp/Controlling/Controls/ControllingIntem.cs b/源代码/StgSharp/Controlling/Controls/ControllingIntem.cs index 1f056193..ff3a6ec2 100644 --- a/源代码/StgSharp/Controlling/Controls/ControllingIntem.cs +++ b/源代码/StgSharp/Controlling/Controls/ControllingIntem.cs @@ -9,16 +9,15 @@ using System.Text; namespace StgSharp.Controls { - public abstract partial class ControllingItem: IEnumerable + public interface ControllingItem: IEnumerable { - public vec2d Position { get; set; } + public abstract vec2d Position { get; set; } + public abstract Rectangle BoundingBox { get; set; } - public Rectangle BoundingBox { get; set; } public abstract ReadOnlySpan TextureBox { get; } + public abstract bool IsEntity { get; } - public abstract IEnumerator GetEnumerator(); - IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); diff --git a/源代码/StgSharp/Controlling/Controls/DecorationBox.cs b/源代码/StgSharp/Controlling/Controls/DecorationBox.cs index e2c4515f..8e043909 100644 --- a/源代码/StgSharp/Controlling/Controls/DecorationBox.cs +++ b/源代码/StgSharp/Controlling/Controls/DecorationBox.cs @@ -13,12 +13,17 @@ namespace StgSharp.Controls { private PlainGeometryMesh renderMesh; - public override ReadOnlySpan TextureBox + public ReadOnlySpan TextureBox { get => renderMesh.TextureCoord; } - public override IEnumerator GetEnumerator() + public vec2d Position { get ; set ; } + public Rectangle BoundingBox { get ; set ; } + + public bool IsEntity => true; + + public IEnumerator GetEnumerator() { yield return renderMesh; } diff --git a/源代码/StgSharp/Controlling/Controls/MarkingLable.cs b/源代码/StgSharp/Controlling/Controls/MarkingLable.cs index a96ee60b..afe4fb18 100644 --- a/源代码/StgSharp/Controlling/Controls/MarkingLable.cs +++ b/源代码/StgSharp/Controlling/Controls/MarkingLable.cs @@ -12,10 +12,14 @@ namespace StgSharp.Controls { public class MarkingLabel : ControllingItem { - public override ReadOnlySpan TextureBox + public ReadOnlySpan TextureBox { get => marker.TextureCoord; } + public vec2d Position { get; set; } + public Rectangle BoundingBox { get; set; } + + public bool IsEntity => true; private vec2d _currentPosition, _movementVec; @@ -41,7 +45,7 @@ namespace StgSharp.Controls _movement = movement; } - public override IEnumerator GetEnumerator() + public IEnumerator GetEnumerator() { yield return marker; } diff --git a/源代码/StgSharp/Controlling/Controls/TriggerButton.cs b/源代码/StgSharp/Controlling/Controls/TriggerButton.cs index 2a3a1df7..c031a97a 100644 --- a/源代码/StgSharp/Controlling/Controls/TriggerButton.cs +++ b/源代码/StgSharp/Controlling/Controls/TriggerButton.cs @@ -75,6 +75,11 @@ namespace StgSharp.Controls private Action? confirmCallback; #nullable restore + public TriggerButton() + { + CurrentStatus = ButtonStatus.Disable; + } + protected ButtonStatus CurrentStatus { get; set; } private RenderButtonTextureCallback _renderButton; @@ -101,7 +106,13 @@ namespace StgSharp.Controls } } - public override ReadOnlySpan TextureBox + internal TextureProvider Texture + { + get => _texture; + set => _texture = value; + } + + public ReadOnlySpan TextureBox { get => MemoryMarshal.Cast(_texture.TextureCoordinate); } @@ -109,7 +120,11 @@ namespace StgSharp.Controls public bool IsHighLighted { get; internal set; } public bool IsDisabled { get; internal set; } - + public vec2d Position { get; set; } + public Rectangle BoundingBox { get; set; } + + public bool IsEntity => true; + public event Action EnableEvent { add { enableCallback += value; } @@ -128,6 +143,14 @@ namespace StgSharp.Controls remove { confirmCallback -= value; } } + internal void Init( ButtonStatus status ) + { + if (CurrentStatus == ButtonStatus.Error) + { + CurrentStatus = status; + } + } + public void Enable() { if (CurrentStatus == ButtonStatus.Disable) @@ -173,7 +196,7 @@ namespace StgSharp.Controls } } - public override IEnumerator GetEnumerator() + public IEnumerator GetEnumerator() { _renderButton(CurrentStatus,_statusBeginTime, in _texture); yield return new PlainGeometryMesh(this.BoundingBox, _texture); diff --git a/源代码/StgSharp/Controlling/IO/GLIO.cs b/源代码/StgSharp/Controlling/IO/GLIO.cs index ecb885a6..c479839f 100644 --- a/源代码/StgSharp/Controlling/IO/GLIO.cs +++ b/源代码/StgSharp/Controlling/IO/GLIO.cs @@ -52,7 +52,7 @@ namespace StgSharp [DllImport(SSC_libName, EntryPoint = "linkShaderProgram", CallingConvention = CallingConvention.Cdecl)] - internal static extern unsafe uint InternalLinkShaderProgram(GLcontext* context, uint shaderProgram); + internal static extern unsafe uint InternalLinkShaderProgram(OpenglContext* context, uint shaderProgram); [DllImport(SSC_libName, EntryPoint = "readLog", CallingConvention = CallingConvention.Cdecl)] @@ -76,7 +76,7 @@ namespace StgSharp.Graphics public delegate IntPtr ImageLoader(string name, ref int width, ref int height, ref int definedChannel, int desiredChannel); [StructLayout(LayoutKind.Sequential)] - public struct GLcontext + public struct OpenglContext { #region glapi @@ -2622,18 +2622,18 @@ namespace StgSharp.Graphics public unsafe override int GetHashCode() { - fixed (GLcontext* sptr = &this) + fixed (OpenglContext* sptr = &this) { return sptr->GetHashCode(); } } - public static bool operator ==(GLcontext left, GLcontext right) + public static bool operator ==(OpenglContext left, OpenglContext right) { return left.Equals(right); } - public static bool operator !=(GLcontext left, GLcontext right) + public static bool operator !=(OpenglContext left, OpenglContext right) { return !(left == right); } diff --git a/源代码/StgSharp/Geometries/PlainGeometry/Define/PlainGeometry.cs b/源代码/StgSharp/Geometries/PlainGeometry/Define/PlainGeometry.cs index 2db38c65..edb8a33e 100644 --- a/源代码/StgSharp/Geometries/PlainGeometry/Define/PlainGeometry.cs +++ b/源代码/StgSharp/Geometries/PlainGeometry/Define/PlainGeometry.cs @@ -44,6 +44,7 @@ namespace StgSharp.Geometries protected vec4d[] vertexMat; internal CoordinationBase coordinate; + internal PlainGeometry(CoordinationBase coordination) { coordinate = coordination; diff --git a/源代码/StgSharp/Geometries/PlainGeometry/Rectangle.cs b/源代码/StgSharp/Geometries/PlainGeometry/Rectangle.cs index 3a9e71f8..e3cecb75 100644 --- a/源代码/StgSharp/Geometries/PlainGeometry/Rectangle.cs +++ b/源代码/StgSharp/Geometries/PlainGeometry/Rectangle.cs @@ -93,7 +93,5 @@ namespace StgSharp.Geometries return default(vec3d); } - - } } diff --git a/源代码/StgSharp/GlobalSuppressions.cs b/源代码/StgSharp/GlobalSuppressions.cs index 9ad2d953..f3eb67cd 100644 --- a/源代码/StgSharp/GlobalSuppressions.cs +++ b/源代码/StgSharp/GlobalSuppressions.cs @@ -10,3 +10,6 @@ using System.Diagnostics.CodeAnalysis; [assembly: SuppressMessage("Naming", "CA1715:标识符应具有正确的前缀", Justification = "<挂起>", Scope = "member", Target = "~M:StgSharp.Graphics.OpenGL.ShaderProgram.GetUniform``3(System.String)~StgSharp.Graphics.OpenGL.Uniform{``0,``1,``2}")] [assembly: SuppressMessage("Naming", "CA1715:标识符应具有正确的前缀", Justification = "<挂起>", Scope = "member", Target = "~M:StgSharp.Graphics.OpenGL.ShaderProgram.GetUniform``4(System.String)~StgSharp.Graphics.OpenGL.Uniform{``0,``1,``2,``3}")] [assembly: SuppressMessage("Naming", "CA1715:标识符应具有正确的前缀", Justification = "<挂起>", Scope = "type", Target = "~T:StgSharp.Graphics.OpenGL.Uniform`4")] +[assembly: SuppressMessage("Design", "CA1043:将整型或字符串参数用于索引器", Justification = "<挂起>", Scope = "member", Target = "~P:StgSharp.MVVM.View.ViewBase.IViewResponder`1.Item(StgSharp.Controlling.UsrActivity.ITrigger)")] +[assembly: SuppressMessage("Design", "CA1043:将整型或字符串参数用于索引器", Justification = "<挂起>", Scope = "member", Target = "~P:StgSharp.MVVM.View.ViewBase.ViewResponder`1.Item(StgSharp.Controlling.UsrActivity.ITrigger)")] +[assembly: SuppressMessage("Performance", "CA1864:首选 \"IDictionary.TryAdd(TKey, TValue)\" 方法", Justification = "<挂起>", Scope = "member", Target = "~P:StgSharp.MVVM.View.ViewBase.ViewRender`1.Item(System.String)")] diff --git a/源代码/StgSharp/Graphics/CPUanimation/ImageHelper.cs b/源代码/StgSharp/Graphics/CPUanimation/ImageHelper.cs index 830edec6..5bbb2b4e 100644 --- a/源代码/StgSharp/Graphics/CPUanimation/ImageHelper.cs +++ b/源代码/StgSharp/Graphics/CPUanimation/ImageHelper.cs @@ -22,7 +22,7 @@ namespace StgSharp.Graphics case ImageMovement.Top: break; default: - throw new NotSupportedException("Invalid or not supported data remanence"); + throw new NotImplementedException(); } } diff --git a/源代码/StgSharp/Graphics/Define/StructDefine.cs b/源代码/StgSharp/Graphics/Define/StructDefine.cs index 872ffd5b..78c508a8 100644 --- a/源代码/StgSharp/Graphics/Define/StructDefine.cs +++ b/源代码/StgSharp/Graphics/Define/StructDefine.cs @@ -953,6 +953,7 @@ namespace StgSharp.Graphics [StructLayout(LayoutKind.Sequential)] internal struct GLsync { + public IntPtr Handle; } #endregion glad struct diff --git a/源代码/StgSharp/Graphics/Define/glEnum.cs b/源代码/StgSharp/Graphics/Define/glEnum.cs index 2b5cbd38..64f7c00d 100644 --- a/源代码/StgSharp/Graphics/Define/glEnum.cs +++ b/源代码/StgSharp/Graphics/Define/glEnum.cs @@ -94,6 +94,12 @@ namespace StgSharp.Graphics.OpenGL BGRA = GLconst.BGRA } + public enum FrameBufferAttachment + { + Color = GLconst.COLOR_ATTACHMENT0, + Depth = GLconst.DEPTH_ATTACHMENT, + Stencil = GLconst.STENCIL_ATTACHMENT, + } public enum Texture2DTarget { diff --git a/源代码/StgSharp/Graphics/OpenGL/GlException.cs b/源代码/StgSharp/Graphics/OpenGL/GlException.cs index 089ba792..75449385 100644 --- a/源代码/StgSharp/Graphics/OpenGL/GlException.cs +++ b/源代码/StgSharp/Graphics/OpenGL/GlException.cs @@ -7,6 +7,18 @@ using System.Text; namespace StgSharp.Graphics.OpenGL { + public sealed class GlExecutionException : Exception + { + public GlExecutionException() + { + } + + public GlExecutionException(uint errorCode) : base($"Critical OpenGL error: {errorCode}") + { + } + + } + public sealed class GlArrayFormatException : Exception { public GlArrayFormatException(PixelChannelLayout layout, string arrayname): diff --git a/源代码/StgSharp/Graphics/OpenGL/ShaderEdit/Shader.cs b/源代码/StgSharp/Graphics/OpenGL/ShaderEdit/Shader.cs index fd1edf91..478c83ee 100644 --- a/源代码/StgSharp/Graphics/OpenGL/ShaderEdit/Shader.cs +++ b/源代码/StgSharp/Graphics/OpenGL/ShaderEdit/Shader.cs @@ -228,7 +228,7 @@ namespace StgSharp.Graphics.OpenGL /// public unsafe void Link() { - if (InternalIO.InternalLinkShaderProgram((GLcontext*)this.GL.ContextHandle, handle.Value) == 0) + if (InternalIO.InternalLinkShaderProgram((OpenglContext*)this.GL.ContextHandle, handle.Value) == 0) { IntPtr logPtr = InternalIO.InternalReadSSCLog(); try diff --git a/源代码/StgSharp/Graphics/OpenGL/glApiManager.cs b/源代码/StgSharp/Graphics/OpenGL/glApiManager.cs index 1b1aeae6..db684ad7 100644 --- a/源代码/StgSharp/Graphics/OpenGL/glApiManager.cs +++ b/源代码/StgSharp/Graphics/OpenGL/glApiManager.cs @@ -29,6 +29,9 @@ //----------------------------------------------------------------------- //----------------------------------------------------------------------- using StgSharp.Math; +using StgSharp.MVVM; +using StgSharp.MVVM.View; + using System; using System.Collections.Generic; @@ -45,8 +48,7 @@ namespace StgSharp.Graphics.OpenGL private const int glExtension = 0x1f03; private const int glVersion = 0x1f02; - private static readonly string[] glBranch = - new string[] { + private static readonly string[] glBranch = { "OpenGL ES-CM ", "OpenGL ES-CL ", "OpenGL ES ", @@ -56,16 +58,14 @@ namespace StgSharp.Graphics.OpenGL private static string glExtensionList; /// - /// Load all supported OpenGL APIs and bind them to given viewPortDisplay. + /// Load all supported OpenGL APIs and bind them to given . /// - /// The used as current OpenGL viewPortDisplay + /// The handle to current OpenGL viewPortDisplay public static unsafe void LoadOpenGLApiTo(IntPtr contextHandle) { - GLcontext* context = (GLcontext*)contextHandle; + OpenglContext* context = (OpenglContext*)contextHandle; delegate* loader = &InternalIO.glfwGetProcAddress; -#pragma warning disable CS8909 - if (context->glGetString != (delegate*)IntPtr.Zero) -#pragma warning restore CS8909 + if ((IntPtr)context->glGetString != IntPtr.Zero) { return; } @@ -84,7 +84,7 @@ namespace StgSharp.Graphics.OpenGL { InternalIO.InternalWriteLog("Failed to call glGetString", LogType.Error); } - coreVersion = Marshal.PtrToStringAnsi(context->glGetString(glVersion)); + coreVersion = Marshal.PtrToStringAnsi(context->glGetString(glVersion))??string.Empty; foreach (string branch in glBranch) { @@ -132,20 +132,32 @@ namespace StgSharp.Graphics.OpenGL } } - IntPtr strPtr = context->glGetString(glExtension); - string extension; - if (strPtr == IntPtr.Zero) + uint code = context->glGetError(); + Console.WriteLine(code); + if (code != 0) + { + throw new GlExecutionException(code); + } + + int extensionCount; + context->glGetIntegerv(GLconst.NUM_EXTENSIONS,&extensionCount); + if (extensionCount == 0) { InternalIO.InternalWriteLog("No supported OpenGL extensions are found.", LogType.Info); return; } - else + + List extensions = new List(); + + for (uint i = 0; i < extensionCount; i++) { - extension = Marshal.PtrToStringAnsi(strPtr); + byte* strPtr = context->glGetStringi(GLconst.EXTENSIONS,i); + extensions.Add(Marshal.PtrToStringAnsi((IntPtr)strPtr)); } - List extensions = - extension.Split(" ").ToList(); + InternalIO.InternalWriteLog($"Find OpenGL extensions:" + Environment.NewLine + + $"{string.Join(';', extensions)}", + LogType.Info); #region checkGLextensions @@ -771,9 +783,11 @@ namespace StgSharp.Graphics.OpenGL #endregion checkGLextensions - InternalIO.InternalWriteLog("Find OpenGL extensions.", LogType.Info); + } + //-------------------------------------------------------------------------------- + /// /// Get the function pointer of given OpenGL api name /// @@ -793,6 +807,11 @@ namespace StgSharp.Graphics.OpenGL internal static void CheckCoreVersion(int majorVersion, int minorVersion) { + if (majorVersion < 3) + { + throw new InvalidOperationException("StgSharp does not support OpenGL immediate mode."); + } + if ((majorVersion >= 1) || ((majorVersion == 1) && (minorVersion == 0))) { core10 = true; @@ -971,7 +990,7 @@ namespace StgSharp.Graphics.OpenGL } } - internal static unsafe string GetExtensions(this GLcontext context) + internal static unsafe string GetExtensions(this OpenglContext context) { if (context.glGetString == null) { @@ -998,7 +1017,7 @@ namespace StgSharp.Graphics.OpenGL } } - internal static unsafe void LoadGLcore10(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore10(OpenglContext* contextPtr, delegate* load) { if (!core10) { @@ -1062,7 +1081,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 1.0 APIs"); } - internal static unsafe void LoadGLcore11(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore11(OpenglContext* contextPtr, delegate* load) { if (!core11) { @@ -1092,7 +1111,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 1.1 APIs"); } - internal static unsafe void LoadGLcore12(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore12(OpenglContext* contextPtr, delegate* load) { if (!core12) { @@ -1112,7 +1131,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 1.2 APIs"); } - internal static unsafe void LoadGLcore13(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore13(OpenglContext* contextPtr, delegate* load) { if (!core13) { @@ -1137,7 +1156,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 1.3 APIs"); } - internal static unsafe void LoadGLcore14(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore14(OpenglContext* contextPtr, delegate* load) { if (!core14) { @@ -1162,7 +1181,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 1.4 APIs"); } - internal static unsafe void LoadGLcore15(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore15(OpenglContext* contextPtr, delegate* load) { if (!core15) { @@ -1197,7 +1216,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 1.5 APIs"); } - internal static unsafe void LoadGLcore20(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore20(OpenglContext* contextPtr, delegate* load) { if (!core20) { @@ -1306,7 +1325,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 2.0 APIs"); } - internal static unsafe void LoadGLcore21(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore21(OpenglContext* contextPtr, delegate* load) { if (!core21) { @@ -1328,7 +1347,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 2.1 APIs"); } - internal static unsafe void LoadGLcore30(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore30(OpenglContext* contextPtr, delegate* load) { if (!core30) { @@ -1428,7 +1447,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 3.0 APIs"); } - internal static unsafe void LoadGLcore31(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore31(OpenglContext* contextPtr, delegate* load) { if (!core31) { @@ -1459,7 +1478,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 3.1 APIs"); } - internal static unsafe void LoadGLcore32(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore32(OpenglContext* contextPtr, delegate* load) { if (!core32) { @@ -1494,7 +1513,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 3.2 APIs"); } - internal static unsafe void LoadGLcore33(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore33(OpenglContext* contextPtr, delegate* load) { if (!core33) { @@ -1538,7 +1557,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 3.3 APIs"); } - internal static unsafe void LoadGLcore40(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore40(OpenglContext* contextPtr, delegate* load) { if (!core40) { @@ -1600,7 +1619,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 4.0 APIs"); } - internal static unsafe void LoadGLcore41(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore41(OpenglContext* contextPtr, delegate* load) { if (!core41) { @@ -1704,7 +1723,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 4.1 APIs"); } - internal static unsafe void LoadGLcore42(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore42(OpenglContext* contextPtr, delegate* load) { if (!core42) { @@ -1732,7 +1751,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 4.2 APIs"); } - internal static unsafe void LoadGLcore43(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore43(OpenglContext* contextPtr, delegate* load) { if (!core43) { @@ -1792,7 +1811,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 4.3 APIs"); } - internal static unsafe void LoadGLcore44(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore44(OpenglContext* contextPtr, delegate* load) { if (!core44) { @@ -1817,7 +1836,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 4.4 APIs"); } - internal static unsafe void LoadGLcore45(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore45(OpenglContext* contextPtr, delegate* load) { if (!core45) { @@ -1943,7 +1962,7 @@ namespace StgSharp.Graphics.OpenGL InternalIO.InternalAppendLog("Successfully load all OpenGL 4.5 APIs"); } - internal static unsafe void LoadGLcore46(GLcontext* contextPtr, delegate* load) + internal static unsafe void LoadGLcore46(OpenglContext* contextPtr, delegate* load) { if (!core46) { diff --git a/源代码/StgSharp/Graphics/OpenGL/glFunction.cs b/源代码/StgSharp/Graphics/OpenGL/glFunction.cs index c7a2188b..d982765b 100644 --- a/源代码/StgSharp/Graphics/OpenGL/glFunction.cs +++ b/源代码/StgSharp/Graphics/OpenGL/glFunction.cs @@ -37,6 +37,7 @@ using System.Collections.Concurrent; using System.Collections.Generic; using System.Diagnostics; using System.Runtime.CompilerServices; +using System.Runtime.ExceptionServices; using System.Runtime.InteropServices; using System.Text; @@ -48,19 +49,22 @@ namespace StgSharp [DllImport(SSC_libName, EntryPoint = "glCheckShaderStat", CallingConvention = CallingConvention.Cdecl)] #pragma warning disable CA5392 - internal static extern int glCheckShaderStatus(ref GLcontext context, uint shaderHandle, int key, ref IntPtr logPtr); + internal static extern int glCheckShaderStatus(ref OpenglContext context, uint shaderHandle, int key, ref IntPtr logPtr); #pragma warning restore CA5392 } } + namespace StgSharp.Graphics.OpenGL { + + public unsafe partial class GlFunction { private static Dictionary contextToGLMap = new Dictionary(); - private GLcontext* _context; + private OpenglContext* _context; private GlFunction() { @@ -70,7 +74,7 @@ namespace StgSharp.Graphics.OpenGL internal IntPtr ContextHandle => (IntPtr)_context; - protected ref GLcontext Context + protected ref OpenglContext Context { get { @@ -156,6 +160,27 @@ namespace StgSharp.Graphics.OpenGL while (Context.glGetError() != 0) { } } + [Conditional("DEBUG")] + public void Assert(bool shouldReportWhenNormal) + { + try + { + uint code = Context.glGetError(); + if (code != GLconst.NO_ERROR) + { + throw new GlExecutionException(code); + } + if (shouldReportWhenNormal) + { + Console.WriteLine("OpenGL runs normally"); + } + } + catch (GlExecutionException ex) + { + throw ex; + } + } + [MethodImpl(MethodImplOptions.AggressiveInlining)] public void GenerateMipmap(Texture2DTarget target) { @@ -169,9 +194,9 @@ namespace StgSharp.Graphics.OpenGL } [MethodImpl(MethodImplOptions.AggressiveInlining)] - public void CombineFrameBufferRenderBuffer(GlHandle fboHandle, GlHandle rboHandle) + public void CombineFrameBufferRenderBuffer(FrameBufferAttachment attachment, GlHandle rboHandle) { - Context.glFramebufferRenderbuffer(GLconst.FRAMEBUFFER, fboHandle.Value, GLconst.RENDERBUFFER, rboHandle.Value); + Context.glFramebufferRenderbuffer(GLconst.FRAMEBUFFER, (uint)attachment, GLconst.RENDERBUFFER, rboHandle.Value); } [MethodImpl(MethodImplOptions.AggressiveInlining)] @@ -708,7 +733,7 @@ namespace StgSharp.Graphics.OpenGL { return pack; } - pack = new GlFunction { _context = (GLcontext*)handle }; + pack = new GlFunction { _context = (OpenglContext*)handle }; contextToGLMap.Add(handle, pack); return pack; } diff --git a/源代码/StgSharp/Graphics/OpenGL/glRenderStream.cs b/源代码/StgSharp/Graphics/OpenGL/glRenderStream.cs index 5297b40e..04056adf 100644 --- a/源代码/StgSharp/Graphics/OpenGL/glRenderStream.cs +++ b/源代码/StgSharp/Graphics/OpenGL/glRenderStream.cs @@ -53,7 +53,7 @@ namespace StgSharp.Graphics.OpenGL } /// - /// Init an OpenGl viewPortDisplay if current form has not been binded to any viewPortDisplay. + /// Initialize an OpenGl viewPortDisplay if current form has not been binded to any viewPortDisplay. /// and set the viewPortDisplay binded to current form as current OpenGL viewPortDisplay. /// /// @@ -63,8 +63,8 @@ namespace StgSharp.Graphics.OpenGL { if (ContextHandle == default) { - ContextHandle = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(GLcontext))); - GLcontext* contextID = (GLcontext*)ContextHandle; + ContextHandle = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(OpenglContext))); + OpenglContext* contextID = (OpenglContext*)ContextHandle; contextID->glGetString = (delegate*)IntPtr.Zero; } if (GL == null) @@ -92,7 +92,7 @@ namespace StgSharp.Graphics.OpenGL } [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal override sealed void PlatformSpecifiedInit() + internal override sealed void PlatformSpecifiedInitialize() { MakeAsCurrentContext(); glManager.LoadOpenGLApiTo(Port.GraphicHandle); diff --git a/源代码/StgSharp/Graphics/PlainGeometryMesh.cs b/源代码/StgSharp/Graphics/PlainGeometryMesh.cs index c8b52c02..60767c09 100644 --- a/源代码/StgSharp/Graphics/PlainGeometryMesh.cs +++ b/源代码/StgSharp/Graphics/PlainGeometryMesh.cs @@ -42,6 +42,7 @@ namespace StgSharp.Graphics { throw new ArgumentException(paramName: nameof(texture), message: "Amount of texture coordination is too less"); } + _texture = texture; _shape = shape; } diff --git a/源代码/StgSharp/Graphics/RenderStream.cs b/源代码/StgSharp/Graphics/RenderStream.cs index 0a54cd93..4c81033e 100644 --- a/源代码/StgSharp/Graphics/RenderStream.cs +++ b/源代码/StgSharp/Graphics/RenderStream.cs @@ -31,6 +31,8 @@ using StgSharp.Graphics.OpenGL; using StgSharp.Logic; using StgSharp.Math; +using StgSharp.MVVM; +using StgSharp.MVVM.View; using System; using System.Collections.Generic; @@ -45,16 +47,11 @@ namespace StgSharp.Graphics { public abstract class RenderStream { - private protected (int x, int y, int z) _coordStretch; - private Camera nativeCamera; - private protected ViewPort primeArgs; - - internal TimeSpanProvider timeProvider; + internal TimeSpanProvider _timeProvider; - public (int width, int height) Size { get => (Width, Height); @@ -96,8 +93,11 @@ namespace StgSharp.Graphics public vec2d GlobalCoordSize => ((Width * 1.0f) / _coordStretch.x, (Height * 1.0f) / _coordStretch.y); - public ViewPort Port => primeArgs; - + public ViewPort Port + { + get => primeArgs; + internal set => primeArgs = value; + } internal IntPtr CanvasHandle { get => primeArgs.ViewPortID; } @@ -113,25 +113,24 @@ namespace StgSharp.Graphics internal set => nativeCamera = value; } - protected int Frames + protected int PassedFrames { - get => timeProvider.CurrentSpan; + get => _timeProvider.CurrentSpan; } - protected float TimePassed { - get => timeProvider.CurrentSecond; + get => _timeProvider.CurrentSecond; } protected float FramePassed { - get => timeProvider.CurrentSpan; + get => _timeProvider.CurrentSpan; } protected TimeSpanProvider TimeProvider { - get => timeProvider; + get => _timeProvider; } /// @@ -146,19 +145,10 @@ namespace StgSharp.Graphics public static TTarget ShareContextFrom(TSource source) where TSource : RenderStream - where TTarget : RenderStream + where TTarget : RenderStream, new() { -#nullable enable - TTarget? target = Activator.CreateInstance(typeof(TTarget), source.primeArgs, source._coordStretch) as TTarget; -#nullable restore - if (target == null) - { - throw new InvalidOperationException( - $"Failed in creating a new {typeof(TTarget).Name} instance when calling ShareContextWith." - ); - } - target.timeProvider = source.timeProvider; - target.PlatformSpecifiedInit(); + TTarget target = new TTarget(); + target.Initialize(source.Port,source._coordStretch,source._timeProvider); return target; } @@ -175,6 +165,7 @@ namespace StgSharp.Graphics #region native camera operation protected abstract void NativeCameraViewRange(Radius fieldOfRange, vec2d offset, (float frontDepth, float backDepth) viewDepth); protected abstract void NativeCameraViewTarget(vec3d position, vec3d direction, vec3d up); + /// /// Get (TView is ) uniform from a shader. /// This uniform will be used as projection matrix of this camera. @@ -193,21 +184,21 @@ namespace StgSharp.Graphics #region internal operation internal abstract void Draw(); - public void Init(ViewPort v, (int, int, int) unitCubeSize) + public void Initialize(ViewPort v, (int, int, int) unitCubeSize, TimeSpanProvider timeProvider) { if (v == null) { throw new ArgumentNullException(nameof(v)); } primeArgs = v; - + this._timeProvider = timeProvider; _coordStretch = unitCubeSize; nativeCamera = new Camera(); - PlatformSpecifiedInit(); + PlatformSpecifiedInitialize(); CustomizeInit(); } - internal abstract void PlatformSpecifiedInit(); + internal abstract void PlatformSpecifiedInitialize(); internal abstract void Terminate(); #endregion @@ -226,7 +217,6 @@ namespace StgSharp.Graphics #endregion - } } diff --git a/源代码/StgSharp/Graphics/ShaderEdit/ShaderStruct.cs b/源代码/StgSharp/Graphics/ShaderEdit/ShaderStruct.cs index dbecfbbb..179223e9 100644 --- a/源代码/StgSharp/Graphics/ShaderEdit/ShaderStruct.cs +++ b/源代码/StgSharp/Graphics/ShaderEdit/ShaderStruct.cs @@ -38,7 +38,7 @@ namespace StgSharp.Graphics.ShaderEdit public unsafe void SetAllUniforms() { - GLcontext* gl = (GLcontext*)OpenGL.GlFunction.CurrentGL.ContextHandle; + OpenglContext* gl = (OpenglContext*)OpenGL.GlFunction.CurrentGL.ContextHandle; foreach (var uniform in uniformPair) { int id = uniform.Key.SignedValue; diff --git a/源代码/StgSharp/Graphics/TextureProvider.cs b/源代码/StgSharp/Graphics/TextureProvider.cs index 7acd4544..a403aa80 100644 --- a/源代码/StgSharp/Graphics/TextureProvider.cs +++ b/源代码/StgSharp/Graphics/TextureProvider.cs @@ -33,6 +33,23 @@ namespace StgSharp.Graphics get => ref _texCoord[index]; } + public void UpdateFromImage(Image i) + { + if (i == _tex) + { + return; + } + if (i.Size == _tex.Size) + { + _tex = i; + } + else + { + throw new ArgumentException($"Size of {nameof(i)} does not equals to current image."); + } + + } + public void ReadImage(IImageProvider provider) { _tex = provider.ProvideImage(); diff --git a/源代码/StgSharp/MVVM/View/ViewBase.cs b/源代码/StgSharp/MVVM/View/ViewBase.cs new file mode 100644 index 00000000..255a7d59 --- /dev/null +++ b/源代码/StgSharp/MVVM/View/ViewBase.cs @@ -0,0 +1,194 @@ +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +// file="ViewBase.cs" +// Project: StgSharp +// AuthorGroup: Nitload Space +// Copyright (c) Nitload Space. All rights reserved. +// +// Permission is hereby granted, free of charge, to any person +// obtaining a copy of this software and associated documentation +// files (the “Software”), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, +// publish, distribute, sublicense, and/or sell copies of the Software, +// and to permit persons to whom the Software is furnished to do so, +// subject to the following conditions: +// +// The above copyright notice and +// this permission notice shall be included in all copies +// or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED “AS IS”, +// WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +// ARISING FROM, OUT OF OR IN CONNECTION WITH +// THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +using StgSharp.Graphics; +using StgSharp.Logic; +using StgSharp.Math; +using StgSharp.MVVM.ViewModel; + +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.Linq; +using System.Numerics; +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using System.Security.Cryptography; +using System.Text; +using System.Threading; + +namespace StgSharp.MVVM.View +{ + /// + /// ViewBase is the base type for all view types, providing context binding and control element binding. + /// A complete view should contain one complete , , and , + /// which provide layout descriptions of control elements, user responses, and rendering implementations in the view. + /// Data between instances of , , and is shared through . + /// + + public abstract unsafe partial class ViewBase + { + + private (int x, int y, int z) unitCubeSize; + + private GetDataBindingEntryDelegate getDataBindingEntry; + + private int usedFrame = 0; + private IViewDesigner _design; + private IViewRender _render; + private IViewResponder _responder; + private TimeSpanProvider time; + + private ViewPort context; + + private delegate bool GetDataBindingEntryDelegate(string name, out DataBindingEntry entry); + + public DataBindingEntry this[string name] + { + get + { + if (TryGetObjectReference(name, out DataBindingEntry entry)) + { + return entry; + } + if (getDataBindingEntry(name, out entry)) + { + return entry; + } + throw new KeyNotFoundException(); + } + } + + public (int x, int y, int z) UnitCubeSize + { + get => unitCubeSize; + } + + public bool Activated { get; internal set; } + + public int Height + { + get => context.Height; + private set { context.Height = value; } + } + + public int Width + { + get => context.Width; + private set { context.Width = value; } + } + + public IntPtr Monitor => context.Monitor; + + public IntPtr ViewHandle => context.ViewPortID; + + public IViewDesigner Designer + { + get => _design; + protected set => _design = value; + } + + public string ContextName => context.Name; + + public string SelfName { get; set; } + + public ViewPort Port + { + get => context; + } + + internal TimeSpanProvider TimeProvider + { + get => time; + } + + protected IViewRender Render + { + get => _render; + set => _render = value; + } + + protected IViewResponder Responder + { + get => _responder; + set => _responder = value; + } + + public abstract void CustomizedInitialize(ViewModelBase viewModelBinding); + + /// + /// Get the status of a certain key on the keyboard. + /// + /// + /// representing if a key is pressed or released. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public KeyStatus GetKeyStatus(KeyboardKey key) + { + return InternalIO.glfwGetKey(context.ViewPortID, (int)key); + } + + public void InternalInitialize(string name,(int,int,int) cubeSize, ViewModelBase viewModelBinding) + { + SelfName = name; + unitCubeSize = cubeSize; + getDataBindingEntry = viewModelBinding.TryGetObjectReference; + context = viewModelBinding.ViewPortBinding; + time = viewModelBinding.frameTimeProvider; + + CustomizedInitialize(viewModelBinding); + } + + public abstract bool TryGetObjectReference(string name, out DataBindingEntry entry); + + public void Use() + { + if (usedFrame == 0) + { + if (!ValidateInitialization()) + { + throw new InvalidOperationException("This view is not correctly initialized before rendering."); + } + } + Show(); + } + + public bool ValidateInitialization() + { + return (_design != null) && (_render != null) && (getDataBindingEntry != null) && (_responder != null) + && (_design.ValidateInitializing()) && (_responder.ValidateInitializing()) && (_render.ValidateInitializing()) + ; + } + + protected internal abstract void Show(); + + } + +} \ No newline at end of file diff --git a/源代码/StgSharp/MVVM/View/ViewDesigner.cs b/源代码/StgSharp/MVVM/View/ViewDesigner.cs new file mode 100644 index 00000000..63ae75c2 --- /dev/null +++ b/源代码/StgSharp/MVVM/View/ViewDesigner.cs @@ -0,0 +1,143 @@ +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +// file="ViewDesigner.cs" +// Project: StgSharp +// AuthorGroup: Nitload Space +// Copyright (c) Nitload Space. All rights reserved. +// +// Permission is hereby granted, free of charge, to any person +// obtaining a copy of this software and associated documentation +// files (the “Software”), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, +// publish, distribute, sublicense, and/or sell copies of the Software, +// and to permit persons to whom the Software is furnished to do so, +// subject to the following conditions: +// +// The above copyright notice and +// this permission notice shall be included in all copies +// or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED “AS IS”, +// WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +// ARISING FROM, OUT OF OR IN CONNECTION WITH +// THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +using StgSharp.Controlling.UsrActivity; +using StgSharp.Controls; +using StgSharp.Geometries; +using StgSharp.Graphics; + +using StgSharp.Math; + +using System; +using System.Collections.Generic; +using System.Net; +using System.Text; + +namespace StgSharp.MVVM.View +{ + public abstract partial class ViewBase + { + public interface IViewDesigner where TView : ViewBase + { + abstract void Initialize(); + + abstract void CustomizedInitialize(); + + abstract bool ValidateInitializing(); + + } + + /// + /// ViewDesigner provides descriptions of various controls in the view, + /// binds the controls to specific user actions and behaviors, + /// and describes the layout and interactions of each control. + /// + public abstract class ViewDesigner : IViewDesigner where TView : ViewBase + { + + private KeyboardButtonGroup currentButtonGroup; + + private List _controlList; + protected TView _binding; + + public ViewDesigner(TView binding) + { + _binding = binding; + _controlList = new List(); + } + + protected TView Binding + { + get => _binding; + } + + public CharacterLineIndexImage CreateCharacterLine( + int length, char blankFilling, PlainGeometryMesh tittle, IEnumerable<(char, PlainGeometryMesh)> charList + ) + { + CharacterLineIndexImage ret = new CharacterLineIndexImage(length, blankFilling, tittle, charList); + _controlList.Add(ret); + return ret; + } + + public TriggerButton CreateKeyboardButton( + Rectangle bonding, TextureProvider defaultAnimation, bool isEnable + ) + { + TriggerButton ret = new TriggerButton(); + ret.BoundingBox = bonding; + ret.Texture = defaultAnimation; + if (isEnable) + { + ret.IsDisabled = false; + ret.Enable(); + } + else + { + ret.IsDisabled = true; + ret.Disable(); + } + currentButtonGroup.AddButton(ret); + return ret; + } + + public TButtonGroup CreateKeyboardButtonGroup( + ITrigger leftBidning, + ITrigger rightBinding, + ITrigger upBinding, + ITrigger downBinding, + ITrigger confirmBinding + ) + where TButtonGroup : KeyboardButtonGroup, new() + { + TButtonGroup ret = new TButtonGroup(); + _controlList.Add(ret); + currentButtonGroup = ret; + _binding.Responder[leftBidning] = ret.MoveLeft; + _binding.Responder[rightBinding] = ret.MoveRight; + _binding.Responder[upBinding] = ret.MoveUp; + _binding.Responder[downBinding] = ret.MoveDown; + _binding.Responder[confirmBinding] = ret.Confirm; + return ret; + } + + public void Initialize() + { + CustomizedInitialize(); + } + + public abstract void CustomizedInitialize(); + + public abstract bool ValidateInitializing(); + + }//---------------------------------- End of Class ----------------------------------------- + + } +} diff --git a/源代码/StgSharp/MVVM/View/ViewRender.cs b/源代码/StgSharp/MVVM/View/ViewRender.cs new file mode 100644 index 00000000..3254e834 --- /dev/null +++ b/源代码/StgSharp/MVVM/View/ViewRender.cs @@ -0,0 +1,133 @@ +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +// file="ViewRender.cs" +// Project: StgSharp +// AuthorGroup: Nitload Space +// Copyright (c) Nitload Space. All rights reserved. +// +// Permission is hereby granted, free of charge, to any person +// obtaining a copy of this software and associated documentation +// files (the “Software”), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, +// publish, distribute, sublicense, and/or sell copies of the Software, +// and to permit persons to whom the Software is furnished to do so, +// subject to the following conditions: +// +// The above copyright notice and +// this permission notice shall be included in all copies +// or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED “AS IS”, +// WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +// ARISING FROM, OUT OF OR IN CONNECTION WITH +// THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +using StgSharp.Graphics; +using StgSharp.Logic; + +using StgSharp.Math; +using StgSharp.MVVM.ViewModel; + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Security.Cryptography; +using System.Text; +using System.Threading; +using System.Threading.Tasks; + +namespace StgSharp.MVVM.View +{ + public abstract partial class ViewBase + { + protected interface IViewRender where TView : ViewBase + { + + RenderStream this[string renderName] { get; } + + void CustomizedInitialize(); + + void Initialize(); + + bool ValidateInitializing(); + + } + + protected abstract class ViewRender : IViewRender + where TView : ViewBase + { + +#pragma warning disable CS8618 + private Dictionary _render; + private TView _binding; +#pragma warning restore CS8618 + + protected ViewRender(TView binding) + { + _binding = binding; + } + + public RenderStream this[string renderName] + { + get => _render.TryGetValue(renderName, out RenderStream stream) ? stream : null!; + protected set + { + + if (_render.ContainsKey(renderName)) + { + _render[renderName] = value; + } + else + { + _render.Add(renderName, value); + } + } + } + + public TView Binding => _binding; + + protected ViewPort ContextBinding => _binding.context; + + protected ViewDesigner Design => (_binding.Designer as ViewDesigner)!; + + protected Dictionary Render + { + get => _render; + } + + protected ViewResponder Responder => (_binding.Responder as ViewResponder)!; + + public T CreateRenderStream(ViewPort vp, (int x, int y, int z) unitCubeSize) where T : RenderStream, new() + { + T ret = new T(); + ret.Initialize(vp, unitCubeSize, Binding.TimeProvider); + return ret; + } + + public T CreateRenderStream((int x, int y, int z) unitCubeSize) where T : RenderStream, new() + { + T ret = new T(); + ret.Initialize(_binding.context, unitCubeSize, Binding.TimeProvider); + return ret; + } + + public abstract void CustomizedInitialize(); + + public void Initialize() + { + CustomizedInitialize(); + } + + public abstract bool ValidateInitializing(); + + } + } +} diff --git a/源代码/StgSharp/MVVM/View/ViewResponder.cs b/源代码/StgSharp/MVVM/View/ViewResponder.cs new file mode 100644 index 00000000..d6c35af8 --- /dev/null +++ b/源代码/StgSharp/MVVM/View/ViewResponder.cs @@ -0,0 +1,129 @@ +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +// file="ViewResponder.cs" +// Project: StgSharp +// AuthorGroup: Nitload Space +// Copyright (c) Nitload Space. All rights reserved. +// +// Permission is hereby granted, free of charge, to any person +// obtaining a copy of this software and associated documentation +// files (the “Software”), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, +// publish, distribute, sublicense, and/or sell copies of the Software, +// and to permit persons to whom the Software is furnished to do so, +// subject to the following conditions: +// +// The above copyright notice and +// this permission notice shall be included in all copies +// or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED “AS IS”, +// WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +// ARISING FROM, OUT OF OR IN CONNECTION WITH +// THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +using StgSharp.Controlling.UsrActivity; + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace StgSharp.MVVM.View +{ + public partial class ViewBase + { + protected interface IViewResponder where TVIew : ViewBase + { + + Action? this[ITrigger trigger] { get; set; } + + void CustomizedInitialize(Func keyRegister); + + void ProcessUserInput(); + + bool ValidateInitializing(); + + void Initialize(Func keyGetter); + + } + + protected abstract class ViewResponder : IViewResponder where TView : ViewBase + { + + private bool _isInitialized; + private Dictionary keyCallbackIndex; + private Dictionary nameToCallbackMap; + private TView _binding; + + protected ViewResponder(TView binding) + { + keyCallbackIndex = new Dictionary(); + nameToCallbackMap = new Dictionary(); + _binding = binding; + } + + public Action? this[ITrigger trigger] + { + get => keyCallbackIndex.TryGetValue(trigger, out Action callback) ? callback : null; + set + { + if (keyCallbackIndex.TryGetValue(trigger, out Action callback)) + { + callback += value; + } + else + { + keyCallbackIndex.Add(trigger, value ?? throw new ArgumentNullException(nameof(value))); + } + } + } + + protected TView Binding => _binding; + + public abstract void CustomizedInitialize(Func keyRegister); + + public void ProcessUserInput() + { + foreach (KeyValuePair pair in keyCallbackIndex) + { + if (InternalIO.glfwGetKey(_binding.ViewHandle, pair.Key.TargetKeyOrButtonID) == pair.Key.TriggeredStatus) + { + pair.Value(); + } + } + } + + public abstract bool ValidateInitializing(); + + public void Initialize(Func keyGetter) + { + if (_isInitialized) + { + return; + } + CustomizedInitialize( + (trigger, name) => + { + if (!nameToCallbackMap.TryGetValue(name, out Action ret)) + { + ret = keyGetter.Invoke(name) ?? + throw new InvalidOperationException($"Cannot find method named {name} in binded view model"); + } + this[trigger] = ret; + return ret; + } + ); + } + + } + + } +} diff --git a/源代码/StgSharp/MVVM/ViewModel/DataBinding.cs b/源代码/StgSharp/MVVM/ViewModel/DataBinding.cs new file mode 100644 index 00000000..cb04642c --- /dev/null +++ b/源代码/StgSharp/MVVM/ViewModel/DataBinding.cs @@ -0,0 +1,83 @@ +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +// file="DataBinding.cs" +// Project: StgSharp +// AuthorGroup: Nitload Space +// Copyright (c) Nitload Space. All rights reserved. +// +// Permission is hereby granted, free of charge, to any person +// obtaining a copy of this software and associated documentation +// files (the “Software”), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, +// publish, distribute, sublicense, and/or sell copies of the Software, +// and to permit persons to whom the Software is furnished to do so, +// subject to the following conditions: +// +// The above copyright notice and +// this permission notice shall be included in all copies +// or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED “AS IS”, +// WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +// ARISING FROM, OUT OF OR IN CONNECTION WITH +// THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +using System; +using System.Collections.Generic; +using System.Data.Common; +using System.Diagnostics.CodeAnalysis; +using System.Linq; +using System.Runtime.InteropServices; +using System.Security.Cryptography.X509Certificates; +using System.Text; +using System.Threading.Tasks; + +namespace StgSharp.MVVM.ViewModel +{ +#nullable enable + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] public delegate ref object BindingDataGetter(); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] public delegate void BindingDataSetter(ref object value); + + public unsafe struct DataBindingEntry + { + private IntPtr getterPtr, setterPtr; + + public DataBindingEntry( + [NotNull] BindingDataGetter gettingCallback, + [NotNull] BindingDataSetter settingCallback) + { + getterPtr = Marshal.GetFunctionPointerForDelegate(gettingCallback); + setterPtr = Marshal.GetFunctionPointerForDelegate(settingCallback); + } + + public static DataBindingEntry NullBinding + { + get => new DataBindingEntry(); + } + + public bool ExactEqual(DataBindingEntry other) + { + return (getterPtr == other.getterPtr) && (setterPtr == other.setterPtr); + } + + public ref object GetValue() + { + return ref ((delegate* unmanaged[Cdecl])getterPtr)(); + } + + public void SetData(ref object value) + { + ((delegate* unmanaged[Cdecl])setterPtr)(ref value); + } + + } + +#nullable restore +} diff --git a/源代码/StgSharp/MVVM/ViewModel/ShowViewPort.cs b/源代码/StgSharp/MVVM/ViewModel/ShowViewPort.cs new file mode 100644 index 00000000..f46fe01b --- /dev/null +++ b/源代码/StgSharp/MVVM/ViewModel/ShowViewPort.cs @@ -0,0 +1,98 @@ +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +// file="ShowViewPort.cs" +// Project: StgSharp +// AuthorGroup: Nitload Space +// Copyright (c) Nitload Space. All rights reserved. +// +// Permission is hereby granted, free of charge, to any person +// obtaining a copy of this software and associated documentation +// files (the “Software”), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, +// publish, distribute, sublicense, and/or sell copies of the Software, +// and to permit persons to whom the Software is furnished to do so, +// subject to the following conditions: +// +// The above copyright notice and +// this permission notice shall be included in all copies +// or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED “AS IS”, +// WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +// ARISING FROM, OUT OF OR IN CONNECTION WITH +// THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +using StgSharp.Graphics; +using StgSharp.MVVM.View; + +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; + +namespace StgSharp.MVVM.ViewModel +{ + public abstract partial class ViewModelBase + { + + private ViewBase _nextView, _currentView; + + protected ViewBase CurrentView + { + get => _currentView; + set => _nextView = value; + } + + /// + /// CustomizeInit this form and render it on screen, and respond with operation + /// + public unsafe void UseViewModel(string viewEntryName) + { + CustomizeInitialize(); + //BuildGlobalKeyControl(); + UseViewInNextFrame(viewEntryName); + while (0 == InternalIO.glfwWindowShouldClose(this.viewPortDisplay.ViewPortID)) + { + ShowFrameOnce(); + } + } + + private void ShowFrameOnce() + { + viewPortDisplay.FlushSize(); + if (_nextView != _currentView) + { + Interlocked.Exchange(ref _currentView, _nextView); + } + CurrentView.Use(); + RenderStream.PollEvents(); + frameTimeProvider.WaitNextSpan(); + Interlocked.Add(ref _frameCount, 1); + } + + protected void UseViewInNextFrame(string name) + { + if (!allView.TryGetValue(name, out ViewBase v)) + { + throw new KeyNotFoundException($"{($"Cannot find View named {name} ")}{($"in current View Model of {GetType().FullName}")}"); + } + CurrentView = v; + } + + private unsafe void PrivateShow() + { + if (0 == InternalIO.glfwWindowShouldClose(this.viewPortDisplay.ViewPortID)) + { + CurrentView.Use(); + RenderStream.PollEvents(); + } + } + + } +} diff --git a/源代码/StgSharp/MVVM/ViewModel/ViewManage.cs b/源代码/StgSharp/MVVM/ViewModel/ViewManage.cs new file mode 100644 index 00000000..ec7e26e0 --- /dev/null +++ b/源代码/StgSharp/MVVM/ViewModel/ViewManage.cs @@ -0,0 +1,57 @@ +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +// file="ViewManage.cs" +// Project: StgSharp +// AuthorGroup: Nitload Space +// Copyright (c) Nitload Space. All rights reserved. +// +// Permission is hereby granted, free of charge, to any person +// obtaining a copy of this software and associated documentation +// files (the “Software”), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, +// publish, distribute, sublicense, and/or sell copies of the Software, +// and to permit persons to whom the Software is furnished to do so, +// subject to the following conditions: +// +// The above copyright notice and +// this permission notice shall be included in all copies +// or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED “AS IS”, +// WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +// ARISING FROM, OUT OF OR IN CONNECTION WITH +// THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +using StgSharp.Graphics; +using StgSharp.Graphics.OpenGL; +using StgSharp.MVVM.View; + +using System; +using System.Collections.Generic; +using System.ComponentModel.Design; +using System.Text; + +namespace StgSharp.MVVM.ViewModel +{ + public partial class ViewModelBase + { + private Dictionary allView; + + public T CreateAndBindView(string name, (int x, int y, int z) unitCubeSize) + where T : ViewBase, new() + { + T ret = new T(); + ret.SelfName = name; + ret.InternalInitialize(name,unitCubeSize,this); + allView.Add(name, ret); + return ret; + } + + } +} diff --git a/源代码/StgSharp/MVVM/ViewModel/ViewModel.cs b/源代码/StgSharp/MVVM/ViewModel/ViewModel.cs new file mode 100644 index 00000000..cf480e40 --- /dev/null +++ b/源代码/StgSharp/MVVM/ViewModel/ViewModel.cs @@ -0,0 +1,320 @@ +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +// file="ViewModel.cs" +// Project: StgSharp +// AuthorGroup: Nitload Space +// Copyright (c) Nitload Space. All rights reserved. +// +// Permission is hereby granted, free of charge, to any person +// obtaining a copy of this software and associated documentation +// files (the “Software”), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, +// publish, distribute, sublicense, and/or sell copies of the Software, +// and to permit persons to whom the Software is furnished to do so, +// subject to the following conditions: +// +// The above copyright notice and +// this permission notice shall be included in all copies +// or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED “AS IS”, +// WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +// ARISING FROM, OUT OF OR IN CONNECTION WITH +// THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +using StgSharp.Controlling.UsrActivity; +using StgSharp.Graphics; +using StgSharp.Graphics.OpenGL; +using StgSharp.Math; +using StgSharp.MVVM.View; +using StgSharp.MVVM.ViewModel; + +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.Numerics; +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using System.Text; +using System.Threading; + +namespace StgSharp.MVVM.ViewModel +{ + public abstract partial class ViewModelBase + { + + private int _frameCount; + private int _frameSpeed; + private ViewPort viewPortDisplay; + + //internal IntPtr monitor; + + internal TimeSpanProvider fpsCountProvider; + internal TimeSpanProvider frameTimeProvider; + internal Vector4 backgroundColor; + + protected ViewModelBase(int frameSpeed) + { + viewPortDisplay = new ViewPort(); + allView = new(); + fpsCountProvider = new TimeSpanProvider(1.0, TimeSpanProvider.DefaultProvider); + _frameSpeed = 0; + _frameCount = 0; + fpsCountProvider.SpanRefreshCallback = CountFps; + long frameLength = (FrameSpeed > 0) ? ((1000L * 1000L) / FrameSpeed) : 0; + frameTimeProvider = new TimeSpanProvider( + frameLength, TimeSpanProvider.DefaultProvider + ); + frameTimeProvider.SpanRefreshCallback = + () => + { + }; + } + + protected ViewModelBase(float frameLength) + { + viewPortDisplay = new ViewPort(); + allView = new(); + fpsCountProvider = new TimeSpanProvider(1.0, TimeSpanProvider.DefaultProvider); + _frameSpeed = 0; + _frameCount = 0; + fpsCountProvider.SpanRefreshCallback = CountFps; + long _frameLength = (FrameSpeed > 0) ? ((long)(1000 * frameLength)) : 0; + frameTimeProvider = new TimeSpanProvider( + _frameLength, TimeSpanProvider.DefaultProvider + ); + frameTimeProvider.SpanRefreshCallback = + () => + { + }; + } + + public ViewModelBase(ViewPort vbinding, int framespeed) + { + viewPortDisplay = vbinding; + allView = new(); + fpsCountProvider = new TimeSpanProvider(1.0, TimeSpanProvider.DefaultProvider); + _frameSpeed = 0; + _frameCount = 0; + fpsCountProvider.SpanRefreshCallback = CountFps; + long frameLength = (framespeed > 0) ? ((1000L * 1000L) / framespeed) : 0; + frameTimeProvider = new TimeSpanProvider( + frameLength, TimeSpanProvider.DefaultProvider + ); + frameTimeProvider.SpanRefreshCallback = + () => + { + }; + viewPortDisplay.FrameSizeCallback = (handle, width, height) + => + { + InternalIO.glfwMakeContextCurrent(viewPortDisplay.ViewPortID); + GlFunction.CurrentGL.Viewport(0, 0, width, height); + PrivateShow(); + }; + viewPortDisplay.FramePostionCallback = (handle, xpos, ypos) + => + { + PrivateShow(); + }; + } + + public ViewModelBase(ViewPort vbinding, float frameLength) + { + viewPortDisplay = vbinding; + allView = new(); + fpsCountProvider = new TimeSpanProvider(1.0, TimeSpanProvider.DefaultProvider); + _frameSpeed = 0; + _frameCount = 0; + fpsCountProvider.SpanRefreshCallback = CountFps; + long _frameLength = (frameLength > 0) ? ((long)(1000 * frameLength)) : 0; + frameTimeProvider = new TimeSpanProvider( + _frameLength, TimeSpanProvider.DefaultProvider + ); + frameTimeProvider.SpanRefreshCallback = + () => + { + }; + + viewPortDisplay.FrameSizeCallback = (handle, width, height) + => + { + InternalIO.glfwMakeContextCurrent(viewPortDisplay.ViewPortID); + GlFunction.CurrentGL.Viewport(0, 0, width, height); + PrivateShow(); + }; + viewPortDisplay.FramePostionCallback = (handle, xpos, ypos) + => + { + PrivateShow(); + }; + } + + public DataBindingEntry this[string name] + { + get + { + if (this.TryGetObjectReference(name, out DataBindingEntry entry)) + { + return entry; + } + throw new KeyNotFoundException(); + } + } + + public bool ShouldClose + { + get => InternalIO.glfwWindowShouldClose(viewPortDisplay.ViewPortID) != 0; + set => InternalIO.glfwSetWindowShouldClose(viewPortDisplay.ViewPortID, value ? 1 : 0); + } + + public int CurrentFrameCount => frameTimeProvider.CurrentSpan; + + public int FrameSpeed => _frameSpeed; + + /// + /// Height of this form, represent in + /// + public int Height + { + get => viewPortDisplay.Height; + set { viewPortDisplay.Height = value; } + } + + /// + /// Width of this form, represent in + /// + public int Width + { + get => viewPortDisplay.Width; + set + { + viewPortDisplay.Width = value; + if (WindowID != IntPtr.Zero) + { + InternalIO.glfwSetWindowSize(viewPortDisplay.ViewPortID, Width, Height); + } + } + } + + public unsafe IntPtr WindowID + { + get => viewPortDisplay.ViewPortID; + } + + public string Name + { + get => viewPortDisplay.Name; + } + + /// + /// Width of this form, represent in + /// + public vec2d Size + { + get => new vec2d(Width, Height); + set + { + Width = (int)value.X; + Height = (int)value.Y; + if (WindowID != IntPtr.Zero) + { + InternalIO.glfwSetWindowSize(viewPortDisplay.ViewPortID, Width, Height); + } + } + } + + public ViewPort ViewPortBinding + { + get => viewPortDisplay; + } + +#pragma warning disable CA1044 + protected FrameBufferSizeHandler FrameSizeCallback + { + set + { + IntPtr handlerPtr = Marshal.GetFunctionPointerForDelegate(value); + InternalIO.glfwSetFramebufferSizeCallback(viewPortDisplay.ViewPortID, handlerPtr); + } + } +#pragma warning restore CA1044 + + + public abstract void CustomizeInitialize(); + + public Action MethodLookup(string methodName) + { + MethodInfo method = GetType().GetMethod(methodName); + return (method != null) ? ((Action)Delegate.CreateDelegate(typeof(Action), this, method)) : null; + } + + /// + /// Resize the current form + /// + /// + /// A (width,height) representing the new size of current form + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SetSize(vec2d size) + { + this.Size = size; + InternalIO.glfwSetWindowSize(this.viewPortDisplay.ViewPortID, (int)size.X, (int)size.Y); + } + + /// + /// Set the size limit of current form + /// + /// + /// Minimum size of current form. In form of a of (width,height) + /// + /// + /// Maximum size of current form. In form of a of (width,height) + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SetSizeLimit(vec2d minSize, vec2d maxSize) + { + InternalIO.glfwSetWindowSizeLimits( + this.viewPortDisplay.ViewPortID, + (int)minSize.X, + (int)minSize.Y, + (int)maxSize.X, + (int)maxSize.Y); + } + + /// + /// Set the size limit of current form + /// + /// Minimum width of current form + /// Minimum height of current form + /// Maximum width of current form + /// Maximum height of current form + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SetSizeLimit(int minWidth, int minHeight, int maxWidth, int maxHeight) + { + //TODO 重做form的尺寸极限控制 + InternalIO.glfwSetWindowSizeLimits(this.viewPortDisplay.ViewPortID, minWidth, minHeight, maxWidth, maxHeight); + } + + public abstract bool TryGetObjectReference(string name, out DataBindingEntry entry); + + private void CountFps() + { + /**/ + Console.Clear(); + Console.WriteLine(FrameSpeed); + /**/ + Interlocked.Exchange(ref _frameSpeed, _frameCount); + Interlocked.Exchange(ref _frameCount, 0); + } + + } + +} diff --git a/源代码/StgSharp/MVVM/ViewPort.cs b/源代码/StgSharp/MVVM/ViewPort.cs new file mode 100644 index 00000000..2cba5319 --- /dev/null +++ b/源代码/StgSharp/MVVM/ViewPort.cs @@ -0,0 +1,136 @@ +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +// file="ViewPort.cs" +// Project: StgSharp +// AuthorGroup: Nitload Space +// Copyright (c) Nitload Space. All rights reserved. +// +// Permission is hereby granted, free of charge, to any person +// obtaining a copy of this software and associated documentation +// files (the “Software”), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, +// publish, distribute, sublicense, and/or sell copies of the Software, +// and to permit persons to whom the Software is furnished to do so, +// subject to the following conditions: +// +// The above copyright notice and +// this permission notice shall be included in all copies +// or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED “AS IS”, +// WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +// ARISING FROM, OUT OF OR IN CONNECTION WITH +// THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +using StgSharp.Graphics; +using StgSharp.Math; + +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Diagnostics; +using System.Runtime.InteropServices; +using System.Text; +using System.Threading; + +namespace StgSharp.MVVM +{ + public class ViewPort + { + + private FrameBufferSizeHandler _sizeHandler; + private FramePositionHandler _positionHandler; + private int _width, _height; + + internal ViewPort() + { + _height = 600; + _width = 800; + Name = new StackFrame(1, false). + GetMethod()!.DeclaringType!.Name; + Monitor = IntPtr.Zero; + ViewPortID = InternalIO.glfwCreateWindow(_width, _height, + Encoding.UTF8.GetBytes(Name), Monitor, IntPtr.Zero + ); + if (ViewPortID == IntPtr.Zero) + { + throw new InvalidOperationException("Unable to create viewport handle."); + } + } + + public ViewPort(vec2d size, string name, IntPtr monitor) + { + _width = (int)size.X; + _height = (int)size.Y; + Name = name; + Monitor = monitor; + ViewPortID = InternalIO.glfwCreateWindow(_width, _height, + Encoding.UTF8.GetBytes(Name), Monitor, IntPtr.Zero + ); + if (ViewPortID == IntPtr.Zero) + { + throw new InvalidOperationException("Unable to create viewport handle."); + } + } + + public FrameBufferSizeHandler FrameSizeCallback + { + set + { + _sizeHandler = value; + IntPtr handlerPtr = Marshal.GetFunctionPointerForDelegate(_sizeHandler); + InternalIO.glfwSetFramebufferSizeCallback(ViewPortID, handlerPtr); + } + } + + public FramePositionHandler FramePostionCallback + { + set + { + _positionHandler = value; + IntPtr handlerPtr = Marshal.GetFunctionPointerForDelegate(_positionHandler); + InternalIO.glfwSetWindowPosCallback(ViewPortID, handlerPtr); + } + } + + public unsafe int Height + { + get { return _height; } + set { InternalIO.glfwSetWindowSize(ViewPortID, _width, value); } + } + + public unsafe int Width + { + get { return _width; } + set { InternalIO.glfwSetWindowSize(ViewPortID, value, _height); } + } + + public IntPtr GraphicHandle { get; internal set; } + + public IntPtr Monitor { get; internal set; } + + public IntPtr ViewPortID { get; private set; } + + public string Name { get; set; } + + public void Close() + { + InternalIO.glfwSetWindowShouldClose(ViewPortID, 1); + } + + internal unsafe void FlushSize() + { + fixed (int* wptr = &_width, hptr = &_height) + { + InternalIO.glfwGetWindowSize(ViewPortID, wptr, hptr); + } + } + + } +} diff --git a/源代码/StgSharp/Math/Graphic/Camera.cs b/源代码/StgSharp/Math/Graphic/Camera.cs index a580ea51..f4f53e1c 100644 --- a/源代码/StgSharp/Math/Graphic/Camera.cs +++ b/源代码/StgSharp/Math/Graphic/Camera.cs @@ -142,7 +142,7 @@ namespace StgSharp.Graphics public unsafe void SetAllUniforms() { - //Console.WriteLine(Projection * View); + //Console.WriteLine(Projection * ViewBase); OpenGL.GlFunction.CurrentGL.SetUniformValue(convertedUniform, Projection * View); } diff --git a/源代码/StgSharp/Stg/CollisionTexture.cs b/源代码/StgSharp/Stg/CollisionTexture.cs index 0fc2d0f0..6170d950 100644 --- a/源代码/StgSharp/Stg/CollisionTexture.cs +++ b/源代码/StgSharp/Stg/CollisionTexture.cs @@ -34,6 +34,7 @@ using StgSharp.Graphics; using StgSharp.Graphics.OpenGL; using StgSharp.Logic; using StgSharp.Math; +using StgSharp.MVVM; using System; using System.Buffers; @@ -116,7 +117,7 @@ namespace StgSharp.Stg GL.FrameBufferTexture2d(FrameBufferTarget.All, glAttachment.Color(0), Texture2DTarget.Texture2D, t[0], 0); - GL.CombineFrameBufferRenderBuffer(fbo[0], rbo[0]); + GL.CombineFrameBufferRenderBuffer(FrameBufferAttachment.Color, rbo[0]); textureOutput = new float[this.Width]; } @@ -180,7 +181,7 @@ namespace StgSharp.Stg _coordStretch = (1, 1, 1); - PlatformSpecifiedInit(); + PlatformSpecifiedInitialize(); CustomizeInit(); } } diff --git a/源代码/StgSharp/Stg/Touhou/TouhouBuilder.cs b/源代码/StgSharp/Stg/Touhou/TouhouBuilder.cs index 7efd902b..7439fb4e 100644 --- a/源代码/StgSharp/Stg/Touhou/TouhouBuilder.cs +++ b/源代码/StgSharp/Stg/Touhou/TouhouBuilder.cs @@ -12,7 +12,7 @@ namespace StgSharp.Stg.Touhou /* - public static View BuildTouhouWorld() + public static ViewBase BuildTouhouWorld() { TouhouForm form = new TouhouForm(); diff --git a/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.AssemblyInfo.cs b/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.AssemblyInfo.cs index 55ee8578..8f464e31 100644 --- a/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.AssemblyInfo.cs +++ b/源代码/StgSharp/obj/x64/Release/netstandard2.1/StgSharp.AssemblyInfo.cs @@ -14,7 +14,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("StgSharp")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Release")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+924fe6eef7b6b9441b297f211c82b4684f23d002")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+da75200347e2ff7f483c83ff224678d05b0aefd1")] [assembly: System.Reflection.AssemblyProductAttribute("StgSharp")] [assembly: System.Reflection.AssemblyTitleAttribute("StgSharp")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/源代码/StgSharpDebug/Demo/Program.cs b/源代码/StgSharpDebug/Demo/Program.cs index fd10920f..0aa17e4e 100644 --- a/源代码/StgSharpDebug/Demo/Program.cs +++ b/源代码/StgSharpDebug/Demo/Program.cs @@ -4,6 +4,7 @@ using StgSharp.Geometries; using StgSharp.Graphics; using StgSharp.Logic; using StgSharp.Math; +using StgSharp.MVVM; using StgSharpDebug.Logic; @@ -27,8 +28,12 @@ namespace StgSharp StgSharp.InitGL(4, 6); StgSharp.GlobalSetting.VSyncActivated = false; + ViewPort vp = new ViewPort(); + ViewModelMain mainModel = new ViewModelMain(vp); + mainModel.CreateAndBindView("MainView", (1, 1, 1)); + mainModel.UseViewModel("MainView"); StgSharp.Terminate(); /**/ @@ -36,10 +41,10 @@ namespace StgSharp } catch (Exception ex) { - Console.WriteLine(ex.Message + "\n" + ex.StackTrace); InternalIO.InternalWriteLog( ex.Message + "\n" + ex.StackTrace, LogType.Error); + Environment.FailFast(ex.Message + "\n" + ex.StackTrace); } } } diff --git a/源代码/StgSharpDebug/Demo/RenderStream/Partical.cs b/源代码/StgSharpDebug/Demo/RenderStream/Partical.cs index 963be196..31f04597 100644 --- a/源代码/StgSharpDebug/Demo/RenderStream/Partical.cs +++ b/源代码/StgSharpDebug/Demo/RenderStream/Partical.cs @@ -1,4 +1,34 @@ -using StgSharp.Controls; +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +// file="Partical.cs" +// Project: StgSharp +// AuthorGroup: Nitload Space +// Copyright (c) Nitload Space. All rights reserved. +// +// Permission is hereby granted, free of charge, to any person +// obtaining a copy of this software and associated documentation +// files (the “Software”), to deal in the Software without restriction, +// including without limitation the rights to use, copy, modify, merge, +// publish, distribute, sublicense, and/or sell copies of the Software, +// and to permit persons to whom the Software is furnished to do so, +// subject to the following conditions: +// +// The above copyright notice and +// this permission notice shall be included in all copies +// or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED “AS IS”, +// WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +// ARISING FROM, OUT OF OR IN CONNECTION WITH +// THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// +//----------------------------------------------------------------------- +//----------------------------------------------------------------------- +using StgSharp.Controls; using StgSharp.Geometries; using StgSharp.Graphics; using StgSharp.Graphics.OpenGL; @@ -17,40 +47,91 @@ namespace StgSharp { ElementBuffer ebo; - + ElementBuffer f_ebo; FrameBuffer fbo; Image i; PlainInstancingBuffer buffer; RenderBuffer rbo; - + ShaderProgram frameMainShader; ShaderProgram s; - TextureGL t; + Uniform texUniform; + Uniform time; + VertexArray f_vao; VertexArray vao; + + VertexBuffer f_vbo; VertexBuffer vbo; - Uniform time; + public ParticleRenderStream() + { + + } + + public override bool IsContextSharable => true; + + public Rectangle ButtonBounding + { + get; + private set; + } + + public TextureProvider ButtonTextureProvider { get; private set; } + + //render a controlling item + public void AnotherMain(IEnumerable items) + { + //Console.WriteLine("Render Button Itself"); + + GL.BindFrameBuffer(FrameBufferTarget.All, GlHandle.Zero); //GL.Assert(true); + GL.ClearColor(0.4f, TimePassed % 1.0f, 0f, 1.0f); //GL.Assert(true); + GL.Clear(MaskBufferBit.COLOR /**/| MaskBufferBit.DEPTH/**/); //GL.Assert(true); + + f_vao.Bind(0); //GL.Assert(true); + + foreach (PlainGeometryMesh mesh in items) + { + f_t.LoadTexture(0, mesh.TextureImage); + } + //GL.Assert(true); + + frameMainShader.Use(); //GL.Assert(true); + + GL.DrawElements(GeometryType.TRIANGLES, 6, TypeCode.UInt32, IntPtr.Zero); + //GL.Assert(true); + + //GL.DrawElements(GeometryType.LINES, 6, TypeCode.UInt32, IntPtr.Zero); + //BlueprintPipeline.SkipAll(output); + + SwapBuffers(); + } + + public void RenderButton(ButtonStatus status, float statusBegin, in TextureProvider provider) + { + provider.UpdateFromImage(i); + } + + internal static vec3d DefaultRotation(TimeSpanProvider provider, out float rotation) + { + rotation = provider.SpanLengthLowPrecession; + float angle = provider.CurrentSecond * 2; + return (new vec3d( + Scaler.Cos(angle), + Scaler.Sin(angle), + 0 + )) * provider.SpanLengthLowPrecession; + } protected override void CustomizeDeinit() { } - internal static vec3d DefaultRotation(TimeSpanProvider provider, out float rotation) - { - rotation = provider.SpanLengthLowPrecession * 2 * Scaler.Pi; - float angle = provider.CurrentSecond * 2 * Scaler.Pi; - return new vec3d( - Scaler.Cos(rotation), - Scaler.Sin(rotation), - 0 - ) * provider.SpanLengthLowPrecession; - } - - ShaderProgram frameMainShader; - protected override void CustomizeInit() { + //GL.ClearError(); + //GL.Assert(true); + buffer = new PlainInstancingBuffer(); for (int i = 0; i < 10; i++) { @@ -65,12 +146,14 @@ namespace StgSharp ((IInstancing)p).Scale = Scaler.MinOf(i, t) * 0.15f; ((IInstancing)p).Motion = new GeometryMotion( - true, this.timeProvider, + true, this._timeProvider, DefaultRotation) ; } } + //GL.Assert(true); + //SetSizeLimit(800, 800, 800, 800); s = CreateShaderProgram(); @@ -78,11 +161,15 @@ namespace StgSharp Shader pvs = CreateShaderSegment(ShaderType.Vertex, 2); Shader pfs = CreateShaderSegment(ShaderType.Fragment, 2); + //GL.Assert(true); pvs.Compile(0, Shader.FromCodeFile("Shader\\particle.vert")); + //GL.Assert(true); pvs.AttachTo(0, s); + //GL.Assert(true); pfs.Compile(0, Shader.FromCodeFile("Shader\\particle.frag")); pfs.AttachTo(0, s); s.Link(); + //GL.Assert(true); pvs.Compile(1, Shader.FromCodeFile("Shader\\fbo.vert")); pvs.AttachTo(1, frameMainShader); @@ -90,6 +177,7 @@ namespace StgSharp pfs.AttachTo(1, frameMainShader); frameMainShader.Link(); + //GL.Assert(true); vbo = CreateVertexBuffer(3); vao = CreateVertexArray(1); ebo = CreateElementBuffer(1); @@ -103,6 +191,7 @@ namespace StgSharp -0.05f, 0.05f ); + //GL.Assert(true); vao.Bind(0); vbo.WriteVectorData(0, rec.VertexStream, BufferUsage.StaticDraw); ebo.SetValue(0, rec.VertexIndices, BufferUsage.StaticDraw); @@ -141,97 +230,111 @@ namespace StgSharp GL.SetRenderBufferStorage( RenderBufferInternalFormat.Depth24_Stencil8, this.Size); - + //GL.Assert(true); t = CreateTexture(1); t.Bind2D(0); - /**/ GL.TextureImage2d(Texture2DTarget.Texture2D, 0, (int)ImageChannel.WithAlphaChannel, (uint)Width, (uint)Height, (int)ImageChannel.WithAlphaChannel, PixelChannelLayout.Byte, null); - /**/ t.Set2dWrapProperty(Wrap.Repeat, Wrap.Repeat); t.Set2dFilterProperty(Filter.Nearest, Filter.Nearest); - + //GL.Assert(true); GL.FrameBufferTexture2d(FrameBufferTarget.All, glAttachment.Color(0), Texture2DTarget.Texture2D, t[0], 0); - GL.CombineFrameBufferRenderBuffer(fbo[0], rbo[0]); + //GL.Assert(true); + GL.CombineFrameBufferRenderBuffer(FrameBufferAttachment.Stencil|FrameBufferAttachment.Depth, rbo[0]); + Console.WriteLine(GL.CheckFrameBufferStatus(FrameBufferTarget.All)); + + FrameBuffer.BindNull(); + + //GL.Assert(true); int streamLength = this.Width * this.Height * 4; byte[] imageStream = new byte[streamLength]; i = Image.FromMemory(this.Size, ImageChannel.WithAlphaChannel, imageStream); time = s.GetUniform("time"); - vec2d[] coordArray = { + vec2d[] buttonTextureCoordArray = { (0f, 1f), (1f, 1f), (1f, 0f), (0f, 0f) }; + ButtonBounding = new Rectangle( + -0.9f, 0.9f, + 0.9f, 0.9f, + 0.9f, -0.9f, + -0.9f, -0.9f + ); - buttonTextureProvider = new TextureProvider(i,coordArray); + //GL.Assert(true); + ButtonTextureProvider = new TextureProvider(i, buttonTextureCoordArray); + f_vao = CreateVertexArray(1); + f_vbo = CreateVertexBuffer(2); + f_ebo = CreateElementBuffer(1); + //GL.Assert(true); f_vao.Bind(0); f_ebo.Bind(0); - f_ebo.SetValue(0, rec.VertexIndices, BufferUsage.StaticDraw); + f_ebo.SetValue(0, ButtonBounding.VertexIndices, BufferUsage.StaticDraw); + //GL.Assert(true); f_vbo.Bind(0); - f_vbo.WriteVectorData(0, rec.VertexStream, BufferUsage.StaticDraw); + f_vbo.WriteVectorData(0, ButtonBounding.VertexStream, BufferUsage.StaticDraw); f_vao.SetVertexAttribute(0, 3, TypeCode.Single, false, 4 * sizeof(float), 0); + //GL.Assert(true); f_vbo.Bind(1); - f_vbo.WriteVectorData(1, coordArray, BufferUsage.StaticDraw); + f_vbo.WriteVectorData(1, buttonTextureCoordArray, BufferUsage.StaticDraw); f_vao.SetVertexAttribute(1, 3, TypeCode.Single, false, 4 * sizeof(float), 0); + //GL.Assert(true); + f_t = CreateTexture(1); + f_t.Bind2D(0); + f_t.Set2dWrapProperty(Wrap.Repeat, Wrap.Repeat); + f_t.Set2dFilterProperty(Filter.Nearest, Filter.Nearest); - t = CreateTexture(1); - t.Bind2D(0); - t.Set2dWrapProperty(Wrap.Repeat, Wrap.Repeat); - t.Set2dFilterProperty(Filter.Nearest, Filter.Nearest); - - t.ActivateAs(TextureUnit.Unit0); + //GL.Assert(true); + f_t.ActivateAs(TextureUnit.Unit1); + //GL.Assert(true); + frameMainShader.Use(); texUniform = frameMainShader.GetUniform("tex"); + //GL.Assert(true); GL.SetUniformValue(texUniform, 1); + //GL.Assert(true); + } - VertexBuffer f_vbo; - VertexArray f_vao; - ElementBuffer f_ebo; - Uniform texUniform; - - public void RenderButton(ButtonStatus status, float statusBegin, in TextureProvider provider) - { - provider.ReadImage(i); - } + TextureGL f_t; protected override void Main() { //GL.ClearError(); //Console.Clear(); - //Console.WriteLine($"{Width} {Height}"); buffer.UpdateAllParticles(); //Console.WriteLine(GL.CheckFrameBufferStatus(FrameBufferTarget.All)); - fbo.Bind(0); // Console.Write($"{GL.GetError()}\t"); - vao.Bind(0); // Console.Write($"{GL.GetError()}\t"); - t.Bind2D(0); // Console.Write($"{GL.GetError()}\t"); + fbo.Bind(0); //GL.Assert(true); + vao.Bind(0); //GL.Assert(true); + t.Bind2D(0); //GL.Assert(true); /**/ GL.TextureImage2d(Texture2DTarget.Texture2D, 0, (int)ImageChannel.WithAlphaChannel, (uint)Width, (uint)Height, (int)ImageChannel.WithAlphaChannel, PixelChannelLayout.Byte, new byte[1]); /**/ - //Console.Write($"{GL.GetError()}\t"); + //GL.Assert(true); GL.ClearColor((0.6f + TimePassed) % 1.0f, 0.1f, 0.3f, 1); GL.Clear(MaskBufferBit.COLOR | MaskBufferBit.DEPTH); - //Console.Write($"{GL.GetError()}\t"); + //GL.Assert(true); vbo.Bind(1); vbo.WriteVectorData(1, buffer.CoordAndRotationSpan, BufferUsage.StreamDraw); @@ -245,14 +348,14 @@ namespace StgSharp GeometryType.TRIANGLES, 6, TypeCode.UInt32, IntPtr.Zero, 100 ); //Console.WriteLine(TimePassed); - //Console.Write($"{GL.GetError()}\t"); + //GL.Assert(true); GL.WaitAccomplishment(); GL.BindVertexArray(GlHandle.Zero); /**/ - //Console.Write($"{GL.GetError()}\t"); + //GL.Assert(true); - ImageHelper.Resize(i, this.Width, this.Height, ImageMovement.Discard); + ImageHelper.Resize(i, Width, Height, ImageMovement.Discard); //GL.ClearError(); @@ -264,12 +367,12 @@ namespace StgSharp Console.Write($"{i.PixelBuffer[num]}\t"); } /**/ - //Console.Write($"{GL.GetError()}\t"); + //GL.Assert(true); //Array.Fill(i.PixelBuffer, 24); GL.BindFrameBuffer(FrameBufferTarget.All, GlHandle.Zero); - //Console.Write($"{GL.GetError()}\t"); + //GL.Assert(true); /**/ /* @@ -279,34 +382,5 @@ namespace StgSharp /**/ } - public void AnotherMain(IEnumerable items) - { - GL.BindFrameBuffer(FrameBufferTarget.All, GlHandle.Zero); //Console.Write($"{GL.GetError()}\t"); - GL.ClearColor(0.4f, TimePassed % 1.0f, 0f, 1.0f); //Console.Write($"{GL.GetError()}\t"); - GL.Clear(MaskBufferBit.COLOR /**/| MaskBufferBit.DEPTH/**/); //Console.Write($"{GL.GetError()}\t"); - - vao.Bind(0); //Console.Write($"{GL.GetError()}\t"); - - foreach (PlainGeometryMesh mesh in items) - { - t.LoadTexture(0, mesh.TextureImage); - } - //Console.Write($"{GL.GetError()}\t"); - - s.Use(); //Console.Write($"{GL.GetError()}\t"); - - - GL.DrawElements(GeometryType.TRIANGLES, 6, TypeCode.UInt32, IntPtr.Zero); - //Console.Write($"{GL.GetError()}\t"); - - //GL.DrawElements(GeometryType.LINES, 6, TypeCode.UInt32, IntPtr.Zero); - //BlueprintPipeline.SkipAll(output); - - SwapBuffers(); - } - - TextureProvider buttonTextureProvider; - - public override bool IsContextSharable => true; } } diff --git a/源代码/StgSharpDebug/Demo/View/Control.cs b/源代码/StgSharpDebug/Demo/View/Control.cs index 35f4f88a..e93ecdef 100644 --- a/源代码/StgSharpDebug/Demo/View/Control.cs +++ b/源代码/StgSharpDebug/Demo/View/Control.cs @@ -1,4 +1,5 @@ -using StgSharp.Controlling.UsrActivity; +using StgSharp.MVVM.View; +using StgSharp.Controlling.UsrActivity; using System; using System.Collections.Generic; @@ -7,19 +8,25 @@ using System.Text; using System.Threading.Tasks; namespace StgSharp -{ - public class Control : ViewResponder +{ + public partial class ViewMain { - - - public override void CustomizedInitialize(Func keyRegister) + protected class Control : ViewResponder { + public Control(ViewMain view):base(view) + { + + } - } + public override void CustomizedInitialize(Func keyRegister) + { + + } - public override bool ValidateInitializing() - { - throw new NotImplementedException(); + public override bool ValidateInitializing() + { + return true; + } } } } diff --git a/源代码/StgSharpDebug/Demo/View/Design.cs b/源代码/StgSharpDebug/Demo/View/Design.cs index 1ec904e6..d5427897 100644 --- a/源代码/StgSharpDebug/Demo/View/Design.cs +++ b/源代码/StgSharpDebug/Demo/View/Design.cs @@ -1,5 +1,6 @@ using StgSharp.Graphics; using StgSharp.Controlling; +using StgSharp.Controlling.UsrActivity; using System; using System.Collections.Generic; @@ -7,21 +8,45 @@ using System.Linq; using System.Text; using System.Threading.Tasks; using StgSharp.Controls; +using System.Text.RegularExpressions; +using System.Runtime.CompilerServices; +using StgSharp.Geometries; namespace StgSharp { - internal class Design : ViewDesigner + public partial class ViewMain { - DemoButtonGroup group; + internal DemoButtonGroup Group { get; set; } + internal TriggerButton OnlyButton { get; set; } - public override sealed void CustomizedInitialize() + internal class Design : ViewDesigner { - group = new DemoButtonGroup(); - } + public Design(ViewMain view):base(view) + { + + } - public override bool ValidateInitializing() - { - return true; + public override sealed void CustomizedInitialize() + { + Binding.Group = CreateKeyboardButtonGroup( + new KeyTrigger(KeyboardKey.LEFT,KeyStatus.PRESS), + new KeyTrigger(KeyboardKey.RIGHT, KeyStatus.PRESS), + new KeyTrigger(KeyboardKey.UP, KeyStatus.PRESS), + new KeyTrigger(KeyboardKey.DOWN, KeyStatus.PRESS), + new KeyTrigger(KeyboardKey.ENTER, KeyStatus.PRESS) + ); + Binding.OnlyButton = CreateKeyboardButton( + Binding.Stream.ButtonBounding, + Binding.Stream.ButtonTextureProvider, + true + ); + Binding.OnlyButton.RenderButtonTexture += Binding.Stream.RenderButton; + } + + public override bool ValidateInitializing() + { + return true; + } } } @@ -31,6 +56,5 @@ namespace StgSharp { return; } - } } diff --git a/源代码/StgSharpDebug/Demo/View/NewRender.cs b/源代码/StgSharpDebug/Demo/View/NewRender.cs new file mode 100644 index 00000000..f3ea8216 --- /dev/null +++ b/源代码/StgSharpDebug/Demo/View/NewRender.cs @@ -0,0 +1,34 @@ +using StgSharp.Graphics; + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace StgSharp +{ + public partial class ViewMain + { + public ParticleRenderStream Stream { get; set; } + + + private class NewRender : ViewRender + { + public NewRender(ViewMain view):base(view) + { + + } + + public override void CustomizedInitialize() + { + Binding.Stream = CreateRenderStream((1,1,1)); + } + + public override bool ValidateInitializing() + { + return Binding.Stream != null; + } + } + } +} diff --git a/源代码/StgSharpDebug/Demo/View/ViewMain.cs b/源代码/StgSharpDebug/Demo/View/ViewMain.cs index 01c0dc4f..67103445 100644 --- a/源代码/StgSharpDebug/Demo/View/ViewMain.cs +++ b/源代码/StgSharpDebug/Demo/View/ViewMain.cs @@ -1,7 +1,8 @@ using StgSharp.Graphics; using StgSharp.Logic; - -using StgSharpDebug.Logic; +using StgSharp.MVVM; +using StgSharp.MVVM.View; +using StgSharp.MVVM.ViewModel; using System; using System.Collections.Generic; @@ -11,30 +12,51 @@ using System.Threading.Tasks; namespace StgSharp { - public class ViewMain : View + public partial class ViewMain : ViewBase { - public DemoButtonGroup DemoGroup + public ViewMain() { - get; set; + _databindingIndexMap = new Dictionary(); } + Dictionary _databindingIndexMap; + public override void CustomizedInitialize(ViewModelBase viewModelBinding) { - Designer = new Design(); - Responder = new Control(); - Render = new Render(); + Designer = new Design(this); + Responder = new Control(this); + Render = new NewRender(this); - DemoGroup = new DemoButtonGroup(); + Render.Initialize(); + Designer.Initialize(); + Responder.Initialize(viewModelBinding.MethodLookup); } public override bool TryGetObjectReference(string name, out DataBindingEntry entry) { - throw new NotImplementedException(); + if (_databindingIndexMap.TryGetValue(name,out entry)) + { + return true; + } + try + { + entry = name switch + { + _ => default(DataBindingEntry), + }; + return !entry.ExactEqual(default(DataBindingEntry)); + } + catch (Exception) + { + entry = default(DataBindingEntry); + return false; + } } - internal protected override void Show() + protected internal override void Show() { - throw new NotImplementedException(); + Stream.Draw(); + Stream.AnotherMain(OnlyButton); } } } diff --git a/源代码/StgSharpDebug/Demo/ViewModelMain.cs b/源代码/StgSharpDebug/Demo/ViewModelMain.cs index 16b6b930..7e88f4d0 100644 --- a/源代码/StgSharpDebug/Demo/ViewModelMain.cs +++ b/源代码/StgSharpDebug/Demo/ViewModelMain.cs @@ -1,5 +1,7 @@ using StgSharp.Graphics; using StgSharp.Logic; +using StgSharp.MVVM.ViewModel; +using StgSharp.MVVM; using StgSharpDebug.Logic; diff --git a/源代码/StgSharpDebug/Shader/fbo.frag b/源代码/StgSharpDebug/Shader/fbo.frag index 4cbc169f..50cefd8b 100644 --- a/源代码/StgSharpDebug/Shader/fbo.frag +++ b/源代码/StgSharpDebug/Shader/fbo.frag @@ -9,5 +9,5 @@ uniform sampler2D tex; void main() { fragColor = texture(tex, texCoord.xy); - //fragColor = vec4(0.0f,0.0f,0.0f,0.0f); + //fragColor = vec4(0.099f,0.226f,0.335f,0.0f); } \ No newline at end of file diff --git a/源代码/StgSharpDebug/StgSharpDebug.csproj b/源代码/StgSharpDebug/StgSharpDebug.csproj index 7d6d4e93..e50d340c 100644 --- a/源代码/StgSharpDebug/StgSharpDebug.csproj +++ b/源代码/StgSharpDebug/StgSharpDebug.csproj @@ -22,43 +22,53 @@ - True + False + False True + False True + False True + False - True + False + False True + False True + False True + False True + False True + False diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.AssemblyInfo.cs b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.AssemblyInfo.cs index 0634eea6..8bbb9f1b 100644 --- a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.AssemblyInfo.cs +++ b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.AssemblyInfo.cs @@ -14,7 +14,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("StgSharpDebug")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+924fe6eef7b6b9441b297f211c82b4684f23d002")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+da75200347e2ff7f483c83ff224678d05b0aefd1")] [assembly: System.Reflection.AssemblyProductAttribute("StgSharpDebug")] [assembly: System.Reflection.AssemblyTitleAttribute("StgSharpDebug")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.sourcelink.json b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.sourcelink.json index 6fae4210..1d144cc4 100644 --- a/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.sourcelink.json +++ b/源代码/StgSharpDebug/obj/x64/Debug/net6.0/StgSharpDebug.sourcelink.json @@ -1 +1 @@ -{"documents":{"D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\*":"https://raw.githubusercontent.com/Nitload-NSI/CCD_Github/924fe6eef7b6b9441b297f211c82b4684f23d002/*"}} \ No newline at end of file +{"documents":{"D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\*":"https://raw.githubusercontent.com/Nitload-NSI/CCD_Github/da75200347e2ff7f483c83ff224678d05b0aefd1/*"}} \ No newline at end of file diff --git a/源代码/StgsharpEnvDebug/Program.cs b/源代码/StgsharpEnvDebug/Program.cs index 2454bd1f..e13774c2 100644 --- a/源代码/StgsharpEnvDebug/Program.cs +++ b/源代码/StgsharpEnvDebug/Program.cs @@ -26,7 +26,7 @@ namespace StgsharpEnvDebug } /* - public sealed class DemoForm : View + public sealed class DemoForm : ViewBase { } diff --git a/源代码/StgsharpEnvDebug/obj/Debug/net6.0/StgsharpEnvDebug.AssemblyInfo.cs b/源代码/StgsharpEnvDebug/obj/Debug/net6.0/StgsharpEnvDebug.AssemblyInfo.cs index 17aaf164..a06890ec 100644 --- a/源代码/StgsharpEnvDebug/obj/Debug/net6.0/StgsharpEnvDebug.AssemblyInfo.cs +++ b/源代码/StgsharpEnvDebug/obj/Debug/net6.0/StgsharpEnvDebug.AssemblyInfo.cs @@ -14,7 +14,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("StgsharpEnvDebug")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+924fe6eef7b6b9441b297f211c82b4684f23d002")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+da75200347e2ff7f483c83ff224678d05b0aefd1")] [assembly: System.Reflection.AssemblyProductAttribute("StgsharpEnvDebug")] [assembly: System.Reflection.AssemblyTitleAttribute("StgsharpEnvDebug")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]