├── .gitattributes
├── DirectX_Renderer - SharpDx
├── obj
│ └── Debug
│ │ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
│ │ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
│ │ ├── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
│ │ ├── CoreCompileInputs.cache
│ │ ├── DirectX_Renderer - SharpDx.exe
│ │ ├── DirectX_Renderer - SharpDx.pdb
│ │ ├── DirectX_Renderer.Overlay.resources
│ │ ├── DirectX_Renderer.Launcher.resources
│ │ ├── DesignTimeResolveAssemblyReferences.cache
│ │ ├── DirectX_Renderer.Overlay_SharpDX.resources
│ │ ├── DirectX_Renderer___SharpDx.Form1.resources
│ │ ├── DirectX_Renderer___SharpDx.Overlay.resources
│ │ ├── TempPE
│ │ └── Properties.Resources.Designer.cs.dll
│ │ ├── DesignTimeResolveAssemblyReferencesInput.cache
│ │ ├── DirectX_Renderer.Properties.Resources.resources
│ │ ├── DirectX_Renderer.csproj.GenerateResource.Cache
│ │ ├── DirectX_Renderer.Screen_Stream.Screen_Stream.resources
│ │ ├── DirectX_Renderer.csprojResolveAssemblyReference.cache
│ │ ├── DirectX_Renderer - SharpDx.csproj.GenerateResource.Cache
│ │ ├── DirectX_Renderer - SharpDx.csprojResolveAssemblyReference.cache
│ │ ├── DirectX_Renderer - SharpDx.csproj.FileListAbsolute.txt
│ │ └── DirectX_Renderer.csproj.FileListAbsolute.txt
├── bin
│ ├── Debug
│ │ ├── SharpDX.dll
│ │ ├── SharpDX.DXGI.dll
│ │ ├── SharpDX.Desktop.dll
│ │ ├── sprite_example.png
│ │ ├── SharpDX.Direct2D1.dll
│ │ ├── SharpDX.Direct3D11.dll
│ │ ├── SharpDX.Mathematics.dll
│ │ ├── DirectX_Renderer - SharpDx.exe
│ │ ├── DirectX_Renderer - SharpDx.pdb
│ │ ├── DirectX_Renderer - SharpDx.exe.config
│ │ └── SharpDX.Desktop.xml
│ └── Release
│ │ └── sprite_example.png
├── App.config
├── packages.config
├── Program.cs
├── Launcher.cs
├── Properties
│ ├── AssemblyInfo.cs
│ ├── Resources.Designer.cs
│ └── Resources.resx
├── External Overlay
│ ├── Overlay_SharpDX.Designer.cs
│ ├── Overlay_SharpDX.resx
│ └── Overlay_SharpDX.cs
├── Launcher.Designer.cs
├── Screen_Stream
│ ├── Screen_Stream.cs
│ ├── Screen_Stream.resx
│ ├── Screen_Stream.Designer.cs
│ └── Screen_capture.cs
├── Utilities.cs
├── DirectX_Renderer.csproj
└── Launcher.resx
├── _git_images
├── Overlay.png
└── Stream_Rd.png
├── .vs
└── DirectX_Renderer
│ └── v15
│ └── .suo
├── packages
├── SharpDX.4.0.1
│ ├── SharpDX.4.0.1.nupkg
│ └── lib
│ │ ├── net40
│ │ └── SharpDX.dll
│ │ ├── net45
│ │ └── SharpDX.dll
│ │ ├── uap10.0
│ │ ├── SharpDX.dll
│ │ └── SharpDX.pri
│ │ ├── netcoreapp1.0
│ │ └── SharpDX.dll
│ │ └── netstandard1.1
│ │ └── SharpDX.dll
├── SharpDX.DXGI.4.0.1
│ ├── SharpDX.DXGI.4.0.1.nupkg
│ └── lib
│ │ ├── net40
│ │ └── SharpDX.DXGI.dll
│ │ ├── net45
│ │ └── SharpDX.DXGI.dll
│ │ ├── uap10.0
│ │ ├── SharpDX.DXGI.dll
│ │ └── SharpDX.DXGI.pri
│ │ ├── netcoreapp1.0
│ │ └── SharpDX.DXGI.dll
│ │ └── netstandard1.1
│ │ └── SharpDX.DXGI.dll
├── SharpDX.Desktop.4.0.1
│ ├── SharpDX.Desktop.4.0.1.nupkg
│ └── lib
│ │ ├── net40
│ │ ├── SharpDX.Desktop.dll
│ │ └── SharpDX.Desktop.xml
│ │ └── net45
│ │ ├── SharpDX.Desktop.dll
│ │ └── SharpDX.Desktop.xml
├── SharpDX.Direct2D1.4.0.1
│ ├── SharpDX.Direct2D1.4.0.1.nupkg
│ └── lib
│ │ ├── net40
│ │ └── SharpDX.Direct2D1.dll
│ │ ├── net45
│ │ └── SharpDX.Direct2D1.dll
│ │ ├── uap10.0
│ │ ├── SharpDX.Direct2D1.dll
│ │ └── SharpDX.Direct2D1.pri
│ │ ├── netcoreapp1.0
│ │ └── SharpDX.Direct2D1.dll
│ │ └── netstandard1.1
│ │ └── SharpDX.Direct2D1.dll
├── SharpDX.Direct3D11.4.0.1
│ ├── SharpDX.Direct3D11.4.0.1.nupkg
│ └── lib
│ │ ├── net40
│ │ └── SharpDX.Direct3D11.dll
│ │ ├── net45
│ │ └── SharpDX.Direct3D11.dll
│ │ ├── uap10.0
│ │ ├── SharpDX.Direct3D11.dll
│ │ └── SharpDX.Direct3D11.pri
│ │ ├── netcoreapp1.0
│ │ └── SharpDX.Direct3D11.dll
│ │ └── netstandard1.1
│ │ └── SharpDX.Direct3D11.dll
└── SharpDX.Mathematics.4.0.1
│ ├── SharpDX.Mathematics.4.0.1.nupkg
│ └── lib
│ ├── net40
│ └── SharpDX.Mathematics.dll
│ ├── net45
│ └── SharpDX.Mathematics.dll
│ ├── uap10.0
│ ├── SharpDX.Mathematics.dll
│ └── SharpDX.Mathematics.pri
│ ├── netcoreapp1.0
│ └── SharpDX.Mathematics.dll
│ └── netstandard1.1
│ └── SharpDX.Mathematics.dll
├── DirectX_Renderer.sln
├── LICENSE
└── README.md
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 446ba3c8f2515e844a9402809ee85260b2d1b0ef
2 |
--------------------------------------------------------------------------------
/_git_images/Overlay.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/_git_images/Overlay.png
--------------------------------------------------------------------------------
/_git_images/Stream_Rd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/_git_images/Stream_Rd.png
--------------------------------------------------------------------------------
/.vs/DirectX_Renderer/v15/.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/.vs/DirectX_Renderer/v15/.suo
--------------------------------------------------------------------------------
/packages/SharpDX.4.0.1/SharpDX.4.0.1.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.4.0.1/SharpDX.4.0.1.nupkg
--------------------------------------------------------------------------------
/packages/SharpDX.4.0.1/lib/net40/SharpDX.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.4.0.1/lib/net40/SharpDX.dll
--------------------------------------------------------------------------------
/packages/SharpDX.4.0.1/lib/net45/SharpDX.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.4.0.1/lib/net45/SharpDX.dll
--------------------------------------------------------------------------------
/packages/SharpDX.4.0.1/lib/uap10.0/SharpDX.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.4.0.1/lib/uap10.0/SharpDX.dll
--------------------------------------------------------------------------------
/packages/SharpDX.4.0.1/lib/uap10.0/SharpDX.pri:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.4.0.1/lib/uap10.0/SharpDX.pri
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/bin/Debug/SharpDX.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/bin/Debug/SharpDX.dll
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/bin/Debug/SharpDX.DXGI.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/bin/Debug/SharpDX.DXGI.dll
--------------------------------------------------------------------------------
/packages/SharpDX.4.0.1/lib/netcoreapp1.0/SharpDX.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.4.0.1/lib/netcoreapp1.0/SharpDX.dll
--------------------------------------------------------------------------------
/packages/SharpDX.4.0.1/lib/netstandard1.1/SharpDX.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.4.0.1/lib/netstandard1.1/SharpDX.dll
--------------------------------------------------------------------------------
/packages/SharpDX.DXGI.4.0.1/SharpDX.DXGI.4.0.1.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.DXGI.4.0.1/SharpDX.DXGI.4.0.1.nupkg
--------------------------------------------------------------------------------
/packages/SharpDX.DXGI.4.0.1/lib/net40/SharpDX.DXGI.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.DXGI.4.0.1/lib/net40/SharpDX.DXGI.dll
--------------------------------------------------------------------------------
/packages/SharpDX.DXGI.4.0.1/lib/net45/SharpDX.DXGI.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.DXGI.4.0.1/lib/net45/SharpDX.DXGI.dll
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/bin/Debug/SharpDX.Desktop.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/bin/Debug/SharpDX.Desktop.dll
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/bin/Debug/sprite_example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/bin/Debug/sprite_example.png
--------------------------------------------------------------------------------
/packages/SharpDX.DXGI.4.0.1/lib/uap10.0/SharpDX.DXGI.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.DXGI.4.0.1/lib/uap10.0/SharpDX.DXGI.dll
--------------------------------------------------------------------------------
/packages/SharpDX.DXGI.4.0.1/lib/uap10.0/SharpDX.DXGI.pri:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.DXGI.4.0.1/lib/uap10.0/SharpDX.DXGI.pri
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/bin/Debug/SharpDX.Direct2D1.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/bin/Debug/SharpDX.Direct2D1.dll
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/bin/Debug/SharpDX.Direct3D11.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/bin/Debug/SharpDX.Direct3D11.dll
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/bin/Release/sprite_example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/bin/Release/sprite_example.png
--------------------------------------------------------------------------------
/packages/SharpDX.Desktop.4.0.1/SharpDX.Desktop.4.0.1.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Desktop.4.0.1/SharpDX.Desktop.4.0.1.nupkg
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/bin/Debug/SharpDX.Mathematics.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/bin/Debug/SharpDX.Mathematics.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Desktop.4.0.1/lib/net40/SharpDX.Desktop.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Desktop.4.0.1/lib/net40/SharpDX.Desktop.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Desktop.4.0.1/lib/net45/SharpDX.Desktop.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Desktop.4.0.1/lib/net45/SharpDX.Desktop.dll
--------------------------------------------------------------------------------
/packages/SharpDX.DXGI.4.0.1/lib/netcoreapp1.0/SharpDX.DXGI.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.DXGI.4.0.1/lib/netcoreapp1.0/SharpDX.DXGI.dll
--------------------------------------------------------------------------------
/packages/SharpDX.DXGI.4.0.1/lib/netstandard1.1/SharpDX.DXGI.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.DXGI.4.0.1/lib/netstandard1.1/SharpDX.DXGI.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Direct2D1.4.0.1/SharpDX.Direct2D1.4.0.1.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct2D1.4.0.1/SharpDX.Direct2D1.4.0.1.nupkg
--------------------------------------------------------------------------------
/packages/SharpDX.Direct2D1.4.0.1/lib/net40/SharpDX.Direct2D1.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct2D1.4.0.1/lib/net40/SharpDX.Direct2D1.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Direct2D1.4.0.1/lib/net45/SharpDX.Direct2D1.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct2D1.4.0.1/lib/net45/SharpDX.Direct2D1.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Direct3D11.4.0.1/SharpDX.Direct3D11.4.0.1.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct3D11.4.0.1/SharpDX.Direct3D11.4.0.1.nupkg
--------------------------------------------------------------------------------
/packages/SharpDX.Direct2D1.4.0.1/lib/uap10.0/SharpDX.Direct2D1.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct2D1.4.0.1/lib/uap10.0/SharpDX.Direct2D1.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Direct2D1.4.0.1/lib/uap10.0/SharpDX.Direct2D1.pri:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct2D1.4.0.1/lib/uap10.0/SharpDX.Direct2D1.pri
--------------------------------------------------------------------------------
/packages/SharpDX.Direct3D11.4.0.1/lib/net40/SharpDX.Direct3D11.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct3D11.4.0.1/lib/net40/SharpDX.Direct3D11.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Direct3D11.4.0.1/lib/net45/SharpDX.Direct3D11.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct3D11.4.0.1/lib/net45/SharpDX.Direct3D11.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Mathematics.4.0.1/SharpDX.Mathematics.4.0.1.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Mathematics.4.0.1/SharpDX.Mathematics.4.0.1.nupkg
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/bin/Debug/DirectX_Renderer - SharpDx.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/bin/Debug/DirectX_Renderer - SharpDx.exe
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/bin/Debug/DirectX_Renderer - SharpDx.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/bin/Debug/DirectX_Renderer - SharpDx.pdb
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer - SharpDx.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer - SharpDx.exe
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer - SharpDx.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer - SharpDx.pdb
--------------------------------------------------------------------------------
/packages/SharpDX.Direct3D11.4.0.1/lib/uap10.0/SharpDX.Direct3D11.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct3D11.4.0.1/lib/uap10.0/SharpDX.Direct3D11.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Direct3D11.4.0.1/lib/uap10.0/SharpDX.Direct3D11.pri:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct3D11.4.0.1/lib/uap10.0/SharpDX.Direct3D11.pri
--------------------------------------------------------------------------------
/packages/SharpDX.Mathematics.4.0.1/lib/net40/SharpDX.Mathematics.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Mathematics.4.0.1/lib/net40/SharpDX.Mathematics.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Mathematics.4.0.1/lib/net45/SharpDX.Mathematics.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Mathematics.4.0.1/lib/net45/SharpDX.Mathematics.dll
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.Overlay.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.Overlay.resources
--------------------------------------------------------------------------------
/packages/SharpDX.Mathematics.4.0.1/lib/uap10.0/SharpDX.Mathematics.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Mathematics.4.0.1/lib/uap10.0/SharpDX.Mathematics.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Mathematics.4.0.1/lib/uap10.0/SharpDX.Mathematics.pri:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Mathematics.4.0.1/lib/uap10.0/SharpDX.Mathematics.pri
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.Launcher.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.Launcher.resources
--------------------------------------------------------------------------------
/packages/SharpDX.Direct2D1.4.0.1/lib/netcoreapp1.0/SharpDX.Direct2D1.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct2D1.4.0.1/lib/netcoreapp1.0/SharpDX.Direct2D1.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Direct2D1.4.0.1/lib/netstandard1.1/SharpDX.Direct2D1.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct2D1.4.0.1/lib/netstandard1.1/SharpDX.Direct2D1.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Direct3D11.4.0.1/lib/netcoreapp1.0/SharpDX.Direct3D11.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct3D11.4.0.1/lib/netcoreapp1.0/SharpDX.Direct3D11.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Direct3D11.4.0.1/lib/netstandard1.1/SharpDX.Direct3D11.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Direct3D11.4.0.1/lib/netstandard1.1/SharpDX.Direct3D11.dll
--------------------------------------------------------------------------------
/packages/SharpDX.Mathematics.4.0.1/lib/netcoreapp1.0/SharpDX.Mathematics.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Mathematics.4.0.1/lib/netcoreapp1.0/SharpDX.Mathematics.dll
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DesignTimeResolveAssemblyReferences.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DesignTimeResolveAssemblyReferences.cache
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.Overlay_SharpDX.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.Overlay_SharpDX.resources
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer___SharpDx.Form1.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer___SharpDx.Form1.resources
--------------------------------------------------------------------------------
/packages/SharpDX.Mathematics.4.0.1/lib/netstandard1.1/SharpDX.Mathematics.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/packages/SharpDX.Mathematics.4.0.1/lib/netstandard1.1/SharpDX.Mathematics.dll
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer___SharpDx.Overlay.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer___SharpDx.Overlay.resources
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.Properties.Resources.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.Properties.Resources.resources
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.csproj.GenerateResource.Cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.csproj.GenerateResource.Cache
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.Screen_Stream.Screen_Stream.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.Screen_Stream.Screen_Stream.resources
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.csprojResolveAssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.csprojResolveAssemblyReference.cache
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer - SharpDx.csproj.GenerateResource.Cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer - SharpDx.csproj.GenerateResource.Cache
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer - SharpDx.csprojResolveAssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DoxCode/DirectX_Renderer/HEAD/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer - SharpDx.csprojResolveAssemblyReference.cache
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/bin/Debug/DirectX_Renderer - SharpDx.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/Program.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) 2016-2017 DirectX_Renderer - DoxCode - https://github.com/DoxCode
2 |
3 | using System;
4 | using System.Collections.Generic;
5 | using System.Diagnostics;
6 | using System.Linq;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 | using System.Windows.Forms;
10 |
11 |
12 | namespace DirectX_Renderer
13 | {
14 | class Program
15 | {
16 | static void Main(string[] args)
17 | {
18 | Application.EnableVisualStyles();
19 | Application.SetCompatibleTextRenderingDefault(false);
20 | Application.Run(new Launcher());
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/DirectX_Renderer.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 15
4 | VisualStudioVersion = 15.0.26430.15
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DirectX_Renderer", "DirectX_Renderer - SharpDx\DirectX_Renderer.csproj", "{336909FC-C009-4FA8-99DB-ECD354E6138C}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {336909FC-C009-4FA8-99DB-ECD354E6138C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {336909FC-C009-4FA8-99DB-ECD354E6138C}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {336909FC-C009-4FA8-99DB-ECD354E6138C}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {336909FC-C009-4FA8-99DB-ECD354E6138C}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | EndGlobal
23 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2017 DoxCode
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/Launcher.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) 2016-2017 DirectX_Renderer - DoxCode - https://github.com/DoxCode
2 |
3 | using System;
4 | using System.Collections.Generic;
5 | using System.ComponentModel;
6 | using System.Data;
7 | using System.Drawing;
8 | using System.Linq;
9 | using System.Text;
10 | using System.Threading.Tasks;
11 | using System.Windows.Forms;
12 |
13 | namespace DirectX_Renderer
14 | {
15 | public partial class Launcher : Form
16 | {
17 | private Overlay_SharpDX overlayWindow = null;
18 |
19 | public Launcher()
20 | {
21 | InitializeComponent();
22 | }
23 |
24 | private void overlay_launcher_Click(object sender, EventArgs e)
25 | {
26 | if (overlayWindow != null)
27 | {
28 | overlayWindow.Close();
29 | overlayWindow = null;
30 | }
31 | else
32 | {
33 | overlayWindow = new Overlay_SharpDX();
34 | overlayWindow.Show();
35 | }
36 |
37 | }
38 |
39 | private void btn_screen_stream_Click(object sender, EventArgs e)
40 | {
41 | Screen_Stream.Screen_Stream window = new Screen_Stream.Screen_Stream();
42 | window.Show();
43 |
44 | }
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // La información general de un ensamblado se controla mediante el siguiente
6 | // conjunto de atributos. Cambie estos valores de atributo para modificar la información
7 | // asociada con un ensamblado.
8 | [assembly: AssemblyTitle("DirectX_Renderer - SharpDx")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("DirectX_Renderer - SharpDx")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Si establece ComVisible en false, los tipos de este ensamblado no estarán visibles
18 | // para los componentes COM. Si es necesario obtener acceso a un tipo en este ensamblado desde
19 | // COM, establezca el atributo ComVisible en true en este tipo.
20 | [assembly: ComVisible(false)]
21 |
22 | // El siguiente GUID sirve como id. de typelib si este proyecto se expone a COM.
23 | [assembly: Guid("336909fc-c009-4fa8-99db-ecd354e6138c")]
24 |
25 | // La información de versión de un ensamblado consta de los cuatro valores siguientes:
26 | //
27 | // Versión principal
28 | // Versión secundaria
29 | // Número de compilación
30 | // Revisión
31 | //
32 | // Puede especificar todos los valores o utilizar los números de compilación y de revisión predeterminados
33 | // mediante el carácter '*', como se muestra a continuación:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # DirectX Renderer
2 |
3 | ## Introduction
4 |
5 | DirectX Renderer is a series of programs in .NET using SharpDX, wrapper of the DirectX API (native C++),
6 | designed to help with functions like Overlay text non-hooked, quickly image capture and other hooked options.
7 |
8 | ## Overlay (Non-Hooked method)
9 | Some times you might need a method to write over the screen without using hooks, for example to skip a VAC of a game, because hooks may become detectable in the future, so a solution is an external solution.
10 |
11 | How works?
12 | The overlay is a hidden transparent windows renderer on the top, allowing interact with other windows, this form is invisible, don't appear in Alt-tab window or taskbar. You can use a basic windows-form objects or draw direct using DirectX functions.
13 |
14 | Tested on Windows 7 (64bits) / Windows 10 (64 bits)
15 |
16 | Example Overlay Text and Image:
17 |
18 | 
19 |
20 | ## Screen Capture - Stream Screen
21 | Can capture the screen using DirectX technology, this program can render ~70 photos per second (fps) with native quality.
22 |
23 | Very useful for example to processing data stream in the screen, searching patterns, automation, pixelHacking etc... or for desktop recorder programs (I don't recommend this last, I'm sure exist better alternatives).
24 |
25 | In this example the program update the image of a PictureBox to show the average fps and ms that took.
26 |
27 | 
28 |
29 | ## License
30 | License under MIT License.
31 |
32 | 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:
33 |
34 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
35 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer - SharpDx.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\DirectX_Renderer - SharpDx.exe.config
2 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\DirectX_Renderer - SharpDx.exe
3 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\DirectX_Renderer - SharpDx.pdb
4 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Desktop.dll
5 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Direct2D1.dll
6 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Direct3D11.dll
7 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.dll
8 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.DXGI.dll
9 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Mathematics.dll
10 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.xml
11 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Desktop.xml
12 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Direct2D1.xml
13 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Direct3D11.xml
14 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.DXGI.xml
15 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Mathematics.xml
16 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer - SharpDx.csprojResolveAssemblyReference.cache
17 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer - SharpDx.exe
18 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer - SharpDx.pdb
19 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer___SharpDx.Overlay.resources
20 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer - SharpDx.csproj.GenerateResource.Cache
21 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\Microsoft.DirectX.Direct3D.dll
22 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\Microsoft.DirectX.dll
23 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\Microsoft.DirectX.xml
24 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\Microsoft.DirectX.Direct3D.xml
25 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/External Overlay/Overlay_SharpDX.Designer.cs:
--------------------------------------------------------------------------------
1 | namespace DirectX_Renderer
2 | {
3 | partial class Overlay_SharpDX
4 | {
5 | ///
6 | /// Required designer variable.
7 | ///
8 | private System.ComponentModel.IContainer components = null;
9 |
10 | ///
11 | /// Clean up any resources being used.
12 | ///
13 | /// true if managed resources should be disposed; otherwise, false.
14 | protected override void Dispose(bool disposing)
15 | {
16 | if (disposing && (components != null))
17 | {
18 | components.Dispose();
19 | }
20 | base.Dispose(disposing);
21 | }
22 |
23 | #region Windows Form Designer generated code
24 |
25 | ///
26 | /// Required method for Designer support - do not modify
27 | /// the contents of this method with the code editor.
28 | ///
29 | private void InitializeComponent()
30 | {
31 | this.label1 = new System.Windows.Forms.Label();
32 | this.SuspendLayout();
33 | //
34 | // label1
35 | //
36 | this.label1.AutoSize = true;
37 | this.label1.BackColor = System.Drawing.Color.Transparent;
38 | this.label1.Dock = System.Windows.Forms.DockStyle.Top;
39 | this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
40 | this.label1.ForeColor = System.Drawing.Color.Yellow;
41 | this.label1.Location = new System.Drawing.Point(0, 0);
42 | this.label1.Name = "label1";
43 | this.label1.Size = new System.Drawing.Size(487, 24);
44 | this.label1.TabIndex = 0;
45 | this.label1.Text = "Overlay text using a basic label of Windows Form...";
46 | //
47 | // Overlay_SharpDX
48 | //
49 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
50 | this.BackColor = System.Drawing.Color.Black;
51 | this.ClientSize = new System.Drawing.Size(820, 425);
52 | this.Controls.Add(this.label1);
53 | this.DoubleBuffered = true;
54 | this.ForeColor = System.Drawing.SystemColors.ControlText;
55 | this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
56 | this.Name = "Overlay_SharpDX";
57 | this.ShowIcon = false;
58 | this.ShowInTaskbar = false;
59 | this.Text = "Overlay";
60 | this.TopMost = true;
61 | this.TransparencyKey = System.Drawing.Color.Black;
62 | this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
63 | this.Load += new System.EventHandler(this.Overlay_SharpDX_Load);
64 | this.ResumeLayout(false);
65 | this.PerformLayout();
66 |
67 | }
68 |
69 | #endregion
70 |
71 | private System.Windows.Forms.Label label1;
72 | }
73 | }
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/Properties/Resources.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // Este código fue generado por una herramienta.
4 | // Versión de runtime:4.0.30319.42000
5 | //
6 | // Los cambios en este archivo podrían causar un comportamiento incorrecto y se perderán si
7 | // se vuelve a generar el código.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace DirectX_Renderer.Properties {
12 | using System;
13 |
14 |
15 | ///
16 | /// Clase de recurso fuertemente tipado, para buscar cadenas traducidas, etc.
17 | ///
18 | // StronglyTypedResourceBuilder generó automáticamente esta clase
19 | // a través de una herramienta como ResGen o Visual Studio.
20 | // Para agregar o quitar un miembro, edite el archivo .ResX y, a continuación, vuelva a ejecutar ResGen
21 | // con la opción /str o recompile su proyecto de VS.
22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
25 | internal class Resources {
26 |
27 | private static global::System.Resources.ResourceManager resourceMan;
28 |
29 | private static global::System.Globalization.CultureInfo resourceCulture;
30 |
31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
32 | internal Resources() {
33 | }
34 |
35 | ///
36 | /// Devuelve la instancia de ResourceManager almacenada en caché utilizada por esta clase.
37 | ///
38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
39 | internal static global::System.Resources.ResourceManager ResourceManager {
40 | get {
41 | if (object.ReferenceEquals(resourceMan, null)) {
42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("DirectX_Renderer.Properties.Resources", typeof(Resources).Assembly);
43 | resourceMan = temp;
44 | }
45 | return resourceMan;
46 | }
47 | }
48 |
49 | ///
50 | /// Reemplaza la propiedad CurrentUICulture del subproceso actual para todas las
51 | /// búsquedas de recursos mediante esta clase de recurso fuertemente tipado.
52 | ///
53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
54 | internal static global::System.Globalization.CultureInfo Culture {
55 | get {
56 | return resourceCulture;
57 | }
58 | set {
59 | resourceCulture = value;
60 | }
61 | }
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/Launcher.Designer.cs:
--------------------------------------------------------------------------------
1 | namespace DirectX_Renderer
2 | {
3 | partial class Launcher
4 | {
5 | ///
6 | /// Required designer variable.
7 | ///
8 | private System.ComponentModel.IContainer components = null;
9 |
10 | ///
11 | /// Clean up any resources being used.
12 | ///
13 | /// true if managed resources should be disposed; otherwise, false.
14 | protected override void Dispose(bool disposing)
15 | {
16 | if (disposing && (components != null))
17 | {
18 | components.Dispose();
19 | }
20 | base.Dispose(disposing);
21 | }
22 |
23 | #region Windows Form Designer generated code
24 |
25 | ///
26 | /// Required method for Designer support - do not modify
27 | /// the contents of this method with the code editor.
28 | ///
29 | private void InitializeComponent()
30 | {
31 | this.overlay_launcher = new System.Windows.Forms.Button();
32 | this.btn_screen_stream = new System.Windows.Forms.Button();
33 | this.SuspendLayout();
34 | //
35 | // overlay_launcher
36 | //
37 | this.overlay_launcher.Location = new System.Drawing.Point(12, 12);
38 | this.overlay_launcher.Name = "overlay_launcher";
39 | this.overlay_launcher.Size = new System.Drawing.Size(153, 45);
40 | this.overlay_launcher.TabIndex = 0;
41 | this.overlay_launcher.Text = "Overlay Screen SharpDX";
42 | this.overlay_launcher.UseVisualStyleBackColor = true;
43 | this.overlay_launcher.Click += new System.EventHandler(this.overlay_launcher_Click);
44 | //
45 | // btn_screen_stream
46 | //
47 | this.btn_screen_stream.Location = new System.Drawing.Point(171, 12);
48 | this.btn_screen_stream.Name = "btn_screen_stream";
49 | this.btn_screen_stream.Size = new System.Drawing.Size(153, 45);
50 | this.btn_screen_stream.TabIndex = 1;
51 | this.btn_screen_stream.Text = "Screen Stream";
52 | this.btn_screen_stream.UseVisualStyleBackColor = true;
53 | this.btn_screen_stream.Click += new System.EventHandler(this.btn_screen_stream_Click);
54 | //
55 | // Launcher
56 | //
57 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
58 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
59 | this.ClientSize = new System.Drawing.Size(442, 166);
60 | this.Controls.Add(this.btn_screen_stream);
61 | this.Controls.Add(this.overlay_launcher);
62 | this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
63 | this.MaximizeBox = false;
64 | this.MinimizeBox = false;
65 | this.Name = "Launcher";
66 | this.ShowIcon = false;
67 | this.Text = "Launcher";
68 | this.ResumeLayout(false);
69 |
70 | }
71 |
72 | #endregion
73 |
74 | private System.Windows.Forms.Button overlay_launcher;
75 | private System.Windows.Forms.Button btn_screen_stream;
76 | }
77 | }
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/Screen_Stream/Screen_Stream.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) 2016-2017 DirectX_Renderer - DoxCode - https://github.com/DoxCode
2 | //
3 | // Used as a test.
4 | //
5 | // Update the images captured for Screen_capture in a PictureBox to show the average fps and ms that took.
6 | //
7 |
8 |
9 | using System;
10 | using System.Collections.Generic;
11 | using System.ComponentModel;
12 | using System.Data;
13 | using System.Drawing;
14 | using System.IO;
15 | using System.Linq;
16 | using System.Text;
17 | using System.Threading;
18 | using System.Threading.Tasks;
19 | using System.Windows.Forms;
20 |
21 | namespace DirectX_Renderer.Screen_Stream
22 | {
23 | public partial class Screen_Stream : Form
24 | {
25 | private Screen_capture screen_capture = null;
26 |
27 | public Screen_Stream()
28 | {
29 | InitializeComponent();
30 | }
31 |
32 | private bool isStreaming = false;
33 | private void btn_stream_Click(object sender, EventArgs e)
34 | {
35 | if(isStreaming)
36 | {
37 | btn_stream.Text = "Stream Desktop";
38 |
39 | if (screen_capture != null)
40 | {
41 | screen_capture.Stop();
42 | screen_capture = null;
43 | }
44 | }
45 | else
46 | {
47 | if (screen_capture != null)
48 | return;
49 |
50 | btn_stream.Text = "Stop Stream";
51 |
52 | screen_capture = new Screen_capture(this);
53 | screen_capture.ScreenRefreshed += (_sender, data) =>
54 | {
55 | UpdateFrame(data);
56 | };
57 | screen_capture.Start();
58 |
59 | Thread thread = new Thread(() => calculate_average());
60 | thread.SetApartmentState(ApartmentState.STA);
61 | thread.Start();
62 |
63 | }
64 | isStreaming = !isStreaming;
65 | }
66 |
67 | public List last_times = new List();
68 | private void UpdateFrame(Bitmap data)
69 | {
70 | //Ofc, is not optimised.
71 | //Could generate OperationException.
72 | stream_box.Image = data;
73 | }
74 |
75 | ///
76 | /// Calculate the time wasted creating a Bitmap and the number of frames per second.
77 | ///
78 | private void calculate_average()
79 | {
80 | Thread.Sleep(100);
81 | while (isStreaming)
82 | {
83 | Thread.Sleep(500);
84 | try
85 | {
86 | long val = 0;
87 | foreach (long l in last_times)
88 | {
89 | val += l;
90 | }
91 |
92 | val = val / last_times.Count;
93 | long fps = (long)(1000/val) ;
94 |
95 | this.Invoke((MethodInvoker)delegate ()
96 | {
97 | _average_label.Text = val.ToString() + " ms";
98 | _fps_label.Text = fps + " fps";
99 | });
100 |
101 | if (last_times.Count > 300)
102 | {
103 | int range = last_times.Count - 300;
104 | last_times.RemoveRange(0, range);
105 | }
106 | }
107 | catch(Exception e)
108 | { }
109 | }
110 | }
111 |
112 |
113 | private void Screen_Stream_FormClosing(object sender, FormClosingEventArgs e)
114 | {
115 | isStreaming = false;
116 | if (screen_capture != null)
117 | {
118 | screen_capture.Stop();
119 | screen_capture = null;
120 | }
121 | }
122 | }
123 | }
124 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/Utilities.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) 2016-2017 DirectX_Renderer - DoxCode - https://github.com/DoxCode
2 | //
3 | //
4 | // This program use SHARPDX as wrapper of the DirectX API.
5 | // Used version 4.01, of:
6 | //
7 | // SharpDX, SharpDX.Desktop, SharpDX.Direct2D1, SharpDX.Direct3D11, SharpDX.DXGI, SharpDX.Mathematics
8 | //
9 | // SharpDX is Nugget ready.
10 | //
11 | // Copyright (c) 2010-2013 SharpDX - Alexandre Mutel
12 | // Permission is hereby granted, free of charge, to any person obtaining a copy
13 | // of this software and associated documentation files (the "Software"), to deal
14 | // in the Software without restriction, including without limitation the rights
15 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
16 | // copies of the Software, and to permit persons to whom the Software is
17 | // furnished to do so, subject to the following conditions:
18 | //
19 | // The above copyright notice and this permission notice shall be included in
20 | // all copies or substantial portions of the Software.
21 | //
22 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
23 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
25 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
27 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
28 | using SharpDX;
29 | using SharpDX.Direct2D1;
30 | using SharpDX.DXGI;
31 |
32 | using System;
33 | using System.Collections.Generic;
34 | using System.Drawing.Imaging;
35 | //using System.Drawing;
36 | using System.Linq;
37 | using System.Runtime.InteropServices;
38 | using System.Text;
39 | using System.Threading.Tasks;
40 | using System.Windows.Forms;
41 |
42 | namespace DirectX_Renderer
43 | {
44 | class Utilities
45 | {
46 |
47 | public static System.Drawing.Rectangle GetScreen(Control referenceControl)
48 | {
49 | return Screen.FromControl(referenceControl).Bounds;
50 | }
51 |
52 | public static Bitmap LoadFromFile(RenderTarget renderTarget, string file)
53 | {
54 | // Loads from file using System.Drawing.Image
55 | using (var bitmap = (System.Drawing.Bitmap)System.Drawing.Image.FromFile(file))
56 | {
57 | var sourceArea = new System.Drawing.Rectangle(0, 0, bitmap.Width, bitmap.Height);
58 | var bitmapProperties = new BitmapProperties(new SharpDX.Direct2D1.PixelFormat(Format.R8G8B8A8_UNorm, SharpDX.Direct2D1.AlphaMode.Premultiplied));
59 | var size = new Size2(bitmap.Width, bitmap.Height);
60 |
61 | // Transform pixels from BGRA to RGBA
62 | int stride = bitmap.Width * sizeof(int);
63 | using (var tempStream = new DataStream(bitmap.Height * stride, true, true))
64 | {
65 | // Lock System.Drawing.Bitmap
66 | var bitmapData = bitmap.LockBits(sourceArea, ImageLockMode.ReadOnly, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
67 |
68 | // Convert all pixels
69 | for (int y = 0; y < bitmap.Height; y++)
70 | {
71 | int offset = bitmapData.Stride * y;
72 | for (int x = 0; x < bitmap.Width; x++)
73 | {
74 | // Not optimized
75 | byte B = Marshal.ReadByte(bitmapData.Scan0, offset++);
76 | byte G = Marshal.ReadByte(bitmapData.Scan0, offset++);
77 | byte R = Marshal.ReadByte(bitmapData.Scan0, offset++);
78 | byte A = Marshal.ReadByte(bitmapData.Scan0, offset++);
79 | int rgba = R | (G << 8) | (B << 16) | (A << 24);
80 | tempStream.Write(rgba);
81 | }
82 |
83 | }
84 | bitmap.UnlockBits(bitmapData);
85 | tempStream.Position = 0;
86 |
87 | return new Bitmap(renderTarget, size, tempStream, stride, bitmapProperties);
88 | }
89 | }
90 | }
91 |
92 | }
93 | }
94 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/obj/Debug/DirectX_Renderer.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer.Overlay.resources
2 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer.csproj.GenerateResource.Cache
3 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer - SharpDx.exe
4 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer - SharpDx.pdb
5 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\DirectX_Renderer - SharpDx.exe.config
6 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\DirectX_Renderer - SharpDx.exe
7 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\DirectX_Renderer - SharpDx.pdb
8 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\Microsoft.DirectX.Direct3D.dll
9 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\Microsoft.DirectX.dll
10 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Desktop.dll
11 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Direct2D1.dll
12 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Direct3D11.dll
13 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.dll
14 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.DXGI.dll
15 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Mathematics.dll
16 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\Microsoft.DirectX.xml
17 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\Microsoft.DirectX.Direct3D.xml
18 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.xml
19 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Desktop.xml
20 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Direct2D1.xml
21 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Direct3D11.xml
22 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.DXGI.xml
23 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Mathematics.xml
24 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer.csprojResolveAssemblyReference.cache
25 | D:\Dox\Creacion\VB\DirectX_Renderer - SharpDx\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer___SharpDx.Form1.resources
26 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer.csprojResolveAssemblyReference.cache
27 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer.csproj.GenerateResource.Cache
28 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer - SharpDx.exe
29 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer - SharpDx.pdb
30 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\DirectX_Renderer - SharpDx.exe.config
31 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\DirectX_Renderer - SharpDx.exe
32 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\DirectX_Renderer - SharpDx.pdb
33 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Desktop.dll
34 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Direct2D1.dll
35 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Direct3D11.dll
36 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.dll
37 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.DXGI.dll
38 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Mathematics.dll
39 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.xml
40 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Desktop.xml
41 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Direct2D1.xml
42 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Direct3D11.xml
43 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.DXGI.xml
44 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\bin\Debug\SharpDX.Mathematics.xml
45 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer.Launcher.resources
46 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer.Overlay_SharpDX.resources
47 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer.Properties.Resources.resources
48 | D:\Dox\Creacion\VB\DirectX_Renderer\DirectX_Renderer - SharpDx\obj\Debug\DirectX_Renderer.Screen_Stream.Screen_Stream.resources
49 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/DirectX_Renderer.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {336909FC-C009-4FA8-99DB-ECD354E6138C}
8 | WinExe
9 | DirectX_Renderer
10 | DirectX_Renderer - SharpDx
11 | v4.5.2
12 | 512
13 | true
14 |
15 |
16 | AnyCPU
17 | true
18 | full
19 | false
20 | bin\Debug\
21 | DEBUG;TRACE
22 | prompt
23 | 4
24 |
25 |
26 | AnyCPU
27 | pdbonly
28 | true
29 | bin\Release\
30 | TRACE
31 | prompt
32 | 4
33 |
34 |
35 | DirectX_Renderer.Program
36 |
37 |
38 |
39 | ..\packages\SharpDX.4.0.1\lib\net45\SharpDX.dll
40 |
41 |
42 | ..\packages\SharpDX.Desktop.4.0.1\lib\net45\SharpDX.Desktop.dll
43 |
44 |
45 | ..\packages\SharpDX.Direct2D1.4.0.1\lib\net45\SharpDX.Direct2D1.dll
46 |
47 |
48 | ..\packages\SharpDX.Direct3D11.4.0.1\lib\net45\SharpDX.Direct3D11.dll
49 |
50 |
51 | ..\packages\SharpDX.DXGI.4.0.1\lib\net45\SharpDX.DXGI.dll
52 |
53 |
54 | ..\packages\SharpDX.Mathematics.4.0.1\lib\net45\SharpDX.Mathematics.dll
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 | Form
70 |
71 |
72 | Launcher.cs
73 |
74 |
75 | Form
76 |
77 |
78 | Overlay_SharpDX.cs
79 |
80 |
81 |
82 |
83 | True
84 | True
85 | Resources.resx
86 |
87 |
88 |
89 | Form
90 |
91 |
92 | Screen_Stream.cs
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 | Launcher.cs
103 |
104 |
105 | Overlay_SharpDX.cs
106 |
107 |
108 | ResXFileCodeGenerator
109 | Resources.Designer.cs
110 | Designer
111 |
112 |
113 | Screen_Stream.cs
114 |
115 |
116 |
117 |
118 |
119 |
120 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/Launcher.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/External Overlay/Overlay_SharpDX.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/Properties/Resources.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
121 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/Screen_Stream/Screen_Stream.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
121 | 17, 17
122 |
123 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/Screen_Stream/Screen_Stream.Designer.cs:
--------------------------------------------------------------------------------
1 | namespace DirectX_Renderer.Screen_Stream
2 | {
3 | partial class Screen_Stream
4 | {
5 | ///
6 | /// Required designer variable.
7 | ///
8 | private System.ComponentModel.IContainer components = null;
9 |
10 | ///
11 | /// Clean up any resources being used.
12 | ///
13 | /// true if managed resources should be disposed; otherwise, false.
14 | protected override void Dispose(bool disposing)
15 | {
16 | if (disposing && (components != null))
17 | {
18 | components.Dispose();
19 | }
20 | base.Dispose(disposing);
21 | }
22 |
23 | #region Windows Form Designer generated code
24 |
25 | ///
26 | /// Required method for Designer support - do not modify
27 | /// the contents of this method with the code editor.
28 | ///
29 | private void InitializeComponent()
30 | {
31 | this.components = new System.ComponentModel.Container();
32 | this.stream_box = new System.Windows.Forms.PictureBox();
33 | this.btn_stream = new System.Windows.Forms.Button();
34 | this.label1 = new System.Windows.Forms.Label();
35 | this._average_label = new System.Windows.Forms.Label();
36 | this.timer1 = new System.Windows.Forms.Timer(this.components);
37 | this.panel1 = new System.Windows.Forms.Panel();
38 | this._fps_label = new System.Windows.Forms.Label();
39 | ((System.ComponentModel.ISupportInitialize)(this.stream_box)).BeginInit();
40 | this.panel1.SuspendLayout();
41 | this.SuspendLayout();
42 | //
43 | // stream_box
44 | //
45 | this.stream_box.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
46 | | System.Windows.Forms.AnchorStyles.Left)
47 | | System.Windows.Forms.AnchorStyles.Right)));
48 | this.stream_box.BackColor = System.Drawing.SystemColors.ControlDarkDark;
49 | this.stream_box.Location = new System.Drawing.Point(12, 12);
50 | this.stream_box.Name = "stream_box";
51 | this.stream_box.Size = new System.Drawing.Size(652, 336);
52 | this.stream_box.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
53 | this.stream_box.TabIndex = 0;
54 | this.stream_box.TabStop = false;
55 | //
56 | // btn_stream
57 | //
58 | this.btn_stream.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
59 | this.btn_stream.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
60 | this.btn_stream.Location = new System.Drawing.Point(529, 354);
61 | this.btn_stream.Name = "btn_stream";
62 | this.btn_stream.Size = new System.Drawing.Size(135, 49);
63 | this.btn_stream.TabIndex = 1;
64 | this.btn_stream.Text = "Stream Desktop";
65 | this.btn_stream.UseVisualStyleBackColor = true;
66 | this.btn_stream.Click += new System.EventHandler(this.btn_stream_Click);
67 | //
68 | // label1
69 | //
70 | this.label1.AutoSize = true;
71 | this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
72 | this.label1.Location = new System.Drawing.Point(7, 17);
73 | this.label1.Name = "label1";
74 | this.label1.Size = new System.Drawing.Size(71, 16);
75 | this.label1.TabIndex = 2;
76 | this.label1.Text = "Average:";
77 | //
78 | // _average_label
79 | //
80 | this._average_label.AutoSize = true;
81 | this._average_label.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
82 | this._average_label.ForeColor = System.Drawing.Color.YellowGreen;
83 | this._average_label.Location = new System.Drawing.Point(139, 17);
84 | this._average_label.Name = "_average_label";
85 | this._average_label.Size = new System.Drawing.Size(48, 16);
86 | this._average_label.TabIndex = 3;
87 | this._average_label.Text = "00 ms";
88 | //
89 | // panel1
90 | //
91 | this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
92 | this.panel1.Controls.Add(this._fps_label);
93 | this.panel1.Controls.Add(this._average_label);
94 | this.panel1.Controls.Add(this.label1);
95 | this.panel1.Location = new System.Drawing.Point(12, 354);
96 | this.panel1.Name = "panel1";
97 | this.panel1.Size = new System.Drawing.Size(266, 48);
98 | this.panel1.TabIndex = 4;
99 | //
100 | // _fps_label
101 | //
102 | this._fps_label.AutoSize = true;
103 | this._fps_label.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
104 | this._fps_label.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
105 | this._fps_label.Location = new System.Drawing.Point(84, 17);
106 | this._fps_label.Name = "_fps_label";
107 | this._fps_label.Size = new System.Drawing.Size(49, 16);
108 | this._fps_label.TabIndex = 4;
109 | this._fps_label.Text = "00 fps";
110 | //
111 | // Screen_Stream
112 | //
113 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
114 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
115 | this.ClientSize = new System.Drawing.Size(677, 415);
116 | this.Controls.Add(this.panel1);
117 | this.Controls.Add(this.btn_stream);
118 | this.Controls.Add(this.stream_box);
119 | this.Name = "Screen_Stream";
120 | this.Text = "Screen_Stream";
121 | this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Screen_Stream_FormClosing);
122 | ((System.ComponentModel.ISupportInitialize)(this.stream_box)).EndInit();
123 | this.panel1.ResumeLayout(false);
124 | this.panel1.PerformLayout();
125 | this.ResumeLayout(false);
126 |
127 | }
128 |
129 | #endregion
130 |
131 | private System.Windows.Forms.PictureBox stream_box;
132 | private System.Windows.Forms.Button btn_stream;
133 | private System.Windows.Forms.Label label1;
134 | private System.Windows.Forms.Label _average_label;
135 | private System.Windows.Forms.Timer timer1;
136 | private System.Windows.Forms.Panel panel1;
137 | private System.Windows.Forms.Label _fps_label;
138 | }
139 | }
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/Screen_Stream/Screen_capture.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) 2016-2017 DirectX_Renderer - DoxCode - https://github.com/DoxCode
2 | //
3 | // Screen_capture capture the screen using DirectX technology, this program can render ~70 photos per second (fps) with native quality.
4 | //
5 | // Very useful for example to processing data stream in the screen,
6 | // searching patterns, automation, pixelHacking etc... or for desktop recorder programs (I don't recommend this last, I'm sure exist best alternatives).
7 | //
8 | // Using:
9 | // SharpDX, SharpDX.Direct3D11, SharpDX.DXGI
10 | //
11 | // Copyright (c) 2010-2013 SharpDX - Alexandre Mutel
12 | // Permission is hereby granted, free of charge, to any person obtaining a copy
13 | // of this software and associated documentation files (the "Software"), to deal
14 | // in the Software without restriction, including without limitation the rights
15 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
16 | // copies of the Software, and to permit persons to whom the Software is
17 | // furnished to do so, subject to the following conditions:
18 | //
19 | // The above copyright notice and this permission notice shall be included in
20 | // all copies or substantial portions of the Software.
21 | //
22 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
23 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
25 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
27 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
28 |
29 | using SharpDX;
30 | using SharpDX.Direct3D11;
31 | using SharpDX.DXGI;
32 | using System;
33 | using System.Diagnostics;
34 | using System.Drawing;
35 | using System.Drawing.Imaging;
36 | using System.IO;
37 | using System.Threading.Tasks;
38 |
39 | namespace DirectX_Renderer.Screen_Stream
40 | {
41 | public class Screen_capture
42 | {
43 | // private byte[] _previousScreen; // Used to save the last Screen. Not used for now.
44 | private bool _run, _init;
45 |
46 | public static Bitmap bm;
47 |
48 | public int Size { get; private set; }
49 |
50 |
51 | //Form only used to give a reference to calculate the average time.
52 | // You can remove this references if you want.
53 | private Screen_Stream form;
54 | public Screen_capture(Screen_Stream form)
55 | {
56 | this.form = form;
57 | }
58 |
59 | public void Start()
60 | {
61 | _run = true;
62 | var factory = new Factory1();
63 | var adapter = factory.GetAdapter1(0);
64 | var device = new SharpDX.Direct3D11.Device(adapter);
65 | //Get front buffer of the adapter
66 | var output = adapter.GetOutput(0);
67 | var output1 = output.QueryInterface();
68 |
69 | // Screen resolution
70 | int width = output.Description.DesktopBounds.Right;
71 | int height = output.Description.DesktopBounds.Bottom;
72 |
73 | // Create Staging texture CPU - accessible
74 | var textureDesc = new Texture2DDescription
75 | {
76 | CpuAccessFlags = CpuAccessFlags.Read,
77 | BindFlags = BindFlags.None,
78 | Format = Format.B8G8R8A8_UNorm,
79 | Width = width,
80 | Height = height,
81 | OptionFlags = ResourceOptionFlags.None,
82 | MipLevels = 1,
83 | ArraySize = 1,
84 | SampleDescription = { Count = 1, Quality = 0 },
85 | Usage = ResourceUsage.Staging
86 | };
87 | var screenTexture = new Texture2D(device, textureDesc);
88 |
89 | Task.Factory.StartNew(() =>
90 | {
91 | using (var copy_Output = output1.DuplicateOutput(device))
92 | {
93 | Stopwatch time; // Time counter, you can remove it.
94 | while (_run)
95 | {
96 | time = System.Diagnostics.Stopwatch.StartNew();
97 | try
98 | {
99 | SharpDX.DXGI.Resource screenResource;
100 | OutputDuplicateFrameInformation copy_FrameInformation;
101 |
102 | copy_Output.AcquireNextFrame(5, out copy_FrameInformation, out screenResource);
103 |
104 | using (var screenTexture2D = screenResource.QueryInterface())
105 | device.ImmediateContext.CopyResource(screenTexture2D, screenTexture);
106 |
107 | var mapSource = device.ImmediateContext.MapSubresource(screenTexture, 0, MapMode.Read, SharpDX.Direct3D11.MapFlags.None);
108 |
109 | var bitmap = new Bitmap(width, height, PixelFormat.Format32bppArgb);
110 |
111 | var boundsRect = new System.Drawing.Rectangle(0, 0, width, height);
112 | var mapDest = bitmap.LockBits(boundsRect, ImageLockMode.WriteOnly, bitmap.PixelFormat);
113 | var sourcePtr = mapSource.DataPointer;
114 | var destPtr = mapDest.Scan0;
115 |
116 | for (int y = 0; y < height; y++)
117 | {
118 | SharpDX.Utilities.CopyMemory(destPtr, sourcePtr, width * 4);
119 | sourcePtr = IntPtr.Add(sourcePtr, mapSource.RowPitch);
120 | destPtr = IntPtr.Add(destPtr, mapDest.Stride);
121 | }
122 |
123 | // Release source and dest locks
124 | bitmap.UnlockBits(mapDest);
125 | device.ImmediateContext.UnmapSubresource(screenTexture, 0);
126 |
127 | using (var ms = new MemoryStream())
128 | {
129 | bitmap.Save(ms, ImageFormat.Bmp);
130 | ScreenRefreshed?.Invoke(this, bitmap);
131 | //ScreenRefreshed?.Invoke(this, ms.ToArray()); //To send the image array
132 | _init = true;
133 | }
134 |
135 | screenResource.Dispose();
136 | copy_Output.ReleaseFrame();
137 | }
138 | catch (SharpDXException e)
139 | {
140 | // Some graphics cards could spam warnings for this.
141 | if (e.ResultCode.Code != SharpDX.DXGI.ResultCode.WaitTimeout.Result.Code)
142 | {
143 | Trace.TraceError(e.Message);
144 | Trace.TraceError(e.StackTrace);
145 | }
146 | }
147 |
148 | // Time, you can remove too.
149 | // Just add to a List the value of the time wasted to calculate the averrage.
150 | time.Stop();
151 | form.last_times.Add(time.ElapsedMilliseconds);
152 |
153 | }
154 | }
155 | });
156 | while (!_init) ;
157 | }
158 |
159 | public void Stop()
160 | {
161 | _run = false;
162 | }
163 |
164 | public EventHandler ScreenRefreshed;
165 | }
166 | }
167 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/External Overlay/Overlay_SharpDX.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) 2016-2017 DirectX_Renderer - DoxCode - https://github.com/DoxCode
2 | //
3 | // DxRender - xDasEinhorn
4 | //
5 | // The overlay window use SHARPDX as wrapper of the DirectX API.
6 | // Used version 4.01, of:
7 | //
8 | // SharpDX, SharpDX.Desktop, SharpDX.Direct2D1, SharpDX.Direct3D11, SharpDX.DXGI, SharpDX.Mathematics
9 | //
10 | // Copyright (c) 2010-2013 SharpDX - Alexandre Mutel
11 | // Permission is hereby granted, free of charge, to any person obtaining a copy
12 | // of this software and associated documentation files (the "Software"), to deal
13 | // in the Software without restriction, including without limitation the rights
14 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
15 | // copies of the Software, and to permit persons to whom the Software is
16 | // furnished to do so, subject to the following conditions:
17 | //
18 | // The above copyright notice and this permission notice shall be included in
19 | // all copies or substantial portions of the Software.
20 | //
21 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
26 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
27 |
28 | using System;
29 | using System.Windows.Forms;
30 | using SharpDX.Direct2D1;
31 | using Factory = SharpDX.Direct2D1.Factory;
32 | using FontFactory = SharpDX.DirectWrite.Factory;
33 | using Format = SharpDX.DXGI.Format;
34 | using SharpDX;
35 | using SharpDX.DirectWrite;
36 | using System.Threading;
37 | using System.Runtime.InteropServices;
38 |
39 |
40 | namespace DirectX_Renderer
41 | {
42 | public partial class Overlay_SharpDX : Form
43 | {
44 | private WindowRenderTarget device;
45 | private HwndRenderTargetProperties renderProperties;
46 | private SolidColorBrush solidColorBrush;
47 | private Factory factory;
48 |
49 | //text fonts to test DirectX direct draw text
50 | private TextFormat font;
51 | private FontFactory fontFactory;
52 | private const string fontFamily = "Arial";
53 | private const float fontSize = 25.0f;
54 | private Bitmap _bitmap;
55 |
56 | private IntPtr handle;
57 | private Thread threadDX = null;
58 | //DllImports
59 | [DllImport("user32.dll")]
60 | public static extern int SetWindowLong(IntPtr hWnd, int nIndex, int dwNewLong);
61 |
62 | [DllImport("user32.dll")]
63 | static extern bool SetLayeredWindowAttributes(IntPtr hwnd, uint crKey, byte bAlpha, uint dwFlags);
64 |
65 | [DllImport("user32.dll", SetLastError = true)]
66 | public static extern int GetWindowLong(IntPtr hWnd, int nIndex);
67 |
68 | [DllImport("user32.dll")]
69 | [return: MarshalAs(UnmanagedType.Bool)]
70 | public static extern bool SetWindowPos(IntPtr hWnd, IntPtr hWndInsertAfter, int X, int Y, int cx, int cy, uint uFlags);
71 |
72 | [DllImport("dwmapi.dll")]
73 | public static extern void DwmExtendFrameIntoClientArea(IntPtr hWnd, ref int[] pMargins);
74 |
75 | [DllImport("user32.dll")]
76 | private static extern IntPtr SetActiveWindow(IntPtr handle);
77 |
78 | //Styles
79 | public const UInt32 SWP_NOSIZE = 0x0001;
80 | public const UInt32 SWP_NOMOVE = 0x0002;
81 | public const UInt32 TOPMOST_FLAGS = SWP_NOMOVE | SWP_NOSIZE;
82 | public static IntPtr HWND_TOPMOST = new IntPtr(-1);
83 | private const int WS_EX_NOACTIVATE = 0x08000000;
84 | private const int WS_EX_TOPMOST = 0x00000008;
85 | private const int WM_ACTIVATE = 6;
86 | private const int WA_INACTIVE = 0;
87 | private const int WM_MOUSEACTIVATE = 0x0021;
88 | private const int MA_NOACTIVATEANDEAT = 0x0004;
89 |
90 | public Overlay_SharpDX()
91 | {
92 | this.handle = Handle;
93 | int initialStyle = GetWindowLong(this.Handle, -20);
94 | SetWindowLong(this.Handle, -20, initialStyle | 0x80000 | 0x20);
95 | SetWindowPos(this.Handle, HWND_TOPMOST, 0, 0, 0, 0, TOPMOST_FLAGS);
96 | OnResize(null);
97 |
98 | InitializeComponent();
99 | }
100 |
101 | // Remember change the values of the form in the designer.
102 | private void Overlay_SharpDX_Load(object sender, EventArgs e)
103 | {
104 | // You can write your own dimensions of the auto-mode if doesn't work properly.
105 | System.Drawing.Rectangle screen = Utilities.GetScreen(this);
106 | this.Width = screen.Width;
107 | this.Height = screen.Height;
108 |
109 | this.DoubleBuffered = true; // reduce the flicker
110 | this.SetStyle(ControlStyles.OptimizedDoubleBuffer |// reduce the flicker too
111 | ControlStyles.AllPaintingInWmPaint |
112 | ControlStyles.DoubleBuffer |
113 | ControlStyles.UserPaint |
114 | ControlStyles.Opaque |
115 | ControlStyles.ResizeRedraw |
116 | ControlStyles.SupportsTransparentBackColor, true);
117 | this.TopMost = true;
118 | this.Visible = true;
119 |
120 | factory = new Factory();
121 | fontFactory = new FontFactory();
122 | renderProperties = new HwndRenderTargetProperties()
123 | {
124 | Hwnd = this.Handle,
125 | PixelSize = new Size2(this.Width, this.Height),
126 | PresentOptions = PresentOptions.None
127 | };
128 |
129 | //Init DirectX
130 | device = new WindowRenderTarget(factory, new RenderTargetProperties(new PixelFormat(Format.B8G8R8A8_UNorm, AlphaMode.Premultiplied)), renderProperties);
131 |
132 | // if you want use DirectX direct renderer, you can use this brush and fonts.
133 | // of course you can change this as you want.
134 | solidColorBrush = new SolidColorBrush(device, Color.Red);
135 | font = new TextFormat(fontFactory, fontFamily, fontSize);
136 | _bitmap = Utilities.LoadFromFile(device, "sprite_example.png");
137 |
138 |
139 | threadDX = new Thread(new ParameterizedThreadStart(_loop_DXThread));
140 |
141 | threadDX.Priority = ThreadPriority.Highest;
142 | threadDX.IsBackground = true;
143 | threadDX.Start();
144 | }
145 |
146 | protected override void OnPaint(PaintEventArgs e)
147 | {
148 | int[] marg = new int[] { 0, 0, Width, Height };
149 | DwmExtendFrameIntoClientArea(this.Handle, ref marg);
150 | }
151 |
152 | private void _loop_DXThread(object sender)
153 | {
154 | while (true)
155 | {
156 | device.BeginDraw();
157 | device.Clear(Color.Transparent);
158 | device.TextAntialiasMode = SharpDX.Direct2D1.TextAntialiasMode.Aliased;
159 |
160 | device.DrawText("Overlay text using direct draw with DirectX", font, new SharpDX.Mathematics.Interop.RawRectangleF(5,100,500,30), solidColorBrush);
161 |
162 | device.DrawBitmap(_bitmap, 1, BitmapInterpolationMode.Linear, new SharpDX.Mathematics.Interop.RawRectangleF(600, 400, 0, 0));
163 | //place your rendering things here
164 |
165 | device.EndDraw();
166 | }
167 | }
168 |
169 | ///
170 | /// Used to not show up the form in alt-tab window.
171 | /// Tested on Windows 7 - 64bit and Windows 10 64bit
172 | ///
173 | protected override CreateParams CreateParams
174 | {
175 | get
176 | {
177 | CreateParams pm = base.CreateParams;
178 | pm.ExStyle |= 0x80;
179 | pm.ExStyle |= WS_EX_TOPMOST; // make the form topmost
180 | pm.ExStyle |= WS_EX_NOACTIVATE; // prevent the form from being activated
181 | return pm;
182 | }
183 | }
184 |
185 | ///
186 | /// Makes the form unable to gain focus at all time,
187 | /// which should prevent lose focus
188 | ///
189 | protected override void WndProc(ref Message m)
190 | {
191 | if (m.Msg == WM_MOUSEACTIVATE)
192 | {
193 | m.Result = (IntPtr)MA_NOACTIVATEANDEAT;
194 | return;
195 | }
196 | if (m.Msg == WM_ACTIVATE)
197 | {
198 | if (((int)m.WParam & 0xFFFF) != WA_INACTIVE)
199 | if (m.LParam != IntPtr.Zero)
200 | SetActiveWindow(m.LParam);
201 | else
202 | SetActiveWindow(IntPtr.Zero);
203 | }
204 | else
205 | {
206 | base.WndProc(ref m);
207 | }
208 | }
209 |
210 | }
211 | }
212 |
--------------------------------------------------------------------------------
/DirectX_Renderer - SharpDx/bin/Debug/SharpDX.Desktop.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | SharpDX.Desktop
5 |
6 |
7 |
8 |
9 | Helper class to allow programmatic capturing of graphics information that can be loaded later in Visual Studio.
10 | This is a managed implementation of the VsDbg class (http://msdn.microsoft.com/en-us/library/vstudio/dn440549.aspx).
11 | Requires to have installed VS Remote Tools.
12 | http://msdn.microsoft.com/en-us/library/vstudio/hh708963.aspx
13 | http://msdn.microsoft.com/en-us/library/vstudio/hh780905.aspx
14 |
15 |
16 |
17 |
18 | Helper structure to ease the begin/end graphics capturing
19 |
20 |
21 | var debugger = new VSGraphicsDebugger();
22 | using(debugger.BeginCapture())
23 | {
24 | ...
25 | }
26 |
27 |
28 |
29 |
30 | Creates a new instance of the structure.
31 |
32 | The attanched graphics debugger.
33 |
34 |
35 |
36 | Ends the capture by calling .
37 |
38 |
39 |
40 |
41 | Creates a new instance of the class and prepares the in-app component of graphics diagnostics to actively capture and record graphics information..
42 |
43 | The destination filename for log writing.
44 |
45 |
46 |
47 | Copies the contents of the active graphics log (.vsglog) file into a new file.
48 |
49 | The new log file name.
50 |
51 |
52 |
53 | Toggles the graphics diagnostics HUD overlay on or off.
54 |
55 |
56 |
57 |
58 | Adds a custom message to the graphics diagnostics HUD (Head-Up Display).
59 |
60 | The message to add.
61 |
62 |
63 |
64 | Captures the remainder of the current frame to the graphics log file.
65 |
66 |
67 |
68 |
69 | Begins a capture interval that will end with .
70 |
71 | A instance that once disposed, calls automatically the method.
72 |
73 |
74 |
75 | Ends a capture interval that was started with .
76 |
77 |
78 |
79 |
80 | Finalizes the graphics log file, closes it, and frees resources that were used while the app was actively recording graphics information.
81 |
82 | Ignored.
83 |
84 |
85 |
86 | Helper class for PIX.
87 |
88 |
89 |
90 |
91 | Marks the beginning of a user-defined event. PIX can use this event to trigger an action.
92 |
93 | The Event color.
94 | The Event Name.
95 | The zero-based level of the hierarchy that this event is starting in. If an error occurs, the return value will be negative.
96 | D3DPERF_BeginEvent
97 |
98 |
99 |
100 | Marks the beginning of a user-defined event. PIX can use this event to trigger an action.
101 |
102 | The Event color.
103 | The Event formatted Name.
104 | The parameters to use for the formatted name.
105 |
106 | The zero-based level of the hierarchy that this event is starting in. If an error occurs, the return value will be negative.
107 |
108 | D3DPERF_BeginEvent
109 |
110 |
111 |
112 | Mark the end of a user-defined event. PIX can use this event to trigger an action.
113 |
114 | The level of the hierarchy in which the event is ending. If an error occurs, this value is negative.
115 | D3DPERF_EndEvent
116 |
117 |
118 |
119 | Mark an instantaneous event. PIX can use this event to trigger an action.
120 |
121 | The color.
122 | The name.
123 | D3DPERF_SetMarker
124 |
125 |
126 |
127 | Mark an instantaneous event. PIX can use this event to trigger an action.
128 |
129 | The color.
130 | The name to format.
131 | The parameters to use to format the name.
132 | D3DPERF_SetMarker
133 |
134 |
135 |
136 | Set this to false to notify PIX that the target program does not give permission to be profiled.
137 |
138 | if set to true PIX profiling is authorized. Default to true.
139 | D3DPERF_SetOptions
140 |
141 |
142 |
143 | Gets a value indicating whether this instance is currently profiled by PIX.
144 |
145 |
146 | true if this instance is currently profiled; otherwise, false.
147 |
148 | D3DPERF_GetStatus
149 |
150 |
151 |
152 | Provides a hook to WndProc of an existing window handle using .
153 |
154 |
155 |
156 |
157 | Initializes a new instance of the class.
158 |
159 | The HWND.
160 |
161 |
162 |
163 | Adds a message filter to a window.
164 |
165 | The handle of the window.
166 | The message filter.
167 |
168 |
169 |
170 | Removes a message filter associated with a window.
171 |
172 | The handle of the window.
173 | The message filter.
174 |
175 |
176 |
177 | A strongly-typed resource class, for looking up localized strings, etc.
178 |
179 |
180 |
181 |
182 | Returns the cached ResourceManager instance used by this class.
183 |
184 |
185 |
186 |
187 | Overrides the current thread's CurrentUICulture property for all
188 | resource lookups using this strongly typed resource class.
189 |
190 |
191 |
192 |
193 | Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
194 |
195 |
196 |
197 |
198 | A Renderable UserControl.
199 |
200 |
201 |
202 |
203 | Initializes a new instance of the class.
204 |
205 |
206 |
207 |
208 | Paints the background of the control.
209 |
210 | A that contains the event data.
211 |
212 |
213 |
214 | Raises the event.
215 |
216 | A that contains the event data.
217 |
218 |
219 |
220 | Default Rendering Form.
221 |
222 |
223 |
224 |
225 | Initializes a new instance of the class.
226 |
227 |
228 |
229 |
230 | Initializes a new instance of the class.
231 |
232 | The text.
233 |
234 |
235 |
236 | Occurs when [app activated].
237 |
238 |
239 |
240 |
241 | Occurs when [app deactivated].
242 |
243 |
244 |
245 |
246 | Occurs when [monitor changed].
247 |
248 |
249 |
250 |
251 | Occurs when [pause rendering].
252 |
253 |
254 |
255 |
256 | Occurs when [resume rendering].
257 |
258 |
259 |
260 |
261 | Occurs when [screensaver].
262 |
263 |
264 |
265 |
266 | Occurs when [system resume].
267 |
268 |
269 |
270 |
271 | Occurs when [system suspend].
272 |
273 |
274 |
275 |
276 | Occurs when [user resized].
277 |
278 |
279 |
280 |
281 | Gets or sets a value indicating whether this form can be resized by the user. See remarks.
282 |
283 |
284 | This property alters ,
285 | for true value it is ,
286 | for false - .
287 |
288 | true if this form can be resized by the user (by default); otherwise, false.
289 |
290 |
291 |
292 | Gets or sets a value indicationg whether the current render form is in fullscreen mode. See remarks.
293 |
294 |
295 | If Toolkit is used, this property is set automatically,
296 | otherwise user should maintain it himself as it affects the behavior of property.
297 |
298 |
299 |
300 |
301 | Raises the event.
302 |
303 | A that contains the event data.
304 |
305 |
306 |
307 | Raises the event.
308 |
309 | A that contains the event data.
310 |
311 |
312 |
313 | Raises the event.
314 |
315 | An that contains the event data.
316 |
317 |
318 |
319 | Paints the background of the control.
320 |
321 | A that contains the event data.
322 |
323 |
324 |
325 | Raises the Pause Rendering event.
326 |
327 | The instance containing the event data.
328 |
329 |
330 |
331 | Raises the Resume Rendering event.
332 |
333 | The instance containing the event data.
334 |
335 |
336 |
337 | Raises the User resized event.
338 |
339 | The instance containing the event data.
340 |
341 |
342 |
343 | Raises the On App Activated event.
344 |
345 | The instance containing the event data.
346 |
347 |
348 |
349 | Raises the App Deactivated event
350 |
351 | The instance containing the event data.
352 |
353 |
354 |
355 | Raises the System Suspend event
356 |
357 | The instance containing the event data.
358 |
359 |
360 |
361 | Raises the System Resume event
362 |
363 | The instance containing the event data.
364 |
365 |
366 |
367 | Raises the event.
368 |
369 | The instance containing the event data.
370 |
371 |
372 |
373 | Override windows message loop handling.
374 |
375 | The Windows to process.
376 |
377 |
378 |
379 | RenderLoop provides a rendering loop infrastructure. See remarks for usage.
380 |
381 |
382 | Use static
383 | method to directly use a renderloop with a render callback or use your own loop:
384 |
385 | control.Show();
386 | using (var loop = new RenderLoop(control))
387 | {
388 | while (loop.NextFrame())
389 | {
390 | // Perform draw operations here.
391 | }
392 | }
393 |
394 | Note that the main control can be changed at anytime inside the loop.
395 |
396 |
397 |
398 |
399 | Initializes a new instance of the class.
400 |
401 |
402 |
403 |
404 | Initializes a new instance of the class.
405 |
406 |
407 |
408 |
409 | Gets or sets the control to associate with the current render loop.
410 |
411 | The control.
412 | Control is already disposed
413 |
414 |
415 |
416 | Gets or sets a value indicating whether the render loop should use the default instead of a custom window message loop lightweight for GC. Default is false.
417 |
418 | true if the render loop should use the default instead of a custom window message loop (default false); otherwise, false.
419 | By default, RenderLoop is using a custom window message loop that is more lightweight than to process windows event message.
420 | Set this parameter to true to use the default .
421 |
422 |
423 |
424 | Calls this method on each frame.
425 |
426 | true if if the control is still active, false otherwise.
427 | An error occured
428 |
429 |
430 |
431 | Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
432 |
433 |
434 |
435 |
436 | Delegate for the rendering loop.
437 |
438 |
439 |
440 |
441 | Runs the specified main loop in the specified context.
442 |
443 |
444 |
445 |
446 | Runs the specified main loop for the specified windows form.
447 |
448 | The form.
449 | The rendering callback.
450 | if set to true indicating whether the render loop should use the default instead of a custom window message loop lightweight for GC. Default is false.
451 | form
452 | or
453 | renderCallback
454 |
455 |
456 |
457 | Gets a value indicating whether this instance is application idle.
458 |
459 |
460 | true if this instance is application idle; otherwise, false.
461 |
462 |
463 |
464 |
465 | Internal class to interact with Native Message
466 |
467 |
468 |
469 |
470 |
--------------------------------------------------------------------------------
/packages/SharpDX.Desktop.4.0.1/lib/net40/SharpDX.Desktop.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | SharpDX.Desktop
5 |
6 |
7 |
8 |
9 | Helper class to allow programmatic capturing of graphics information that can be loaded later in Visual Studio.
10 | This is a managed implementation of the VsDbg class (http://msdn.microsoft.com/en-us/library/vstudio/dn440549.aspx).
11 | Requires to have installed VS Remote Tools.
12 | http://msdn.microsoft.com/en-us/library/vstudio/hh708963.aspx
13 | http://msdn.microsoft.com/en-us/library/vstudio/hh780905.aspx
14 |
15 |
16 |
17 |
18 | Helper structure to ease the begin/end graphics capturing
19 |
20 |
21 | var debugger = new VSGraphicsDebugger();
22 | using(debugger.BeginCapture())
23 | {
24 | ...
25 | }
26 |
27 |
28 |
29 |
30 | Creates a new instance of the structure.
31 |
32 | The attanched graphics debugger.
33 |
34 |
35 |
36 | Ends the capture by calling .
37 |
38 |
39 |
40 |
41 | Creates a new instance of the class and prepares the in-app component of graphics diagnostics to actively capture and record graphics information..
42 |
43 | The destination filename for log writing.
44 |
45 |
46 |
47 | Copies the contents of the active graphics log (.vsglog) file into a new file.
48 |
49 | The new log file name.
50 |
51 |
52 |
53 | Toggles the graphics diagnostics HUD overlay on or off.
54 |
55 |
56 |
57 |
58 | Adds a custom message to the graphics diagnostics HUD (Head-Up Display).
59 |
60 | The message to add.
61 |
62 |
63 |
64 | Captures the remainder of the current frame to the graphics log file.
65 |
66 |
67 |
68 |
69 | Begins a capture interval that will end with .
70 |
71 | A instance that once disposed, calls automatically the method.
72 |
73 |
74 |
75 | Ends a capture interval that was started with .
76 |
77 |
78 |
79 |
80 | Finalizes the graphics log file, closes it, and frees resources that were used while the app was actively recording graphics information.
81 |
82 | Ignored.
83 |
84 |
85 |
86 | Helper class for PIX.
87 |
88 |
89 |
90 |
91 | Marks the beginning of a user-defined event. PIX can use this event to trigger an action.
92 |
93 | The Event color.
94 | The Event Name.
95 | The zero-based level of the hierarchy that this event is starting in. If an error occurs, the return value will be negative.
96 | D3DPERF_BeginEvent
97 |
98 |
99 |
100 | Marks the beginning of a user-defined event. PIX can use this event to trigger an action.
101 |
102 | The Event color.
103 | The Event formatted Name.
104 | The parameters to use for the formatted name.
105 |
106 | The zero-based level of the hierarchy that this event is starting in. If an error occurs, the return value will be negative.
107 |
108 | D3DPERF_BeginEvent
109 |
110 |
111 |
112 | Mark the end of a user-defined event. PIX can use this event to trigger an action.
113 |
114 | The level of the hierarchy in which the event is ending. If an error occurs, this value is negative.
115 | D3DPERF_EndEvent
116 |
117 |
118 |
119 | Mark an instantaneous event. PIX can use this event to trigger an action.
120 |
121 | The color.
122 | The name.
123 | D3DPERF_SetMarker
124 |
125 |
126 |
127 | Mark an instantaneous event. PIX can use this event to trigger an action.
128 |
129 | The color.
130 | The name to format.
131 | The parameters to use to format the name.
132 | D3DPERF_SetMarker
133 |
134 |
135 |
136 | Set this to false to notify PIX that the target program does not give permission to be profiled.
137 |
138 | if set to true PIX profiling is authorized. Default to true.
139 | D3DPERF_SetOptions
140 |
141 |
142 |
143 | Gets a value indicating whether this instance is currently profiled by PIX.
144 |
145 |
146 | true if this instance is currently profiled; otherwise, false.
147 |
148 | D3DPERF_GetStatus
149 |
150 |
151 |
152 | Provides a hook to WndProc of an existing window handle using .
153 |
154 |
155 |
156 |
157 | Initializes a new instance of the class.
158 |
159 | The HWND.
160 |
161 |
162 |
163 | Adds a message filter to a window.
164 |
165 | The handle of the window.
166 | The message filter.
167 |
168 |
169 |
170 | Removes a message filter associated with a window.
171 |
172 | The handle of the window.
173 | The message filter.
174 |
175 |
176 |
177 | A strongly-typed resource class, for looking up localized strings, etc.
178 |
179 |
180 |
181 |
182 | Returns the cached ResourceManager instance used by this class.
183 |
184 |
185 |
186 |
187 | Overrides the current thread's CurrentUICulture property for all
188 | resource lookups using this strongly typed resource class.
189 |
190 |
191 |
192 |
193 | Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
194 |
195 |
196 |
197 |
198 | A Renderable UserControl.
199 |
200 |
201 |
202 |
203 | Initializes a new instance of the class.
204 |
205 |
206 |
207 |
208 | Paints the background of the control.
209 |
210 | A that contains the event data.
211 |
212 |
213 |
214 | Raises the event.
215 |
216 | A that contains the event data.
217 |
218 |
219 |
220 | Default Rendering Form.
221 |
222 |
223 |
224 |
225 | Initializes a new instance of the class.
226 |
227 |
228 |
229 |
230 | Initializes a new instance of the class.
231 |
232 | The text.
233 |
234 |
235 |
236 | Occurs when [app activated].
237 |
238 |
239 |
240 |
241 | Occurs when [app deactivated].
242 |
243 |
244 |
245 |
246 | Occurs when [monitor changed].
247 |
248 |
249 |
250 |
251 | Occurs when [pause rendering].
252 |
253 |
254 |
255 |
256 | Occurs when [resume rendering].
257 |
258 |
259 |
260 |
261 | Occurs when [screensaver].
262 |
263 |
264 |
265 |
266 | Occurs when [system resume].
267 |
268 |
269 |
270 |
271 | Occurs when [system suspend].
272 |
273 |
274 |
275 |
276 | Occurs when [user resized].
277 |
278 |
279 |
280 |
281 | Gets or sets a value indicating whether this form can be resized by the user. See remarks.
282 |
283 |
284 | This property alters ,
285 | for true value it is ,
286 | for false - .
287 |
288 | true if this form can be resized by the user (by default); otherwise, false.
289 |
290 |
291 |
292 | Gets or sets a value indicationg whether the current render form is in fullscreen mode. See remarks.
293 |
294 |
295 | If Toolkit is used, this property is set automatically,
296 | otherwise user should maintain it himself as it affects the behavior of property.
297 |
298 |
299 |
300 |
301 | Raises the event.
302 |
303 | A that contains the event data.
304 |
305 |
306 |
307 | Raises the event.
308 |
309 | A that contains the event data.
310 |
311 |
312 |
313 | Raises the event.
314 |
315 | An that contains the event data.
316 |
317 |
318 |
319 | Paints the background of the control.
320 |
321 | A that contains the event data.
322 |
323 |
324 |
325 | Raises the Pause Rendering event.
326 |
327 | The instance containing the event data.
328 |
329 |
330 |
331 | Raises the Resume Rendering event.
332 |
333 | The instance containing the event data.
334 |
335 |
336 |
337 | Raises the User resized event.
338 |
339 | The instance containing the event data.
340 |
341 |
342 |
343 | Raises the On App Activated event.
344 |
345 | The instance containing the event data.
346 |
347 |
348 |
349 | Raises the App Deactivated event
350 |
351 | The instance containing the event data.
352 |
353 |
354 |
355 | Raises the System Suspend event
356 |
357 | The instance containing the event data.
358 |
359 |
360 |
361 | Raises the System Resume event
362 |
363 | The instance containing the event data.
364 |
365 |
366 |
367 | Raises the event.
368 |
369 | The instance containing the event data.
370 |
371 |
372 |
373 | Override windows message loop handling.
374 |
375 | The Windows to process.
376 |
377 |
378 |
379 | RenderLoop provides a rendering loop infrastructure. See remarks for usage.
380 |
381 |
382 | Use static
383 | method to directly use a renderloop with a render callback or use your own loop:
384 |
385 | control.Show();
386 | using (var loop = new RenderLoop(control))
387 | {
388 | while (loop.NextFrame())
389 | {
390 | // Perform draw operations here.
391 | }
392 | }
393 |
394 | Note that the main control can be changed at anytime inside the loop.
395 |
396 |
397 |
398 |
399 | Initializes a new instance of the class.
400 |
401 |
402 |
403 |
404 | Initializes a new instance of the class.
405 |
406 |
407 |
408 |
409 | Gets or sets the control to associate with the current render loop.
410 |
411 | The control.
412 | Control is already disposed
413 |
414 |
415 |
416 | Gets or sets a value indicating whether the render loop should use the default instead of a custom window message loop lightweight for GC. Default is false.
417 |
418 | true if the render loop should use the default instead of a custom window message loop (default false); otherwise, false.
419 | By default, RenderLoop is using a custom window message loop that is more lightweight than to process windows event message.
420 | Set this parameter to true to use the default .
421 |
422 |
423 |
424 | Calls this method on each frame.
425 |
426 | true if if the control is still active, false otherwise.
427 | An error occured
428 |
429 |
430 |
431 | Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
432 |
433 |
434 |
435 |
436 | Delegate for the rendering loop.
437 |
438 |
439 |
440 |
441 | Runs the specified main loop in the specified context.
442 |
443 |
444 |
445 |
446 | Runs the specified main loop for the specified windows form.
447 |
448 | The form.
449 | The rendering callback.
450 | if set to true indicating whether the render loop should use the default instead of a custom window message loop lightweight for GC. Default is false.
451 | form
452 | or
453 | renderCallback
454 |
455 |
456 |
457 | Gets a value indicating whether this instance is application idle.
458 |
459 |
460 | true if this instance is application idle; otherwise, false.
461 |
462 |
463 |
464 |
465 | Internal class to interact with Native Message
466 |
467 |
468 |
469 |
470 |
--------------------------------------------------------------------------------
/packages/SharpDX.Desktop.4.0.1/lib/net45/SharpDX.Desktop.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | SharpDX.Desktop
5 |
6 |
7 |
8 |
9 | Helper class to allow programmatic capturing of graphics information that can be loaded later in Visual Studio.
10 | This is a managed implementation of the VsDbg class (http://msdn.microsoft.com/en-us/library/vstudio/dn440549.aspx).
11 | Requires to have installed VS Remote Tools.
12 | http://msdn.microsoft.com/en-us/library/vstudio/hh708963.aspx
13 | http://msdn.microsoft.com/en-us/library/vstudio/hh780905.aspx
14 |
15 |
16 |
17 |
18 | Helper structure to ease the begin/end graphics capturing
19 |
20 |
21 | var debugger = new VSGraphicsDebugger();
22 | using(debugger.BeginCapture())
23 | {
24 | ...
25 | }
26 |
27 |
28 |
29 |
30 | Creates a new instance of the structure.
31 |
32 | The attanched graphics debugger.
33 |
34 |
35 |
36 | Ends the capture by calling .
37 |
38 |
39 |
40 |
41 | Creates a new instance of the class and prepares the in-app component of graphics diagnostics to actively capture and record graphics information..
42 |
43 | The destination filename for log writing.
44 |
45 |
46 |
47 | Copies the contents of the active graphics log (.vsglog) file into a new file.
48 |
49 | The new log file name.
50 |
51 |
52 |
53 | Toggles the graphics diagnostics HUD overlay on or off.
54 |
55 |
56 |
57 |
58 | Adds a custom message to the graphics diagnostics HUD (Head-Up Display).
59 |
60 | The message to add.
61 |
62 |
63 |
64 | Captures the remainder of the current frame to the graphics log file.
65 |
66 |
67 |
68 |
69 | Begins a capture interval that will end with .
70 |
71 | A instance that once disposed, calls automatically the method.
72 |
73 |
74 |
75 | Ends a capture interval that was started with .
76 |
77 |
78 |
79 |
80 | Finalizes the graphics log file, closes it, and frees resources that were used while the app was actively recording graphics information.
81 |
82 | Ignored.
83 |
84 |
85 |
86 | Helper class for PIX.
87 |
88 |
89 |
90 |
91 | Marks the beginning of a user-defined event. PIX can use this event to trigger an action.
92 |
93 | The Event color.
94 | The Event Name.
95 | The zero-based level of the hierarchy that this event is starting in. If an error occurs, the return value will be negative.
96 | D3DPERF_BeginEvent
97 |
98 |
99 |
100 | Marks the beginning of a user-defined event. PIX can use this event to trigger an action.
101 |
102 | The Event color.
103 | The Event formatted Name.
104 | The parameters to use for the formatted name.
105 |
106 | The zero-based level of the hierarchy that this event is starting in. If an error occurs, the return value will be negative.
107 |
108 | D3DPERF_BeginEvent
109 |
110 |
111 |
112 | Mark the end of a user-defined event. PIX can use this event to trigger an action.
113 |
114 | The level of the hierarchy in which the event is ending. If an error occurs, this value is negative.
115 | D3DPERF_EndEvent
116 |
117 |
118 |
119 | Mark an instantaneous event. PIX can use this event to trigger an action.
120 |
121 | The color.
122 | The name.
123 | D3DPERF_SetMarker
124 |
125 |
126 |
127 | Mark an instantaneous event. PIX can use this event to trigger an action.
128 |
129 | The color.
130 | The name to format.
131 | The parameters to use to format the name.
132 | D3DPERF_SetMarker
133 |
134 |
135 |
136 | Set this to false to notify PIX that the target program does not give permission to be profiled.
137 |
138 | if set to true PIX profiling is authorized. Default to true.
139 | D3DPERF_SetOptions
140 |
141 |
142 |
143 | Gets a value indicating whether this instance is currently profiled by PIX.
144 |
145 |
146 | true if this instance is currently profiled; otherwise, false.
147 |
148 | D3DPERF_GetStatus
149 |
150 |
151 |
152 | Provides a hook to WndProc of an existing window handle using .
153 |
154 |
155 |
156 |
157 | Initializes a new instance of the class.
158 |
159 | The HWND.
160 |
161 |
162 |
163 | Adds a message filter to a window.
164 |
165 | The handle of the window.
166 | The message filter.
167 |
168 |
169 |
170 | Removes a message filter associated with a window.
171 |
172 | The handle of the window.
173 | The message filter.
174 |
175 |
176 |
177 | A strongly-typed resource class, for looking up localized strings, etc.
178 |
179 |
180 |
181 |
182 | Returns the cached ResourceManager instance used by this class.
183 |
184 |
185 |
186 |
187 | Overrides the current thread's CurrentUICulture property for all
188 | resource lookups using this strongly typed resource class.
189 |
190 |
191 |
192 |
193 | Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
194 |
195 |
196 |
197 |
198 | A Renderable UserControl.
199 |
200 |
201 |
202 |
203 | Initializes a new instance of the class.
204 |
205 |
206 |
207 |
208 | Paints the background of the control.
209 |
210 | A that contains the event data.
211 |
212 |
213 |
214 | Raises the event.
215 |
216 | A that contains the event data.
217 |
218 |
219 |
220 | Default Rendering Form.
221 |
222 |
223 |
224 |
225 | Initializes a new instance of the class.
226 |
227 |
228 |
229 |
230 | Initializes a new instance of the class.
231 |
232 | The text.
233 |
234 |
235 |
236 | Occurs when [app activated].
237 |
238 |
239 |
240 |
241 | Occurs when [app deactivated].
242 |
243 |
244 |
245 |
246 | Occurs when [monitor changed].
247 |
248 |
249 |
250 |
251 | Occurs when [pause rendering].
252 |
253 |
254 |
255 |
256 | Occurs when [resume rendering].
257 |
258 |
259 |
260 |
261 | Occurs when [screensaver].
262 |
263 |
264 |
265 |
266 | Occurs when [system resume].
267 |
268 |
269 |
270 |
271 | Occurs when [system suspend].
272 |
273 |
274 |
275 |
276 | Occurs when [user resized].
277 |
278 |
279 |
280 |
281 | Gets or sets a value indicating whether this form can be resized by the user. See remarks.
282 |
283 |
284 | This property alters ,
285 | for true value it is ,
286 | for false - .
287 |
288 | true if this form can be resized by the user (by default); otherwise, false.
289 |
290 |
291 |
292 | Gets or sets a value indicationg whether the current render form is in fullscreen mode. See remarks.
293 |
294 |
295 | If Toolkit is used, this property is set automatically,
296 | otherwise user should maintain it himself as it affects the behavior of property.
297 |
298 |
299 |
300 |
301 | Raises the event.
302 |
303 | A that contains the event data.
304 |
305 |
306 |
307 | Raises the event.
308 |
309 | A that contains the event data.
310 |
311 |
312 |
313 | Raises the event.
314 |
315 | An that contains the event data.
316 |
317 |
318 |
319 | Paints the background of the control.
320 |
321 | A that contains the event data.
322 |
323 |
324 |
325 | Raises the Pause Rendering event.
326 |
327 | The instance containing the event data.
328 |
329 |
330 |
331 | Raises the Resume Rendering event.
332 |
333 | The instance containing the event data.
334 |
335 |
336 |
337 | Raises the User resized event.
338 |
339 | The instance containing the event data.
340 |
341 |
342 |
343 | Raises the On App Activated event.
344 |
345 | The instance containing the event data.
346 |
347 |
348 |
349 | Raises the App Deactivated event
350 |
351 | The instance containing the event data.
352 |
353 |
354 |
355 | Raises the System Suspend event
356 |
357 | The instance containing the event data.
358 |
359 |
360 |
361 | Raises the System Resume event
362 |
363 | The instance containing the event data.
364 |
365 |
366 |
367 | Raises the event.
368 |
369 | The instance containing the event data.
370 |
371 |
372 |
373 | Override windows message loop handling.
374 |
375 | The Windows to process.
376 |
377 |
378 |
379 | RenderLoop provides a rendering loop infrastructure. See remarks for usage.
380 |
381 |
382 | Use static
383 | method to directly use a renderloop with a render callback or use your own loop:
384 |
385 | control.Show();
386 | using (var loop = new RenderLoop(control))
387 | {
388 | while (loop.NextFrame())
389 | {
390 | // Perform draw operations here.
391 | }
392 | }
393 |
394 | Note that the main control can be changed at anytime inside the loop.
395 |
396 |
397 |
398 |
399 | Initializes a new instance of the class.
400 |
401 |
402 |
403 |
404 | Initializes a new instance of the class.
405 |
406 |
407 |
408 |
409 | Gets or sets the control to associate with the current render loop.
410 |
411 | The control.
412 | Control is already disposed
413 |
414 |
415 |
416 | Gets or sets a value indicating whether the render loop should use the default instead of a custom window message loop lightweight for GC. Default is false.
417 |
418 | true if the render loop should use the default instead of a custom window message loop (default false); otherwise, false.
419 | By default, RenderLoop is using a custom window message loop that is more lightweight than to process windows event message.
420 | Set this parameter to true to use the default .
421 |
422 |
423 |
424 | Calls this method on each frame.
425 |
426 | true if if the control is still active, false otherwise.
427 | An error occured
428 |
429 |
430 |
431 | Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
432 |
433 |
434 |
435 |
436 | Delegate for the rendering loop.
437 |
438 |
439 |
440 |
441 | Runs the specified main loop in the specified context.
442 |
443 |
444 |
445 |
446 | Runs the specified main loop for the specified windows form.
447 |
448 | The form.
449 | The rendering callback.
450 | if set to true indicating whether the render loop should use the default instead of a custom window message loop lightweight for GC. Default is false.
451 | form
452 | or
453 | renderCallback
454 |
455 |
456 |
457 | Gets a value indicating whether this instance is application idle.
458 |
459 |
460 | true if this instance is application idle; otherwise, false.
461 |
462 |
463 |
464 |
465 | Internal class to interact with Native Message
466 |
467 |
468 |
469 |
470 |
--------------------------------------------------------------------------------