Update for DirectXTex/DirectXTK September 2020 releases (#29)
This commit is contained in:
Родитель
24dc7e8c9d
Коммит
db1e9a031a
|
@ -30,8 +30,9 @@ Durango12
|
|||
Profile
|
||||
Release
|
||||
x64
|
||||
Kits/DirectXTK/Src/Shaders/Compiled/XboxOne*.*
|
||||
Kits/DirectXTK12/Src/Shaders/Compiled/XboxOne*.*
|
||||
Kits/DirectXTK/Src/Shaders/Compiled/
|
||||
Kits/DirectXTK12/Src/Shaders/Compiled/
|
||||
Kits/DirectXTex/Shaders/Compiled/
|
||||
UWPSamples/Graphics/SimplePBR12_UWP/Compiled/
|
||||
XDKSamples/Graphics/SimplePBR12_Xbox/Compiled/
|
||||
XDKSamples/Graphics/SimpleDmaDecompression/zlib/lib/
|
||||
|
|
|
@ -279,28 +279,28 @@ namespace DX
|
|||
float bsize = XMVectorGetX(butnFont->MeasureString(button));
|
||||
float offsetX = (bsize * buttonScale / 2.f);
|
||||
|
||||
if (outPos.x < result.left)
|
||||
if (outPos.x < float(result.left))
|
||||
result.left = long(outPos.x);
|
||||
|
||||
if (outPos.y < result.top)
|
||||
if (outPos.y < float(result.top))
|
||||
result.top = long(outPos.y);
|
||||
|
||||
outPos.x += offsetX;
|
||||
outPos.y -= offsetY;
|
||||
|
||||
if (outPos.x < result.left)
|
||||
if (outPos.x < float(result.left))
|
||||
result.left = long(outPos.x);
|
||||
|
||||
if (outPos.y < result.top)
|
||||
if (outPos.y < float(result.top))
|
||||
result.top = long(outPos.y);
|
||||
|
||||
outPos.x += bsize * buttonScale;
|
||||
outPos.y += offsetY;
|
||||
|
||||
if (result.right < outPos.x)
|
||||
if (float(result.right) < outPos.x)
|
||||
result.right = long(outPos.x);
|
||||
|
||||
if (result.bottom < outPos.y)
|
||||
if (float(result.bottom) < outPos.y)
|
||||
result.bottom = long(outPos.y);
|
||||
}
|
||||
|
||||
|
@ -320,18 +320,18 @@ namespace DX
|
|||
case '[':
|
||||
if (*strBuffer)
|
||||
{
|
||||
if (outPos.x < result.left)
|
||||
if (outPos.x < float(result.left))
|
||||
result.left = long(outPos.x);
|
||||
|
||||
if (outPos.y < result.top)
|
||||
if (outPos.y < float(result.top))
|
||||
result.top = long(outPos.y);
|
||||
|
||||
outPos.x += XMVectorGetX(textFont->MeasureString(strBuffer)) * scale;
|
||||
|
||||
if (result.right < outPos.x)
|
||||
if (float(result.right) < outPos.x)
|
||||
result.right = long(outPos.x);
|
||||
|
||||
if (result.bottom < outPos.y)
|
||||
if (float(result.bottom) < outPos.y)
|
||||
result.bottom = long(outPos.y);
|
||||
|
||||
memset(strBuffer, 0, sizeof(strBuffer));
|
||||
|
@ -345,18 +345,18 @@ namespace DX
|
|||
case '\n':
|
||||
if (*strBuffer)
|
||||
{
|
||||
if (outPos.x < result.left)
|
||||
if (outPos.x < float(result.left))
|
||||
result.left = long(outPos.x);
|
||||
|
||||
if (outPos.y < result.top)
|
||||
if (outPos.y < float(result.top))
|
||||
result.top = long(outPos.y);
|
||||
|
||||
outPos.x += XMVectorGetX(textFont->MeasureString(strBuffer)) * scale;
|
||||
|
||||
if (result.right < outPos.x)
|
||||
if (float(result.right) < outPos.x)
|
||||
result.right = long(outPos.x);
|
||||
|
||||
if (result.bottom < outPos.y)
|
||||
if (float(result.bottom) < outPos.y)
|
||||
result.bottom = long(outPos.y);
|
||||
|
||||
memset(strBuffer, 0, sizeof(strBuffer));
|
||||
|
@ -375,18 +375,18 @@ namespace DX
|
|||
|
||||
if (*strBuffer)
|
||||
{
|
||||
if (outPos.x < result.left)
|
||||
if (outPos.x < float(result.left))
|
||||
result.left = long(outPos.x);
|
||||
|
||||
if (outPos.y < result.top)
|
||||
if (outPos.y < float(result.top))
|
||||
result.top = long(outPos.y);
|
||||
|
||||
outPos.x += XMVectorGetX(textFont->MeasureString(strBuffer)) * scale;
|
||||
|
||||
if (result.right < outPos.x)
|
||||
if (float(result.right) < outPos.x)
|
||||
result.right = long(outPos.x);
|
||||
|
||||
if (result.bottom < outPos.y)
|
||||
if (float(result.bottom) < outPos.y)
|
||||
result.bottom = long(outPos.y);
|
||||
}
|
||||
|
||||
|
|
|
@ -23,12 +23,16 @@
|
|||
|
||||
#pragma warning( disable : 4061 )
|
||||
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic ignored "-Wcovered-switch-default"
|
||||
#endif
|
||||
|
||||
using namespace DirectX;
|
||||
using namespace SimpleMath;
|
||||
|
||||
namespace
|
||||
{
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
enum Descriptors
|
||||
{
|
||||
Segoe18 = 0,
|
||||
|
@ -188,7 +192,7 @@ struct ATG::Help::CalloutBox
|
|||
if (type == CalloutType::LINE_TO_ANCHOR)
|
||||
{
|
||||
// callout circle is 12x12 so -6 from x and y to get top left coordinates
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
batch->Draw(help.m_descriptorHeap->GetGpuHandle(Descriptors::CircleTex), help.m_circleTexSize,
|
||||
Vector2(calloutLine.x - 6, calloutLine.y - 6));
|
||||
#elif defined(__d3d11_h__) || defined(__d3d11_x_h__)
|
||||
|
@ -751,7 +755,7 @@ ATG::Help::~Help()
|
|||
}
|
||||
}
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
void ATG::Help::Render(ID3D12GraphicsCommandList* commandList)
|
||||
{
|
||||
// Set the descriptor heaps
|
||||
|
@ -864,7 +868,7 @@ void ATG::Help::ReleaseDevice()
|
|||
m_gamepadTex.Reset();
|
||||
m_backgroundTex.Reset();
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
m_descriptorHeap.reset();
|
||||
#elif defined(__d3d11_h__) || defined(__d3d11_x_h__)
|
||||
m_states.reset();
|
||||
|
@ -873,10 +877,10 @@ void ATG::Help::ReleaseDevice()
|
|||
#endif
|
||||
}
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
void ATG::Help::RestoreDevice(ID3D12Device* device, ResourceUploadBatch& uploadBatch, const RenderTargetState& rtState)
|
||||
{
|
||||
m_descriptorHeap = std::make_unique<DescriptorHeap>(device, D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV, D3D12_DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE, Descriptors::Count);
|
||||
m_descriptorHeap = std::make_unique<DescriptorHeap>(device, Descriptors::Count);
|
||||
|
||||
SpriteBatchPipelineStateDescription sbPsoDesc(rtState, &CommonStates::AlphaBlend);
|
||||
m_spriteBatch = std::make_unique<SpriteBatch>(device, uploadBatch, sbPsoDesc);
|
||||
|
@ -887,7 +891,7 @@ void ATG::Help::RestoreDevice(ID3D12Device* device, ResourceUploadBatch& uploadB
|
|||
CommonStates::DepthNone, CommonStates::CullNone, rtState, D3D12_PRIMITIVE_TOPOLOGY_TYPE_LINE);
|
||||
m_lineEffect = std::make_unique<BasicEffect>(device, EffectFlags::VertexColor, fxPsoDesc);
|
||||
|
||||
unsigned int loadFlags = m_linearColors ? DDS_LOADER_FORCE_SRGB : DDS_LOADER_DEFAULT;
|
||||
DDS_LOADER_FLAGS loadFlags = m_linearColors ? DDS_LOADER_FORCE_SRGB : DDS_LOADER_DEFAULT;
|
||||
|
||||
#if !defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP)
|
||||
wchar_t buff[MAX_PATH];
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#include "PrimitiveBatch.h"
|
||||
#include "VertexTypes.h"
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
#include "DescriptorHeap.h"
|
||||
#include "ResourceUploadBatch.h"
|
||||
#elif !defined(__d3d11_h__) && !defined(__d3d11_x_h__)
|
||||
|
@ -76,7 +76,7 @@ namespace ATG
|
|||
|
||||
~Help();
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
void Render(ID3D12GraphicsCommandList* commandList);
|
||||
|
||||
void RestoreDevice(ID3D12Device* device, DirectX::ResourceUploadBatch& uploadBatch, const DirectX::RenderTargetState& rtState);
|
||||
|
@ -98,7 +98,7 @@ namespace ATG
|
|||
std::unique_ptr<DirectX::BasicEffect> m_lineEffect;
|
||||
std::unique_ptr<DirectX::SpriteFont> m_spriteFonts[3];
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
std::unique_ptr<DirectX::DescriptorHeap> m_descriptorHeap;
|
||||
|
||||
Microsoft::WRL::ComPtr<ID3D12Resource> m_circleTex;
|
||||
|
|
|
@ -12,282 +12,282 @@ using namespace DirectX;
|
|||
|
||||
namespace
|
||||
{
|
||||
inline void XM_CALLCONV DrawCube(PrimitiveBatch<VertexPositionColor>* batch,
|
||||
CXMMATRIX matWorld,
|
||||
FXMVECTOR color)
|
||||
{
|
||||
static const XMVECTORF32 s_verts[8] =
|
||||
{
|
||||
{ -1.f, -1.f, -1.f, 0.f },
|
||||
{ 1.f, -1.f, -1.f, 0.f },
|
||||
{ 1.f, -1.f, 1.f, 0.f },
|
||||
{ -1.f, -1.f, 1.f, 0.f },
|
||||
{ -1.f, 1.f, -1.f, 0.f },
|
||||
{ 1.f, 1.f, -1.f, 0.f },
|
||||
{ 1.f, 1.f, 1.f, 0.f },
|
||||
{ -1.f, 1.f, 1.f, 0.f }
|
||||
};
|
||||
inline void XM_CALLCONV DrawCube(PrimitiveBatch<VertexPositionColor>* batch,
|
||||
CXMMATRIX matWorld,
|
||||
FXMVECTOR color)
|
||||
{
|
||||
static const XMVECTORF32 s_verts[8] =
|
||||
{
|
||||
{ { { -1.f, -1.f, -1.f, 0.f } } },
|
||||
{ { { 1.f, -1.f, -1.f, 0.f } } },
|
||||
{ { { 1.f, -1.f, 1.f, 0.f } } },
|
||||
{ { { -1.f, -1.f, 1.f, 0.f } } },
|
||||
{ { { -1.f, 1.f, -1.f, 0.f } } },
|
||||
{ { { 1.f, 1.f, -1.f, 0.f } } },
|
||||
{ { { 1.f, 1.f, 1.f, 0.f } } },
|
||||
{ { { -1.f, 1.f, 1.f, 0.f } } }
|
||||
};
|
||||
|
||||
static const WORD s_indices[] =
|
||||
{
|
||||
0, 1,
|
||||
1, 2,
|
||||
2, 3,
|
||||
3, 0,
|
||||
4, 5,
|
||||
5, 6,
|
||||
6, 7,
|
||||
7, 4,
|
||||
0, 4,
|
||||
1, 5,
|
||||
2, 6,
|
||||
3, 7
|
||||
};
|
||||
static const WORD s_indices[] =
|
||||
{
|
||||
0, 1,
|
||||
1, 2,
|
||||
2, 3,
|
||||
3, 0,
|
||||
4, 5,
|
||||
5, 6,
|
||||
6, 7,
|
||||
7, 4,
|
||||
0, 4,
|
||||
1, 5,
|
||||
2, 6,
|
||||
3, 7
|
||||
};
|
||||
|
||||
VertexPositionColor verts[8];
|
||||
for (size_t i = 0; i < 8; ++i)
|
||||
{
|
||||
XMVECTOR v = XMVector3Transform(s_verts[i], matWorld);
|
||||
XMStoreFloat3(&verts[i].position, v);
|
||||
XMStoreFloat4(&verts[i].color, color);
|
||||
}
|
||||
VertexPositionColor verts[8];
|
||||
for (size_t i = 0; i < 8; ++i)
|
||||
{
|
||||
XMVECTOR v = XMVector3Transform(s_verts[i], matWorld);
|
||||
XMStoreFloat3(&verts[i].position, v);
|
||||
XMStoreFloat4(&verts[i].color, color);
|
||||
}
|
||||
|
||||
batch->DrawIndexed(D3D_PRIMITIVE_TOPOLOGY_LINELIST, s_indices, _countof(s_indices), verts, 8);
|
||||
}
|
||||
batch->DrawIndexed(D3D_PRIMITIVE_TOPOLOGY_LINELIST, s_indices, _countof(s_indices), verts, 8);
|
||||
}
|
||||
}
|
||||
|
||||
void XM_CALLCONV DX::Draw(PrimitiveBatch<VertexPositionColor>* batch,
|
||||
const BoundingSphere& sphere,
|
||||
FXMVECTOR color)
|
||||
const BoundingSphere& sphere,
|
||||
FXMVECTOR color)
|
||||
{
|
||||
XMVECTOR origin = XMLoadFloat3(&sphere.Center);
|
||||
XMVECTOR origin = XMLoadFloat3(&sphere.Center);
|
||||
|
||||
const float radius = sphere.Radius;
|
||||
const float radius = sphere.Radius;
|
||||
|
||||
XMVECTOR xaxis = XMVectorScale(g_XMIdentityR0, radius);
|
||||
XMVECTOR yaxis = XMVectorScale(g_XMIdentityR1, radius);
|
||||
XMVECTOR zaxis = XMVectorScale(g_XMIdentityR2, radius);
|
||||
XMVECTOR xaxis = XMVectorScale(g_XMIdentityR0, radius);
|
||||
XMVECTOR yaxis = XMVectorScale(g_XMIdentityR1, radius);
|
||||
XMVECTOR zaxis = XMVectorScale(g_XMIdentityR2, radius);
|
||||
|
||||
DrawRing(batch, origin, xaxis, zaxis, color);
|
||||
DrawRing(batch, origin, xaxis, yaxis, color);
|
||||
DrawRing(batch, origin, yaxis, zaxis, color);
|
||||
DrawRing(batch, origin, xaxis, zaxis, color);
|
||||
DrawRing(batch, origin, xaxis, yaxis, color);
|
||||
DrawRing(batch, origin, yaxis, zaxis, color);
|
||||
}
|
||||
|
||||
void XM_CALLCONV DX::Draw(PrimitiveBatch<VertexPositionColor>* batch,
|
||||
const BoundingBox& box,
|
||||
FXMVECTOR color)
|
||||
const BoundingBox& box,
|
||||
FXMVECTOR color)
|
||||
{
|
||||
XMMATRIX matWorld = XMMatrixScaling(box.Extents.x, box.Extents.y, box.Extents.z);
|
||||
XMVECTOR position = XMLoadFloat3(&box.Center);
|
||||
matWorld.r[3] = XMVectorSelect(matWorld.r[3], position, g_XMSelect1110);
|
||||
XMMATRIX matWorld = XMMatrixScaling(box.Extents.x, box.Extents.y, box.Extents.z);
|
||||
XMVECTOR position = XMLoadFloat3(&box.Center);
|
||||
matWorld.r[3] = XMVectorSelect(matWorld.r[3], position, g_XMSelect1110);
|
||||
|
||||
DrawCube(batch, matWorld, color);
|
||||
DrawCube(batch, matWorld, color);
|
||||
}
|
||||
|
||||
void XM_CALLCONV DX::Draw(PrimitiveBatch<VertexPositionColor>* batch,
|
||||
const BoundingOrientedBox& obb,
|
||||
FXMVECTOR color)
|
||||
const BoundingOrientedBox& obb,
|
||||
FXMVECTOR color)
|
||||
{
|
||||
XMMATRIX matWorld = XMMatrixRotationQuaternion(XMLoadFloat4(&obb.Orientation));
|
||||
XMMATRIX matScale = XMMatrixScaling(obb.Extents.x, obb.Extents.y, obb.Extents.z);
|
||||
matWorld = XMMatrixMultiply(matScale, matWorld);
|
||||
XMVECTOR position = XMLoadFloat3(&obb.Center);
|
||||
matWorld.r[3] = XMVectorSelect(matWorld.r[3], position, g_XMSelect1110);
|
||||
XMMATRIX matWorld = XMMatrixRotationQuaternion(XMLoadFloat4(&obb.Orientation));
|
||||
XMMATRIX matScale = XMMatrixScaling(obb.Extents.x, obb.Extents.y, obb.Extents.z);
|
||||
matWorld = XMMatrixMultiply(matScale, matWorld);
|
||||
XMVECTOR position = XMLoadFloat3(&obb.Center);
|
||||
matWorld.r[3] = XMVectorSelect(matWorld.r[3], position, g_XMSelect1110);
|
||||
|
||||
DrawCube(batch, matWorld, color);
|
||||
DrawCube(batch, matWorld, color);
|
||||
}
|
||||
|
||||
void XM_CALLCONV DX::Draw(PrimitiveBatch<VertexPositionColor>* batch,
|
||||
const BoundingFrustum& frustum,
|
||||
FXMVECTOR color)
|
||||
const BoundingFrustum& frustum,
|
||||
FXMVECTOR color)
|
||||
{
|
||||
XMFLOAT3 corners[BoundingFrustum::CORNER_COUNT];
|
||||
frustum.GetCorners(corners);
|
||||
XMFLOAT3 corners[BoundingFrustum::CORNER_COUNT];
|
||||
frustum.GetCorners(corners);
|
||||
|
||||
VertexPositionColor verts[24] = {};
|
||||
verts[0].position = corners[0];
|
||||
verts[1].position = corners[1];
|
||||
verts[2].position = corners[1];
|
||||
verts[3].position = corners[2];
|
||||
verts[4].position = corners[2];
|
||||
verts[5].position = corners[3];
|
||||
verts[6].position = corners[3];
|
||||
verts[7].position = corners[0];
|
||||
VertexPositionColor verts[24] = {};
|
||||
verts[0].position = corners[0];
|
||||
verts[1].position = corners[1];
|
||||
verts[2].position = corners[1];
|
||||
verts[3].position = corners[2];
|
||||
verts[4].position = corners[2];
|
||||
verts[5].position = corners[3];
|
||||
verts[6].position = corners[3];
|
||||
verts[7].position = corners[0];
|
||||
|
||||
verts[8].position = corners[0];
|
||||
verts[9].position = corners[4];
|
||||
verts[10].position = corners[1];
|
||||
verts[11].position = corners[5];
|
||||
verts[12].position = corners[2];
|
||||
verts[13].position = corners[6];
|
||||
verts[14].position = corners[3];
|
||||
verts[15].position = corners[7];
|
||||
verts[8].position = corners[0];
|
||||
verts[9].position = corners[4];
|
||||
verts[10].position = corners[1];
|
||||
verts[11].position = corners[5];
|
||||
verts[12].position = corners[2];
|
||||
verts[13].position = corners[6];
|
||||
verts[14].position = corners[3];
|
||||
verts[15].position = corners[7];
|
||||
|
||||
verts[16].position = corners[4];
|
||||
verts[17].position = corners[5];
|
||||
verts[18].position = corners[5];
|
||||
verts[19].position = corners[6];
|
||||
verts[20].position = corners[6];
|
||||
verts[21].position = corners[7];
|
||||
verts[22].position = corners[7];
|
||||
verts[23].position = corners[4];
|
||||
verts[16].position = corners[4];
|
||||
verts[17].position = corners[5];
|
||||
verts[18].position = corners[5];
|
||||
verts[19].position = corners[6];
|
||||
verts[20].position = corners[6];
|
||||
verts[21].position = corners[7];
|
||||
verts[22].position = corners[7];
|
||||
verts[23].position = corners[4];
|
||||
|
||||
for (size_t j = 0; j < _countof(verts); ++j)
|
||||
{
|
||||
XMStoreFloat4(&verts[j].color, color);
|
||||
}
|
||||
for (size_t j = 0; j < _countof(verts); ++j)
|
||||
{
|
||||
XMStoreFloat4(&verts[j].color, color);
|
||||
}
|
||||
|
||||
batch->Draw(D3D_PRIMITIVE_TOPOLOGY_LINELIST, verts, _countof(verts));
|
||||
batch->Draw(D3D_PRIMITIVE_TOPOLOGY_LINELIST, verts, _countof(verts));
|
||||
}
|
||||
|
||||
void XM_CALLCONV DX::DrawGrid(PrimitiveBatch<VertexPositionColor>* batch,
|
||||
FXMVECTOR xAxis,
|
||||
FXMVECTOR yAxis,
|
||||
FXMVECTOR origin,
|
||||
size_t xdivs,
|
||||
size_t ydivs,
|
||||
GXMVECTOR color)
|
||||
FXMVECTOR xAxis,
|
||||
FXMVECTOR yAxis,
|
||||
FXMVECTOR origin,
|
||||
size_t xdivs,
|
||||
size_t ydivs,
|
||||
GXMVECTOR color)
|
||||
{
|
||||
xdivs = std::max<size_t>(1, xdivs);
|
||||
ydivs = std::max<size_t>(1, ydivs);
|
||||
xdivs = std::max<size_t>(1, xdivs);
|
||||
ydivs = std::max<size_t>(1, ydivs);
|
||||
|
||||
for (size_t i = 0; i <= xdivs; ++i)
|
||||
{
|
||||
float percent = float(i) / float(xdivs);
|
||||
percent = (percent * 2.f) - 1.f;
|
||||
XMVECTOR scale = XMVectorScale(xAxis, percent);
|
||||
scale = XMVectorAdd(scale, origin);
|
||||
for (size_t i = 0; i <= xdivs; ++i)
|
||||
{
|
||||
float percent = float(i) / float(xdivs);
|
||||
percent = (percent * 2.f) - 1.f;
|
||||
XMVECTOR scale = XMVectorScale(xAxis, percent);
|
||||
scale = XMVectorAdd(scale, origin);
|
||||
|
||||
VertexPositionColor v1(XMVectorSubtract(scale, yAxis), color);
|
||||
VertexPositionColor v2(XMVectorAdd(scale, yAxis), color);
|
||||
batch->DrawLine(v1, v2);
|
||||
}
|
||||
VertexPositionColor v1(XMVectorSubtract(scale, yAxis), color);
|
||||
VertexPositionColor v2(XMVectorAdd(scale, yAxis), color);
|
||||
batch->DrawLine(v1, v2);
|
||||
}
|
||||
|
||||
for (size_t i = 0; i <= ydivs; i++)
|
||||
{
|
||||
FLOAT percent = float(i) / float(ydivs);
|
||||
percent = (percent * 2.f) - 1.f;
|
||||
XMVECTOR scale = XMVectorScale(yAxis, percent);
|
||||
scale = XMVectorAdd(scale, origin);
|
||||
for (size_t i = 0; i <= ydivs; i++)
|
||||
{
|
||||
FLOAT percent = float(i) / float(ydivs);
|
||||
percent = (percent * 2.f) - 1.f;
|
||||
XMVECTOR scale = XMVectorScale(yAxis, percent);
|
||||
scale = XMVectorAdd(scale, origin);
|
||||
|
||||
VertexPositionColor v1(XMVectorSubtract(scale, xAxis), color);
|
||||
VertexPositionColor v2(XMVectorAdd(scale, xAxis), color);
|
||||
batch->DrawLine(v1, v2);
|
||||
}
|
||||
VertexPositionColor v1(XMVectorSubtract(scale, xAxis), color);
|
||||
VertexPositionColor v2(XMVectorAdd(scale, xAxis), color);
|
||||
batch->DrawLine(v1, v2);
|
||||
}
|
||||
}
|
||||
|
||||
void XM_CALLCONV DX::DrawRing(PrimitiveBatch<VertexPositionColor>* batch,
|
||||
FXMVECTOR origin,
|
||||
FXMVECTOR majorAxis,
|
||||
FXMVECTOR minorAxis,
|
||||
GXMVECTOR color)
|
||||
FXMVECTOR origin,
|
||||
FXMVECTOR majorAxis,
|
||||
FXMVECTOR minorAxis,
|
||||
GXMVECTOR color)
|
||||
{
|
||||
static const size_t c_ringSegments = 32;
|
||||
static const size_t c_ringSegments = 32;
|
||||
|
||||
VertexPositionColor verts[c_ringSegments + 1];
|
||||
VertexPositionColor verts[c_ringSegments + 1];
|
||||
|
||||
FLOAT fAngleDelta = XM_2PI / float(c_ringSegments);
|
||||
// Instead of calling cos/sin for each segment we calculate
|
||||
// the sign of the angle delta and then incrementally calculate sin
|
||||
// and cosine from then on.
|
||||
XMVECTOR cosDelta = XMVectorReplicate(cosf(fAngleDelta));
|
||||
XMVECTOR sinDelta = XMVectorReplicate(sinf(fAngleDelta));
|
||||
XMVECTOR incrementalSin = XMVectorZero();
|
||||
static const XMVECTORF32 s_initialCos =
|
||||
{
|
||||
1.f, 1.f, 1.f, 1.f
|
||||
};
|
||||
XMVECTOR incrementalCos = s_initialCos.v;
|
||||
for (size_t i = 0; i < c_ringSegments; i++)
|
||||
{
|
||||
XMVECTOR pos = XMVectorMultiplyAdd(majorAxis, incrementalCos, origin);
|
||||
pos = XMVectorMultiplyAdd(minorAxis, incrementalSin, pos);
|
||||
XMStoreFloat3(&verts[i].position, pos);
|
||||
XMStoreFloat4(&verts[i].color, color);
|
||||
// Standard formula to rotate a vector.
|
||||
XMVECTOR newCos = XMVectorSubtract(XMVectorMultiply(incrementalCos, cosDelta), XMVectorMultiply(incrementalSin, sinDelta));
|
||||
XMVECTOR newSin = XMVectorAdd(XMVectorMultiply(incrementalCos, sinDelta), XMVectorMultiply(incrementalSin, cosDelta));
|
||||
incrementalCos = newCos;
|
||||
incrementalSin = newSin;
|
||||
}
|
||||
verts[c_ringSegments] = verts[0];
|
||||
FLOAT fAngleDelta = XM_2PI / float(c_ringSegments);
|
||||
// Instead of calling cos/sin for each segment we calculate
|
||||
// the sign of the angle delta and then incrementally calculate sin
|
||||
// and cosine from then on.
|
||||
XMVECTOR cosDelta = XMVectorReplicate(cosf(fAngleDelta));
|
||||
XMVECTOR sinDelta = XMVectorReplicate(sinf(fAngleDelta));
|
||||
XMVECTOR incrementalSin = XMVectorZero();
|
||||
static const XMVECTORF32 s_initialCos =
|
||||
{
|
||||
{ { 1.f, 1.f, 1.f, 1.f } }
|
||||
};
|
||||
XMVECTOR incrementalCos = s_initialCos.v;
|
||||
for (size_t i = 0; i < c_ringSegments; i++)
|
||||
{
|
||||
XMVECTOR pos = XMVectorMultiplyAdd(majorAxis, incrementalCos, origin);
|
||||
pos = XMVectorMultiplyAdd(minorAxis, incrementalSin, pos);
|
||||
XMStoreFloat3(&verts[i].position, pos);
|
||||
XMStoreFloat4(&verts[i].color, color);
|
||||
// Standard formula to rotate a vector.
|
||||
XMVECTOR newCos = XMVectorSubtract(XMVectorMultiply(incrementalCos, cosDelta), XMVectorMultiply(incrementalSin, sinDelta));
|
||||
XMVECTOR newSin = XMVectorAdd(XMVectorMultiply(incrementalCos, sinDelta), XMVectorMultiply(incrementalSin, cosDelta));
|
||||
incrementalCos = newCos;
|
||||
incrementalSin = newSin;
|
||||
}
|
||||
verts[c_ringSegments] = verts[0];
|
||||
|
||||
batch->Draw(D3D_PRIMITIVE_TOPOLOGY_LINESTRIP, verts, c_ringSegments + 1);
|
||||
batch->Draw(D3D_PRIMITIVE_TOPOLOGY_LINESTRIP, verts, c_ringSegments + 1);
|
||||
}
|
||||
|
||||
void XM_CALLCONV DX::DrawRay(PrimitiveBatch<VertexPositionColor>* batch,
|
||||
FXMVECTOR origin,
|
||||
FXMVECTOR direction,
|
||||
bool normalize,
|
||||
FXMVECTOR color)
|
||||
FXMVECTOR origin,
|
||||
FXMVECTOR direction,
|
||||
bool normalize,
|
||||
FXMVECTOR color)
|
||||
{
|
||||
VertexPositionColor verts[3];
|
||||
XMStoreFloat3(&verts[0].position, origin);
|
||||
VertexPositionColor verts[3];
|
||||
XMStoreFloat3(&verts[0].position, origin);
|
||||
|
||||
XMVECTOR normDirection = XMVector3Normalize(direction);
|
||||
XMVECTOR rayDirection = (normalize) ? normDirection : direction;
|
||||
XMVECTOR normDirection = XMVector3Normalize(direction);
|
||||
XMVECTOR rayDirection = (normalize) ? normDirection : direction;
|
||||
|
||||
XMVECTOR perpVector = XMVector3Cross(normDirection, g_XMIdentityR1);
|
||||
XMVECTOR perpVector = XMVector3Cross(normDirection, g_XMIdentityR1);
|
||||
|
||||
if (XMVector3Equal(XMVector3LengthSq(perpVector), g_XMZero))
|
||||
{
|
||||
perpVector = XMVector3Cross(normDirection, g_XMIdentityR2);
|
||||
}
|
||||
perpVector = XMVector3Normalize(perpVector);
|
||||
if (XMVector3Equal(XMVector3LengthSq(perpVector), g_XMZero))
|
||||
{
|
||||
perpVector = XMVector3Cross(normDirection, g_XMIdentityR2);
|
||||
}
|
||||
perpVector = XMVector3Normalize(perpVector);
|
||||
|
||||
XMStoreFloat3(&verts[1].position, XMVectorAdd(rayDirection, origin));
|
||||
perpVector = XMVectorScale(perpVector, 0.0625f);
|
||||
normDirection = XMVectorScale(normDirection, -0.25f);
|
||||
rayDirection = XMVectorAdd(perpVector, rayDirection);
|
||||
rayDirection = XMVectorAdd(normDirection, rayDirection);
|
||||
XMStoreFloat3(&verts[2].position, XMVectorAdd(rayDirection, origin));
|
||||
XMStoreFloat3(&verts[1].position, XMVectorAdd(rayDirection, origin));
|
||||
perpVector = XMVectorScale(perpVector, 0.0625f);
|
||||
normDirection = XMVectorScale(normDirection, -0.25f);
|
||||
rayDirection = XMVectorAdd(perpVector, rayDirection);
|
||||
rayDirection = XMVectorAdd(normDirection, rayDirection);
|
||||
XMStoreFloat3(&verts[2].position, XMVectorAdd(rayDirection, origin));
|
||||
|
||||
XMStoreFloat4(&verts[0].color, color);
|
||||
XMStoreFloat4(&verts[1].color, color);
|
||||
XMStoreFloat4(&verts[2].color, color);
|
||||
XMStoreFloat4(&verts[0].color, color);
|
||||
XMStoreFloat4(&verts[1].color, color);
|
||||
XMStoreFloat4(&verts[2].color, color);
|
||||
|
||||
batch->Draw(D3D_PRIMITIVE_TOPOLOGY_LINESTRIP, verts, 2);
|
||||
batch->Draw(D3D_PRIMITIVE_TOPOLOGY_LINESTRIP, verts, 2);
|
||||
}
|
||||
|
||||
void XM_CALLCONV DX::DrawTriangle(PrimitiveBatch<VertexPositionColor>* batch,
|
||||
FXMVECTOR pointA,
|
||||
FXMVECTOR pointB,
|
||||
FXMVECTOR pointC,
|
||||
GXMVECTOR color)
|
||||
FXMVECTOR pointA,
|
||||
FXMVECTOR pointB,
|
||||
FXMVECTOR pointC,
|
||||
GXMVECTOR color)
|
||||
{
|
||||
VertexPositionColor verts[4];
|
||||
XMStoreFloat3(&verts[0].position, pointA);
|
||||
XMStoreFloat3(&verts[1].position, pointB);
|
||||
XMStoreFloat3(&verts[2].position, pointC);
|
||||
XMStoreFloat3(&verts[3].position, pointA);
|
||||
VertexPositionColor verts[4];
|
||||
XMStoreFloat3(&verts[0].position, pointA);
|
||||
XMStoreFloat3(&verts[1].position, pointB);
|
||||
XMStoreFloat3(&verts[2].position, pointC);
|
||||
XMStoreFloat3(&verts[3].position, pointA);
|
||||
|
||||
XMStoreFloat4(&verts[0].color, color);
|
||||
XMStoreFloat4(&verts[1].color, color);
|
||||
XMStoreFloat4(&verts[2].color, color);
|
||||
XMStoreFloat4(&verts[3].color, color);
|
||||
XMStoreFloat4(&verts[0].color, color);
|
||||
XMStoreFloat4(&verts[1].color, color);
|
||||
XMStoreFloat4(&verts[2].color, color);
|
||||
XMStoreFloat4(&verts[3].color, color);
|
||||
|
||||
batch->Draw(D3D_PRIMITIVE_TOPOLOGY_LINESTRIP, verts, 4);
|
||||
batch->Draw(D3D_PRIMITIVE_TOPOLOGY_LINESTRIP, verts, 4);
|
||||
}
|
||||
|
||||
void XM_CALLCONV DX::DrawQuad(PrimitiveBatch<VertexPositionColor>* batch,
|
||||
FXMVECTOR pointA,
|
||||
FXMVECTOR pointB,
|
||||
FXMVECTOR pointC,
|
||||
GXMVECTOR pointD,
|
||||
HXMVECTOR color)
|
||||
FXMVECTOR pointA,
|
||||
FXMVECTOR pointB,
|
||||
FXMVECTOR pointC,
|
||||
GXMVECTOR pointD,
|
||||
HXMVECTOR color)
|
||||
{
|
||||
VertexPositionColor verts[5];
|
||||
XMStoreFloat3(&verts[0].position, pointA);
|
||||
XMStoreFloat3(&verts[1].position, pointB);
|
||||
XMStoreFloat3(&verts[2].position, pointC);
|
||||
XMStoreFloat3(&verts[3].position, pointD);
|
||||
XMStoreFloat3(&verts[4].position, pointA);
|
||||
VertexPositionColor verts[5];
|
||||
XMStoreFloat3(&verts[0].position, pointA);
|
||||
XMStoreFloat3(&verts[1].position, pointB);
|
||||
XMStoreFloat3(&verts[2].position, pointC);
|
||||
XMStoreFloat3(&verts[3].position, pointD);
|
||||
XMStoreFloat3(&verts[4].position, pointA);
|
||||
|
||||
XMStoreFloat4(&verts[0].color, color);
|
||||
XMStoreFloat4(&verts[1].color, color);
|
||||
XMStoreFloat4(&verts[2].color, color);
|
||||
XMStoreFloat4(&verts[3].color, color);
|
||||
XMStoreFloat4(&verts[4].color, color);
|
||||
XMStoreFloat4(&verts[0].color, color);
|
||||
XMStoreFloat4(&verts[1].color, color);
|
||||
XMStoreFloat4(&verts[2].color, color);
|
||||
XMStoreFloat4(&verts[3].color, color);
|
||||
XMStoreFloat4(&verts[4].color, color);
|
||||
|
||||
batch->Draw(D3D_PRIMITIVE_TOPOLOGY_LINESTRIP, verts, 5);
|
||||
}
|
||||
batch->Draw(D3D_PRIMITIVE_TOPOLOGY_LINESTRIP, verts, 5);
|
||||
}
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include <DirectXColors.h>
|
||||
#include <DirectXCollision.h>
|
||||
|
||||
#include "PrimitiveBatch.h"
|
||||
|
|
|
@ -70,7 +70,7 @@ namespace
|
|||
namespace DirectX
|
||||
{
|
||||
// Reuse the WIC factory function from the DirectX Tool Kit. For implementation details, see WICTextureLoader.cpp
|
||||
#ifdef __d3d12_x_h__
|
||||
#if defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
extern IWICImagingFactory2* _GetWIC();
|
||||
#else
|
||||
extern IWICImagingFactory* _GetWIC();
|
||||
|
|
|
@ -19,6 +19,8 @@
|
|||
using namespace ATG;
|
||||
using namespace DX;
|
||||
|
||||
#pragma warning(disable : 4365)
|
||||
|
||||
//--------------------------------------------------------------------------------------
|
||||
// RasterGlyphSheet implementation
|
||||
//--------------------------------------------------------------------------------------
|
||||
|
@ -31,11 +33,6 @@ namespace ATG
|
|||
return left.character < right.character;
|
||||
}
|
||||
|
||||
static inline bool operator< (wchar_t left, const RasterGlyphSheet::RasterGlyph &right)
|
||||
{
|
||||
return left < right.character;
|
||||
}
|
||||
|
||||
static inline bool operator< (const RasterGlyphSheet::RasterGlyph &left, wchar_t right)
|
||||
{
|
||||
return left.character < right;
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
using Microsoft::WRL::ComPtr;
|
||||
using namespace DX;
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
//======================================================================================
|
||||
// Direct3D 12
|
||||
//======================================================================================
|
||||
|
@ -176,4 +176,4 @@ void FullScreenQuad::ReleaseDevice()
|
|||
m_pixelShader.Reset();
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
namespace DX
|
||||
{
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
|
||||
class FullScreenQuad
|
||||
{
|
||||
|
@ -50,4 +50,4 @@ namespace DX
|
|||
# error Please #include <d3d11.h> or <d3d12.h>
|
||||
#endif
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -79,8 +79,7 @@ class ATG::PBREffect::Impl : public EffectBase<PBREffectTraits>
|
|||
public:
|
||||
Impl(_In_ ID3D12Device* device,
|
||||
int effectFlags,
|
||||
const EffectPipelineStateDescription& pipelineDescription,
|
||||
bool generateVelocity);
|
||||
const EffectPipelineStateDescription& pipelineDescription);
|
||||
|
||||
void Apply(_In_ ID3D12GraphicsCommandList* commandList);
|
||||
|
||||
|
@ -90,9 +89,6 @@ public:
|
|||
|
||||
int flags;
|
||||
|
||||
// When PBR moves into DirectXTK, this could become an effect flag.
|
||||
bool doGenerateVelocity;
|
||||
|
||||
enum RootParameterIndex
|
||||
{
|
||||
AlbedoTexture,
|
||||
|
@ -144,10 +140,9 @@ const int EffectBase<PBREffectTraits>::PixelShaderIndices[] =
|
|||
SharedResourcePool<ID3D12Device*, EffectBase<PBREffectTraits>::DeviceResources> EffectBase<PBREffectTraits>::deviceResourcesPool;
|
||||
|
||||
// Constructor.
|
||||
ATG::PBREffect::Impl::Impl(_In_ ID3D12Device* device, int effectFlags, const EffectPipelineStateDescription& pipelineDescription, bool generateVelocity)
|
||||
ATG::PBREffect::Impl::Impl(_In_ ID3D12Device* device, int effectFlags, const EffectPipelineStateDescription& pipelineDescription)
|
||||
: EffectBase(device),
|
||||
flags(effectFlags),
|
||||
doGenerateVelocity(generateVelocity),
|
||||
descriptors{}
|
||||
{
|
||||
static_assert( _countof(EffectBase<PBREffectTraits>::VertexShaderIndices) == PBREffectTraits::ShaderPermutationCount, "array/max mismatch" );
|
||||
|
@ -209,7 +204,7 @@ ATG::PBREffect::Impl::Impl(_In_ ID3D12Device* device, int effectFlags, const Eff
|
|||
|
||||
// Create pipeline state
|
||||
int sp = GetPipelineStatePermutation((effectFlags & EffectFlags::Texture) != 0,
|
||||
doGenerateVelocity);
|
||||
(effectFlags & EffectFlags::Velocity) != 0);
|
||||
int vi = EffectBase<PBREffectTraits>::VertexShaderIndices[sp];
|
||||
int pi = EffectBase<PBREffectTraits>::PixelShaderIndices[sp];
|
||||
|
||||
|
@ -301,9 +296,8 @@ void ATG::PBREffect::Impl::Apply(_In_ ID3D12GraphicsCommandList* commandList)
|
|||
// Public constructor.
|
||||
ATG::PBREffect::PBREffect(_In_ ID3D12Device* device,
|
||||
int effectFlags,
|
||||
const EffectPipelineStateDescription& pipelineDescription,
|
||||
bool generateVelocity)
|
||||
: pImpl(new Impl(device, effectFlags, pipelineDescription, generateVelocity))
|
||||
const EffectPipelineStateDescription& pipelineDescription)
|
||||
: pImpl(new Impl(device, effectFlags, pipelineDescription))
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -16,8 +16,7 @@ namespace ATG
|
|||
{
|
||||
public:
|
||||
explicit PBREffect(_In_ ID3D12Device* device, int effectFlags,
|
||||
const DirectX::EffectPipelineStateDescription& pipelineDescription,
|
||||
bool generateVelocity = false);
|
||||
const DirectX::EffectPipelineStateDescription& pipelineDescription);
|
||||
PBREffect(PBREffect&& moveFrom);
|
||||
PBREffect& operator= (PBREffect&& moveFrom);
|
||||
|
||||
|
|
|
@ -188,7 +188,7 @@ private:
|
|||
//======================================================================================
|
||||
// GPUTimer (DirectX 12.X)
|
||||
//======================================================================================
|
||||
#if defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
|
||||
template<typename t_CommandList>
|
||||
void GPUCommandListTimer<t_CommandList>::BeginFrame(_In_ t_CommandList* commandList)
|
||||
|
@ -397,7 +397,6 @@ namespace DX
|
|||
{
|
||||
template class GPUCommandListTimer<ID3D12GraphicsCommandList>;
|
||||
template class GPUCommandListTimer<ID3D12XboxDmaCommandList>;
|
||||
template class GPUCommandListTimer<ID3D12GraphicsCommandList>;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -58,7 +58,7 @@ namespace DX
|
|||
};
|
||||
|
||||
|
||||
#if defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
//----------------------------------------------------------------------------------
|
||||
// DirectX 12.X implementation of GPU timer
|
||||
template<typename t_CommandList = ID3D12CommandList>
|
||||
|
@ -250,4 +250,4 @@ namespace DX
|
|||
#else
|
||||
#error Must include d3d11*.h or d3d12*.h before PerformanceTimersXbox.h
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include <cstdint>
|
||||
#include <exception>
|
||||
#include <fstream>
|
||||
#include <vector>
|
||||
|
|
|
@ -16,18 +16,16 @@
|
|||
#include <stdio.h>
|
||||
#include <stdexcept>
|
||||
|
||||
#include <wrl/client.h>
|
||||
|
||||
using namespace DirectX;
|
||||
using namespace DX;
|
||||
|
||||
using Microsoft::WRL::ComPtr;
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
//======================================================================================
|
||||
// Direct3D 12
|
||||
//======================================================================================
|
||||
RenderTexture::RenderTexture(DXGI_FORMAT format) :
|
||||
RenderTexture::RenderTexture(DXGI_FORMAT format) noexcept :
|
||||
m_state(D3D12_RESOURCE_STATE_COMMON),
|
||||
m_srvDescriptor{},
|
||||
m_rtvDescriptor{},
|
||||
|
@ -51,7 +49,7 @@ void RenderTexture::SetDevice(_In_ ID3D12Device* device, D3D12_CPU_DESCRIPTOR_HA
|
|||
}
|
||||
|
||||
{
|
||||
D3D12_FEATURE_DATA_FORMAT_SUPPORT formatSupport = { m_format };
|
||||
D3D12_FEATURE_DATA_FORMAT_SUPPORT formatSupport = { m_format, D3D12_FORMAT_SUPPORT1_NONE, D3D12_FORMAT_SUPPORT2_NONE };
|
||||
if (FAILED(device->CheckFeatureSupport(D3D12_FEATURE_FORMAT_SUPPORT, &formatSupport, sizeof(formatSupport))))
|
||||
{
|
||||
throw std::exception("CheckFeatureSupport");
|
||||
|
@ -102,7 +100,7 @@ void RenderTexture::SizeResources(size_t width, size_t height)
|
|||
static_cast<UINT>(height),
|
||||
1, 1, 1, 0, D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET);
|
||||
|
||||
D3D12_CLEAR_VALUE clearValue = { m_format };
|
||||
D3D12_CLEAR_VALUE clearValue = { m_format, {} };
|
||||
memcpy(clearValue.Color, m_clearColor, sizeof(clearValue.Color));
|
||||
|
||||
m_state = D3D12_RESOURCE_STATE_RENDER_TARGET;
|
||||
|
@ -127,7 +125,7 @@ void RenderTexture::SizeResources(size_t width, size_t height)
|
|||
m_height = height;
|
||||
}
|
||||
|
||||
void RenderTexture::ReleaseDevice()
|
||||
void RenderTexture::ReleaseDevice() noexcept
|
||||
{
|
||||
m_resource.Reset();
|
||||
m_device.Reset();
|
||||
|
@ -148,7 +146,7 @@ void RenderTexture::TransitionTo(_In_ ID3D12GraphicsCommandList* commandList, D3
|
|||
//======================================================================================
|
||||
// Direct3D 11
|
||||
//======================================================================================
|
||||
RenderTexture::RenderTexture(DXGI_FORMAT format) :
|
||||
RenderTexture::RenderTexture(DXGI_FORMAT format) noexcept :
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
m_fastSemantics(false),
|
||||
#endif
|
||||
|
@ -258,7 +256,7 @@ void RenderTexture::SizeResources(size_t width, size_t height)
|
|||
}
|
||||
|
||||
|
||||
void RenderTexture::ReleaseDevice()
|
||||
void RenderTexture::ReleaseDevice() noexcept
|
||||
{
|
||||
m_renderTargetView.Reset();
|
||||
m_shaderResourceView.Reset();
|
||||
|
|
|
@ -9,12 +9,16 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include <wrl/client.h>
|
||||
|
||||
#include <DirectXMath.h>
|
||||
|
||||
namespace DX
|
||||
{
|
||||
class RenderTexture
|
||||
{
|
||||
public:
|
||||
RenderTexture(DXGI_FORMAT format);
|
||||
RenderTexture(DXGI_FORMAT format) noexcept;
|
||||
|
||||
RenderTexture(RenderTexture&&) = default;
|
||||
RenderTexture& operator= (RenderTexture&&) = default;
|
||||
|
@ -22,13 +26,13 @@ namespace DX
|
|||
RenderTexture(RenderTexture const&) = delete;
|
||||
RenderTexture& operator= (RenderTexture const&) = delete;
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
|
||||
void SetDevice(_In_ ID3D12Device* device, D3D12_CPU_DESCRIPTOR_HANDLE srvDescriptor, D3D12_CPU_DESCRIPTOR_HANDLE rtvDescriptor);
|
||||
|
||||
void SizeResources(size_t width, size_t height);
|
||||
|
||||
void ReleaseDevice();
|
||||
void ReleaseDevice() noexcept;
|
||||
|
||||
void TransitionTo(_In_ ID3D12GraphicsCommandList* commandList, D3D12_RESOURCE_STATES afterState);
|
||||
|
||||
|
@ -42,12 +46,22 @@ namespace DX
|
|||
TransitionTo(commandList, D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE);
|
||||
}
|
||||
|
||||
void Clear(_In_ ID3D12GraphicsCommandList* commandList)
|
||||
{
|
||||
commandList->ClearRenderTargetView(m_rtvDescriptor, m_clearColor, 0, nullptr);
|
||||
}
|
||||
|
||||
void SetClearColor(DirectX::FXMVECTOR color)
|
||||
{
|
||||
DirectX::XMStoreFloat4(reinterpret_cast<DirectX::XMFLOAT4*>(m_clearColor), color);
|
||||
}
|
||||
|
||||
ID3D12Resource* GetResource() const { return m_resource.Get(); }
|
||||
ID3D12Resource* GetResource() const noexcept { return m_resource.Get(); }
|
||||
|
||||
D3D12_RESOURCE_STATES GetCurrentState() const noexcept { return m_state; }
|
||||
|
||||
void UpdateState(D3D12_RESOURCE_STATES state) noexcept { m_state = state; }
|
||||
// Use when a state transition was applied to the resource directly
|
||||
|
||||
private:
|
||||
Microsoft::WRL::ComPtr<ID3D12Device> m_device;
|
||||
|
@ -63,15 +77,15 @@ namespace DX
|
|||
|
||||
void SizeResources(size_t width, size_t height);
|
||||
|
||||
void ReleaseDevice();
|
||||
void ReleaseDevice() noexcept;
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
void EndScene(_In_ ID3D11DeviceContextX* context);
|
||||
#endif
|
||||
|
||||
ID3D11Texture2D* GetRenderTarget() const { return m_renderTarget.Get(); }
|
||||
ID3D11RenderTargetView* GetRenderTargetView() const { return m_renderTargetView.Get(); }
|
||||
ID3D11ShaderResourceView* GetShaderResourceView() const { return m_shaderResourceView.Get(); }
|
||||
ID3D11Texture2D* GetRenderTarget() const noexcept { return m_renderTarget.Get(); }
|
||||
ID3D11RenderTargetView* GetRenderTargetView() const noexcept { return m_renderTargetView.Get(); }
|
||||
ID3D11ShaderResourceView* GetShaderResourceView() const noexcept { return m_shaderResourceView.Get(); }
|
||||
|
||||
private:
|
||||
Microsoft::WRL::ComPtr<ID3D11Device> m_device;
|
||||
|
@ -89,7 +103,7 @@ namespace DX
|
|||
public:
|
||||
void SetWindow(const RECT& rect);
|
||||
|
||||
DXGI_FORMAT GetFormat() const { return m_format; }
|
||||
DXGI_FORMAT GetFormat() const noexcept { return m_format; }
|
||||
|
||||
private:
|
||||
DXGI_FORMAT m_format;
|
||||
|
@ -97,4 +111,4 @@ namespace DX
|
|||
size_t m_width;
|
||||
size_t m_height;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,11 +7,13 @@
|
|||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
#include <stack>
|
||||
#include <assert.h>
|
||||
|
||||
#include <iostream>
|
||||
#include <memory>
|
||||
#include <stack>
|
||||
#include <type_traits>
|
||||
#include <vector>
|
||||
|
||||
#define ENABLE_IF_INTEGRAL(_T_) typename std::enable_if<std::is_integral<_T_>::value>::type* = nullptr
|
||||
#define ENABLE_IF_NOT_INTEGRAL(_T_) typename std::enable_if<!std::is_integral<_T_>::value>::type* = nullptr
|
||||
|
@ -787,14 +789,14 @@ namespace ATG
|
|||
};
|
||||
|
||||
public:
|
||||
template<typename T>
|
||||
template<typename TB>
|
||||
class ClassVisitorAction
|
||||
{
|
||||
public:
|
||||
template<typename MmbrTyp>
|
||||
struct P2Mmbr
|
||||
{
|
||||
typedef MmbrTyp T::*ptr;
|
||||
typedef MmbrTyp TB::*ptr;
|
||||
};
|
||||
|
||||
ClassVisitorAction(IClassVisitorActionImpl *impl)
|
||||
|
@ -802,12 +804,12 @@ namespace ATG
|
|||
{
|
||||
}
|
||||
|
||||
ClassVisitorAction(ClassVisitorAction<T> &&rhs)
|
||||
ClassVisitorAction(ClassVisitorAction<TB> &&rhs)
|
||||
: m_impl(std::move(rhs.m_impl))
|
||||
{
|
||||
}
|
||||
|
||||
ClassVisitorAction &operator=(ClassVisitorAction<T> &&rhs)
|
||||
ClassVisitorAction &operator=(ClassVisitorAction<TB> &&rhs)
|
||||
{
|
||||
m_impl = std::move(rhs.m_impl);
|
||||
return *this;
|
||||
|
@ -816,12 +818,12 @@ namespace ATG
|
|||
ClassVisitorAction(const ClassVisitorAction &) = delete;
|
||||
ClassVisitorAction& operator=(const ClassVisitorAction &) = delete;
|
||||
|
||||
void Visit(T &inst, class ResolvedActionContext &ctx) const
|
||||
void Visit(TB &inst, class ResolvedActionContext &ctx) const
|
||||
{
|
||||
m_impl->VisitAction(inst, static_cast<VisitorContext&>(ctx));
|
||||
}
|
||||
|
||||
void Visit(const T &inst, class ResolvedActionContext &ctx) const
|
||||
void Visit(const TB &inst, class ResolvedActionContext &ctx) const
|
||||
{
|
||||
m_impl->ConstVisitAction(inst, static_cast<ConstVisitorContext&>(ctx));
|
||||
}
|
||||
|
|
|
@ -21,7 +21,7 @@ using namespace DX;
|
|||
|
||||
const XMVECTORF32 TextConsole::Line::s_defaultColor = Colors::Transparent;
|
||||
|
||||
TextConsole::TextConsole()
|
||||
TextConsole::TextConsole() noexcept
|
||||
: m_layout{},
|
||||
m_foregroundColor(1.f, 1.f, 1.f, 1.f),
|
||||
m_debugOutput(false),
|
||||
|
@ -31,14 +31,14 @@ TextConsole::TextConsole()
|
|||
Clear();
|
||||
}
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
_Use_decl_annotations_
|
||||
TextConsole::TextConsole(
|
||||
ID3D12Device* device,
|
||||
ResourceUploadBatch& upload,
|
||||
const RenderTargetState& rtState,
|
||||
const wchar_t* fontName,
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE cpuDescriptor, D3D12_GPU_DESCRIPTOR_HANDLE gpuDescriptor)
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE cpuDescriptor, D3D12_GPU_DESCRIPTOR_HANDLE gpuDescriptor) noexcept(false)
|
||||
: m_layout{},
|
||||
m_foregroundColor(1.f, 1.f, 1.f, 1.f),
|
||||
m_debugOutput(false),
|
||||
|
@ -51,7 +51,7 @@ TextConsole::TextConsole(
|
|||
}
|
||||
#else
|
||||
_Use_decl_annotations_
|
||||
TextConsole::TextConsole(ID3D11DeviceContext* context, const wchar_t* fontName)
|
||||
TextConsole::TextConsole(ID3D11DeviceContext* context, const wchar_t* fontName) noexcept(false)
|
||||
: m_layout{},
|
||||
m_foregroundColor(1.f, 1.f, 1.f, 1.f),
|
||||
m_debugOutput(false),
|
||||
|
@ -64,7 +64,7 @@ TextConsole::TextConsole(ID3D11DeviceContext* context, const wchar_t* fontName)
|
|||
}
|
||||
#endif
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
void TextConsole::Render(_In_ ID3D12GraphicsCommandList* commandList)
|
||||
#else
|
||||
void TextConsole::Render()
|
||||
|
@ -82,7 +82,7 @@ void TextConsole::Render()
|
|||
|
||||
XMVECTOR foregroundColor = XMLoadFloat4(&m_foregroundColor);
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
m_batch->Begin(commandList);
|
||||
#else
|
||||
m_batch->Begin();
|
||||
|
@ -106,7 +106,7 @@ void TextConsole::Render()
|
|||
m_batch->End();
|
||||
}
|
||||
|
||||
void TextConsole::Clear()
|
||||
void TextConsole::Clear() noexcept
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(m_mutex);
|
||||
|
||||
|
@ -222,7 +222,7 @@ void TextConsole::SetWindow(const RECT& layout)
|
|||
|
||||
m_layout = layout;
|
||||
|
||||
assert(m_font != 0);
|
||||
assert(m_font != nullptr);
|
||||
|
||||
float lineSpacing = m_font->GetLineSpacing();
|
||||
unsigned int rows = std::max<unsigned int>(1, static_cast<unsigned int>(float(layout.bottom - layout.top) / lineSpacing));
|
||||
|
@ -262,7 +262,7 @@ void TextConsole::SetWindow(const RECT& layout)
|
|||
}
|
||||
}
|
||||
|
||||
void TextConsole::ReleaseDevice()
|
||||
void TextConsole::ReleaseDevice() noexcept
|
||||
{
|
||||
m_batch.reset();
|
||||
m_font.reset();
|
||||
|
@ -271,7 +271,7 @@ void TextConsole::ReleaseDevice()
|
|||
#endif
|
||||
}
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
_Use_decl_annotations_
|
||||
void TextConsole::RestoreDevice(
|
||||
ID3D12Device* device,
|
||||
|
@ -390,21 +390,21 @@ void TextConsole::IncrementLine()
|
|||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
TextConsoleImage::TextConsoleImage() :
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
TextConsoleImage::TextConsoleImage() noexcept :
|
||||
TextConsole(),
|
||||
m_bgGpuDescriptor{},
|
||||
m_bgSize{}
|
||||
{
|
||||
}
|
||||
#else
|
||||
TextConsoleImage::TextConsoleImage() :
|
||||
TextConsoleImage::TextConsoleImage() noexcept :
|
||||
TextConsole()
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
_Use_decl_annotations_
|
||||
TextConsoleImage::TextConsoleImage(
|
||||
ID3D12Device* device,
|
||||
|
@ -413,7 +413,7 @@ TextConsoleImage::TextConsoleImage(
|
|||
const wchar_t* fontName,
|
||||
const wchar_t* image,
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE cpuDescriptorFont, D3D12_GPU_DESCRIPTOR_HANDLE gpuDescriptorFont,
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE cpuDescriptorImage, D3D12_GPU_DESCRIPTOR_HANDLE gpuDescriptorImage) :
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE cpuDescriptorImage, D3D12_GPU_DESCRIPTOR_HANDLE gpuDescriptorImage) noexcept(false) :
|
||||
TextConsole(),
|
||||
m_bgGpuDescriptor{},
|
||||
m_bgSize{}
|
||||
|
@ -424,14 +424,14 @@ TextConsoleImage::TextConsoleImage(
|
|||
}
|
||||
#else
|
||||
_Use_decl_annotations_
|
||||
TextConsoleImage::TextConsoleImage(ID3D11DeviceContext* context, const wchar_t* fontName, const wchar_t* image) :
|
||||
TextConsoleImage::TextConsoleImage(ID3D11DeviceContext* context, const wchar_t* fontName, const wchar_t* image) noexcept(false) :
|
||||
TextConsole()
|
||||
{
|
||||
RestoreDevice(context, fontName, image);
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
void TextConsoleImage::Render(_In_ ID3D12GraphicsCommandList* commandList)
|
||||
{
|
||||
m_batch->Begin(commandList);
|
||||
|
@ -473,7 +473,7 @@ void TextConsoleImage::SetWindow(const RECT& fullscreen, bool useSafeRect)
|
|||
auto width = UINT(std::max<LONG>(fullscreen.right - fullscreen.left, 1));
|
||||
auto height = UINT(std::max<LONG>(fullscreen.bottom - fullscreen.top, 1));
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
D3D12_VIEWPORT vp = { 0.0f, 0.0f, static_cast<float>(width), static_cast<float>(height),
|
||||
D3D12_DEFAULT_VIEWPORT_MIN_DEPTH, D3D12_DEFAULT_VIEWPORT_MAX_DEPTH };
|
||||
m_batch->SetViewport(vp);
|
||||
|
@ -483,14 +483,14 @@ void TextConsoleImage::SetWindow(const RECT& fullscreen, bool useSafeRect)
|
|||
#endif
|
||||
}
|
||||
|
||||
void TextConsoleImage::ReleaseDevice()
|
||||
void TextConsoleImage::ReleaseDevice() noexcept
|
||||
{
|
||||
TextConsole::ReleaseDevice();
|
||||
|
||||
m_background.Reset();
|
||||
}
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
_Use_decl_annotations_
|
||||
void TextConsoleImage::RestoreDevice(
|
||||
ID3D12Device* device,
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
#include "RenderTargetState.h"
|
||||
#include "ResourceUploadBatch.h"
|
||||
#endif
|
||||
|
@ -30,16 +30,16 @@ namespace DX
|
|||
class TextConsole
|
||||
{
|
||||
public:
|
||||
TextConsole();
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
TextConsole() noexcept;
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
TextConsole(
|
||||
_In_ ID3D12Device* device,
|
||||
DirectX::ResourceUploadBatch& upload,
|
||||
const DirectX::RenderTargetState& rtState,
|
||||
_In_z_ const wchar_t* fontName,
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE cpuDescriptor, D3D12_GPU_DESCRIPTOR_HANDLE gpuDescriptor);
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE cpuDescriptor, D3D12_GPU_DESCRIPTOR_HANDLE gpuDescriptor) noexcept(false);
|
||||
#elif defined(__d3d11_h__) || defined(__d3d11_x_h__)
|
||||
TextConsole(_In_ ID3D11DeviceContext* context, _In_z_ const wchar_t* fontName);
|
||||
TextConsole(_In_ ID3D11DeviceContext* context, _In_z_ const wchar_t* fontName) noexcept(false);
|
||||
#else
|
||||
# error Please #include <d3d11.h> or <d3d12.h>
|
||||
#endif
|
||||
|
@ -50,13 +50,13 @@ namespace DX
|
|||
TextConsole(TextConsole const&) = delete;
|
||||
TextConsole& operator= (TextConsole const&) = delete;
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
void Render(_In_ ID3D12GraphicsCommandList* commandList);
|
||||
#else
|
||||
void Render();
|
||||
#endif
|
||||
|
||||
void Clear();
|
||||
void Clear() noexcept;
|
||||
|
||||
void Write(_In_z_ const wchar_t* str);
|
||||
void XM_CALLCONV Write(DirectX::FXMVECTOR color, _In_z_ const wchar_t* str);
|
||||
|
@ -73,8 +73,8 @@ namespace DX
|
|||
|
||||
void SetDebugOutput(bool debug) { m_debugOutput = debug; }
|
||||
|
||||
void ReleaseDevice();
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
void ReleaseDevice() noexcept;
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
void RestoreDevice(
|
||||
_In_ ID3D12Device* device,
|
||||
DirectX::ResourceUploadBatch& upload,
|
||||
|
@ -134,8 +134,8 @@ namespace DX
|
|||
class TextConsoleImage : public TextConsole
|
||||
{
|
||||
public:
|
||||
TextConsoleImage();
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
TextConsoleImage() noexcept;
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
TextConsoleImage(
|
||||
_In_ ID3D12Device* device,
|
||||
DirectX::ResourceUploadBatch& upload,
|
||||
|
@ -143,9 +143,9 @@ namespace DX
|
|||
_In_z_ const wchar_t* fontName,
|
||||
_In_z_ const wchar_t* image,
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE cpuDescriptorFont, D3D12_GPU_DESCRIPTOR_HANDLE gpuDescriptorFont,
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE cpuDescriptorImage, D3D12_GPU_DESCRIPTOR_HANDLE gpuDescriptorImage);
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE cpuDescriptorImage, D3D12_GPU_DESCRIPTOR_HANDLE gpuDescriptorImage) noexcept(false);
|
||||
#else
|
||||
TextConsoleImage(_In_ ID3D11DeviceContext* context, _In_z_ const wchar_t* fontName, _In_z_ const wchar_t* image);
|
||||
TextConsoleImage(_In_ ID3D11DeviceContext* context, _In_z_ const wchar_t* fontName, _In_z_ const wchar_t* image) noexcept(false);
|
||||
#endif
|
||||
|
||||
TextConsoleImage(TextConsoleImage&&) = delete;
|
||||
|
@ -154,7 +154,7 @@ namespace DX
|
|||
TextConsoleImage(TextConsoleImage const&) = delete;
|
||||
TextConsoleImage& operator= (TextConsoleImage const&) = delete;
|
||||
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
void Render(_In_ ID3D12GraphicsCommandList* commandList);
|
||||
#else
|
||||
void Render();
|
||||
|
@ -163,8 +163,8 @@ namespace DX
|
|||
void SetWindow(const RECT& layout) = delete;
|
||||
void SetWindow(const RECT& fullscreen, bool useSafeRect);
|
||||
|
||||
void ReleaseDevice();
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
void ReleaseDevice() noexcept;
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
void RestoreDevice(
|
||||
_In_ ID3D12Device* device,
|
||||
DirectX::ResourceUploadBatch& upload,
|
||||
|
@ -185,7 +185,7 @@ namespace DX
|
|||
#endif
|
||||
|
||||
private:
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__)
|
||||
#if defined(__d3d12_h__) || defined(__d3d12_x_h__) || defined(__XBOX_D3D12_X__)
|
||||
D3D12_GPU_DESCRIPTOR_HANDLE m_bgGpuDescriptor;
|
||||
DirectX::XMUINT2 m_bgSize;
|
||||
Microsoft::WRL::ComPtr<ID3D12Resource> m_background;
|
||||
|
@ -194,4 +194,4 @@ namespace DX
|
|||
#endif
|
||||
RECT m_fullscreen;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,6 +10,10 @@
|
|||
#include "pch.h"
|
||||
#include "WAVFileReader.h"
|
||||
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic ignored "-Wunused-const-variable"
|
||||
#endif
|
||||
|
||||
#ifndef MAKEFOURCC
|
||||
#define MAKEFOURCC(ch0, ch1, ch2, ch3) \
|
||||
((uint32_t)(uint8_t)(ch0) | ((uint32_t)(uint8_t)(ch1) << 8) | \
|
||||
|
@ -18,24 +22,24 @@
|
|||
|
||||
namespace
|
||||
{
|
||||
struct handle_closer { void operator()(HANDLE h) { if (h) CloseHandle(h); } };
|
||||
struct handle_closer { void operator()(HANDLE h) noexcept { if (h) CloseHandle(h); } };
|
||||
|
||||
typedef std::unique_ptr<void, handle_closer> ScopedHandle;
|
||||
using ScopedHandle = std::unique_ptr<void, handle_closer>;
|
||||
|
||||
inline HANDLE safe_handle(HANDLE h) { return (h == INVALID_HANDLE_VALUE) ? nullptr : h; }
|
||||
inline HANDLE safe_handle(HANDLE h) noexcept { return (h == INVALID_HANDLE_VALUE) ? nullptr : h; }
|
||||
|
||||
//---------------------------------------------------------------------------------
|
||||
// .WAV files
|
||||
//---------------------------------------------------------------------------------
|
||||
const uint32_t FOURCC_RIFF_TAG = MAKEFOURCC('R', 'I', 'F', 'F');
|
||||
const uint32_t FOURCC_FORMAT_TAG = MAKEFOURCC('f', 'm', 't', ' ');
|
||||
const uint32_t FOURCC_DATA_TAG = MAKEFOURCC('d', 'a', 't', 'a');
|
||||
const uint32_t FOURCC_WAVE_FILE_TAG = MAKEFOURCC('W', 'A', 'V', 'E');
|
||||
const uint32_t FOURCC_XWMA_FILE_TAG = MAKEFOURCC('X', 'W', 'M', 'A');
|
||||
const uint32_t FOURCC_DLS_SAMPLE = MAKEFOURCC('w', 's', 'm', 'p');
|
||||
const uint32_t FOURCC_MIDI_SAMPLE = MAKEFOURCC('s', 'm', 'p', 'l');
|
||||
const uint32_t FOURCC_XWMA_DPDS = MAKEFOURCC('d', 'p', 'd', 's');
|
||||
const uint32_t FOURCC_XMA_SEEK = MAKEFOURCC('s', 'e', 'e', 'k');
|
||||
constexpr uint32_t FOURCC_RIFF_TAG = MAKEFOURCC('R', 'I', 'F', 'F');
|
||||
constexpr uint32_t FOURCC_FORMAT_TAG = MAKEFOURCC('f', 'm', 't', ' ');
|
||||
constexpr uint32_t FOURCC_DATA_TAG = MAKEFOURCC('d', 'a', 't', 'a');
|
||||
constexpr uint32_t FOURCC_WAVE_FILE_TAG = MAKEFOURCC('W', 'A', 'V', 'E');
|
||||
constexpr uint32_t FOURCC_XWMA_FILE_TAG = MAKEFOURCC('X', 'W', 'M', 'A');
|
||||
constexpr uint32_t FOURCC_DLS_SAMPLE = MAKEFOURCC('w', 's', 'm', 'p');
|
||||
constexpr uint32_t FOURCC_MIDI_SAMPLE = MAKEFOURCC('s', 'm', 'p', 'l');
|
||||
constexpr uint32_t FOURCC_XWMA_DPDS = MAKEFOURCC('d', 'p', 'd', 's');
|
||||
constexpr uint32_t FOURCC_XMA_SEEK = MAKEFOURCC('s', 'e', 'e', 'k');
|
||||
|
||||
#pragma pack(push,1)
|
||||
struct RIFFChunk
|
||||
|
@ -114,7 +118,7 @@ namespace
|
|||
const RIFFChunk* FindChunk(
|
||||
_In_reads_bytes_(sizeBytes) const uint8_t* data,
|
||||
_In_ size_t sizeBytes,
|
||||
_In_ uint32_t tag)
|
||||
_In_ uint32_t tag) noexcept
|
||||
{
|
||||
if (!data)
|
||||
return nullptr;
|
||||
|
@ -144,7 +148,7 @@ namespace
|
|||
_Outptr_ const uint8_t** pdata,
|
||||
_Out_ uint32_t* dataSize,
|
||||
_Out_ bool& dpds,
|
||||
_Out_ bool& seek)
|
||||
_Out_ bool& seek) noexcept
|
||||
{
|
||||
if (!wavData || !pwfx)
|
||||
return E_POINTER;
|
||||
|
@ -311,7 +315,7 @@ namespace
|
|||
_In_reads_bytes_(wavDataSize) const uint8_t* wavData,
|
||||
_In_ size_t wavDataSize,
|
||||
_Out_ uint32_t* pLoopStart,
|
||||
_Out_ uint32_t* pLoopLength)
|
||||
_Out_ uint32_t* pLoopLength) noexcept
|
||||
{
|
||||
if (!wavData || !pLoopStart || !pLoopLength)
|
||||
return E_POINTER;
|
||||
|
@ -405,7 +409,7 @@ namespace
|
|||
{
|
||||
// Return 'forward' loop
|
||||
*pLoopStart = loops[j].start;
|
||||
*pLoopLength = loops[j].end + loops[j].start + 1;
|
||||
*pLoopLength = loops[j].end - loops[j].start + 1;
|
||||
return S_OK;
|
||||
}
|
||||
}
|
||||
|
@ -423,7 +427,7 @@ namespace
|
|||
_In_ size_t wavDataSize,
|
||||
_In_ uint32_t tag,
|
||||
_Outptr_result_maybenull_ const uint32_t** pData,
|
||||
_Out_ uint32_t* dataCount)
|
||||
_Out_ uint32_t* dataCount) noexcept
|
||||
{
|
||||
if (!wavData || !pData || !dataCount)
|
||||
return E_POINTER;
|
||||
|
@ -484,7 +488,7 @@ namespace
|
|||
HRESULT LoadAudioFromFile(
|
||||
_In_z_ const wchar_t* szFileName,
|
||||
_Inout_ std::unique_ptr<uint8_t[]>& wavData,
|
||||
_Out_ DWORD* bytesRead)
|
||||
_Out_ DWORD* bytesRead) noexcept
|
||||
{
|
||||
if (!szFileName)
|
||||
return E_INVALIDARG;
|
||||
|
@ -559,7 +563,7 @@ HRESULT DX::LoadWAVAudioInMemory(
|
|||
size_t wavDataSize,
|
||||
const WAVEFORMATEX** wfx,
|
||||
const uint8_t** startAudio,
|
||||
uint32_t* audioBytes)
|
||||
uint32_t* audioBytes) noexcept
|
||||
{
|
||||
if (!wavData || !wfx || !startAudio || !audioBytes)
|
||||
return E_INVALIDARG;
|
||||
|
@ -590,7 +594,7 @@ HRESULT DX::LoadWAVAudioFromFile(
|
|||
std::unique_ptr<uint8_t[]>& wavData,
|
||||
const WAVEFORMATEX** wfx,
|
||||
const uint8_t** startAudio,
|
||||
uint32_t* audioBytes)
|
||||
uint32_t* audioBytes) noexcept
|
||||
{
|
||||
if (!szFileName || !wfx || !startAudio || !audioBytes)
|
||||
return E_INVALIDARG;
|
||||
|
@ -620,7 +624,7 @@ _Use_decl_annotations_
|
|||
HRESULT DX::LoadWAVAudioInMemoryEx(
|
||||
const uint8_t* wavData,
|
||||
size_t wavDataSize,
|
||||
DX::WAVData& result)
|
||||
DX::WAVData& result) noexcept
|
||||
{
|
||||
if (!wavData)
|
||||
return E_INVALIDARG;
|
||||
|
@ -664,7 +668,7 @@ _Use_decl_annotations_
|
|||
HRESULT DX::LoadWAVAudioFromFileEx(
|
||||
const wchar_t* szFileName,
|
||||
std::unique_ptr<uint8_t[]>& wavData,
|
||||
DX::WAVData& result)
|
||||
DX::WAVData& result) noexcept
|
||||
{
|
||||
if (!szFileName)
|
||||
return E_INVALIDARG;
|
||||
|
|
|
@ -9,8 +9,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
#include <objbase.h>
|
||||
|
||||
#include <cstdint>
|
||||
#include <memory>
|
||||
#include <mmreg.h>
|
||||
|
||||
|
@ -21,7 +22,7 @@
|
|||
|
||||
namespace DX
|
||||
{
|
||||
inline uint32_t GetFormatTag(const WAVEFORMATEX* wfx)
|
||||
inline uint32_t GetFormatTag(_In_ const WAVEFORMATEX* wfx) noexcept
|
||||
{
|
||||
if (wfx->wFormatTag == WAVE_FORMAT_EXTENSIBLE)
|
||||
{
|
||||
|
@ -51,14 +52,14 @@ namespace DX
|
|||
_In_ size_t wavDataSize,
|
||||
_Outptr_ const WAVEFORMATEX** wfx,
|
||||
_Outptr_ const uint8_t** startAudio,
|
||||
_Out_ uint32_t* audioBytes);
|
||||
_Out_ uint32_t* audioBytes) noexcept;
|
||||
|
||||
HRESULT LoadWAVAudioFromFile(
|
||||
_In_z_ const wchar_t* szFileName,
|
||||
_Inout_ std::unique_ptr<uint8_t[]>& wavData,
|
||||
_Outptr_ const WAVEFORMATEX** wfx,
|
||||
_Outptr_ const uint8_t** startAudio,
|
||||
_Out_ uint32_t* audioBytes);
|
||||
_Out_ uint32_t* audioBytes) noexcept;
|
||||
|
||||
struct WAVData
|
||||
{
|
||||
|
@ -70,7 +71,7 @@ namespace DX
|
|||
const uint32_t* seek; // Note: XMA Seek data is Big-Endian
|
||||
uint32_t seekCount;
|
||||
|
||||
size_t GetSampleDuration() const
|
||||
size_t GetSampleDuration() const noexcept
|
||||
{
|
||||
if (!wfx || !wfx->nChannels)
|
||||
return 0;
|
||||
|
@ -101,14 +102,14 @@ namespace DX
|
|||
}
|
||||
break;
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
|
||||
case WAVE_FORMAT_XMA2:
|
||||
return reinterpret_cast<const XMA2WAVEFORMATEX*>(wfx)->SamplesEncoded;
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
default:
|
||||
if (wfx->wBitsPerSample > 0)
|
||||
|
@ -121,7 +122,7 @@ namespace DX
|
|||
return 0;
|
||||
}
|
||||
|
||||
size_t GetSampleDurationMS() const
|
||||
size_t GetSampleDurationMS() const noexcept
|
||||
{
|
||||
if (!wfx || !wfx->nSamplesPerSec)
|
||||
return 0;
|
||||
|
@ -134,10 +135,10 @@ namespace DX
|
|||
HRESULT LoadWAVAudioInMemoryEx(
|
||||
_In_reads_bytes_(wavDataSize) const uint8_t* wavData,
|
||||
_In_ size_t wavDataSize,
|
||||
_Out_ WAVData& result);
|
||||
_Out_ WAVData& result) noexcept;
|
||||
|
||||
HRESULT LoadWAVAudioFromFileEx(
|
||||
_In_z_ const wchar_t* szFileName,
|
||||
_Inout_ std::unique_ptr<uint8_t[]>& wavData,
|
||||
_Out_ WAVData& result);
|
||||
}
|
||||
_Out_ WAVData& result) noexcept;
|
||||
}
|
||||
|
|
|
@ -2424,9 +2424,9 @@ struct D3DX12_MESH_SHADER_PIPELINE_STATE_DESC
|
|||
D3D12_PIPELINE_STATE_FLAGS Flags;
|
||||
};
|
||||
|
||||
// CD3DX12_PIPELINE_STATE_STREAM2 Works on Vibranium+ (where there is a new mesh shader pipeline).
|
||||
// Use CD3DX12_PIPELINE_STATE_STREAM1 for RS3+ (where there is a new view instancing subobject).
|
||||
// Use CD3DX12_PIPELINE_STATE_STREAM for RS2+ support.
|
||||
// CD3DX12_PIPELINE_STATE_STREAM2 Works on OS Build 19041+ (where there is a new mesh shader pipeline).
|
||||
// Use CD3DX12_PIPELINE_STATE_STREAM1 for OS Build 16299+ (where there is a new view instancing subobject).
|
||||
// Use CD3DX12_PIPELINE_STATE_STREAM for OS Build 15063+ support.
|
||||
struct CD3DX12_PIPELINE_STATE_STREAM2
|
||||
{
|
||||
CD3DX12_PIPELINE_STATE_STREAM2() = default;
|
||||
|
@ -2545,8 +2545,8 @@ struct CD3DX12_PIPELINE_STATE_STREAM2
|
|||
#endif // NTDDI_WIN10_VB
|
||||
|
||||
#if defined(NTDDI_WIN10_RS3) && (NTDDI_VERSION >= NTDDI_WIN10_RS3)
|
||||
// CD3DX12_PIPELINE_STATE_STREAM1 Works on RS3+ (where there is a new view instancing subobject).
|
||||
// Use CD3DX12_PIPELINE_STATE_STREAM for RS2+ support.
|
||||
// CD3DX12_PIPELINE_STATE_STREAM1 Works on OS Build 16299+ (where there is a new view instancing subobject).
|
||||
// Use CD3DX12_PIPELINE_STATE_STREAM for OS Build 15063+ support.
|
||||
struct CD3DX12_PIPELINE_STATE_STREAM1
|
||||
{
|
||||
CD3DX12_PIPELINE_STATE_STREAM1() = default;
|
||||
|
@ -2721,7 +2721,7 @@ struct CD3DX12_PIPELINE_MESH_STATE_STREAM
|
|||
};
|
||||
#endif // NTDDI_WIN10_VB
|
||||
|
||||
// CD3DX12_PIPELINE_STATE_STREAM works on RS2+ but does not support new subobject(s) added in RS3+.
|
||||
// CD3DX12_PIPELINE_STATE_STREAM works on OS Build 15063+ but does not support new subobject(s) added in OS Build 16299+.
|
||||
// See CD3DX12_PIPELINE_STATE_STREAM1 for instance.
|
||||
struct CD3DX12_PIPELINE_STATE_STREAM
|
||||
{
|
||||
|
|
|
@ -1426,10 +1426,12 @@ X3DAUDIO_HANDLE& AudioEngine::Get3DHandle() const noexcept
|
|||
|
||||
|
||||
// Static methods.
|
||||
#ifdef _XBOX_ONE
|
||||
#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_GAMES)
|
||||
#include <mmdeviceapi.h>
|
||||
#elif defined(_XBOX_ONE)
|
||||
#include <Windows.Media.Devices.h>
|
||||
#include <wrl.h>
|
||||
#elif defined(USING_XAUDIO2_REDIST)
|
||||
#elif defined(USING_XAUDIO2_REDIST) || defined(_GAMING_DESKTOP)
|
||||
#include <mmdeviceapi.h>
|
||||
#include <functiondiscoverykeys_devpkey.h>
|
||||
#elif (_WIN32_WINNT >= _WIN32_WINNT_WIN8)
|
||||
|
@ -1445,7 +1447,31 @@ std::vector<AudioEngine::RendererDetail> AudioEngine::GetRendererDetails()
|
|||
{
|
||||
std::vector<RendererDetail> list;
|
||||
|
||||
#ifdef _XBOX_ONE
|
||||
#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_GAMES)
|
||||
|
||||
ComPtr<IMMDeviceEnumerator> devEnum;
|
||||
HRESULT hr = CoCreateInstance(__uuidof(MMDeviceEnumerator), nullptr, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(devEnum.GetAddressOf()));
|
||||
ThrowIfFailed(hr);
|
||||
|
||||
ComPtr<IMMDeviceCollection> devices;
|
||||
hr = devEnum->EnumAudioEndpoints(eRender, DEVICE_STATE_ACTIVE, &devices);
|
||||
ThrowIfFailed(hr);
|
||||
|
||||
ComPtr<IMMDevice> endpoint;
|
||||
ThrowIfFailed(devices->Item(0, endpoint.GetAddressOf()));
|
||||
|
||||
LPWSTR id = nullptr;
|
||||
ThrowIfFailed(endpoint->GetId(&id));
|
||||
|
||||
RendererDetail device;
|
||||
device.deviceId = id;
|
||||
device.description = L"Default";
|
||||
|
||||
CoTaskMemFree(id);
|
||||
|
||||
list.emplace_back(device);
|
||||
|
||||
#elif defined(_XBOX_ONE)
|
||||
|
||||
using namespace Microsoft::WRL;
|
||||
using namespace Microsoft::WRL::Wrappers;
|
||||
|
@ -1465,7 +1491,7 @@ std::vector<AudioEngine::RendererDetail> AudioEngine::GetRendererDetails()
|
|||
device.description = L"Default";
|
||||
list.emplace_back(device);
|
||||
|
||||
#elif defined(USING_XAUDIO2_REDIST)
|
||||
#elif defined(USING_XAUDIO2_REDIST) || defined(_GAMING_DESKTOP)
|
||||
|
||||
ComPtr<IMMDeviceEnumerator> devEnum;
|
||||
HRESULT hr = CoCreateInstance(__uuidof(MMDeviceEnumerator), nullptr, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(devEnum.GetAddressOf()));
|
||||
|
|
|
@ -23,8 +23,10 @@ class DynamicSoundEffectInstance::Impl : public IVoiceNotify
|
|||
{
|
||||
public:
|
||||
Impl(_In_ AudioEngine* engine,
|
||||
_In_ DynamicSoundEffectInstance* object, std::function<void(DynamicSoundEffectInstance*)>& bufferNeeded,
|
||||
int sampleRate, int channels, int sampleBits, SOUND_EFFECT_INSTANCE_FLAGS flags) :
|
||||
_In_ DynamicSoundEffectInstance* object,
|
||||
std::function<void(DynamicSoundEffectInstance*)>& bufferNeeded,
|
||||
int sampleRate, int channels, int sampleBits,
|
||||
SOUND_EFFECT_INSTANCE_FLAGS flags) :
|
||||
mBase(),
|
||||
mBufferNeeded(nullptr),
|
||||
mObject(object)
|
||||
|
@ -238,9 +240,13 @@ void DynamicSoundEffectInstance::Impl::OnUpdate()
|
|||
|
||||
// Public constructors
|
||||
_Use_decl_annotations_
|
||||
DynamicSoundEffectInstance::DynamicSoundEffectInstance(AudioEngine* engine,
|
||||
std::function<void(DynamicSoundEffectInstance*)> bufferNeeded,
|
||||
int sampleRate, int channels, int sampleBits, SOUND_EFFECT_INSTANCE_FLAGS flags) :
|
||||
DynamicSoundEffectInstance::DynamicSoundEffectInstance(
|
||||
AudioEngine* engine,
|
||||
std::function<void(DynamicSoundEffectInstance*)> bufferNeeded,
|
||||
int sampleRate,
|
||||
int channels,
|
||||
int sampleBits,
|
||||
SOUND_EFFECT_INSTANCE_FLAGS flags) :
|
||||
pImpl(std::make_unique<Impl>(engine, this, bufferNeeded, sampleRate, channels, sampleBits, flags))
|
||||
{
|
||||
}
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
#define DIRECTX_ENABLE_XWMA
|
||||
#endif
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
#if (defined(_XBOX_ONE) && defined(_TITLE)) || defined(_GAMING_XBOX)
|
||||
#define DIRECTX_ENABLE_XMA2
|
||||
#endif
|
||||
|
||||
|
@ -116,7 +116,7 @@ namespace DirectX
|
|||
if (eng->GetChannelMask() & SPEAKER_LOW_FREQUENCY)
|
||||
mFlags = flags | SoundEffectInstance_UseRedirectLFE;
|
||||
else
|
||||
mFlags = static_cast<SOUND_EFFECT_INSTANCE_FLAGS>(static_cast<unsigned int>(flags) & ~static_cast<unsigned int>(SoundEffectInstance_UseRedirectLFE));
|
||||
mFlags = flags & ~SoundEffectInstance_UseRedirectLFE;
|
||||
|
||||
memset(&mDSPSettings, 0, sizeof(X3DAUDIO_DSP_SETTINGS));
|
||||
assert(wfx != nullptr);
|
||||
|
@ -315,7 +315,7 @@ namespace DirectX
|
|||
if (engine->GetChannelMask() & SPEAKER_LOW_FREQUENCY)
|
||||
mFlags = mFlags | SoundEffectInstance_UseRedirectLFE;
|
||||
else
|
||||
mFlags = static_cast<SOUND_EFFECT_INSTANCE_FLAGS>(static_cast<unsigned int>(mFlags) & ~static_cast<unsigned int>(SoundEffectInstance_UseRedirectLFE));
|
||||
mFlags = mFlags & ~SoundEffectInstance_UseRedirectLFE;
|
||||
|
||||
mDSPSettings.DstChannelCount = engine->GetOutputChannels();
|
||||
}
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
#include <list>
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
#if (defined(_XBOX_ONE) && defined(_TITLE)) || defined(_GAMING_XBOX)
|
||||
#include <apu.h>
|
||||
#include <shapexmacontext.h>
|
||||
#endif
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
#include "PlatformHelpers.h"
|
||||
#include "SoundCommon.h"
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
#if (defined(_XBOX_ONE) && defined(_TITLE)) || defined(_GAMING_XBOX)
|
||||
#include <apu.h>
|
||||
#include <shapexmacontext.h>
|
||||
#endif
|
||||
|
@ -54,7 +54,7 @@ namespace
|
|||
if (!wfx)
|
||||
return 0;
|
||||
|
||||
size_t buffer = wfx->nAvgBytesPerSec * 2;
|
||||
size_t buffer = size_t(wfx->nAvgBytesPerSec) * 2u;
|
||||
|
||||
#ifdef DIRECTX_ENABLE_XMA2
|
||||
if (tag == WAVE_FORMAT_XMA2)
|
||||
|
@ -316,6 +316,8 @@ public:
|
|||
|
||||
struct BufferNotify : public IVoiceNotify
|
||||
{
|
||||
BufferNotify() : mParent(nullptr), mIndex(0) {}
|
||||
|
||||
void Set(SoundStreamInstance::Impl* parent, size_t index) noexcept(true) { mParent = parent; mIndex = index; }
|
||||
|
||||
void __cdecl OnBufferEnd() override
|
||||
|
@ -348,6 +350,16 @@ public:
|
|||
uint32_t startPosition;
|
||||
OVERLAPPED request;
|
||||
BufferNotify notify;
|
||||
|
||||
Packets() :
|
||||
state(State::FREE),
|
||||
buffer(nullptr),
|
||||
stitchBuffer(nullptr),
|
||||
valid(0),
|
||||
audioBytes(0),
|
||||
startPosition(0),
|
||||
request{},
|
||||
notify{} {}
|
||||
};
|
||||
|
||||
Packets mPackets[MAX_BUFFER_COUNT];
|
||||
|
@ -498,7 +510,7 @@ HRESULT SoundStreamInstance::Impl::ReadBuffers() noexcept
|
|||
uint32_t readBuffer = mCurrentDiskReadBuffer;
|
||||
for (uint32_t j = 0; j < MAX_BUFFER_COUNT; ++j)
|
||||
{
|
||||
uint32_t entry = (j + readBuffer) % MAX_BUFFER_COUNT;
|
||||
uint32_t entry = (j + readBuffer) % uint32_t(MAX_BUFFER_COUNT);
|
||||
if (mPackets[entry].state == State::FREE)
|
||||
{
|
||||
if (mCurrentPosition < mLengthInBytes)
|
||||
|
@ -521,7 +533,7 @@ HRESULT SoundStreamInstance::Impl::ReadBuffers() noexcept
|
|||
|
||||
mCurrentPosition += cbValid;
|
||||
|
||||
mCurrentDiskReadBuffer = (entry + 1) % MAX_BUFFER_COUNT;
|
||||
mCurrentDiskReadBuffer = (entry + 1) % uint32_t(MAX_BUFFER_COUNT);
|
||||
|
||||
mPackets[entry].state = State::PENDING;
|
||||
|
||||
|
@ -677,7 +689,7 @@ HRESULT SoundStreamInstance::Impl::PlayBuffers() noexcept
|
|||
uint32_t seekOffset = mPackets[mCurrentPlayBuffer].startPosition / mBlockAlign;
|
||||
if (seekOffset > MAX_STREAMING_SEEK_PACKETS)
|
||||
{
|
||||
DebugTrace("ERROR: xWMA packet seek count exceeds %u\n", MAX_STREAMING_SEEK_PACKETS);
|
||||
DebugTrace("ERROR: xWMA packet seek count exceeds %zu\n", MAX_STREAMING_SEEK_PACKETS);
|
||||
return E_FAIL;
|
||||
}
|
||||
else if (seekOffset > 0)
|
||||
|
@ -704,7 +716,7 @@ HRESULT SoundStreamInstance::Impl::PlayBuffers() noexcept
|
|||
}
|
||||
|
||||
mPackets[mCurrentPlayBuffer].state = State::PLAYING;
|
||||
mCurrentPlayBuffer = (mCurrentPlayBuffer + 1) % MAX_BUFFER_COUNT;
|
||||
mCurrentPlayBuffer = (mCurrentPlayBuffer + 1) % uint32_t(MAX_BUFFER_COUNT);
|
||||
}
|
||||
|
||||
return S_OK;
|
||||
|
|
|
@ -400,7 +400,7 @@ namespace
|
|||
{
|
||||
// Return 'forward' loop
|
||||
*pLoopStart = loops[j].start;
|
||||
*pLoopLength = loops[j].end + loops[j].start + 1;
|
||||
*pLoopLength = loops[j].end - loops[j].start + 1;
|
||||
return S_OK;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
#include "PlatformHelpers.h"
|
||||
#include "SoundCommon.h"
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
#if (defined(_XBOX_ONE) && defined(_TITLE)) || defined(_GAMING_XBOX)
|
||||
#include <apu.h>
|
||||
#include <shapexmacontext.h>
|
||||
#endif
|
||||
|
|
|
@ -44,7 +44,7 @@ namespace DirectX
|
|||
bool HasNames() const noexcept;
|
||||
bool IsStreamingBank() const noexcept;
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
#if (defined(_XBOX_ONE) && defined(_TITLE)) || defined(_GAMING_XBOX)
|
||||
bool HasXMA() const noexcept;
|
||||
#endif
|
||||
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="Inc\BufferHelpers.h" />
|
||||
<ClInclude Include="Inc\CommonStates.h" />
|
||||
<ClInclude Include="Inc\DDSTextureLoader.h" />
|
||||
<ClInclude Include="Inc\DirectXHelpers.h" />
|
||||
|
@ -40,7 +41,6 @@
|
|||
<ClInclude Include="Inc\WICTextureLoader.h" />
|
||||
<ClInclude Include="Src\AlignedNew.h" />
|
||||
<ClInclude Include="Src\Bezier.h" />
|
||||
<ClInclude Include="Src\ConstantBuffer.h" />
|
||||
<ClInclude Include="Src\BinaryReader.h" />
|
||||
<ClInclude Include="Src\DemandCreate.h" />
|
||||
<ClInclude Include="Src\EffectCommon.h" />
|
||||
|
@ -57,11 +57,13 @@
|
|||
<ClCompile Include="Src\AlphaTestEffect.cpp" />
|
||||
<ClCompile Include="Src\BasicEffect.cpp" />
|
||||
<ClCompile Include="Src\BasicPostProcess.cpp" />
|
||||
<ClCompile Include="Src\BufferHelpers.cpp" />
|
||||
<ClCompile Include="Src\CommonStates.cpp" />
|
||||
<ClCompile Include="Src\DDSTextureLoader.cpp" />
|
||||
<ClCompile Include="Src\DebugEffect.cpp" />
|
||||
<ClCompile Include="Src\DGSLEffect.cpp" />
|
||||
<ClCompile Include="Src\DGSLEffectFactory.cpp" />
|
||||
<ClCompile Include="Src\DirectXHelpers.cpp" />
|
||||
<ClCompile Include="Src\DualPostProcess.cpp" />
|
||||
<ClCompile Include="Src\DualTextureEffect.cpp" />
|
||||
<ClCompile Include="Src\BinaryReader.cpp" />
|
||||
|
@ -270,6 +272,14 @@
|
|||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTextureVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMap.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMap.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnelNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnelNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLighting.inc" />
|
||||
|
@ -284,6 +294,14 @@
|
|||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpecular.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpecularNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpecularNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnelNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnelNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMap.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMap.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapBn.inc" />
|
||||
|
@ -304,6 +322,10 @@
|
|||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingBnSM4.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingBnSM4.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingSM4.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingSM4.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTxNoFog.inc" />
|
||||
|
@ -494,6 +516,7 @@
|
|||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>DirectXTK</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>10.0.14393.0</WindowsTargetPlatformVersion>
|
||||
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
|
@ -638,6 +661,22 @@
|
|||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
<Target Name="ATGEnsureShaders" BeforeTargets="PrepareForBuild">
|
||||
<Exec Condition="!Exists('src/Shaders/Compiled/SpriteEffect_SpriteVertexShader.inc')" WorkingDirectory="$(ProjectDir)src/Shaders" Command="CompileShaders" />
|
||||
<PropertyGroup>
|
||||
<_ATGFXCPath>$(WindowsSDK_ExecutablePath_x64.Split(';')[0])</_ATGFXCPath>
|
||||
<_ATGFXCPath>$(_ATGFXCPath.Replace("x64",""))</_ATGFXCPath>
|
||||
<_ATGFXCPath Condition="'$(_ATGFXCPath)' != '' and !HasTrailingSlash('$(_ATGFXCPath)')">$(_ATGFXCPath)\</_ATGFXCPath>
|
||||
</PropertyGroup>
|
||||
<Exec Condition="!Exists('src/Shaders/Compiled/SpriteEffect_SpriteVertexShader.inc')" WorkingDirectory="$(ProjectDir)src/Shaders" Command="CompileShaders" EnvironmentVariables="WindowsSdkVerBinPath=$(_ATGFXCPath)" />
|
||||
<PropertyGroup>
|
||||
<_ATGFXCPath />
|
||||
</PropertyGroup>
|
||||
</Target>
|
||||
<Target Name="ATGDeleteShaders" AfterTargets="Clean">
|
||||
<ItemGroup>
|
||||
<_ATGShaderHeaders Include="$(ProjectDir)src/Shaders/Compiled/*.inc" Exclude="$(ProjectDir)src/Shaders/Compiled/*Xbox*.inc" />
|
||||
<_ATGShaderSymbols Include="$(ProjectDir)src/Shaders/Compiled/*.pdb" Exclude="$(ProjectDir)src/Shaders/Compiled/*Xbox*.pdb" />
|
||||
</ItemGroup>
|
||||
<Delete Files="@(_ATGShaderHeaders)" />
|
||||
<Delete Files="@(_ATGShaderSymbols)" />
|
||||
</Target>
|
||||
</Project>
|
|
@ -45,9 +45,6 @@
|
|||
<ClInclude Include="Inc\VertexTypes.h">
|
||||
<Filter>Inc</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="Src\ConstantBuffer.h">
|
||||
<Filter>Src</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="Src\pch.h">
|
||||
<Filter>Src</Filter>
|
||||
</ClInclude>
|
||||
|
@ -126,6 +123,9 @@
|
|||
<ClInclude Include="Inc\PostProcess.h">
|
||||
<Filter>Inc</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="Inc\BufferHelpers.h">
|
||||
<Filter>Inc</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="Src\CommonStates.cpp">
|
||||
|
@ -239,6 +239,12 @@
|
|||
<ClCompile Include="Src\PBREffectFactory.cpp">
|
||||
<Filter>Src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="Src\BufferHelpers.cpp">
|
||||
<Filter>Src</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="Src\DirectXHelpers.cpp">
|
||||
<Filter>Src</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Src\Shaders\CompileShaders.cmd">
|
||||
|
@ -1289,5 +1295,65 @@
|
|||
<Filter>Src\Shaders\Shared</Filter>
|
||||
</None>
|
||||
<None Include="README.md" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLighting.inc">
|
||||
<Filter>Src\Shaders\Compiled</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnel.inc">
|
||||
<Filter>Src\Shaders\Compiled</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnelNoFog.inc">
|
||||
<Filter>Src\Shaders\Compiled</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingNoFog.inc">
|
||||
<Filter>Src\Shaders\Compiled</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLighting.inc">
|
||||
<Filter>Src\Shaders\Compiled</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnel.inc">
|
||||
<Filter>Src\Shaders\Compiled</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnelNoFog.inc">
|
||||
<Filter>Src\Shaders\Compiled</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLightingNoFog.inc">
|
||||
<Filter>Src\Shaders\Compiled</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingBnSM4.inc">
|
||||
<Filter>Src\Shaders\Compiled</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingSM4.inc">
|
||||
<Filter>Src\Shaders\Compiled</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLighting.pdb">
|
||||
<Filter>Src\Shaders\Symbols</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnel.pdb">
|
||||
<Filter>Src\Shaders\Symbols</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnelNoFog.pdb">
|
||||
<Filter>Src\Shaders\Symbols</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingNoFog.pdb">
|
||||
<Filter>Src\Shaders\Symbols</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLighting.pdb">
|
||||
<Filter>Src\Shaders\Symbols</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnel.pdb">
|
||||
<Filter>Src\Shaders\Symbols</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnelNoFog.pdb">
|
||||
<Filter>Src\Shaders\Symbols</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpherePixelLightingNoFog.pdb">
|
||||
<Filter>Src\Shaders\Symbols</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingBnSM4.pdb">
|
||||
<Filter>Src\Shaders\Symbols</Filter>
|
||||
</None>
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingSM4.pdb">
|
||||
<Filter>Src\Shaders\Symbols</Filter>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -19,6 +19,7 @@
|
|||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="Inc\BufferHelpers.h" />
|
||||
<ClInclude Include="Inc\CommonStates.h" />
|
||||
<ClInclude Include="Inc\DDSTextureLoader.h" />
|
||||
<ClInclude Include="Inc\DirectXHelpers.h" />
|
||||
|
@ -40,7 +41,6 @@
|
|||
<ClInclude Include="Inc\WICTextureLoader.h" />
|
||||
<ClInclude Include="Src\AlignedNew.h" />
|
||||
<ClInclude Include="Src\Bezier.h" />
|
||||
<ClInclude Include="Src\ConstantBuffer.h" />
|
||||
<ClInclude Include="Src\BinaryReader.h" />
|
||||
<ClInclude Include="Src\DemandCreate.h" />
|
||||
<ClInclude Include="Src\EffectCommon.h" />
|
||||
|
@ -57,11 +57,13 @@
|
|||
<ClCompile Include="Src\AlphaTestEffect.cpp" />
|
||||
<ClCompile Include="Src\BasicEffect.cpp" />
|
||||
<ClCompile Include="Src\BasicPostProcess.cpp" />
|
||||
<ClCompile Include="Src\BufferHelpers.cpp" />
|
||||
<ClCompile Include="Src\CommonStates.cpp" />
|
||||
<ClCompile Include="Src\DDSTextureLoader.cpp" />
|
||||
<ClCompile Include="Src\DebugEffect.cpp" />
|
||||
<ClCompile Include="Src\DGSLEffect.cpp" />
|
||||
<ClCompile Include="Src\DGSLEffectFactory.cpp" />
|
||||
<ClCompile Include="Src\DirectXHelpers.cpp" />
|
||||
<ClCompile Include="Src\DualPostProcess.cpp" />
|
||||
<ClCompile Include="Src\DualTextureEffect.cpp" />
|
||||
<ClCompile Include="Src\BinaryReader.cpp" />
|
||||
|
@ -100,332 +102,6 @@
|
|||
<ItemGroup>
|
||||
<None Include="README.md" />
|
||||
<None Include="Src\Shaders\Common.fxh" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestEqNe.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestEqNe.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestEqNeNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestEqNeNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestLtGt.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestLtGt.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestLtGtNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestLtGtNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTest.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTest.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTestNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTestNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTestVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTestVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTestVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTestVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLightingTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLightingTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLight.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLight.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTxVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTxVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSHemiAmbient.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSHemiAmbient.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSRGBBiTangents.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSRGBBiTangents.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSRGBNormals.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSRGBNormals.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSRGBTangents.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSRGBTangents.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebug.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebug.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebugBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebugBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebugVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebugVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebugVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebugVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main1Bones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main1Bones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main1BonesVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main1BonesVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main2Bones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main2Bones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main2BonesVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main2BonesVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main4Bones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main4Bones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main4BonesVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main4BonesVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_mainVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_mainVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_mainTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_mainTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_mainTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_mainTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_mainTxTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_mainTxTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_mainTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_mainTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_mainTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_mainTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_mainTxTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_mainTxTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_mainTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_mainTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_mainTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_mainTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_mainTxTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_mainTxTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_PSDualTexture.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_PSDualTexture.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_PSDualTextureNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_PSDualTextureNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTexture.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTexture.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTextureNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTextureNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTextureVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTextureVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTextureVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTextureVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMap.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMap.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLightingFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLightingFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLightingFresnelNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLightingFresnelNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpecular.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpecular.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpecularNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpecularNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMap.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMap.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapFresnelBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapFresnelBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLight.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLight.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLightBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLightBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLightFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLightFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLightFresnelBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLightFresnelBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTxNoFogSpec.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTxNoFogSpec.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTxNoSpec.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTxNoSpec.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSConstant.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSConstant.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTextured.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTextured.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTexturedEmissive.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTexturedEmissive.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTexturedEmissiveVelocity.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTexturedEmissiveVelocity.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTexturedVelocity.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTexturedVelocity.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstant.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstant.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstantBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstantBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstantVelocity.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstantVelocity.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstantVelocityBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstantVelocityBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSBloomBlur.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSBloomBlur.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSBloomCombine.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSBloomCombine.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSBloomExtract.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSBloomExtract.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSCopy.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSCopy.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSDownScale2x2.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSDownScale2x2.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSDownScale4x4.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSDownScale4x4.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSGaussianBlur5x5.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSGaussianBlur5x5.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSMerge.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSMerge.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSMonochrome.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSMonochrome.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSSepia.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSSepia.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_VSQuad.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_VSQuad.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_PSSkinnedPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_PSSkinnedPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_PSSkinnedVertexLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_PSSkinnedVertexLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_PSSkinnedVertexLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_PSSkinnedVertexLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightFourBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightFourBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightFourBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightFourBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightOneBone.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightOneBone.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightOneBoneBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightOneBoneBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightTwoBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightTwoBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightTwoBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightTwoBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingFourBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingFourBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingFourBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingFourBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingOneBone.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingOneBone.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingOneBoneBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingOneBoneBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingTwoBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingTwoBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingTwoBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingTwoBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingFourBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingFourBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingFourBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingFourBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingOneBone.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingOneBone.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingOneBoneBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingOneBoneBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingTwoBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingTwoBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingTwoBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingTwoBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SpriteEffect_SpritePixelShader.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SpriteEffect_SpritePixelShader.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SpriteEffect_SpriteVertexShader.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SpriteEffect_SpriteVertexShader.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSACESFilmic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSACESFilmic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSACESFilmic_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSACESFilmic_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSCopy.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSCopy.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSHDR10.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSHDR10.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSReinhard.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSReinhard.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSReinhard_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSReinhard_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSSaturate.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSSaturate.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSSaturate_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSSaturate_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PS_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PS_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_VSQuad.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_VSQuad.pdb" />
|
||||
<None Include="Src\Shaders\CompileShaders.cmd" />
|
||||
<None Include="Src\Shaders\Lighting.fxh" />
|
||||
<None Include="Src\Shaders\PBRCommon.fxh" />
|
||||
|
@ -494,6 +170,7 @@
|
|||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>DirectXTK</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
|
||||
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
|
@ -640,6 +317,22 @@
|
|||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
<Target Name="ATGEnsureShaders" BeforeTargets="PrepareForBuild">
|
||||
<Exec Condition="!Exists('src/Shaders/Compiled/SpriteEffect_SpriteVertexShader.inc')" WorkingDirectory="$(ProjectDir)src/Shaders" Command="CompileShaders" />
|
||||
<PropertyGroup>
|
||||
<_ATGFXCPath>$(WindowsSDK_ExecutablePath_x64.Split(';')[0])</_ATGFXCPath>
|
||||
<_ATGFXCPath>$(_ATGFXCPath.Replace("x64",""))</_ATGFXCPath>
|
||||
<_ATGFXCPath Condition="'$(_ATGFXCPath)' != '' and !HasTrailingSlash('$(_ATGFXCPath)')">$(_ATGFXCPath)\</_ATGFXCPath>
|
||||
</PropertyGroup>
|
||||
<Exec Condition="!Exists('src/Shaders/Compiled/SpriteEffect_SpriteVertexShader.inc')" WorkingDirectory="$(ProjectDir)src/Shaders" Command="CompileShaders" EnvironmentVariables="WindowsSdkVerBinPath=$(_ATGFXCPath)" />
|
||||
<PropertyGroup>
|
||||
<_ATGFXCPath />
|
||||
</PropertyGroup>
|
||||
</Target>
|
||||
<Target Name="ATGDeleteShaders" AfterTargets="Clean">
|
||||
<ItemGroup>
|
||||
<_ATGShaderHeaders Include="$(ProjectDir)src/Shaders/Compiled/*.inc" Exclude="$(ProjectDir)src/Shaders/Compiled/*Xbox*.inc" />
|
||||
<_ATGShaderSymbols Include="$(ProjectDir)src/Shaders/Compiled/*.pdb" Exclude="$(ProjectDir)src/Shaders/Compiled/*Xbox*.pdb" />
|
||||
</ItemGroup>
|
||||
<Delete Files="@(_ATGShaderHeaders)" />
|
||||
<Delete Files="@(_ATGShaderSymbols)" />
|
||||
</Target>
|
||||
</Project>
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -39,6 +39,7 @@
|
|||
<ClInclude Include="Audio\WaveBankReader.h" />
|
||||
<ClInclude Include="Audio\WAVFileReader.h" />
|
||||
<ClInclude Include="Inc\Audio.h" />
|
||||
<ClInclude Include="Inc\BufferHelpers.h" />
|
||||
<ClInclude Include="Inc\CommonStates.h" />
|
||||
<ClInclude Include="Inc\DDSTextureLoader.h" />
|
||||
<ClInclude Include="Inc\DirectXHelpers.h" />
|
||||
|
@ -60,7 +61,6 @@
|
|||
<ClInclude Include="Src\AlignedNew.h" />
|
||||
<ClInclude Include="Src\Bezier.h" />
|
||||
<ClInclude Include="Src\BinaryReader.h" />
|
||||
<ClInclude Include="Src\ConstantBuffer.h" />
|
||||
<ClInclude Include="Src\DDS.h" />
|
||||
<ClInclude Include="Src\DemandCreate.h" />
|
||||
<ClInclude Include="Src\EffectCommon.h" />
|
||||
|
@ -76,332 +76,6 @@
|
|||
<None Include="Inc\SimpleMath.inl" />
|
||||
<None Include="README.md" />
|
||||
<None Include="Src\Shaders\Common.fxh" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestEqNe.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestEqNe.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestEqNeNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestEqNeNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestLtGt.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestLtGt.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestLtGtNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_PSAlphaTestLtGtNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTest.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTest.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTestNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTestNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTestVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTestVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTestVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\AlphaTestEffect_VSAlphaTestVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLightingTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_PSBasicVertexLightingTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLight.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLight.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicOneLightVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicPixelLightingVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTxVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicTxVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\BasicEffect_VSBasicVertexLightingVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSHemiAmbient.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSHemiAmbient.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSRGBBiTangents.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSRGBBiTangents.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSRGBNormals.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSRGBNormals.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSRGBTangents.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_PSRGBTangents.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebug.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebug.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebugBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebugBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebugVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebugVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebugVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DebugEffect_VSDebugVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main1Bones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main1Bones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main1BonesVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main1BonesVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main2Bones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main2Bones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main2BonesVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main2BonesVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main4Bones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main4Bones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main4BonesVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_main4BonesVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_mainVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLEffect_mainVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_mainTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_mainTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_mainTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_mainTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_mainTxTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLLambert_mainTxTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_mainTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_mainTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_mainTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_mainTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_mainTxTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLPhong_mainTxTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_mainTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_mainTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_mainTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_mainTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_mainTxTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DGSLUnlit_mainTxTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_PSDualTexture.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_PSDualTexture.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_PSDualTextureNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_PSDualTextureNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTexture.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTexture.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTextureNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTextureNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTextureVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTextureVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTextureVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\DualTextureEffect_VSDualTextureVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMap.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMap.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLightingFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLightingFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLightingFresnelNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLightingFresnelNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapPixelLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpecular.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpecular.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpecularNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_PSEnvMapSpecularNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMap.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMap.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapFresnelBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapFresnelBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLight.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLight.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLightBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLightBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLightFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLightFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLightFresnelBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapOneLightFresnelBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\EnvironmentMapEffect_VSEnvMapPixelLightingBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTxNoFogSpec.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTxNoFogSpec.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTxNoSpec.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_PSNormalPixelLightingTxNoSpec.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\NormalMapEffect_VSNormalPixelLightingTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSConstant.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSConstant.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTextured.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTextured.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTexturedEmissive.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTexturedEmissive.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTexturedEmissiveVelocity.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTexturedEmissiveVelocity.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTexturedVelocity.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_PSTexturedVelocity.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstant.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstant.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstantBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstantBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstantVelocity.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstantVelocity.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstantVelocityBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PBREffect_VSConstantVelocityBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSBloomBlur.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSBloomBlur.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSBloomCombine.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSBloomCombine.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSBloomExtract.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSBloomExtract.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSCopy.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSCopy.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSDownScale2x2.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSDownScale2x2.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSDownScale4x4.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSDownScale4x4.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSGaussianBlur5x5.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSGaussianBlur5x5.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSMerge.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSMerge.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSMonochrome.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSMonochrome.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSSepia.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_PSSepia.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_VSQuad.inc" />
|
||||
<None Include="Src\Shaders\Compiled\PostProcess_VSQuad.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_PSSkinnedPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_PSSkinnedPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_PSSkinnedVertexLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_PSSkinnedVertexLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_PSSkinnedVertexLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_PSSkinnedVertexLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightFourBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightFourBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightFourBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightFourBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightOneBone.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightOneBone.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightOneBoneBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightOneBoneBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightTwoBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightTwoBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightTwoBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedOneLightTwoBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingFourBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingFourBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingFourBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingFourBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingOneBone.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingOneBone.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingOneBoneBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingOneBoneBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingTwoBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingTwoBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingTwoBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedPixelLightingTwoBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingFourBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingFourBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingFourBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingFourBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingOneBone.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingOneBone.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingOneBoneBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingOneBoneBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingTwoBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingTwoBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingTwoBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SkinnedEffect_VSSkinnedVertexLightingTwoBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SpriteEffect_SpritePixelShader.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SpriteEffect_SpritePixelShader.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\SpriteEffect_SpriteVertexShader.inc" />
|
||||
<None Include="Src\Shaders\Compiled\SpriteEffect_SpriteVertexShader.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSACESFilmic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSACESFilmic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSACESFilmic_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSACESFilmic_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSCopy.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSCopy.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSHDR10.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSHDR10.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSReinhard.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSReinhard.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSReinhard_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSReinhard_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSSaturate.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSSaturate.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSSaturate_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PSSaturate_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PS_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_PS_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_VSQuad.inc" />
|
||||
<None Include="Src\Shaders\Compiled\ToneMap_VSQuad.pdb" />
|
||||
<None Include="Src\Shaders\CompileShaders.cmd" />
|
||||
<None Include="Src\Shaders\Lighting.fxh" />
|
||||
<None Include="Src\Shaders\PBRCommon.fxh" />
|
||||
|
@ -424,11 +98,13 @@
|
|||
<ClCompile Include="Src\BasicEffect.cpp" />
|
||||
<ClCompile Include="Src\BasicPostProcess.cpp" />
|
||||
<ClCompile Include="Src\BinaryReader.cpp" />
|
||||
<ClCompile Include="Src\BufferHelpers.cpp" />
|
||||
<ClCompile Include="Src\CommonStates.cpp" />
|
||||
<ClCompile Include="Src\DDSTextureLoader.cpp" />
|
||||
<ClCompile Include="Src\DebugEffect.cpp" />
|
||||
<ClCompile Include="Src\DGSLEffect.cpp" />
|
||||
<ClCompile Include="Src\DGSLEffectFactory.cpp" />
|
||||
<ClCompile Include="Src\DirectXHelpers.cpp" />
|
||||
<ClCompile Include="Src\DualPostProcess.cpp" />
|
||||
<ClCompile Include="Src\DualTextureEffect.cpp" />
|
||||
<ClCompile Include="Src\EffectCommon.cpp" />
|
||||
|
@ -536,6 +212,7 @@
|
|||
<WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.14393.0</WindowsTargetPlatformMinVersion>
|
||||
<ApplicationTypeRevision>10.0</ApplicationTypeRevision>
|
||||
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
|
@ -829,6 +506,22 @@
|
|||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
<Target Name="ATGEnsureShaders" BeforeTargets="PrepareForBuild">
|
||||
<Exec Condition="!Exists('src/Shaders/Compiled/SpriteEffect_SpriteVertexShader.inc')" WorkingDirectory="$(ProjectDir)src/Shaders" Command="CompileShaders" />
|
||||
<PropertyGroup>
|
||||
<_ATGFXCPath>$(WindowsSDK_ExecutablePath_x64.Split(';')[0])</_ATGFXCPath>
|
||||
<_ATGFXCPath>$(_ATGFXCPath.Replace("x64",""))</_ATGFXCPath>
|
||||
<_ATGFXCPath Condition="'$(_ATGFXCPath)' != '' and !HasTrailingSlash('$(_ATGFXCPath)')">$(_ATGFXCPath)\</_ATGFXCPath>
|
||||
</PropertyGroup>
|
||||
<Exec Condition="!Exists('src/Shaders/Compiled/SpriteEffect_SpriteVertexShader.inc')" WorkingDirectory="$(ProjectDir)src/Shaders" Command="CompileShaders" EnvironmentVariables="WindowsSdkVerBinPath=$(_ATGFXCPath)" />
|
||||
<PropertyGroup>
|
||||
<_ATGFXCPath />
|
||||
</PropertyGroup>
|
||||
</Target>
|
||||
<Target Name="ATGDeleteShaders" AfterTargets="Clean">
|
||||
<ItemGroup>
|
||||
<_ATGShaderHeaders Include="$(ProjectDir)src/Shaders/Compiled/*.inc" Exclude="$(ProjectDir)src/Shaders/Compiled/*Xbox*.inc" />
|
||||
<_ATGShaderSymbols Include="$(ProjectDir)src/Shaders/Compiled/*.pdb" Exclude="$(ProjectDir)src/Shaders/Compiled/*Xbox*.pdb" />
|
||||
</ItemGroup>
|
||||
<Delete Files="@(_ATGShaderHeaders)" />
|
||||
<Delete Files="@(_ATGShaderSymbols)" />
|
||||
</Target>
|
||||
</Project>
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -19,6 +19,7 @@
|
|||
<ClInclude Include="Audio\WaveBankReader.h" />
|
||||
<ClInclude Include="Audio\WAVFileReader.h" />
|
||||
<ClInclude Include="Inc\Audio.h" />
|
||||
<ClInclude Include="Inc\BufferHelpers.h" />
|
||||
<ClInclude Include="Inc\CommonStates.h" />
|
||||
<ClInclude Include="Inc\DDSTextureLoader.h" />
|
||||
<ClInclude Include="Inc\DirectXHelpers.h" />
|
||||
|
@ -41,7 +42,6 @@
|
|||
<ClInclude Include="Src\AlignedNew.h" />
|
||||
<ClInclude Include="Src\Bezier.h" />
|
||||
<ClInclude Include="Src\BinaryReader.h" />
|
||||
<ClInclude Include="Src\ConstantBuffer.h" />
|
||||
<ClInclude Include="Src\DDS.h" />
|
||||
<ClInclude Include="Src\DemandCreate.h" />
|
||||
<ClInclude Include="Src\EffectCommon.h" />
|
||||
|
@ -67,11 +67,13 @@
|
|||
<ClCompile Include="Src\BasicEffect.cpp" />
|
||||
<ClCompile Include="Src\BasicPostProcess.cpp" />
|
||||
<ClCompile Include="Src\BinaryReader.cpp" />
|
||||
<ClCompile Include="Src\BufferHelpers.cpp" />
|
||||
<ClCompile Include="Src\CommonStates.cpp" />
|
||||
<ClCompile Include="Src\DDSTextureLoader.cpp" />
|
||||
<ClCompile Include="Src\DebugEffect.cpp" />
|
||||
<ClCompile Include="Src\DGSLEffect.cpp" />
|
||||
<ClCompile Include="Src\DGSLEffectFactory.cpp" />
|
||||
<ClCompile Include="Src\DirectXHelpers.cpp" />
|
||||
<ClCompile Include="Src\DualPostProcess.cpp" />
|
||||
<ClCompile Include="Src\DualTextureEffect.cpp" />
|
||||
<ClCompile Include="Src\EffectCommon.cpp" />
|
||||
|
@ -110,344 +112,6 @@
|
|||
<None Include="Inc\SimpleMath.inl" />
|
||||
<None Include="README.md" />
|
||||
<None Include="Src\Shaders\Common.fxh" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestEqNe.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestEqNe.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestEqNeNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestEqNeNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestLtGt.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestLtGt.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestLtGtNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestLtGtNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTest.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTest.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTestNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTestNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTestVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTestVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTestVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTestVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLightingTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLightingTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLight.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLight.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTxVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTxVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSHemiAmbient.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSHemiAmbient.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSRGBBiTangents.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSRGBBiTangents.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSRGBNormals.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSRGBNormals.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSRGBTangents.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSRGBTangents.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebug.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebug.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebugBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebugBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebugVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebugVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebugVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebugVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main1Bones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main1Bones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main1BonesVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main1BonesVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main2Bones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main2Bones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main2BonesVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main2BonesVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main4Bones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main4Bones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main4BonesVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main4BonesVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_mainVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_mainVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_mainTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_mainTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_mainTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_mainTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_mainTxTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_mainTxTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_mainTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_mainTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_mainTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_mainTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_mainTxTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_mainTxTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_mainTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_mainTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_mainTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_mainTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_mainTxTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_mainTxTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_PSDualTexture.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_PSDualTexture.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_PSDualTextureNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_PSDualTextureNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTexture.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTexture.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTextureNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTextureNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTextureVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTextureVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTextureVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTextureVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMap.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMap.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingFresnelNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingFresnelNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapSpecular.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapSpecular.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapSpecularNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapSpecularNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMap.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMap.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapFresnelBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapFresnelBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLight.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLight.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLightBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLightBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLightFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLightFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLightFresnelBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLightFresnelBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapPixelLightingBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapPixelLightingBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTxNoFogSpec.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTxNoFogSpec.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTxNoSpec.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTxNoSpec.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSConstant.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSConstant.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTextured.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTextured.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTexturedEmissive.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTexturedEmissive.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTexturedEmissiveVelocity.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTexturedEmissiveVelocity.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTexturedVelocity.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTexturedVelocity.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstant.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstant.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstantBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstantBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstantVelocity.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstantVelocity.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstantVelocityBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstantVelocityBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSBloomBlur.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSBloomBlur.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSBloomCombine.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSBloomCombine.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSBloomExtract.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSBloomExtract.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSCopy.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSCopy.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSDownScale2x2.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSDownScale2x2.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSDownScale4x4.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSDownScale4x4.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSGaussianBlur5x5.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSGaussianBlur5x5.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSMerge.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSMerge.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSMonochrome.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSMonochrome.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSSepia.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSSepia.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_VSQuad.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_VSQuad.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_PSSkinnedPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_PSSkinnedPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_PSSkinnedVertexLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_PSSkinnedVertexLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_PSSkinnedVertexLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_PSSkinnedVertexLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightFourBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightFourBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightFourBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightFourBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightOneBone.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightOneBone.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightOneBoneBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightOneBoneBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightTwoBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightTwoBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightTwoBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightTwoBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingFourBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingFourBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingFourBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingFourBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingOneBone.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingOneBone.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingOneBoneBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingOneBoneBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingTwoBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingTwoBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingTwoBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingTwoBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingFourBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingFourBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingFourBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingFourBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingOneBone.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingOneBone.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingOneBoneBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingOneBoneBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingTwoBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingTwoBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingTwoBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingTwoBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSpriteEffect_SpritePixelShader.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSpriteEffect_SpritePixelShader.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSpriteEffect_SpriteVertexShader.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSpriteEffect_SpriteVertexShader.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSACESFilmic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSACESFilmic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSACESFilmic_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSACESFilmic_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSCopy.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSCopy.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_ACESFilmic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_ACESFilmic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_ACESFilmic_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_ACESFilmic_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Reinhard.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Reinhard.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Reinhard_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Reinhard_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Saturate.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Saturate.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Saturate_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Saturate_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSReinhard.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSReinhard.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSReinhard_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSReinhard_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSSaturate.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSSaturate.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSSaturate_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSSaturate_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PS_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PS_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_VSQuad.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_VSQuad.pdb" />
|
||||
<None Include="Src\Shaders\CompileShaders.cmd" />
|
||||
<None Include="Src\Shaders\Lighting.fxh" />
|
||||
<None Include="Src\Shaders\PBRCommon.fxh" />
|
||||
|
@ -667,7 +331,7 @@
|
|||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
<Target Name="ATGEnsureShaders" BeforeTargets="PrepareForBuild">
|
||||
<Exec Condition="!Exists('src/Shaders/Compiled/XboxOneSpriteEffect_SpriteVertexShader.inc')" WorkingDirectory="$(ProjectDir)src/Shaders" Command="CompileShaders xbox" />
|
||||
<Exec Condition="!Exists('src/Shaders/Compiled/XboxOneSpriteEffect_SpriteVertexShader.inc')" WorkingDirectory="$(ProjectDir)src/Shaders" Command="CompileShaders xbox" EnvironmentVariables="XboxOneXDKLatest=$(DurangoXdkInstallPath)" />
|
||||
</Target>
|
||||
<Target Name="ATGDeleteShaders" AfterTargets="Clean">
|
||||
<ItemGroup>
|
||||
|
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -19,6 +19,7 @@
|
|||
<ClInclude Include="Audio\WaveBankReader.h" />
|
||||
<ClInclude Include="Audio\WAVFileReader.h" />
|
||||
<ClInclude Include="Inc\Audio.h" />
|
||||
<ClInclude Include="Inc\BufferHelpers.h" />
|
||||
<ClInclude Include="Inc\CommonStates.h" />
|
||||
<ClInclude Include="Inc\DDSTextureLoader.h" />
|
||||
<ClInclude Include="Inc\DirectXHelpers.h" />
|
||||
|
@ -41,7 +42,6 @@
|
|||
<ClInclude Include="Src\AlignedNew.h" />
|
||||
<ClInclude Include="Src\Bezier.h" />
|
||||
<ClInclude Include="Src\BinaryReader.h" />
|
||||
<ClInclude Include="Src\ConstantBuffer.h" />
|
||||
<ClInclude Include="Src\DDS.h" />
|
||||
<ClInclude Include="Src\DemandCreate.h" />
|
||||
<ClInclude Include="Src\EffectCommon.h" />
|
||||
|
@ -67,11 +67,13 @@
|
|||
<ClCompile Include="Src\BasicEffect.cpp" />
|
||||
<ClCompile Include="Src\BasicPostProcess.cpp" />
|
||||
<ClCompile Include="Src\BinaryReader.cpp" />
|
||||
<ClCompile Include="Src\BufferHelpers.cpp" />
|
||||
<ClCompile Include="Src\CommonStates.cpp" />
|
||||
<ClCompile Include="Src\DDSTextureLoader.cpp" />
|
||||
<ClCompile Include="Src\DebugEffect.cpp" />
|
||||
<ClCompile Include="Src\DGSLEffect.cpp" />
|
||||
<ClCompile Include="Src\DGSLEffectFactory.cpp" />
|
||||
<ClCompile Include="Src\DirectXHelpers.cpp" />
|
||||
<ClCompile Include="Src\DualPostProcess.cpp" />
|
||||
<ClCompile Include="Src\DualTextureEffect.cpp" />
|
||||
<ClCompile Include="Src\EffectCommon.cpp" />
|
||||
|
@ -110,344 +112,6 @@
|
|||
<None Include="Inc\SimpleMath.inl" />
|
||||
<None Include="README.md" />
|
||||
<None Include="Src\Shaders\Common.fxh" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestEqNe.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestEqNe.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestEqNeNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestEqNeNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestLtGt.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestLtGt.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestLtGtNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_PSAlphaTestLtGtNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTest.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTest.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTestNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTestNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTestVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTestVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTestVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneAlphaTestEffect_VSAlphaTestVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLightingTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_PSBasicVertexLightingTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLight.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLight.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicOneLightVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicPixelLightingVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTxVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicTxVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneBasicEffect_VSBasicVertexLightingVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSHemiAmbient.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSHemiAmbient.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSRGBBiTangents.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSRGBBiTangents.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSRGBNormals.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSRGBNormals.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSRGBTangents.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_PSRGBTangents.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebug.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebug.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebugBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebugBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebugVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebugVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebugVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDebugEffect_VSDebugVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main1Bones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main1Bones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main1BonesVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main1BonesVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main2Bones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main2Bones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main2BonesVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main2BonesVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main4Bones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main4Bones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main4BonesVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_main4BonesVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_mainVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLEffect_mainVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_mainTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_mainTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_mainTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_mainTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_mainTxTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLLambert_mainTxTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_mainTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_mainTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_mainTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_mainTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_mainTxTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLPhong_mainTxTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_main.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_main.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_mainTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_mainTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_mainTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_mainTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_mainTxTk.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDGSLUnlit_mainTxTk.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_PSDualTexture.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_PSDualTexture.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_PSDualTextureNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_PSDualTextureNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTexture.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTexture.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTextureNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTextureNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTextureVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTextureVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTextureVcNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneDualTextureEffect_VSDualTextureVcNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMap.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMap.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingFresnelNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingFresnelNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapSpecular.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapSpecular.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapSpecularNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_PSEnvMapSpecularNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMap.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMap.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapFresnelBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapFresnelBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLight.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLight.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLightBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLightBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLightFresnel.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLightFresnel.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLightFresnelBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapOneLightFresnelBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapPixelLightingBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneEnvironmentMapEffect_VSEnvMapPixelLightingBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTxNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTxNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTxNoFogSpec.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTxNoFogSpec.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTxNoSpec.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_PSNormalPixelLightingTxNoSpec.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTx.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTx.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTxBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTxBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTxVc.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTxVc.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTxVcBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneNormalMapEffect_VSNormalPixelLightingTxVcBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSConstant.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSConstant.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTextured.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTextured.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTexturedEmissive.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTexturedEmissive.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTexturedEmissiveVelocity.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTexturedEmissiveVelocity.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTexturedVelocity.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_PSTexturedVelocity.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstant.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstant.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstantBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstantBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstantVelocity.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstantVelocity.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstantVelocityBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePBREffect_VSConstantVelocityBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSBloomBlur.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSBloomBlur.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSBloomCombine.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSBloomCombine.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSBloomExtract.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSBloomExtract.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSCopy.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSCopy.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSDownScale2x2.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSDownScale2x2.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSDownScale4x4.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSDownScale4x4.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSGaussianBlur5x5.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSGaussianBlur5x5.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSMerge.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSMerge.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSMonochrome.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSMonochrome.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSSepia.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_PSSepia.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_VSQuad.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOnePostProcess_VSQuad.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_PSSkinnedPixelLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_PSSkinnedPixelLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_PSSkinnedVertexLighting.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_PSSkinnedVertexLighting.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_PSSkinnedVertexLightingNoFog.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_PSSkinnedVertexLightingNoFog.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightFourBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightFourBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightFourBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightFourBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightOneBone.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightOneBone.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightOneBoneBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightOneBoneBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightTwoBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightTwoBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightTwoBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedOneLightTwoBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingFourBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingFourBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingFourBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingFourBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingOneBone.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingOneBone.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingOneBoneBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingOneBoneBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingTwoBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingTwoBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingTwoBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedPixelLightingTwoBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingFourBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingFourBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingFourBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingFourBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingOneBone.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingOneBone.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingOneBoneBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingOneBoneBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingTwoBones.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingTwoBones.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingTwoBonesBn.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSkinnedEffect_VSSkinnedVertexLightingTwoBonesBn.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSpriteEffect_SpritePixelShader.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSpriteEffect_SpritePixelShader.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSpriteEffect_SpriteVertexShader.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneSpriteEffect_SpriteVertexShader.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSACESFilmic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSACESFilmic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSACESFilmic_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSACESFilmic_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSCopy.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSCopy.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_ACESFilmic.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_ACESFilmic.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_ACESFilmic_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_ACESFilmic_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Reinhard.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Reinhard.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Reinhard_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Reinhard_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Saturate.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Saturate.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Saturate_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSHDR10_Saturate_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSReinhard.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSReinhard.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSReinhard_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSReinhard_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSSaturate.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSSaturate.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSSaturate_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PSSaturate_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PS_SRGB.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_PS_SRGB.pdb" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_VSQuad.inc" />
|
||||
<None Include="Src\Shaders\Compiled\XboxOneToneMap_VSQuad.pdb" />
|
||||
<None Include="Src\Shaders\CompileShaders.cmd" />
|
||||
<None Include="Src\Shaders\Lighting.fxh" />
|
||||
<None Include="Src\Shaders\PBRCommon.fxh" />
|
||||
|
@ -668,7 +332,7 @@
|
|||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
<Target Name="ATGEnsureShaders" BeforeTargets="PrepareForBuild">
|
||||
<Exec Condition="!Exists('src/Shaders/Compiled/XboxOneSpriteEffect_SpriteVertexShader.inc')" WorkingDirectory="$(ProjectDir)src/Shaders" Command="CompileShaders xbox" />
|
||||
<Exec Condition="!Exists('src/Shaders/Compiled/XboxOneSpriteEffect_SpriteVertexShader.inc')" WorkingDirectory="$(ProjectDir)src/Shaders" Command="CompileShaders xbox" EnvironmentVariables="XboxOneXDKLatest=$(DurangoXdkInstallPath)" />
|
||||
</Target>
|
||||
<Target Name="ATGDeleteShaders" AfterTargets="Clean">
|
||||
<ItemGroup>
|
||||
|
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -16,7 +16,7 @@
|
|||
#include <mmreg.h>
|
||||
#include <Audioclient.h>
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
#if (defined(_XBOX_ONE) && defined(_TITLE)) || defined(_GAMING_XBOX)
|
||||
#include <xma2defs.h>
|
||||
#pragma comment(lib,"acphal.lib")
|
||||
#endif
|
||||
|
@ -65,12 +65,12 @@ namespace DirectX
|
|||
size_t playingOneShots; // Number of one-shot sounds currently playing
|
||||
size_t playingInstances; // Number of sound effect instances currently playing
|
||||
size_t allocatedInstances; // Number of SoundEffectInstance allocated
|
||||
size_t allocatedVoices; // Number of XAudio2 voices allocated (standard, 3D, one-shots, and idle one-shots)
|
||||
size_t allocatedVoices; // Number of XAudio2 voices allocated (standard, 3D, one-shots, and idle one-shots)
|
||||
size_t allocatedVoices3d; // Number of XAudio2 voices allocated for 3D
|
||||
size_t allocatedVoicesOneShot; // Number of XAudio2 voices allocated for one-shot sounds
|
||||
size_t allocatedVoicesIdle; // Number of XAudio2 voices allocated for one-shot sounds but not currently in use
|
||||
size_t audioBytes; // Total wave data (in bytes) in SoundEffects and in-memory WaveBanks
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
#if (defined(_XBOX_ONE) && defined(_TITLE)) || defined(_GAMING_XBOX)
|
||||
size_t xmaAudioBytes; // Total wave data (in bytes) in SoundEffects and in-memory WaveBanks allocated with ApuAlloc
|
||||
#endif
|
||||
size_t streamingBytes; // Total size of streaming buffers (in bytes) in streaming WaveBanks
|
||||
|
@ -132,8 +132,6 @@ namespace DirectX
|
|||
AudioEngine_DisableVoiceReuse = 0x40000,
|
||||
};
|
||||
|
||||
inline AUDIO_ENGINE_FLAGS operator|(AUDIO_ENGINE_FLAGS a, AUDIO_ENGINE_FLAGS b) noexcept { return static_cast<AUDIO_ENGINE_FLAGS>( static_cast<int>(a) | static_cast<int>(b) ); }
|
||||
|
||||
enum SOUND_EFFECT_INSTANCE_FLAGS : uint32_t
|
||||
{
|
||||
SoundEffectInstance_Default = 0x0,
|
||||
|
@ -145,8 +143,6 @@ namespace DirectX
|
|||
SoundEffectInstance_UseRedirectLFE = 0x10000,
|
||||
};
|
||||
|
||||
inline SOUND_EFFECT_INSTANCE_FLAGS operator|(SOUND_EFFECT_INSTANCE_FLAGS a, SOUND_EFFECT_INSTANCE_FLAGS b) noexcept { return static_cast<SOUND_EFFECT_INSTANCE_FLAGS>(static_cast<int>(a) | static_cast<int>(b)); }
|
||||
|
||||
enum AUDIO_ENGINE_REVERB : unsigned int
|
||||
{
|
||||
Reverb_Off,
|
||||
|
@ -738,4 +734,16 @@ namespace DirectX
|
|||
|
||||
std::unique_ptr<Impl> pImpl;
|
||||
};
|
||||
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wdeprecated-dynamic-exception-spec"
|
||||
#endif
|
||||
|
||||
DEFINE_ENUM_FLAG_OPERATORS(AUDIO_ENGINE_FLAGS);
|
||||
DEFINE_ENUM_FLAG_OPERATORS(SOUND_EFFECT_INSTANCE_FLAGS);
|
||||
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic pop
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -0,0 +1,160 @@
|
|||
//--------------------------------------------------------------------------------------
|
||||
// File: BufferHelpers.h
|
||||
//
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
//
|
||||
// http://go.microsoft.com/fwlink/?LinkId=248929
|
||||
//--------------------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
#include <d3d11_x.h>
|
||||
#include "GraphicsMemory.h"
|
||||
#else
|
||||
#include <d3d11_1.h>
|
||||
#endif
|
||||
|
||||
#include <assert.h>
|
||||
|
||||
#include <wrl\client.h>
|
||||
|
||||
|
||||
namespace DirectX
|
||||
{
|
||||
// Helpers for creating initialized Direct3D buffer resources.
|
||||
HRESULT __cdecl CreateStaticBuffer(_In_ ID3D11Device* device,
|
||||
_In_reads_bytes_(count* stride) const void* ptr,
|
||||
size_t count,
|
||||
size_t stride,
|
||||
unsigned int bindFlags,
|
||||
_COM_Outptr_ ID3D11Buffer** pBuffer) noexcept;
|
||||
|
||||
template<typename T>
|
||||
HRESULT CreateStaticBuffer(_In_ ID3D11Device* device,
|
||||
_In_reads_(count) T const* data,
|
||||
size_t count,
|
||||
unsigned int bindFlags,
|
||||
_COM_Outptr_ ID3D11Buffer** pBuffer) noexcept
|
||||
{
|
||||
return CreateStaticBuffer(device, data, count, sizeof(T), bindFlags, pBuffer);
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
HRESULT CreateStaticBuffer(_In_ ID3D11Device* device,
|
||||
T const& data,
|
||||
unsigned int bindFlags,
|
||||
_COM_Outptr_ ID3D11Buffer** pBuffer) noexcept
|
||||
{
|
||||
return CreateStaticBuffer(device, data.data(), data.size(), sizeof(typename T::value_type), bindFlags, pBuffer);
|
||||
}
|
||||
|
||||
// Helpers for creating texture from memory arrays.
|
||||
HRESULT __cdecl CreateTextureFromMemory(_In_ ID3D11Device* device,
|
||||
size_t width,
|
||||
DXGI_FORMAT format,
|
||||
const D3D11_SUBRESOURCE_DATA& initData,
|
||||
_COM_Outptr_opt_ ID3D11Texture1D** texture,
|
||||
_COM_Outptr_opt_ ID3D11ShaderResourceView** textureView,
|
||||
unsigned int bindFlags = D3D11_BIND_SHADER_RESOURCE) noexcept;
|
||||
|
||||
HRESULT __cdecl CreateTextureFromMemory(_In_ ID3D11Device* device,
|
||||
size_t width, size_t height,
|
||||
DXGI_FORMAT format,
|
||||
const D3D11_SUBRESOURCE_DATA& initData,
|
||||
_COM_Outptr_opt_ ID3D11Texture2D** texture,
|
||||
_COM_Outptr_opt_ ID3D11ShaderResourceView** textureView,
|
||||
unsigned int bindFlags = D3D11_BIND_SHADER_RESOURCE) noexcept;
|
||||
|
||||
HRESULT __cdecl CreateTextureFromMemory(
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
_In_ ID3D11DeviceX* d3dDeviceX,
|
||||
_In_ ID3D11DeviceContextX* d3dContextX,
|
||||
#else
|
||||
_In_ ID3D11Device* device,
|
||||
_In_ ID3D11DeviceContext* d3dContext,
|
||||
#endif
|
||||
size_t width, size_t height,
|
||||
DXGI_FORMAT format,
|
||||
const D3D11_SUBRESOURCE_DATA& initData,
|
||||
_COM_Outptr_opt_ ID3D11Texture2D** texture,
|
||||
_COM_Outptr_opt_ ID3D11ShaderResourceView** textureView) noexcept;
|
||||
|
||||
HRESULT __cdecl CreateTextureFromMemory(_In_ ID3D11Device* device,
|
||||
size_t width, size_t height, size_t depth,
|
||||
DXGI_FORMAT format,
|
||||
const D3D11_SUBRESOURCE_DATA& initData,
|
||||
_COM_Outptr_opt_ ID3D11Texture3D** texture,
|
||||
_COM_Outptr_opt_ ID3D11ShaderResourceView** textureView,
|
||||
unsigned int bindFlags = D3D11_BIND_SHADER_RESOURCE) noexcept;
|
||||
|
||||
// Strongly typed wrapper around a Direct3D constant buffer.
|
||||
namespace Internal
|
||||
{
|
||||
// Base class, not to be used directly: clients should access this via the derived PrimitiveBatch<T>.
|
||||
class ConstantBufferBase
|
||||
{
|
||||
protected:
|
||||
void __cdecl CreateBuffer(_In_ ID3D11Device* device, size_t bytes, _Outptr_ ID3D11Buffer** pBuffer);
|
||||
};
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
class ConstantBuffer : public Internal::ConstantBufferBase
|
||||
{
|
||||
public:
|
||||
// Constructor.
|
||||
ConstantBuffer() = default;
|
||||
explicit ConstantBuffer(_In_ ID3D11Device* device) noexcept(false)
|
||||
{
|
||||
CreateBuffer(device, sizeof(T), mConstantBuffer.GetAddressOf());
|
||||
}
|
||||
|
||||
ConstantBuffer(ConstantBuffer&&) = default;
|
||||
ConstantBuffer& operator= (ConstantBuffer&&) = default;
|
||||
|
||||
ConstantBuffer(ConstantBuffer const&) = delete;
|
||||
ConstantBuffer& operator= (ConstantBuffer const&) = delete;
|
||||
|
||||
void Create(_In_ ID3D11Device* device)
|
||||
{
|
||||
CreateBuffer(device, sizeof(T), mConstantBuffer.ReleaseAndGetAddressOf());
|
||||
}
|
||||
|
||||
// Writes new data into the constant buffer.
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
void __cdecl SetData(_In_ ID3D11DeviceContext* deviceContext, T const& value, void** grfxMemory)
|
||||
{
|
||||
assert(grfxMemory != nullptr);
|
||||
|
||||
void* ptr = GraphicsMemory::Get().Allocate(deviceContext, sizeof(T), 64);
|
||||
assert(ptr != nullptr);
|
||||
|
||||
*(T*)ptr = value;
|
||||
|
||||
*grfxMemory = ptr;
|
||||
}
|
||||
#else
|
||||
|
||||
void __cdecl SetData(_In_ ID3D11DeviceContext* deviceContext, T const& value) noexcept
|
||||
{
|
||||
assert(mConstantBuffer);
|
||||
|
||||
D3D11_MAPPED_SUBRESOURCE mappedResource;
|
||||
if (SUCCEEDED(deviceContext->Map(mConstantBuffer.Get(), 0, D3D11_MAP_WRITE_DISCARD, 0, &mappedResource)))
|
||||
{
|
||||
*static_cast<T*>(mappedResource.pData) = value;
|
||||
|
||||
deviceContext->Unmap(mConstantBuffer.Get(), 0);
|
||||
}
|
||||
}
|
||||
#endif // _XBOX_ONE && _TITLE
|
||||
|
||||
// Looks up the underlying D3D constant buffer.
|
||||
ID3D11Buffer* GetBuffer() const noexcept { return mConstantBuffer.Get(); }
|
||||
|
||||
private:
|
||||
Microsoft::WRL::ComPtr<ID3D11Buffer> mConstantBuffer;
|
||||
};
|
||||
}
|
|
@ -29,7 +29,7 @@ namespace DirectX
|
|||
{
|
||||
#ifndef DDS_ALPHA_MODE_DEFINED
|
||||
#define DDS_ALPHA_MODE_DEFINED
|
||||
enum DDS_ALPHA_MODE
|
||||
enum DDS_ALPHA_MODE : uint32_t
|
||||
{
|
||||
DDS_ALPHA_MODE_UNKNOWN = 0,
|
||||
DDS_ALPHA_MODE_STRAIGHT = 1,
|
||||
|
|
|
@ -54,15 +54,17 @@
|
|||
|
||||
namespace DirectX
|
||||
{
|
||||
class IEffect;
|
||||
|
||||
// simliar to std::lock_guard for exception-safe Direct3D resource locking
|
||||
class MapGuard : public D3D11_MAPPED_SUBRESOURCE
|
||||
{
|
||||
public:
|
||||
MapGuard(_In_ ID3D11DeviceContext* context,
|
||||
_In_ ID3D11Resource *resource,
|
||||
_In_ UINT subresource,
|
||||
_In_ D3D11_MAP mapType,
|
||||
_In_ UINT mapFlags) noexcept(false)
|
||||
_In_ ID3D11Resource *resource,
|
||||
_In_ unsigned int subresource,
|
||||
_In_ D3D11_MAP mapType,
|
||||
_In_ unsigned int mapFlags) noexcept(false)
|
||||
: mContext(context), mResource(resource), mSubresource(subresource)
|
||||
{
|
||||
HRESULT hr = mContext->Map(resource, subresource, mapType, mapFlags, this);
|
||||
|
@ -104,51 +106,55 @@ namespace DirectX
|
|||
private:
|
||||
ID3D11DeviceContext* mContext;
|
||||
ID3D11Resource* mResource;
|
||||
UINT mSubresource;
|
||||
unsigned int mSubresource;
|
||||
};
|
||||
|
||||
|
||||
// Helper sets a D3D resource name string (used by PIX and debug layer leak reporting).
|
||||
template<UINT TNameLength>
|
||||
inline void SetDebugObjectName(_In_ ID3D11DeviceChild* resource, _In_z_ const char (&name)[TNameLength]) noexcept
|
||||
inline void SetDebugObjectName(_In_ ID3D11DeviceChild* resource, _In_z_ const char(&name)[TNameLength]) noexcept
|
||||
{
|
||||
#if !defined(NO_D3D11_DEBUG_NAME) && ( defined(_DEBUG) || defined(PROFILE) )
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
wchar_t wname[MAX_PATH];
|
||||
int result = MultiByteToWideChar(CP_UTF8, 0, name, TNameLength, wname, MAX_PATH);
|
||||
if (result > 0)
|
||||
{
|
||||
resource->SetName(wname);
|
||||
}
|
||||
#else
|
||||
resource->SetPrivateData(WKPDID_D3DDebugObjectName, TNameLength - 1, name);
|
||||
#endif
|
||||
#else
|
||||
UNREFERENCED_PARAMETER(resource);
|
||||
UNREFERENCED_PARAMETER(name);
|
||||
#endif
|
||||
#if !defined(NO_D3D11_DEBUG_NAME) && ( defined(_DEBUG) || defined(PROFILE) )
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
wchar_t wname[MAX_PATH];
|
||||
int result = MultiByteToWideChar(CP_UTF8, 0, name, TNameLength, wname, MAX_PATH);
|
||||
if (result > 0)
|
||||
{
|
||||
resource->SetName(wname);
|
||||
}
|
||||
#else
|
||||
resource->SetPrivateData(WKPDID_D3DDebugObjectName, TNameLength - 1, name);
|
||||
#endif
|
||||
#else
|
||||
UNREFERENCED_PARAMETER(resource);
|
||||
UNREFERENCED_PARAMETER(name);
|
||||
#endif
|
||||
}
|
||||
|
||||
template<UINT TNameLength>
|
||||
inline void SetDebugObjectName(_In_ ID3D11DeviceChild* resource, _In_z_ const wchar_t (&name)[TNameLength])
|
||||
inline void SetDebugObjectName(_In_ ID3D11DeviceChild* resource, _In_z_ const wchar_t(&name)[TNameLength])
|
||||
{
|
||||
#if !defined(NO_D3D11_DEBUG_NAME) && ( defined(_DEBUG) || defined(PROFILE) )
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
resource->SetName( name );
|
||||
#else
|
||||
char aname[MAX_PATH];
|
||||
int result = WideCharToMultiByte(CP_UTF8, 0, name, TNameLength, aname, MAX_PATH, nullptr, nullptr);
|
||||
if (result > 0)
|
||||
{
|
||||
resource->SetPrivateData(WKPDID_D3DDebugObjectName, TNameLength - 1, aname);
|
||||
}
|
||||
#endif
|
||||
#else
|
||||
UNREFERENCED_PARAMETER(resource);
|
||||
UNREFERENCED_PARAMETER(name);
|
||||
#endif
|
||||
#if !defined(NO_D3D11_DEBUG_NAME) && ( defined(_DEBUG) || defined(PROFILE) )
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
resource->SetName(name);
|
||||
#else
|
||||
char aname[MAX_PATH];
|
||||
int result = WideCharToMultiByte(CP_UTF8, 0, name, TNameLength, aname, MAX_PATH, nullptr, nullptr);
|
||||
if (result > 0)
|
||||
{
|
||||
resource->SetPrivateData(WKPDID_D3DDebugObjectName, TNameLength - 1, aname);
|
||||
}
|
||||
#endif
|
||||
#else
|
||||
UNREFERENCED_PARAMETER(resource);
|
||||
UNREFERENCED_PARAMETER(name);
|
||||
#endif
|
||||
}
|
||||
|
||||
// Helper to check for power-of-2
|
||||
template<typename T>
|
||||
constexpr bool IsPowerOf2(T x) noexcept { return ((x != 0) && !(x & (x - 1))); }
|
||||
|
||||
// Helpers for aligning values by a power of 2
|
||||
template<typename T>
|
||||
inline T AlignDown(T size, size_t alignment) noexcept
|
||||
|
@ -156,7 +162,7 @@ namespace DirectX
|
|||
if (alignment > 0)
|
||||
{
|
||||
assert(((alignment - 1) & alignment) == 0);
|
||||
T mask = static_cast<T>(alignment - 1);
|
||||
auto mask = static_cast<T>(alignment - 1);
|
||||
return size & ~mask;
|
||||
}
|
||||
return size;
|
||||
|
@ -168,9 +174,24 @@ namespace DirectX
|
|||
if (alignment > 0)
|
||||
{
|
||||
assert(((alignment - 1) & alignment) == 0);
|
||||
T mask = static_cast<T>(alignment - 1);
|
||||
auto mask = static_cast<T>(alignment - 1);
|
||||
return (size + mask) & ~mask;
|
||||
}
|
||||
return size;
|
||||
}
|
||||
|
||||
// Helper for creating a Direct3D input layout to match a shader from an IEffect
|
||||
HRESULT __cdecl CreateInputLayoutFromEffect(_In_ ID3D11Device* device,
|
||||
_In_ IEffect* effect,
|
||||
_In_reads_(count) const D3D11_INPUT_ELEMENT_DESC* desc,
|
||||
size_t count,
|
||||
_COM_Outptr_ ID3D11InputLayout** pInputLayout) noexcept;
|
||||
|
||||
template<typename T>
|
||||
HRESULT CreateInputLayoutFromEffect(_In_ ID3D11Device* device,
|
||||
_In_ IEffect* effect,
|
||||
_COM_Outptr_ ID3D11InputLayout** pInputLayout) noexcept
|
||||
{
|
||||
return CreateInputLayoutFromEffect(device, effect, T::InputElements, T::InputElementCount, pInputLayout);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -88,7 +88,7 @@ namespace DirectX
|
|||
|
||||
virtual void __cdecl EnableDefaultLighting() = 0;
|
||||
|
||||
static const int MaxDirectionalLights = 3;
|
||||
static constexpr int MaxDirectionalLights = 3;
|
||||
|
||||
protected:
|
||||
IEffectLights() = default;
|
||||
|
@ -133,7 +133,7 @@ namespace DirectX
|
|||
virtual void __cdecl SetBoneTransforms(_In_reads_(count) XMMATRIX const* value, size_t count) = 0;
|
||||
virtual void __cdecl ResetBoneTransforms() = 0;
|
||||
|
||||
static const int MaxBones = 72;
|
||||
static constexpr int MaxBones = 72;
|
||||
|
||||
protected:
|
||||
IEffectSkinning() = default;
|
||||
|
@ -319,6 +319,13 @@ namespace DirectX
|
|||
class EnvironmentMapEffect : public IEffect, public IEffectMatrices, public IEffectLights, public IEffectFog
|
||||
{
|
||||
public:
|
||||
enum Mapping
|
||||
{
|
||||
Mapping_Cube = 0, // Cubic environment map
|
||||
Mapping_Sphere, // Spherical environment map
|
||||
Mapping_DualParabola, // Dual-parabola environment map (requires Feature Level 10.0)
|
||||
};
|
||||
|
||||
explicit EnvironmentMapEffect(_In_ ID3D11Device* device);
|
||||
EnvironmentMapEffect(EnvironmentMapEffect&& moveFrom) noexcept;
|
||||
EnvironmentMapEffect& operator= (EnvironmentMapEffect&& moveFrom) noexcept;
|
||||
|
@ -363,9 +370,10 @@ namespace DirectX
|
|||
|
||||
// Texture setting.
|
||||
void __cdecl SetTexture(_In_opt_ ID3D11ShaderResourceView* value);
|
||||
void __cdecl SetEnvironmentMap(_In_opt_ ID3D11ShaderResourceView* value);
|
||||
|
||||
// Environment map settings.
|
||||
void __cdecl SetEnvironmentMap(_In_opt_ ID3D11ShaderResourceView* value);
|
||||
void __cdecl SetMode(Mapping mapping);
|
||||
void __cdecl SetEnvironmentMapAmount(float value);
|
||||
void XM_CALLCONV SetEnvironmentMapSpecular(FXMVECTOR value);
|
||||
void __cdecl SetFresnelFactor(float value);
|
||||
|
@ -510,7 +518,7 @@ namespace DirectX
|
|||
|
||||
void __cdecl EnableDefaultLighting() override;
|
||||
|
||||
static const int MaxDirectionalLights = 4;
|
||||
static constexpr int MaxDirectionalLights = 4;
|
||||
|
||||
// Vertex color setting.
|
||||
void __cdecl SetVertexColorEnabled(bool value);
|
||||
|
@ -520,7 +528,7 @@ namespace DirectX
|
|||
void __cdecl SetTexture(_In_opt_ ID3D11ShaderResourceView* value);
|
||||
void __cdecl SetTexture(int whichTexture, _In_opt_ ID3D11ShaderResourceView* value);
|
||||
|
||||
static const int MaxTextures = 8;
|
||||
static constexpr int MaxTextures = 8;
|
||||
|
||||
// Animation setting.
|
||||
void __cdecl SetWeightsPerVertex(int value) override;
|
||||
|
@ -893,7 +901,7 @@ namespace DirectX
|
|||
// DGSL methods.
|
||||
struct DGSLEffectInfo : public EffectInfo
|
||||
{
|
||||
static const int BaseTextureOffset = 4;
|
||||
static constexpr int BaseTextureOffset = 4;
|
||||
|
||||
const wchar_t* textures[DGSLEffect::MaxTextures - BaseTextureOffset];
|
||||
const wchar_t* pixelShader;
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#if (_WIN32_WINNT < 0x0A00 /*_WIN32_WINNT_WIN10*/)
|
||||
#if (_WIN32_WINNT < 0x0A00 /*_WIN32_WINNT_WIN10*/) || defined(_GAMING_DESKTOP)
|
||||
#ifndef _XBOX_ONE
|
||||
#if !defined(WINAPI_FAMILY) || (WINAPI_FAMILY != WINAPI_FAMILY_PHONE_APP)
|
||||
#if (_WIN32_WINNT >= 0x0602 /*_WIN32_WINNT_WIN8*/ )
|
||||
|
@ -22,10 +22,14 @@
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_GAMES)
|
||||
interface IGameInputDevice;
|
||||
#endif
|
||||
|
||||
#include <cstdint>
|
||||
#include <memory>
|
||||
|
||||
#if (_WIN32_WINNT >= 0x0A00 /*_WIN32_WINNT_WIN10*/)
|
||||
#if (_WIN32_WINNT >= 0x0A00 /*_WIN32_WINNT_WIN10*/) && !defined(_GAMING_DESKTOP)
|
||||
#pragma comment(lib,"runtimeobject.lib")
|
||||
#include <string>
|
||||
#endif
|
||||
|
@ -50,10 +54,16 @@ namespace DirectX
|
|||
|
||||
virtual ~GamePad();
|
||||
|
||||
#if (_WIN32_WINNT >= 0x0A00 /*_WIN32_WINNT_WIN10*/) || defined(_XBOX_ONE)
|
||||
static const int MAX_PLAYER_COUNT = 8;
|
||||
#if ((_WIN32_WINNT >= 0x0A00 /*_WIN32_WINNT_WIN10*/) && !defined(_GAMING_DESKTOP)) || defined(_XBOX_ONE)
|
||||
static constexpr int MAX_PLAYER_COUNT = 8;
|
||||
#else
|
||||
static const int MAX_PLAYER_COUNT = 4;
|
||||
static constexpr int MAX_PLAYER_COUNT = 4;
|
||||
#endif
|
||||
|
||||
static constexpr int c_MostRecent = -1;
|
||||
|
||||
#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_GAMES)
|
||||
static constexpr int c_MergedInput = -2;
|
||||
#endif
|
||||
|
||||
enum DeadZone
|
||||
|
@ -173,7 +183,9 @@ namespace DirectX
|
|||
|
||||
bool connected;
|
||||
Type gamepadType;
|
||||
#if (_WIN32_WINNT >= 0x0A00 /*_WIN32_WINNT_WIN10*/)
|
||||
#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_GAMES)
|
||||
APP_LOCAL_DEVICE_ID id;
|
||||
#elif (_WIN32_WINNT >= 0x0A00 /*_WIN32_WINNT_WIN10*/) && !defined(_GAMING_DESKTOP)
|
||||
std::wstring id;
|
||||
#else
|
||||
uint64_t id;
|
||||
|
@ -264,10 +276,17 @@ namespace DirectX
|
|||
void __cdecl Suspend() noexcept;
|
||||
void __cdecl Resume() noexcept;
|
||||
|
||||
#if (_WIN32_WINNT >= 0x0A00 /*_WIN32_WINNT_WIN10*/ ) || defined(_XBOX_ONE)
|
||||
#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_GAMES)
|
||||
void __cdecl RegisterEvents(void* ctrlChanged) noexcept;
|
||||
#elif ((_WIN32_WINNT >= 0x0A00 /*_WIN32_WINNT_WIN10*/ ) && !defined(_GAMING_DESKTOP)) || defined(_XBOX_ONE)
|
||||
void __cdecl RegisterEvents(void* ctrlChanged, void* userChanged) noexcept;
|
||||
#endif
|
||||
|
||||
#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_GAMES)
|
||||
// Underlying device access
|
||||
void __cdecl GetDevice(int player, _Outptr_ IGameInputDevice** device) noexcept;
|
||||
#endif
|
||||
|
||||
// Singleton
|
||||
static GamePad& __cdecl Get();
|
||||
|
||||
|
|
|
@ -63,12 +63,17 @@ namespace DirectX
|
|||
static void __cdecl CreateTeapot(std::vector<VertexType>& vertices, std::vector<uint16_t>& indices, float size = 1, size_t tessellation = 8, bool rhcoords = true);
|
||||
|
||||
// Draw the primitive.
|
||||
void XM_CALLCONV Draw(FXMMATRIX world, CXMMATRIX view, CXMMATRIX projection, FXMVECTOR color = Colors::White, _In_opt_ ID3D11ShaderResourceView* texture = nullptr, bool wireframe = false,
|
||||
_In_opt_ std::function<void __cdecl()> setCustomState = nullptr) const;
|
||||
void XM_CALLCONV Draw(FXMMATRIX world, CXMMATRIX view, CXMMATRIX projection,
|
||||
FXMVECTOR color = Colors::White,
|
||||
_In_opt_ ID3D11ShaderResourceView* texture = nullptr,
|
||||
bool wireframe = false,
|
||||
_In_opt_ std::function<void __cdecl()> setCustomState = nullptr) const;
|
||||
|
||||
// Draw the primitive using a custom effect.
|
||||
void __cdecl Draw(_In_ IEffect* effect, _In_ ID3D11InputLayout* inputLayout, bool alpha = false, bool wireframe = false,
|
||||
_In_opt_ std::function<void __cdecl()> setCustomState = nullptr) const;
|
||||
void __cdecl Draw(_In_ IEffect* effect,
|
||||
_In_ ID3D11InputLayout* inputLayout,
|
||||
bool alpha = false, bool wireframe = false,
|
||||
_In_opt_ std::function<void __cdecl()> setCustomState = nullptr) const;
|
||||
|
||||
// Create input layout for drawing with a custom effect.
|
||||
void __cdecl CreateInputLayout(_In_ IEffect* effect, _Outptr_ ID3D11InputLayout** inputLayout) const;
|
||||
|
|
|
@ -24,9 +24,9 @@ namespace DirectX
|
|||
{
|
||||
public:
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
GraphicsMemory(_In_ ID3D11DeviceX* device, UINT backBufferCount = 2);
|
||||
GraphicsMemory(_In_ ID3D11DeviceX* device, unsigned int backBufferCount = 2);
|
||||
#else
|
||||
GraphicsMemory(_In_ ID3D11Device* device, UINT backBufferCount = 2);
|
||||
GraphicsMemory(_In_ ID3D11Device* device, unsigned int backBufferCount = 2);
|
||||
#endif
|
||||
GraphicsMemory(GraphicsMemory&& moveFrom) noexcept;
|
||||
GraphicsMemory& operator= (GraphicsMemory&& moveFrom) noexcept;
|
||||
|
|
|
@ -47,8 +47,6 @@ namespace DirectX
|
|||
ModelLoader_AllowLargeModels = 0x8,
|
||||
};
|
||||
|
||||
inline ModelLoaderFlags operator|(ModelLoaderFlags a, ModelLoaderFlags b) noexcept { return static_cast<ModelLoaderFlags>(static_cast<int>(a) | static_cast<int>(b)); }
|
||||
|
||||
//----------------------------------------------------------------------------------
|
||||
// Each mesh part is a submesh with a single effect
|
||||
class ModelMeshPart
|
||||
|
@ -209,4 +207,15 @@ namespace DirectX
|
|||
private:
|
||||
std::set<IEffect*> mEffectCache;
|
||||
};
|
||||
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wdeprecated-dynamic-exception-spec"
|
||||
#endif
|
||||
|
||||
DEFINE_ENUM_FLAG_OPERATORS(ModelLoaderFlags);
|
||||
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic pop
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -98,12 +98,17 @@ namespace DirectX
|
|||
bool __cdecl IsConnected() const;
|
||||
|
||||
// Cursor visibility
|
||||
bool __cdecl IsVisible() const;
|
||||
bool __cdecl IsVisible() const noexcept;
|
||||
void __cdecl SetVisible(bool visible);
|
||||
|
||||
#if (!defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP)) && defined(WM_USER)
|
||||
#ifdef WM_USER
|
||||
#if !defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP)
|
||||
void __cdecl SetWindow(HWND window);
|
||||
static void __cdecl ProcessMessage(UINT message, WPARAM wParam, LPARAM lParam);
|
||||
#elif (WINAPI_FAMILY == WINAPI_FAMILY_GAMES)
|
||||
static void __cdecl ProcessMessage(UINT message, WPARAM wParam, LPARAM lParam);
|
||||
static void __cdecl SetResolution(bool use4k);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if (defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_APP)) || (defined(_XBOX_ONE) && defined(_TITLE) && (_XDK_VER >= 0x42D907D1))
|
||||
|
|
|
@ -35,7 +35,8 @@ namespace DirectX
|
|||
IPostProcess(IPostProcess&&) = delete;
|
||||
IPostProcess& operator=(IPostProcess&&) = delete;
|
||||
|
||||
virtual void __cdecl Process(_In_ ID3D11DeviceContext* deviceContext, _In_opt_ std::function<void __cdecl()> setCustomState = nullptr) = 0;
|
||||
virtual void __cdecl Process(_In_ ID3D11DeviceContext* deviceContext,
|
||||
_In_opt_ std::function<void __cdecl()> setCustomState = nullptr) = 0;
|
||||
|
||||
protected:
|
||||
IPostProcess() = default;
|
||||
|
@ -70,7 +71,9 @@ namespace DirectX
|
|||
~BasicPostProcess() override;
|
||||
|
||||
// IPostProcess methods.
|
||||
void __cdecl Process(_In_ ID3D11DeviceContext* deviceContext, _In_opt_ std::function<void __cdecl()> setCustomState = nullptr) override;
|
||||
void __cdecl Process(
|
||||
_In_ ID3D11DeviceContext* deviceContext,
|
||||
_In_opt_ std::function<void __cdecl()> setCustomState = nullptr) override;
|
||||
|
||||
// Shader control
|
||||
void __cdecl SetEffect(Effect fx);
|
||||
|
@ -117,7 +120,8 @@ namespace DirectX
|
|||
~DualPostProcess() override;
|
||||
|
||||
// IPostProcess methods.
|
||||
void __cdecl Process(_In_ ID3D11DeviceContext* deviceContext, _In_opt_ std::function<void __cdecl()> setCustomState = nullptr) override;
|
||||
void __cdecl Process(_In_ ID3D11DeviceContext* deviceContext,
|
||||
_In_opt_ std::function<void __cdecl()> setCustomState = nullptr) override;
|
||||
|
||||
// Shader control
|
||||
void __cdecl SetEffect(Effect fx);
|
||||
|
@ -174,7 +178,8 @@ namespace DirectX
|
|||
~ToneMapPostProcess() override;
|
||||
|
||||
// IPostProcess methods.
|
||||
void __cdecl Process(_In_ ID3D11DeviceContext* deviceContext, _In_opt_ std::function<void __cdecl()> setCustomState = nullptr) override;
|
||||
void __cdecl Process(_In_ ID3D11DeviceContext* deviceContext,
|
||||
_In_opt_ std::function<void __cdecl()> setCustomState = nullptr) override;
|
||||
|
||||
// Shader control
|
||||
void __cdecl SetOperator(Operator op);
|
||||
|
|
|
@ -76,6 +76,8 @@ namespace DirectX
|
|||
return *this;
|
||||
}
|
||||
|
||||
PrimitiveBatch(PrimitiveBatch const&) = delete;
|
||||
PrimitiveBatch& operator= (PrimitiveBatch const&) = delete;
|
||||
|
||||
// Similar to the D3D9 API DrawPrimitiveUP.
|
||||
void Draw(D3D11_PRIMITIVE_TOPOLOGY topology, _In_reads_(vertexCount) TVertex const* vertices, size_t vertexCount)
|
||||
|
|
|
@ -44,5 +44,5 @@ namespace DirectX
|
|||
_In_z_ const wchar_t* fileName,
|
||||
_In_opt_ const GUID* targetFormat = nullptr,
|
||||
_In_opt_ std::function<void __cdecl(IPropertyBag2*)> setCustomProps = nullptr,
|
||||
_In_ bool forceSRGB = false) noexcept;
|
||||
_In_ bool forceSRGB = false);
|
||||
}
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#if !defined(_XBOX_ONE) || !defined(_TITLE)
|
||||
#if !(defined(_XBOX_ONE) && defined(_TITLE)) && !defined(_GAMING_XBOX)
|
||||
#include <dxgi1_2.h>
|
||||
#endif
|
||||
|
||||
|
|
|
@ -56,8 +56,13 @@ namespace DirectX
|
|||
virtual ~SpriteBatch();
|
||||
|
||||
// Begin/End a batch of sprite drawing operations.
|
||||
void XM_CALLCONV Begin(SpriteSortMode sortMode = SpriteSortMode_Deferred, _In_opt_ ID3D11BlendState* blendState = nullptr, _In_opt_ ID3D11SamplerState* samplerState = nullptr, _In_opt_ ID3D11DepthStencilState* depthStencilState = nullptr, _In_opt_ ID3D11RasterizerState* rasterizerState = nullptr,
|
||||
_In_opt_ std::function<void __cdecl()> setCustomShaders = nullptr, FXMMATRIX transformMatrix = MatrixIdentity);
|
||||
void XM_CALLCONV Begin(SpriteSortMode sortMode = SpriteSortMode_Deferred,
|
||||
_In_opt_ ID3D11BlendState* blendState = nullptr,
|
||||
_In_opt_ ID3D11SamplerState* samplerState = nullptr,
|
||||
_In_opt_ ID3D11DepthStencilState* depthStencilState = nullptr,
|
||||
_In_opt_ ID3D11RasterizerState* rasterizerState = nullptr,
|
||||
_In_opt_ std::function<void __cdecl()> setCustomShaders = nullptr,
|
||||
FXMMATRIX transformMatrix = MatrixIdentity);
|
||||
void __cdecl End();
|
||||
|
||||
// Draw overloads specifying position, origin and scale as XMFLOAT2.
|
||||
|
|
|
@ -42,7 +42,7 @@ namespace DirectX
|
|||
|
||||
XMFLOAT3 position;
|
||||
|
||||
static const int InputElementCount = 1;
|
||||
static constexpr unsigned int InputElementCount = 1;
|
||||
static const D3D11_INPUT_ELEMENT_DESC InputElements[InputElementCount];
|
||||
};
|
||||
|
||||
|
@ -72,7 +72,7 @@ namespace DirectX
|
|||
XMFLOAT3 position;
|
||||
XMFLOAT4 color;
|
||||
|
||||
static const int InputElementCount = 2;
|
||||
static constexpr unsigned int InputElementCount = 2;
|
||||
static const D3D11_INPUT_ELEMENT_DESC InputElements[InputElementCount];
|
||||
};
|
||||
|
||||
|
@ -102,7 +102,7 @@ namespace DirectX
|
|||
XMFLOAT3 position;
|
||||
XMFLOAT2 textureCoordinate;
|
||||
|
||||
static const int InputElementCount = 2;
|
||||
static constexpr unsigned int InputElementCount = 2;
|
||||
static const D3D11_INPUT_ELEMENT_DESC InputElements[InputElementCount];
|
||||
};
|
||||
|
||||
|
@ -141,7 +141,7 @@ namespace DirectX
|
|||
XMFLOAT2 textureCoordinate0;
|
||||
XMFLOAT2 textureCoordinate1;
|
||||
|
||||
static const int InputElementCount = 3;
|
||||
static constexpr unsigned int InputElementCount = 3;
|
||||
static const D3D11_INPUT_ELEMENT_DESC InputElements[InputElementCount];
|
||||
};
|
||||
|
||||
|
@ -171,7 +171,7 @@ namespace DirectX
|
|||
XMFLOAT3 position;
|
||||
XMFLOAT3 normal;
|
||||
|
||||
static const int InputElementCount = 2;
|
||||
static constexpr unsigned int InputElementCount = 2;
|
||||
static const D3D11_INPUT_ELEMENT_DESC InputElements[InputElementCount];
|
||||
};
|
||||
|
||||
|
@ -204,7 +204,7 @@ namespace DirectX
|
|||
XMFLOAT4 color;
|
||||
XMFLOAT2 textureCoordinate;
|
||||
|
||||
static const int InputElementCount = 3;
|
||||
static constexpr unsigned int InputElementCount = 3;
|
||||
static const D3D11_INPUT_ELEMENT_DESC InputElements[InputElementCount];
|
||||
};
|
||||
|
||||
|
@ -237,7 +237,7 @@ namespace DirectX
|
|||
XMFLOAT3 normal;
|
||||
XMFLOAT4 color;
|
||||
|
||||
static const int InputElementCount = 3;
|
||||
static constexpr unsigned int InputElementCount = 3;
|
||||
static const D3D11_INPUT_ELEMENT_DESC InputElements[InputElementCount];
|
||||
};
|
||||
|
||||
|
@ -270,7 +270,7 @@ namespace DirectX
|
|||
XMFLOAT3 normal;
|
||||
XMFLOAT2 textureCoordinate;
|
||||
|
||||
static const int InputElementCount = 3;
|
||||
static constexpr unsigned int InputElementCount = 3;
|
||||
static const D3D11_INPUT_ELEMENT_DESC InputElements[InputElementCount];
|
||||
};
|
||||
|
||||
|
@ -310,7 +310,7 @@ namespace DirectX
|
|||
XMFLOAT4 color;
|
||||
XMFLOAT2 textureCoordinate;
|
||||
|
||||
static const int InputElementCount = 4;
|
||||
static constexpr unsigned int InputElementCount = 4;
|
||||
static const D3D11_INPUT_ELEMENT_DESC InputElements[InputElementCount];
|
||||
};
|
||||
|
||||
|
@ -395,7 +395,7 @@ namespace DirectX
|
|||
void __cdecl SetColor(XMFLOAT4 const& icolor) noexcept { SetColor(XMLoadFloat4(&icolor)); }
|
||||
void XM_CALLCONV SetColor(FXMVECTOR icolor) noexcept;
|
||||
|
||||
static const int InputElementCount = 5;
|
||||
static constexpr unsigned int InputElementCount = 5;
|
||||
static const D3D11_INPUT_ELEMENT_DESC InputElements[InputElementCount];
|
||||
};
|
||||
|
||||
|
@ -484,7 +484,7 @@ namespace DirectX
|
|||
void __cdecl SetBlendWeights(XMFLOAT4 const& iweights) noexcept { SetBlendWeights(XMLoadFloat4(&iweights)); }
|
||||
void XM_CALLCONV SetBlendWeights(FXMVECTOR iweights) noexcept;
|
||||
|
||||
static const int InputElementCount = 7;
|
||||
static constexpr unsigned int InputElementCount = 7;
|
||||
static const D3D11_INPUT_ELEMENT_DESC InputElements[InputElementCount];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -41,9 +41,10 @@ namespace DirectX
|
|||
WIC_LOADER_DEFAULT = 0,
|
||||
WIC_LOADER_FORCE_SRGB = 0x1,
|
||||
WIC_LOADER_IGNORE_SRGB = 0x2,
|
||||
WIC_LOADER_FORCE_RGBA32 = 0x10,
|
||||
WIC_LOADER_SRGB_DEFAULT = 0x4,
|
||||
WIC_LOADER_FIT_POW2 = 0x20,
|
||||
WIC_LOADER_MAKE_SQUARE = 0x40,
|
||||
WIC_LOADER_FORCE_RGBA32 = 0x80,
|
||||
};
|
||||
|
||||
// Standard version
|
||||
|
@ -100,7 +101,7 @@ namespace DirectX
|
|||
_In_ unsigned int bindFlags,
|
||||
_In_ unsigned int cpuAccessFlags,
|
||||
_In_ unsigned int miscFlags,
|
||||
_In_ unsigned int loadFlags,
|
||||
_In_ WIC_LOADER_FLAGS loadFlags,
|
||||
_Outptr_opt_ ID3D11Resource** texture,
|
||||
_Outptr_opt_ ID3D11ShaderResourceView** textureView) noexcept;
|
||||
|
||||
|
@ -112,7 +113,7 @@ namespace DirectX
|
|||
_In_ unsigned int bindFlags,
|
||||
_In_ unsigned int cpuAccessFlags,
|
||||
_In_ unsigned int miscFlags,
|
||||
_In_ unsigned int loadFlags,
|
||||
_In_ WIC_LOADER_FLAGS loadFlags,
|
||||
_Outptr_opt_ ID3D11Resource** texture,
|
||||
_Outptr_opt_ ID3D11ShaderResourceView** textureView) noexcept;
|
||||
|
||||
|
@ -132,7 +133,7 @@ namespace DirectX
|
|||
_In_ unsigned int bindFlags,
|
||||
_In_ unsigned int cpuAccessFlags,
|
||||
_In_ unsigned int miscFlags,
|
||||
_In_ unsigned int loadFlags,
|
||||
_In_ WIC_LOADER_FLAGS loadFlags,
|
||||
_Outptr_opt_ ID3D11Resource** texture,
|
||||
_Outptr_opt_ ID3D11ShaderResourceView** textureView) noexcept;
|
||||
|
||||
|
@ -150,7 +151,18 @@ namespace DirectX
|
|||
_In_ unsigned int bindFlags,
|
||||
_In_ unsigned int cpuAccessFlags,
|
||||
_In_ unsigned int miscFlags,
|
||||
_In_ unsigned int loadFlags,
|
||||
_In_ WIC_LOADER_FLAGS loadFlags,
|
||||
_Outptr_opt_ ID3D11Resource** texture,
|
||||
_Outptr_opt_ ID3D11ShaderResourceView** textureView) noexcept;
|
||||
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wdeprecated-dynamic-exception-spec"
|
||||
#endif
|
||||
|
||||
DEFINE_ENUM_FLAG_OPERATORS(WIC_LOADER_FLAGS);
|
||||
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic pop
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
#define DDS_ALPHA_MODE_DEFINED
|
||||
namespace DirectX
|
||||
{
|
||||
enum DDS_ALPHA_MODE
|
||||
enum DDS_ALPHA_MODE : uint32_t
|
||||
{
|
||||
DDS_ALPHA_MODE_UNKNOWN = 0,
|
||||
DDS_ALPHA_MODE_STRAIGHT = 1,
|
||||
|
|
|
@ -6,11 +6,11 @@ http://go.microsoft.com/fwlink/?LinkId=248929
|
|||
|
||||
Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
|
||||
**May 10, 2020**
|
||||
**September 30, 2020**
|
||||
|
||||
This package contains the "DirectX Tool Kit", a collection of helper classes for writing Direct3D 11 C++ code for Universal Windows Platform (UWP) apps for Windows 10, Xbox One, and Win32 desktop applications for Windows 7 Service Pack 1 or later.
|
||||
|
||||
This code is designed to build with Visual Studio 2017 ([15.9](https://walbourn.github.io/vs-2017-15-9-update/)), Visual Studio 2019, or clang for Windows v9. It is recommended that you make use of the Windows 10 May 2019 Update SDK ([18362](https://walbourn.github.io/windows-10-may-2019-update/)).
|
||||
This code is designed to build with Visual Studio 2017 ([15.9](https://walbourn.github.io/vs-2017-15-9-update/)), Visual Studio 2019, or clang for Windows v9 or later. It is recommended that you make use of the Windows 10 May 2020 Update SDK ([19041](https://walbourn.github.io/windows-10-may-2020-update-sdk/)).
|
||||
|
||||
These components are designed to work without requiring any content from the legacy DirectX SDK. For details, see [Where is the DirectX SDK?](https://aka.ms/dxsdk).
|
||||
|
||||
|
@ -21,6 +21,7 @@ These components are designed to work without requiring any content from the leg
|
|||
+ Public Header Files (in the DirectX C++ namespace):
|
||||
|
||||
* Audio.h - low-level audio API using XAudio2 (DirectXTK for Audio public header)
|
||||
* BufferHelpers.h - C++ helpers for creating D3D resources from CPU data
|
||||
* CommonStates.h - factory providing commonly used D3D state objects
|
||||
* DDSTextureLoader.h - light-weight DDS file texture loader
|
||||
* DirectXHelpers.h - misc C++ helpers for D3D programming
|
||||
|
@ -69,17 +70,13 @@ For the latest version of DirectXTK, bug reports, etc. please visit the project
|
|||
|
||||
This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.
|
||||
|
||||
## Xbox One
|
||||
|
||||
Developers using the Xbox One XDK need to generate the ``Src\Shaders\Compiled\XboxOne*.inc`` files to build the library as they are not included in the distribution package. They are built by running the script in ``Src\Shaders`` - ``CompileShaders xbox`` from the *Xbox One XDK Developer Command Prompt*. They are XDK version-specific. While they will continue to work if outdated, a mismatch will cause runtime compilation overhead that would otherwise be avoided.
|
||||
|
||||
## Release Notes
|
||||
|
||||
* The VS 2017/2019 projects make use of ``/permissive-`` for improved C++ standard conformance. Use of a Windows 10 SDK prior to the Fall Creators Update (16299) or an Xbox One XDK prior to June 2017 QFE 4 may result in failures due to problems with the system headers. You can work around these by disabling this switch in the project files which is found in the ``<ConformanceMode>`` elements, or in some cases adding ``/Zc:twoPhase-`` to the ``<AdditionalOptions>`` elements.
|
||||
* Starting with the June 2020 release, this library makes use of typed enum bitmask flags per the recommendation of the _C++ Standard_ section *17.5.2.1.3 Bitmask types*. This may have *breaking change* impacts to client code:
|
||||
|
||||
* The VS 2017 projects require the 15.5 update or later. For UWP and Win32 classic desktop projects with the 15.5 - 15.7 updates, you need to install the standalone Windows 10 SDK (17763) which is otherwise included in the 15.8.6 or later update. Older VS 2017 updates will fail to load the projects due to use of the <ConformanceMode> element. If using the 15.5 or 15.6 updates, you will see ``warning D9002: ignoring unknown option '/Zc:__cplusplus'`` because this switch isn't supported until 15.7. It is safe to ignore this warning, or you can edit the project files ``<AdditionalOptions>`` elements.
|
||||
* You cannot pass the ``0`` literal as your flags value. Instead you must make use of the appropriate default enum value: ``AudioEngine_Default``, ``SoundEffectInstance_Default``, ``ModelLoader_Clockwise``, or ``WIC_LOADER_DEFAULT``.
|
||||
|
||||
* The VS 2019 projects use a ``<WindowsTargetPlatformVersion>`` of ``10.0`` which indicates to use the latest installed version. This should be Windows 10 SDK (17763) or later.
|
||||
* Use the enum type instead of ``DWORD`` if building up flags values locally with bitmask operations. For example, ```WIC_LOADER_FLAGS flags = WIC_LOADER_DEFAULT; if (...) flags |= WIC_LOADER_FORCE_SRGB;```
|
||||
|
||||
* The UWP projects and the VS 2019 Win10 classic desktop project include configurations for the ARM64 platform. These require VS 2017 (15.9 update) or VS 2019 to build, with the ARM64 toolset installed.
|
||||
|
||||
|
|
|
@ -12,30 +12,31 @@
|
|||
|
||||
using namespace DirectX;
|
||||
|
||||
|
||||
// Constant buffer layout. Must match the shader!
|
||||
struct AlphaTestEffectConstants
|
||||
namespace
|
||||
{
|
||||
XMVECTOR diffuseColor;
|
||||
XMVECTOR alphaTest;
|
||||
XMVECTOR fogColor;
|
||||
XMVECTOR fogVector;
|
||||
XMMATRIX worldViewProj;
|
||||
};
|
||||
// Constant buffer layout. Must match the shader!
|
||||
struct AlphaTestEffectConstants
|
||||
{
|
||||
XMVECTOR diffuseColor;
|
||||
XMVECTOR alphaTest;
|
||||
XMVECTOR fogColor;
|
||||
XMVECTOR fogVector;
|
||||
XMMATRIX worldViewProj;
|
||||
};
|
||||
|
||||
static_assert((sizeof(AlphaTestEffectConstants) % 16) == 0, "CB size not padded correctly");
|
||||
static_assert((sizeof(AlphaTestEffectConstants) % 16) == 0, "CB size not padded correctly");
|
||||
|
||||
|
||||
// Traits type describes our characteristics to the EffectBase template.
|
||||
struct AlphaTestEffectTraits
|
||||
{
|
||||
using ConstantBufferType = AlphaTestEffectConstants;
|
||||
|
||||
static const int VertexShaderCount = 4;
|
||||
static const int PixelShaderCount = 4;
|
||||
static const int ShaderPermutationCount = 8;
|
||||
};
|
||||
// Traits type describes our characteristics to the EffectBase template.
|
||||
struct AlphaTestEffectTraits
|
||||
{
|
||||
using ConstantBufferType = AlphaTestEffectConstants;
|
||||
|
||||
static constexpr int VertexShaderCount = 4;
|
||||
static constexpr int PixelShaderCount = 4;
|
||||
static constexpr int ShaderPermutationCount = 8;
|
||||
};
|
||||
}
|
||||
|
||||
// Internal AlphaTestEffect implementation class.
|
||||
class AlphaTestEffect::Impl : public EffectBase<AlphaTestEffectTraits>
|
||||
|
@ -140,7 +141,7 @@ SharedResourcePool<ID3D11Device*, EffectBase<AlphaTestEffectTraits>::DeviceResou
|
|||
|
||||
// Constructor.
|
||||
AlphaTestEffect::Impl::Impl(_In_ ID3D11Device* device)
|
||||
: EffectBase(device),
|
||||
: EffectBase(device),
|
||||
alphaFunction(D3D11_COMPARISON_GREATER),
|
||||
referenceAlpha(0),
|
||||
vertexColorEnabled(false)
|
||||
|
@ -280,14 +281,14 @@ void AlphaTestEffect::Impl::Apply(_In_ ID3D11DeviceContext* deviceContext)
|
|||
|
||||
// Public constructor.
|
||||
AlphaTestEffect::AlphaTestEffect(_In_ ID3D11Device* device)
|
||||
: pImpl(std::make_unique<Impl>(device))
|
||||
: pImpl(std::make_unique<Impl>(device))
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
// Move constructor.
|
||||
AlphaTestEffect::AlphaTestEffect(AlphaTestEffect&& moveFrom) noexcept
|
||||
: pImpl(std::move(moveFrom.pImpl))
|
||||
: pImpl(std::move(moveFrom.pImpl))
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -12,41 +12,42 @@
|
|||
|
||||
using namespace DirectX;
|
||||
|
||||
|
||||
// Constant buffer layout. Must match the shader!
|
||||
struct BasicEffectConstants
|
||||
namespace
|
||||
{
|
||||
XMVECTOR diffuseColor;
|
||||
XMVECTOR emissiveColor;
|
||||
XMVECTOR specularColorAndPower;
|
||||
|
||||
XMVECTOR lightDirection[IEffectLights::MaxDirectionalLights];
|
||||
XMVECTOR lightDiffuseColor[IEffectLights::MaxDirectionalLights];
|
||||
XMVECTOR lightSpecularColor[IEffectLights::MaxDirectionalLights];
|
||||
// Constant buffer layout. Must match the shader!
|
||||
struct BasicEffectConstants
|
||||
{
|
||||
XMVECTOR diffuseColor;
|
||||
XMVECTOR emissiveColor;
|
||||
XMVECTOR specularColorAndPower;
|
||||
|
||||
XMVECTOR eyePosition;
|
||||
XMVECTOR lightDirection[IEffectLights::MaxDirectionalLights];
|
||||
XMVECTOR lightDiffuseColor[IEffectLights::MaxDirectionalLights];
|
||||
XMVECTOR lightSpecularColor[IEffectLights::MaxDirectionalLights];
|
||||
|
||||
XMVECTOR fogColor;
|
||||
XMVECTOR fogVector;
|
||||
XMVECTOR eyePosition;
|
||||
|
||||
XMMATRIX world;
|
||||
XMVECTOR worldInverseTranspose[3];
|
||||
XMMATRIX worldViewProj;
|
||||
};
|
||||
XMVECTOR fogColor;
|
||||
XMVECTOR fogVector;
|
||||
|
||||
static_assert((sizeof(BasicEffectConstants) % 16) == 0, "CB size not padded correctly");
|
||||
XMMATRIX world;
|
||||
XMVECTOR worldInverseTranspose[3];
|
||||
XMMATRIX worldViewProj;
|
||||
};
|
||||
|
||||
static_assert((sizeof(BasicEffectConstants) % 16) == 0, "CB size not padded correctly");
|
||||
|
||||
|
||||
// Traits type describes our characteristics to the EffectBase template.
|
||||
struct BasicEffectTraits
|
||||
{
|
||||
using ConstantBufferType = BasicEffectConstants;
|
||||
|
||||
static const int VertexShaderCount = 32;
|
||||
static const int PixelShaderCount = 10;
|
||||
static const int ShaderPermutationCount = 56;
|
||||
};
|
||||
// Traits type describes our characteristics to the EffectBase template.
|
||||
struct BasicEffectTraits
|
||||
{
|
||||
using ConstantBufferType = BasicEffectConstants;
|
||||
|
||||
static constexpr int VertexShaderCount = 32;
|
||||
static constexpr int PixelShaderCount = 10;
|
||||
static constexpr int ShaderPermutationCount = 56;
|
||||
};
|
||||
}
|
||||
|
||||
// Internal BasicEffect implementation class.
|
||||
class BasicEffect::Impl : public EffectBase<BasicEffectTraits>
|
||||
|
@ -476,14 +477,14 @@ void BasicEffect::Impl::Apply(_In_ ID3D11DeviceContext* deviceContext)
|
|||
|
||||
// Public constructor.
|
||||
BasicEffect::BasicEffect(_In_ ID3D11Device* device)
|
||||
: pImpl(std::make_unique<Impl>(device))
|
||||
: pImpl(std::make_unique<Impl>(device))
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
// Move constructor.
|
||||
BasicEffect::BasicEffect(BasicEffect&& moveFrom) noexcept
|
||||
: pImpl(std::move(moveFrom.pImpl))
|
||||
: pImpl(std::move(moveFrom.pImpl))
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -10,11 +10,11 @@
|
|||
#include "pch.h"
|
||||
#include "PostProcess.h"
|
||||
|
||||
#include "AlignedNew.h"
|
||||
#include "BufferHelpers.h"
|
||||
#include "CommonStates.h"
|
||||
#include "ConstantBuffer.h"
|
||||
#include "DemandCreate.h"
|
||||
#include "DirectXHelpers.h"
|
||||
#include "AlignedNew.h"
|
||||
#include "DemandCreate.h"
|
||||
#include "SharedResourcePool.h"
|
||||
|
||||
using namespace DirectX;
|
||||
|
@ -23,10 +23,10 @@ using Microsoft::WRL::ComPtr;
|
|||
|
||||
namespace
|
||||
{
|
||||
const int c_MaxSamples = 16;
|
||||
constexpr int c_MaxSamples = 16;
|
||||
|
||||
const int Dirty_ConstantBuffer = 0x01;
|
||||
const int Dirty_Parameters = 0x02;
|
||||
constexpr int Dirty_ConstantBuffer = 0x01;
|
||||
constexpr int Dirty_Parameters = 0x02;
|
||||
|
||||
// Constant buffer layout. Must match the shader!
|
||||
__declspec(align(16)) struct PostProcessConstants
|
||||
|
@ -211,11 +211,15 @@ BasicPostProcess::Impl::Impl(_In_ ID3D11Device* device)
|
|||
{
|
||||
throw std::exception("BasicPostProcess requires Feature Level 10.0 or later");
|
||||
}
|
||||
|
||||
SetDebugObjectName(mConstantBuffer.GetBuffer(), "BasicPostProcess");
|
||||
}
|
||||
|
||||
|
||||
// Sets our state onto the D3D device.
|
||||
void BasicPostProcess::Impl::Process(_In_ ID3D11DeviceContext* deviceContext, std::function<void __cdecl()>& setCustomState)
|
||||
void BasicPostProcess::Impl::Process(
|
||||
_In_ ID3D11DeviceContext* deviceContext,
|
||||
std::function<void __cdecl()>& setCustomState)
|
||||
{
|
||||
// Set the texture.
|
||||
ID3D11ShaderResourceView* textures[1] = { texture.Get() };
|
||||
|
@ -494,7 +498,9 @@ BasicPostProcess::~BasicPostProcess()
|
|||
|
||||
|
||||
// IPostProcess methods.
|
||||
void BasicPostProcess::Process(_In_ ID3D11DeviceContext* deviceContext, _In_opt_ std::function<void __cdecl()> setCustomState)
|
||||
void BasicPostProcess::Process(
|
||||
_In_ ID3D11DeviceContext* deviceContext,
|
||||
_In_opt_ std::function<void __cdecl()> setCustomState)
|
||||
{
|
||||
pImpl->Process(deviceContext, setCustomState);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,393 @@
|
|||
//--------------------------------------------------------------------------------------
|
||||
// File: BufferHelpers.cpp
|
||||
//
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
//
|
||||
// http://go.microsoft.com/fwlink/?LinkId=248929
|
||||
//--------------------------------------------------------------------------------------
|
||||
|
||||
#include "pch.h"
|
||||
#include "BufferHelpers.h"
|
||||
#include "PlatformHelpers.h"
|
||||
|
||||
|
||||
using namespace DirectX;
|
||||
using Microsoft::WRL::ComPtr;
|
||||
|
||||
//--------------------------------------------------------------------------------------
|
||||
_Use_decl_annotations_
|
||||
HRESULT DirectX::CreateStaticBuffer(
|
||||
ID3D11Device* device,
|
||||
const void* ptr,
|
||||
size_t count,
|
||||
size_t stride,
|
||||
unsigned int bindFlags,
|
||||
ID3D11Buffer** pBuffer) noexcept
|
||||
{
|
||||
if (!pBuffer)
|
||||
return E_INVALIDARG;
|
||||
|
||||
*pBuffer = nullptr;
|
||||
|
||||
if (!device || !ptr || !count || !stride)
|
||||
return E_INVALIDARG;
|
||||
|
||||
uint64_t sizeInbytes = uint64_t(count) * uint64_t(stride);
|
||||
|
||||
static constexpr uint64_t c_maxBytes = D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM * 1024u * 1024u;
|
||||
static_assert(c_maxBytes <= UINT32_MAX, "Exceeded integer limits");
|
||||
|
||||
if (sizeInbytes > c_maxBytes)
|
||||
{
|
||||
DebugTrace("ERROR: Resource size too large for DirectX 11 (size %llu)\n", sizeInbytes);
|
||||
return HRESULT_FROM_WIN32(ERROR_NOT_SUPPORTED);
|
||||
}
|
||||
|
||||
D3D11_BUFFER_DESC bufferDesc = {};
|
||||
bufferDesc.ByteWidth = static_cast<UINT>(sizeInbytes);
|
||||
bufferDesc.BindFlags = bindFlags;
|
||||
bufferDesc.Usage = D3D11_USAGE_DEFAULT;
|
||||
|
||||
D3D11_SUBRESOURCE_DATA initData = { ptr, 0, 0 };
|
||||
|
||||
return device->CreateBuffer(&bufferDesc, &initData, pBuffer);
|
||||
}
|
||||
|
||||
|
||||
//--------------------------------------------------------------------------------------
|
||||
_Use_decl_annotations_
|
||||
HRESULT DirectX::CreateTextureFromMemory(
|
||||
ID3D11Device* device,
|
||||
size_t width,
|
||||
DXGI_FORMAT format,
|
||||
const D3D11_SUBRESOURCE_DATA& initData,
|
||||
ID3D11Texture1D** texture,
|
||||
ID3D11ShaderResourceView** textureView,
|
||||
unsigned int bindFlags) noexcept
|
||||
{
|
||||
if (texture)
|
||||
{
|
||||
*texture = nullptr;
|
||||
}
|
||||
if (textureView)
|
||||
{
|
||||
*textureView = nullptr;
|
||||
}
|
||||
|
||||
if (!device || !width || !initData.pSysMem)
|
||||
return E_INVALIDARG;
|
||||
|
||||
if (!texture && !textureView)
|
||||
return E_INVALIDARG;
|
||||
|
||||
static_assert(D3D11_REQ_TEXTURE1D_U_DIMENSION <= UINT32_MAX, "Exceeded integer limits");
|
||||
|
||||
if (width > D3D11_REQ_TEXTURE1D_U_DIMENSION)
|
||||
{
|
||||
DebugTrace("ERROR: Resource dimensions too large for DirectX 11 (1D: size %zu)\n", width);
|
||||
return HRESULT_FROM_WIN32(ERROR_NOT_SUPPORTED);
|
||||
}
|
||||
|
||||
D3D11_TEXTURE1D_DESC desc = {};
|
||||
desc.Width = static_cast<UINT>(width);
|
||||
desc.MipLevels = desc.ArraySize = 1;
|
||||
desc.Format = format;
|
||||
desc.Usage = D3D11_USAGE_DEFAULT;
|
||||
desc.BindFlags = bindFlags;
|
||||
|
||||
ComPtr<ID3D11Texture1D> tex;
|
||||
HRESULT hr = device->CreateTexture1D(&desc, &initData, tex.GetAddressOf());
|
||||
if (SUCCEEDED(hr))
|
||||
{
|
||||
if (textureView)
|
||||
{
|
||||
hr = device->CreateShaderResourceView(tex.Get(), nullptr, textureView);
|
||||
if (FAILED(hr))
|
||||
return hr;
|
||||
}
|
||||
|
||||
if (texture)
|
||||
{
|
||||
*texture = tex.Detach();
|
||||
}
|
||||
}
|
||||
|
||||
return hr;
|
||||
}
|
||||
|
||||
_Use_decl_annotations_
|
||||
HRESULT DirectX::CreateTextureFromMemory(
|
||||
ID3D11Device* device,
|
||||
size_t width,
|
||||
size_t height,
|
||||
DXGI_FORMAT format,
|
||||
const D3D11_SUBRESOURCE_DATA& initData,
|
||||
ID3D11Texture2D** texture,
|
||||
ID3D11ShaderResourceView** textureView,
|
||||
unsigned int bindFlags) noexcept
|
||||
{
|
||||
if (texture)
|
||||
{
|
||||
*texture = nullptr;
|
||||
}
|
||||
if (textureView)
|
||||
{
|
||||
*textureView = nullptr;
|
||||
}
|
||||
|
||||
if (!device || !width || !height
|
||||
|| !initData.pSysMem || !initData.SysMemPitch)
|
||||
return E_INVALIDARG;
|
||||
|
||||
if (!texture && !textureView)
|
||||
return E_INVALIDARG;
|
||||
|
||||
static_assert(D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION <= UINT32_MAX, "Exceeded integer limits");
|
||||
|
||||
if ((width > D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION)
|
||||
|| (height > D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION))
|
||||
{
|
||||
DebugTrace("ERROR: Resource dimensions too large for DirectX 11 (2D: size %zu by %zu)\n", width, height);
|
||||
return HRESULT_FROM_WIN32(ERROR_NOT_SUPPORTED);
|
||||
}
|
||||
|
||||
D3D11_TEXTURE2D_DESC desc = {};
|
||||
desc.Width = static_cast<UINT>(width);
|
||||
desc.Height = static_cast<UINT>(height);
|
||||
desc.MipLevels = desc.ArraySize = 1;
|
||||
desc.Format = format;
|
||||
desc.SampleDesc.Count = 1;
|
||||
desc.Usage = D3D11_USAGE_DEFAULT;
|
||||
desc.BindFlags = bindFlags;
|
||||
|
||||
ComPtr<ID3D11Texture2D> tex;
|
||||
HRESULT hr = device->CreateTexture2D(&desc, &initData, tex.GetAddressOf());
|
||||
if (SUCCEEDED(hr))
|
||||
{
|
||||
if (textureView)
|
||||
{
|
||||
hr = device->CreateShaderResourceView(tex.Get(), nullptr, textureView);
|
||||
if (FAILED(hr))
|
||||
return hr;
|
||||
}
|
||||
|
||||
if (texture)
|
||||
{
|
||||
*texture = tex.Detach();
|
||||
}
|
||||
}
|
||||
|
||||
return hr;
|
||||
}
|
||||
|
||||
|
||||
_Use_decl_annotations_
|
||||
HRESULT DirectX::CreateTextureFromMemory(
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
_In_ ID3D11DeviceX* device,
|
||||
_In_ ID3D11DeviceContextX* d3dContext,
|
||||
#else
|
||||
_In_ ID3D11Device* device,
|
||||
_In_ ID3D11DeviceContext* d3dContext,
|
||||
#endif
|
||||
size_t width,
|
||||
size_t height,
|
||||
DXGI_FORMAT format,
|
||||
const D3D11_SUBRESOURCE_DATA& initData,
|
||||
ID3D11Texture2D** texture,
|
||||
ID3D11ShaderResourceView** textureView) noexcept
|
||||
{
|
||||
if (texture)
|
||||
{
|
||||
*texture = nullptr;
|
||||
}
|
||||
if (textureView)
|
||||
{
|
||||
*textureView = nullptr;
|
||||
}
|
||||
|
||||
if (!device || !d3dContext || !width || !height
|
||||
|| !initData.pSysMem || !initData.SysMemPitch)
|
||||
return E_INVALIDARG;
|
||||
|
||||
if (!texture && !textureView)
|
||||
return E_INVALIDARG;
|
||||
|
||||
static_assert(D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION <= UINT32_MAX, "Exceeded integer limits");
|
||||
|
||||
if ((width > D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION)
|
||||
|| (height > D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION))
|
||||
{
|
||||
DebugTrace("ERROR: Resource dimensions too large for DirectX 11 (2D: size %zu by %zu)\n", width, height);
|
||||
return HRESULT_FROM_WIN32(ERROR_NOT_SUPPORTED);
|
||||
}
|
||||
|
||||
D3D11_TEXTURE2D_DESC desc = {};
|
||||
desc.Width = static_cast<UINT>(width);
|
||||
desc.Height = static_cast<UINT>(height);
|
||||
desc.ArraySize = 1;
|
||||
desc.Format = format;
|
||||
desc.SampleDesc.Count = 1;
|
||||
desc.Usage = D3D11_USAGE_DEFAULT;
|
||||
desc.BindFlags = D3D11_BIND_SHADER_RESOURCE;
|
||||
|
||||
UINT fmtSupport = 0;
|
||||
if (SUCCEEDED(device->CheckFormatSupport(format, &fmtSupport)) && (fmtSupport & D3D11_FORMAT_SUPPORT_MIP_AUTOGEN))
|
||||
{
|
||||
desc.BindFlags |= D3D11_BIND_RENDER_TARGET;
|
||||
desc.MiscFlags |= D3D11_RESOURCE_MISC_GENERATE_MIPS;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Autogen not supported.
|
||||
desc.MipLevels = 1;
|
||||
}
|
||||
|
||||
ComPtr<ID3D11Texture2D> tex;
|
||||
HRESULT hr = device->CreateTexture2D(&desc, nullptr, tex.GetAddressOf());
|
||||
if (SUCCEEDED(hr))
|
||||
{
|
||||
ComPtr<ID3D11ShaderResourceView> srv;
|
||||
hr = device->CreateShaderResourceView(tex.Get(), nullptr, srv.GetAddressOf());
|
||||
if (FAILED(hr))
|
||||
return hr;
|
||||
|
||||
if (desc.MipLevels != 1)
|
||||
{
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
ComPtr<ID3D11Texture2D> staging;
|
||||
desc.MipLevels = 1;
|
||||
desc.Usage = D3D11_USAGE_STAGING;
|
||||
desc.BindFlags = desc.MiscFlags = 0;
|
||||
desc.CPUAccessFlags = D3D11_CPU_ACCESS_READ;
|
||||
hr = device->CreateTexture2D(&desc, &initData, staging.GetAddressOf());
|
||||
if (FAILED(hr))
|
||||
return hr;
|
||||
|
||||
d3dContext->CopySubresourceRegion(tex.Get(), 0, 0, 0, 0, staging.Get(), 0, nullptr);
|
||||
UINT64 copyFence = d3dContext->InsertFence(0);
|
||||
while (device->IsFencePending(copyFence)) { SwitchToThread(); }
|
||||
#else
|
||||
d3dContext->UpdateSubresource(tex.Get(), 0, nullptr, initData.pSysMem, initData.SysMemPitch, 0);
|
||||
#endif
|
||||
d3dContext->GenerateMips(srv.Get());
|
||||
}
|
||||
|
||||
if (texture)
|
||||
{
|
||||
*texture = tex.Detach();
|
||||
}
|
||||
if (textureView)
|
||||
{
|
||||
*textureView = srv.Detach();
|
||||
}
|
||||
}
|
||||
|
||||
return hr;
|
||||
}
|
||||
|
||||
_Use_decl_annotations_
|
||||
HRESULT DirectX::CreateTextureFromMemory(
|
||||
ID3D11Device* device,
|
||||
size_t width, size_t height, size_t depth,
|
||||
DXGI_FORMAT format,
|
||||
const D3D11_SUBRESOURCE_DATA& initData,
|
||||
ID3D11Texture3D** texture,
|
||||
ID3D11ShaderResourceView** textureView,
|
||||
unsigned int bindFlags) noexcept
|
||||
{
|
||||
if (texture)
|
||||
{
|
||||
*texture = nullptr;
|
||||
}
|
||||
if (textureView)
|
||||
{
|
||||
*textureView = nullptr;
|
||||
}
|
||||
|
||||
if (!device || !width || !height || !depth
|
||||
|| !initData.pSysMem || !initData.SysMemPitch || !initData.SysMemSlicePitch)
|
||||
return E_INVALIDARG;
|
||||
|
||||
if (!texture && !textureView)
|
||||
return E_INVALIDARG;
|
||||
|
||||
static_assert(D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION <= UINT32_MAX, "Exceeded integer limits");
|
||||
|
||||
if ((width > D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION)
|
||||
|| (height > D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION)
|
||||
|| (depth > D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION))
|
||||
{
|
||||
DebugTrace("ERROR: Resource dimensions too large for DirectX 11 (3D: size %zu by %zu by %zu)\n", width, height, depth);
|
||||
return HRESULT_FROM_WIN32(ERROR_NOT_SUPPORTED);
|
||||
}
|
||||
|
||||
D3D11_TEXTURE3D_DESC desc = {};
|
||||
desc.Width = static_cast<UINT>(width);
|
||||
desc.Height = static_cast<UINT>(height);
|
||||
desc.Depth = static_cast<UINT>(depth);
|
||||
desc.MipLevels = 1;
|
||||
desc.Format = format;
|
||||
desc.Usage = D3D11_USAGE_DEFAULT;
|
||||
desc.BindFlags = bindFlags;
|
||||
|
||||
ComPtr<ID3D11Texture3D> tex;
|
||||
HRESULT hr = device->CreateTexture3D(&desc, &initData, tex.GetAddressOf());
|
||||
if (SUCCEEDED(hr))
|
||||
{
|
||||
if (textureView)
|
||||
{
|
||||
hr = device->CreateShaderResourceView(tex.Get(), nullptr, textureView);
|
||||
if (FAILED(hr))
|
||||
return hr;
|
||||
}
|
||||
|
||||
if (texture)
|
||||
{
|
||||
*texture = tex.Detach();
|
||||
}
|
||||
}
|
||||
|
||||
return hr;
|
||||
}
|
||||
|
||||
|
||||
//--------------------------------------------------------------------------------------
|
||||
_Use_decl_annotations_
|
||||
void Internal::ConstantBufferBase::CreateBuffer(
|
||||
ID3D11Device* device,
|
||||
size_t bytes,
|
||||
ID3D11Buffer** pBuffer)
|
||||
{
|
||||
if (!pBuffer)
|
||||
throw std::invalid_argument("ConstantBuffer");
|
||||
|
||||
*pBuffer = nullptr;
|
||||
|
||||
D3D11_BUFFER_DESC desc = {};
|
||||
desc.ByteWidth = static_cast<UINT>(bytes);
|
||||
desc.Usage = D3D11_USAGE_DEFAULT;
|
||||
desc.BindFlags = D3D11_BIND_CONSTANT_BUFFER;
|
||||
desc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE;
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
|
||||
Microsoft::WRL::ComPtr<ID3D11DeviceX> deviceX;
|
||||
ThrowIfFailed(device->QueryInterface(IID_GRAPHICS_PPV_ARGS(deviceX.GetAddressOf())));
|
||||
|
||||
ThrowIfFailed(deviceX->CreatePlacementBuffer(&desc, nullptr, pBuffer));
|
||||
|
||||
#else
|
||||
|
||||
desc.Usage = D3D11_USAGE_DYNAMIC;
|
||||
|
||||
ThrowIfFailed(
|
||||
device->CreateBuffer(&desc, nullptr, pBuffer)
|
||||
);
|
||||
|
||||
#endif
|
||||
|
||||
assert(pBuffer != nullptr && *pBuffer != nullptr);
|
||||
_Analysis_assume_(pBuffer != nullptr && *pBuffer != nullptr);
|
||||
}
|
|
@ -1,111 +0,0 @@
|
|||
//--------------------------------------------------------------------------------------
|
||||
// File: ConstantBuffer.h
|
||||
//
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
//
|
||||
// http://go.microsoft.com/fwlink/?LinkId=248929
|
||||
//--------------------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "DirectXHelpers.h"
|
||||
#include "GraphicsMemory.h"
|
||||
#include "PlatformHelpers.h"
|
||||
|
||||
|
||||
namespace DirectX
|
||||
{
|
||||
// Strongly typed wrapper around a D3D constant buffer.
|
||||
template<typename T>
|
||||
class ConstantBuffer
|
||||
{
|
||||
public:
|
||||
// Constructor.
|
||||
ConstantBuffer() = default;
|
||||
explicit ConstantBuffer(_In_ ID3D11Device* device)
|
||||
{
|
||||
Create(device);
|
||||
}
|
||||
|
||||
ConstantBuffer(ConstantBuffer const&) = delete;
|
||||
ConstantBuffer& operator= (ConstantBuffer const&) = delete;
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
void Create(_In_ ID3D11Device* device)
|
||||
{
|
||||
D3D11_BUFFER_DESC desc = {};
|
||||
|
||||
desc.ByteWidth = sizeof(T);
|
||||
desc.Usage = D3D11_USAGE_DEFAULT;
|
||||
desc.BindFlags = D3D11_BIND_CONSTANT_BUFFER;
|
||||
desc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE;
|
||||
|
||||
Microsoft::WRL::ComPtr<ID3D11DeviceX> deviceX;
|
||||
ThrowIfFailed(device->QueryInterface(IID_GRAPHICS_PPV_ARGS(deviceX.GetAddressOf())));
|
||||
|
||||
ThrowIfFailed(deviceX->CreatePlacementBuffer(&desc, nullptr, mConstantBuffer.ReleaseAndGetAddressOf()));
|
||||
|
||||
SetDebugObjectName(mConstantBuffer.Get(), L"DirectXTK");
|
||||
}
|
||||
|
||||
|
||||
// Writes new data into the constant buffer.
|
||||
void SetData(_In_ ID3D11DeviceContext* deviceContext, T const& value, void** grfxMemory)
|
||||
{
|
||||
assert(grfxMemory != nullptr);
|
||||
|
||||
void* ptr = GraphicsMemory::Get().Allocate(deviceContext, sizeof(T), 64);
|
||||
assert(ptr != nullptr);
|
||||
|
||||
*(T*)ptr = value;
|
||||
|
||||
*grfxMemory = ptr;
|
||||
}
|
||||
#else
|
||||
void Create(_In_ ID3D11Device* device)
|
||||
{
|
||||
D3D11_BUFFER_DESC desc = {};
|
||||
|
||||
desc.ByteWidth = sizeof(T);
|
||||
desc.Usage = D3D11_USAGE_DYNAMIC;
|
||||
desc.BindFlags = D3D11_BIND_CONSTANT_BUFFER;
|
||||
desc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE;
|
||||
|
||||
ThrowIfFailed(
|
||||
device->CreateBuffer(&desc, nullptr, mConstantBuffer.ReleaseAndGetAddressOf())
|
||||
);
|
||||
|
||||
SetDebugObjectName(mConstantBuffer.Get(), "DirectXTK");
|
||||
}
|
||||
|
||||
|
||||
// Writes new data into the constant buffer.
|
||||
void SetData(_In_ ID3D11DeviceContext* deviceContext, T const& value)
|
||||
{
|
||||
assert(mConstantBuffer);
|
||||
|
||||
D3D11_MAPPED_SUBRESOURCE mappedResource;
|
||||
|
||||
ThrowIfFailed(
|
||||
deviceContext->Map(mConstantBuffer.Get(), 0, D3D11_MAP_WRITE_DISCARD, 0, &mappedResource)
|
||||
);
|
||||
|
||||
*static_cast<T*>(mappedResource.pData) = value;
|
||||
|
||||
deviceContext->Unmap(mConstantBuffer.Get(), 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
// Looks up the underlying D3D constant buffer.
|
||||
ID3D11Buffer* GetBuffer() const noexcept
|
||||
{
|
||||
return mConstantBuffer.Get();
|
||||
}
|
||||
|
||||
|
||||
private:
|
||||
// The underlying D3D object.
|
||||
Microsoft::WRL::ComPtr<ID3D11Buffer> mConstantBuffer;
|
||||
};
|
||||
}
|
|
@ -610,7 +610,7 @@ namespace
|
|||
resDim, width, height, depth, 0, arraySize,
|
||||
format,
|
||||
usage,
|
||||
bindFlags | D3D11_BIND_RENDER_TARGET,
|
||||
bindFlags | D3D11_BIND_SHADER_RESOURCE | D3D11_BIND_RENDER_TARGET,
|
||||
cpuAccessFlags,
|
||||
miscFlags | D3D11_RESOURCE_MISC_GENERATE_MIPS, forceSRGB,
|
||||
isCubeMap,
|
||||
|
|
|
@ -19,106 +19,106 @@
|
|||
|
||||
namespace DirectX
|
||||
{
|
||||
|
||||
namespace EffectDirtyFlags
|
||||
{
|
||||
const int ConstantBufferMaterial = 0x10000;
|
||||
const int ConstantBufferLight = 0x20000;
|
||||
const int ConstantBufferObject = 0x40000;
|
||||
const int ConstantBufferMisc = 0x80000;
|
||||
const int ConstantBufferBones = 0x100000;
|
||||
}
|
||||
|
||||
namespace EffectDirtyFlags
|
||||
{
|
||||
constexpr int ConstantBufferMaterial = 0x10000;
|
||||
constexpr int ConstantBufferLight = 0x20000;
|
||||
constexpr int ConstantBufferObject = 0x40000;
|
||||
constexpr int ConstantBufferMisc = 0x80000;
|
||||
constexpr int ConstantBufferBones = 0x100000;
|
||||
}
|
||||
}
|
||||
|
||||
using namespace DirectX;
|
||||
using Microsoft::WRL::ComPtr;
|
||||
|
||||
// Constant buffer layout. Must match the shader!
|
||||
namespace
|
||||
{
|
||||
// Constant buffer layout. Must match the shader!
|
||||
#pragma pack(push,1)
|
||||
|
||||
// Slot 0
|
||||
struct MaterialConstants
|
||||
{
|
||||
XMVECTOR Ambient;
|
||||
XMVECTOR Diffuse;
|
||||
XMVECTOR Specular;
|
||||
XMVECTOR Emissive;
|
||||
float SpecularPower;
|
||||
float Padding0;
|
||||
float Padding1;
|
||||
float Padding2;
|
||||
};
|
||||
struct MaterialConstants
|
||||
{
|
||||
XMVECTOR Ambient;
|
||||
XMVECTOR Diffuse;
|
||||
XMVECTOR Specular;
|
||||
XMVECTOR Emissive;
|
||||
float SpecularPower;
|
||||
float Padding0;
|
||||
float Padding1;
|
||||
float Padding2;
|
||||
};
|
||||
|
||||
// Slot 1
|
||||
struct LightConstants
|
||||
{
|
||||
XMVECTOR Ambient;
|
||||
XMVECTOR LightColor[DGSLEffect::MaxDirectionalLights];
|
||||
XMVECTOR LightAttenuation[DGSLEffect::MaxDirectionalLights];
|
||||
XMVECTOR LightDirection[DGSLEffect::MaxDirectionalLights];
|
||||
XMVECTOR LightSpecularIntensity[DGSLEffect::MaxDirectionalLights];
|
||||
UINT IsPointLight[DGSLEffect::MaxDirectionalLights];
|
||||
UINT ActiveLights;
|
||||
float Padding0;
|
||||
float Padding1;
|
||||
float Padding2;
|
||||
};
|
||||
// Slot 1
|
||||
struct LightConstants
|
||||
{
|
||||
XMVECTOR Ambient;
|
||||
XMVECTOR LightColor[DGSLEffect::MaxDirectionalLights];
|
||||
XMVECTOR LightAttenuation[DGSLEffect::MaxDirectionalLights];
|
||||
XMVECTOR LightDirection[DGSLEffect::MaxDirectionalLights];
|
||||
XMVECTOR LightSpecularIntensity[DGSLEffect::MaxDirectionalLights];
|
||||
UINT IsPointLight[DGSLEffect::MaxDirectionalLights];
|
||||
UINT ActiveLights;
|
||||
float Padding0;
|
||||
float Padding1;
|
||||
float Padding2;
|
||||
};
|
||||
|
||||
// Note - DGSL does not appear to make use of LightAttenuation or IsPointLight. Not sure if it uses ActiveLights either.
|
||||
// Note - DGSL does not appear to make use of LightAttenuation or IsPointLight. Not sure if it uses ActiveLights either.
|
||||
|
||||
// Slot 2
|
||||
struct ObjectConstants
|
||||
{
|
||||
XMMATRIX LocalToWorld4x4;
|
||||
XMMATRIX LocalToProjected4x4;
|
||||
XMMATRIX WorldToLocal4x4;
|
||||
XMMATRIX WorldToView4x4;
|
||||
XMMATRIX UvTransform4x4;
|
||||
XMVECTOR EyePosition;
|
||||
};
|
||||
// Slot 2
|
||||
struct ObjectConstants
|
||||
{
|
||||
XMMATRIX LocalToWorld4x4;
|
||||
XMMATRIX LocalToProjected4x4;
|
||||
XMMATRIX WorldToLocal4x4;
|
||||
XMMATRIX WorldToView4x4;
|
||||
XMMATRIX UvTransform4x4;
|
||||
XMVECTOR EyePosition;
|
||||
};
|
||||
|
||||
// Slot 3
|
||||
struct MiscConstants
|
||||
{
|
||||
float ViewportWidth;
|
||||
float ViewportHeight;
|
||||
float Time;
|
||||
float Padding1;
|
||||
};
|
||||
// Slot 3
|
||||
struct MiscConstants
|
||||
{
|
||||
float ViewportWidth;
|
||||
float ViewportHeight;
|
||||
float Time;
|
||||
float Padding1;
|
||||
};
|
||||
|
||||
// Slot 4
|
||||
struct BoneConstants
|
||||
{
|
||||
XMVECTOR Bones[DGSLEffect::MaxBones][3];
|
||||
};
|
||||
// Slot 4
|
||||
struct BoneConstants
|
||||
{
|
||||
XMVECTOR Bones[DGSLEffect::MaxBones][3];
|
||||
};
|
||||
|
||||
#pragma pack(pop)
|
||||
|
||||
static_assert((sizeof(MaterialConstants) % 16) == 0, "CB size not padded correctly");
|
||||
static_assert((sizeof(LightConstants) % 16) == 0, "CB size not padded correctly");
|
||||
static_assert((sizeof(ObjectConstants) % 16) == 0, "CB size not padded correctly");
|
||||
static_assert((sizeof(MiscConstants) % 16) == 0, "CB size not padded correctly");
|
||||
static_assert((sizeof(BoneConstants) % 16) == 0, "CB size not padded correctly");
|
||||
static_assert((sizeof(MaterialConstants) % 16) == 0, "CB size not padded correctly");
|
||||
static_assert((sizeof(LightConstants) % 16) == 0, "CB size not padded correctly");
|
||||
static_assert((sizeof(ObjectConstants) % 16) == 0, "CB size not padded correctly");
|
||||
static_assert((sizeof(MiscConstants) % 16) == 0, "CB size not padded correctly");
|
||||
static_assert((sizeof(BoneConstants) % 16) == 0, "CB size not padded correctly");
|
||||
|
||||
__declspec(align(16)) struct DGSLEffectConstants
|
||||
{
|
||||
MaterialConstants material;
|
||||
LightConstants light;
|
||||
ObjectConstants object;
|
||||
MiscConstants misc;
|
||||
BoneConstants bones;
|
||||
};
|
||||
__declspec(align(16)) struct DGSLEffectConstants
|
||||
{
|
||||
MaterialConstants material;
|
||||
LightConstants light;
|
||||
ObjectConstants object;
|
||||
MiscConstants misc;
|
||||
BoneConstants bones;
|
||||
};
|
||||
|
||||
struct DGSLEffectTraits
|
||||
{
|
||||
static const int VertexShaderCount = 8;
|
||||
static const int PixelShaderCount = 12;
|
||||
|
||||
static const ShaderBytecode VertexShaderBytecode[VertexShaderCount];
|
||||
static const ShaderBytecode PixelShaderBytecode[PixelShaderCount];
|
||||
};
|
||||
struct DGSLEffectTraits
|
||||
{
|
||||
static constexpr int VertexShaderCount = 8;
|
||||
static constexpr int PixelShaderCount = 12;
|
||||
|
||||
static const ShaderBytecode VertexShaderBytecode[VertexShaderCount];
|
||||
static const ShaderBytecode PixelShaderBytecode[PixelShaderCount];
|
||||
};
|
||||
}
|
||||
|
||||
// Include the precompiled shader code.
|
||||
namespace
|
||||
|
|
|
@ -12,31 +12,32 @@
|
|||
|
||||
using namespace DirectX;
|
||||
|
||||
|
||||
// Constant buffer layout. Must match the shader!
|
||||
struct DebugEffectConstants
|
||||
namespace
|
||||
{
|
||||
XMVECTOR ambientDownAndAlpha;
|
||||
XMVECTOR ambientRange;
|
||||
|
||||
XMMATRIX world;
|
||||
XMVECTOR worldInverseTranspose[3];
|
||||
XMMATRIX worldViewProj;
|
||||
};
|
||||
// Constant buffer layout. Must match the shader!
|
||||
struct DebugEffectConstants
|
||||
{
|
||||
XMVECTOR ambientDownAndAlpha;
|
||||
XMVECTOR ambientRange;
|
||||
|
||||
static_assert((sizeof(DebugEffectConstants) % 16) == 0, "CB size not padded correctly");
|
||||
XMMATRIX world;
|
||||
XMVECTOR worldInverseTranspose[3];
|
||||
XMMATRIX worldViewProj;
|
||||
};
|
||||
|
||||
static_assert((sizeof(DebugEffectConstants) % 16) == 0, "CB size not padded correctly");
|
||||
|
||||
|
||||
// Traits type describes our characteristics to the EffectBase template.
|
||||
struct DebugEffectTraits
|
||||
{
|
||||
using ConstantBufferType = DebugEffectConstants;
|
||||
|
||||
static const int VertexShaderCount = 4;
|
||||
static const int PixelShaderCount = 4;
|
||||
static const int ShaderPermutationCount = 16;
|
||||
};
|
||||
// Traits type describes our characteristics to the EffectBase template.
|
||||
struct DebugEffectTraits
|
||||
{
|
||||
using ConstantBufferType = DebugEffectConstants;
|
||||
|
||||
static constexpr int VertexShaderCount = 4;
|
||||
static constexpr int PixelShaderCount = 4;
|
||||
static constexpr int ShaderPermutationCount = 16;
|
||||
};
|
||||
}
|
||||
|
||||
// Internal DebugEffect implementation class.
|
||||
class DebugEffect::Impl : public EffectBase<DebugEffectTraits>
|
||||
|
@ -161,7 +162,7 @@ SharedResourcePool<ID3D11Device*, EffectBase<DebugEffectTraits>::DeviceResources
|
|||
|
||||
// Constructor.
|
||||
DebugEffect::Impl::Impl(_In_ ID3D11Device* device)
|
||||
: EffectBase(device),
|
||||
: EffectBase(device),
|
||||
vertexColorEnabled(false),
|
||||
biasedVertexNormals(false),
|
||||
debugMode(DebugEffect::Mode_Default)
|
||||
|
@ -231,14 +232,14 @@ void DebugEffect::Impl::Apply(_In_ ID3D11DeviceContext* deviceContext)
|
|||
|
||||
// Public constructor.
|
||||
DebugEffect::DebugEffect(_In_ ID3D11Device* device)
|
||||
: pImpl(std::make_unique<Impl>(device))
|
||||
: pImpl(std::make_unique<Impl>(device))
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
// Move constructor.
|
||||
DebugEffect::DebugEffect(DebugEffect&& moveFrom) noexcept
|
||||
: pImpl(std::move(moveFrom.pImpl))
|
||||
: pImpl(std::move(moveFrom.pImpl))
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,54 @@
|
|||
//--------------------------------------------------------------------------------------
|
||||
// File: DirectXHelpers.cpp
|
||||
//
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License.
|
||||
//
|
||||
// http://go.microsoft.com/fwlink/?LinkId=248929
|
||||
//--------------------------------------------------------------------------------------
|
||||
|
||||
#include "pch.h"
|
||||
#include "DirectXHelpers.h"
|
||||
#include "Effects.h"
|
||||
#include "PlatformHelpers.h"
|
||||
|
||||
|
||||
using namespace DirectX;
|
||||
|
||||
_Use_decl_annotations_
|
||||
HRESULT DirectX::CreateInputLayoutFromEffect(
|
||||
ID3D11Device* device,
|
||||
IEffect* effect,
|
||||
const D3D11_INPUT_ELEMENT_DESC* desc,
|
||||
size_t count,
|
||||
ID3D11InputLayout** pInputLayout) noexcept
|
||||
{
|
||||
if (!pInputLayout)
|
||||
return E_INVALIDARG;
|
||||
|
||||
*pInputLayout = nullptr;
|
||||
|
||||
if (!device || !effect || !desc || !count)
|
||||
return E_INVALIDARG;
|
||||
|
||||
void const* shaderByteCode;
|
||||
size_t byteCodeLength;
|
||||
|
||||
try
|
||||
{
|
||||
effect->GetVertexShaderBytecode(&shaderByteCode, &byteCodeLength);
|
||||
}
|
||||
catch (com_exception e)
|
||||
{
|
||||
return e.get_result();
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
return E_FAIL;
|
||||
}
|
||||
|
||||
return device->CreateInputLayout(
|
||||
desc, static_cast<UINT>(count),
|
||||
shaderByteCode, byteCodeLength,
|
||||
pInputLayout);
|
||||
}
|
|
@ -12,7 +12,7 @@
|
|||
|
||||
#include "AlignedNew.h"
|
||||
#include "CommonStates.h"
|
||||
#include "ConstantBuffer.h"
|
||||
#include "BufferHelpers.h"
|
||||
#include "DemandCreate.h"
|
||||
#include "DirectXHelpers.h"
|
||||
#include "SharedResourcePool.h"
|
||||
|
@ -23,10 +23,10 @@ using Microsoft::WRL::ComPtr;
|
|||
|
||||
namespace
|
||||
{
|
||||
const int c_MaxSamples = 16;
|
||||
constexpr int c_MaxSamples = 16;
|
||||
|
||||
const int Dirty_ConstantBuffer = 0x01;
|
||||
const int Dirty_Parameters = 0x02;
|
||||
constexpr int Dirty_ConstantBuffer = 0x01;
|
||||
constexpr int Dirty_Parameters = 0x02;
|
||||
|
||||
// Constant buffer layout. Must match the shader!
|
||||
__declspec(align(16)) struct PostProcessConstants
|
||||
|
@ -178,11 +178,15 @@ DualPostProcess::Impl::Impl(_In_ ID3D11Device* device)
|
|||
{
|
||||
throw std::exception("DualPostProcess requires Feature Level 10.0 or later");
|
||||
}
|
||||
|
||||
SetDebugObjectName(mConstantBuffer.GetBuffer(), "DualPostProcess");
|
||||
}
|
||||
|
||||
|
||||
// Sets our state onto the D3D device.
|
||||
void DualPostProcess::Impl::Process(_In_ ID3D11DeviceContext* deviceContext, std::function<void __cdecl()>& setCustomState)
|
||||
void DualPostProcess::Impl::Process(
|
||||
_In_ ID3D11DeviceContext* deviceContext,
|
||||
std::function<void __cdecl()>& setCustomState)
|
||||
{
|
||||
// Set the texture.
|
||||
ID3D11ShaderResourceView* textures[2] = { texture.Get(), texture2.Get() };
|
||||
|
@ -292,7 +296,9 @@ DualPostProcess::~DualPostProcess()
|
|||
|
||||
|
||||
// IPostProcess methods.
|
||||
void DualPostProcess::Process(_In_ ID3D11DeviceContext* deviceContext, _In_opt_ std::function<void __cdecl()> setCustomState)
|
||||
void DualPostProcess::Process(
|
||||
_In_ ID3D11DeviceContext* deviceContext,
|
||||
_In_opt_ std::function<void __cdecl()> setCustomState)
|
||||
{
|
||||
pImpl->Process(deviceContext, setCustomState);
|
||||
}
|
||||
|
|
|
@ -31,9 +31,9 @@ struct DualTextureEffectTraits
|
|||
{
|
||||
using ConstantBufferType = DualTextureEffectConstants;
|
||||
|
||||
static const int VertexShaderCount = 4;
|
||||
static const int PixelShaderCount = 2;
|
||||
static const int ShaderPermutationCount = 4;
|
||||
static constexpr int VertexShaderCount = 4;
|
||||
static constexpr int PixelShaderCount = 2;
|
||||
static constexpr int ShaderPermutationCount = 4;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -450,3 +450,9 @@ ID3D11ShaderResourceView* EffectDeviceResources::GetDefaultTexture()
|
|||
return hr;
|
||||
});
|
||||
}
|
||||
|
||||
// Gets device feature level
|
||||
D3D_FEATURE_LEVEL EffectDeviceResources::GetDeviceFeatureLevel() const
|
||||
{
|
||||
return mDevice->GetFeatureLevel();
|
||||
}
|
||||
|
|
|
@ -12,10 +12,11 @@
|
|||
#include <memory>
|
||||
|
||||
#include "Effects.h"
|
||||
#include "PlatformHelpers.h"
|
||||
#include "ConstantBuffer.h"
|
||||
#include "SharedResourcePool.h"
|
||||
#include "AlignedNew.h"
|
||||
#include "BufferHelpers.h"
|
||||
#include "DirectXHelpers.h"
|
||||
#include "PlatformHelpers.h"
|
||||
#include "SharedResourcePool.h"
|
||||
|
||||
|
||||
// BasicEffect, SkinnedEffect, et al, have many things in common, but also significant
|
||||
|
@ -29,14 +30,14 @@ namespace DirectX
|
|||
// Bitfield tracks which derived parameter values need to be recomputed.
|
||||
namespace EffectDirtyFlags
|
||||
{
|
||||
const int ConstantBuffer = 0x01;
|
||||
const int WorldViewProj = 0x02;
|
||||
const int WorldInverseTranspose = 0x04;
|
||||
const int EyePosition = 0x08;
|
||||
const int MaterialColor = 0x10;
|
||||
const int FogVector = 0x20;
|
||||
const int FogEnable = 0x40;
|
||||
const int AlphaTest = 0x80;
|
||||
constexpr int ConstantBuffer = 0x01;
|
||||
constexpr int WorldViewProj = 0x02;
|
||||
constexpr int WorldInverseTranspose = 0x04;
|
||||
constexpr int EyePosition = 0x08;
|
||||
constexpr int MaterialColor = 0x10;
|
||||
constexpr int FogVector = 0x20;
|
||||
constexpr int FogEnable = 0x40;
|
||||
constexpr int AlphaTest = 0x80;
|
||||
}
|
||||
|
||||
|
||||
|
@ -84,7 +85,7 @@ namespace DirectX
|
|||
{
|
||||
EffectLights() noexcept;
|
||||
|
||||
static const int MaxDirectionalLights = IEffectLights::MaxDirectionalLights;
|
||||
static constexpr int MaxDirectionalLights = IEffectLights::MaxDirectionalLights;
|
||||
|
||||
|
||||
// Fields.
|
||||
|
@ -129,6 +130,7 @@ namespace DirectX
|
|||
ID3D11VertexShader* DemandCreateVertexShader(_Inout_ Microsoft::WRL::ComPtr<ID3D11VertexShader>& vertexShader, ShaderBytecode const& bytecode);
|
||||
ID3D11PixelShader * DemandCreatePixelShader (_Inout_ Microsoft::WRL::ComPtr<ID3D11PixelShader> & pixelShader, ShaderBytecode const& bytecode);
|
||||
ID3D11ShaderResourceView* GetDefaultTexture();
|
||||
D3D_FEATURE_LEVEL GetDeviceFeatureLevel() const;
|
||||
|
||||
protected:
|
||||
Microsoft::WRL::ComPtr<ID3D11Device> mDevice;
|
||||
|
@ -150,6 +152,7 @@ namespace DirectX
|
|||
mConstantBuffer(device),
|
||||
mDeviceResources(deviceResourcesPool.DemandCreate(device))
|
||||
{
|
||||
SetDebugObjectName(mConstantBuffer.GetBuffer(), "Effect");
|
||||
}
|
||||
|
||||
|
||||
|
@ -220,8 +223,9 @@ namespace DirectX
|
|||
}
|
||||
|
||||
|
||||
// Helper returns the default texture.
|
||||
// Helpers
|
||||
ID3D11ShaderResourceView* GetDefaultTexture() { return mDeviceResources->GetDefaultTexture(); }
|
||||
D3D_FEATURE_LEVEL GetDeviceFeatureLevel() const { return mDeviceResources->GetDeviceFeatureLevel(); }
|
||||
|
||||
|
||||
protected:
|
||||
|
@ -273,9 +277,9 @@ namespace DirectX
|
|||
}
|
||||
|
||||
|
||||
// Gets or lazily creates the default texture
|
||||
// Helpers
|
||||
ID3D11ShaderResourceView* GetDefaultTexture() { return EffectDeviceResources::GetDefaultTexture(); }
|
||||
|
||||
D3D_FEATURE_LEVEL GetDeviceFeatureLevel() const { return EffectDeviceResources::GetDeviceFeatureLevel(); }
|
||||
|
||||
private:
|
||||
Microsoft::WRL::ComPtr<ID3D11VertexShader> mVertexShaders[Traits::VertexShaderCount];
|
||||
|
|
|
@ -46,9 +46,11 @@ struct EnvironmentMapEffectTraits
|
|||
{
|
||||
using ConstantBufferType = EnvironmentMapEffectConstants;
|
||||
|
||||
static const int VertexShaderCount = 10;
|
||||
static const int PixelShaderCount = 8;
|
||||
static const int ShaderPermutationCount = 40;
|
||||
static constexpr int VertexShaderCount = 12;
|
||||
static constexpr int PixelShaderCount = 16;
|
||||
static constexpr int ShaderPermutationCount = 56;
|
||||
|
||||
static constexpr int MappingCount = 3;
|
||||
};
|
||||
|
||||
|
||||
|
@ -62,6 +64,8 @@ public:
|
|||
bool fresnelEnabled;
|
||||
bool specularEnabled;
|
||||
bool biasedVertexNormals;
|
||||
EnvironmentMapEffect::Mapping mapping;
|
||||
bool shaderModel4;
|
||||
|
||||
EffectLights lights;
|
||||
|
||||
|
@ -97,18 +101,30 @@ namespace
|
|||
#include "Shaders/Compiled/XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingNoFog.inc"
|
||||
#include "Shaders/Compiled/XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingFresnel.inc"
|
||||
#include "Shaders/Compiled/XboxOneEnvironmentMapEffect_PSEnvMapPixelLightingFresnelNoFog.inc"
|
||||
|
||||
#include "Shaders/Compiled/XboxOneEnvironmentMapEffect_PSEnvMapSpherePixelLighting.inc"
|
||||
#include "Shaders/Compiled/XboxOneEnvironmentMapEffect_PSEnvMapSpherePixelLightingNoFog.inc"
|
||||
#include "Shaders/Compiled/XboxOneEnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnel.inc"
|
||||
#include "Shaders/Compiled/XboxOneEnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnelNoFog.inc"
|
||||
|
||||
#include "Shaders/Compiled/XboxOneEnvironmentMapEffect_PSEnvMapDualParabolaPixelLighting.inc"
|
||||
#include "Shaders/Compiled/XboxOneEnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingNoFog.inc"
|
||||
#include "Shaders/Compiled/XboxOneEnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnel.inc"
|
||||
#include "Shaders/Compiled/XboxOneEnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnelNoFog.inc"
|
||||
#else
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_VSEnvMap.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_VSEnvMapFresnel.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_VSEnvMapOneLight.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_VSEnvMapOneLightFresnel.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_VSEnvMapPixelLighting.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_VSEnvMapPixelLightingSM4.inc"
|
||||
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_VSEnvMapBn.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_VSEnvMapFresnelBn.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_VSEnvMapOneLightBn.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_VSEnvMapOneLightFresnelBn.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_VSEnvMapPixelLightingBn.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_VSEnvMapPixelLightingBnSM4.inc"
|
||||
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_PSEnvMap.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_PSEnvMapNoFog.inc"
|
||||
|
@ -118,6 +134,16 @@ namespace
|
|||
#include "Shaders/Compiled/EnvironmentMapEffect_PSEnvMapPixelLightingNoFog.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_PSEnvMapPixelLightingFresnel.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_PSEnvMapPixelLightingFresnelNoFog.inc"
|
||||
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_PSEnvMapSpherePixelLighting.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_PSEnvMapSpherePixelLightingNoFog.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnel.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnelNoFog.inc"
|
||||
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_PSEnvMapDualParabolaPixelLighting.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingNoFog.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnel.inc"
|
||||
#include "Shaders/Compiled/EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnelNoFog.inc"
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -125,17 +151,25 @@ namespace
|
|||
template<>
|
||||
const ShaderBytecode EffectBase<EnvironmentMapEffectTraits>::VertexShaderBytecode[] =
|
||||
{
|
||||
{ EnvironmentMapEffect_VSEnvMap, sizeof(EnvironmentMapEffect_VSEnvMap) },
|
||||
{ EnvironmentMapEffect_VSEnvMapFresnel, sizeof(EnvironmentMapEffect_VSEnvMapFresnel) },
|
||||
{ EnvironmentMapEffect_VSEnvMapOneLight, sizeof(EnvironmentMapEffect_VSEnvMapOneLight) },
|
||||
{ EnvironmentMapEffect_VSEnvMapOneLightFresnel, sizeof(EnvironmentMapEffect_VSEnvMapOneLightFresnel) },
|
||||
{ EnvironmentMapEffect_VSEnvMapPixelLighting, sizeof(EnvironmentMapEffect_VSEnvMapPixelLighting) },
|
||||
{ EnvironmentMapEffect_VSEnvMap, sizeof(EnvironmentMapEffect_VSEnvMap) },
|
||||
{ EnvironmentMapEffect_VSEnvMapFresnel, sizeof(EnvironmentMapEffect_VSEnvMapFresnel) },
|
||||
{ EnvironmentMapEffect_VSEnvMapOneLight, sizeof(EnvironmentMapEffect_VSEnvMapOneLight) },
|
||||
{ EnvironmentMapEffect_VSEnvMapOneLightFresnel, sizeof(EnvironmentMapEffect_VSEnvMapOneLightFresnel) },
|
||||
{ EnvironmentMapEffect_VSEnvMapPixelLighting, sizeof(EnvironmentMapEffect_VSEnvMapPixelLighting) },
|
||||
|
||||
{ EnvironmentMapEffect_VSEnvMapBn, sizeof(EnvironmentMapEffect_VSEnvMapBn) },
|
||||
{ EnvironmentMapEffect_VSEnvMapFresnelBn, sizeof(EnvironmentMapEffect_VSEnvMapFresnelBn) },
|
||||
{ EnvironmentMapEffect_VSEnvMapOneLightBn, sizeof(EnvironmentMapEffect_VSEnvMapOneLightBn) },
|
||||
{ EnvironmentMapEffect_VSEnvMapOneLightFresnelBn, sizeof(EnvironmentMapEffect_VSEnvMapOneLightFresnelBn) },
|
||||
{ EnvironmentMapEffect_VSEnvMapPixelLightingBn, sizeof(EnvironmentMapEffect_VSEnvMapPixelLightingBn) },
|
||||
{ EnvironmentMapEffect_VSEnvMapBn, sizeof(EnvironmentMapEffect_VSEnvMapBn) },
|
||||
{ EnvironmentMapEffect_VSEnvMapFresnelBn, sizeof(EnvironmentMapEffect_VSEnvMapFresnelBn) },
|
||||
{ EnvironmentMapEffect_VSEnvMapOneLightBn, sizeof(EnvironmentMapEffect_VSEnvMapOneLightBn) },
|
||||
{ EnvironmentMapEffect_VSEnvMapOneLightFresnelBn, sizeof(EnvironmentMapEffect_VSEnvMapOneLightFresnelBn) },
|
||||
{ EnvironmentMapEffect_VSEnvMapPixelLightingBn, sizeof(EnvironmentMapEffect_VSEnvMapPixelLightingBn) },
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
{ EnvironmentMapEffect_VSEnvMapPixelLighting, sizeof(EnvironmentMapEffect_VSEnvMapPixelLighting) },
|
||||
{ EnvironmentMapEffect_VSEnvMapPixelLightingBn, sizeof(EnvironmentMapEffect_VSEnvMapPixelLightingBn) },
|
||||
#else
|
||||
{ EnvironmentMapEffect_VSEnvMapPixelLightingSM4, sizeof(EnvironmentMapEffect_VSEnvMapPixelLightingSM4) },
|
||||
{ EnvironmentMapEffect_VSEnvMapPixelLightingBnSM4, sizeof(EnvironmentMapEffect_VSEnvMapPixelLightingBnSM4) },
|
||||
#endif
|
||||
};
|
||||
|
||||
|
||||
|
@ -187,6 +221,26 @@ const int EffectBase<EnvironmentMapEffectTraits>::VertexShaderIndices[] =
|
|||
9, // pixel lighting (biased vertex normals), no fog
|
||||
9, // pixel lighting (biased vertex normals), fresnel
|
||||
9, // pixel lighting (biased vertex normals), fresnel, no fog
|
||||
|
||||
4, // spheremap pixel lighting
|
||||
4, // spheremap pixel lighting, no fog
|
||||
4, // spheremap pixel lighting, fresnel
|
||||
4, // spheremap pixel lighting, fresnel, no fog
|
||||
|
||||
9, // spheremap pixel lighting (biased vertex normals)
|
||||
9, // spheremap pixel lighting (biased vertex normals), no fog
|
||||
9, // spheremap pixel lighting (biased vertex normals), fresnel
|
||||
9, // spheremap pixel lighting (biased vertex normals), fresnel, no fog
|
||||
|
||||
10, // dual-parabola pixel lighting
|
||||
10, // dual-parabola pixel lighting, no fog
|
||||
10, // dual-parabola pixel lighting, fresnel
|
||||
10, // dual-parabola pixel lighting, fresnel, no fog
|
||||
|
||||
11, // dual-parabola pixel lighting (biased vertex normals)
|
||||
11, // dual-parabola pixel lighting (biased vertex normals), no fog
|
||||
11, // dual-parabola pixel lighting (biased vertex normals), fresnel
|
||||
11, // dual-parabola pixel lighting (biased vertex normals), fresnel, no fog
|
||||
};
|
||||
|
||||
|
||||
|
@ -201,6 +255,16 @@ const ShaderBytecode EffectBase<EnvironmentMapEffectTraits>::PixelShaderBytecode
|
|||
{ EnvironmentMapEffect_PSEnvMapPixelLightingNoFog, sizeof(EnvironmentMapEffect_PSEnvMapPixelLightingNoFog) },
|
||||
{ EnvironmentMapEffect_PSEnvMapPixelLightingFresnel, sizeof(EnvironmentMapEffect_PSEnvMapPixelLightingFresnel) },
|
||||
{ EnvironmentMapEffect_PSEnvMapPixelLightingFresnelNoFog, sizeof(EnvironmentMapEffect_PSEnvMapPixelLightingFresnelNoFog) },
|
||||
|
||||
{ EnvironmentMapEffect_PSEnvMapSpherePixelLighting, sizeof(EnvironmentMapEffect_PSEnvMapSpherePixelLighting) },
|
||||
{ EnvironmentMapEffect_PSEnvMapSpherePixelLightingNoFog, sizeof(EnvironmentMapEffect_PSEnvMapSpherePixelLightingNoFog) },
|
||||
{ EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnel, sizeof(EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnel) },
|
||||
{ EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnelNoFog, sizeof(EnvironmentMapEffect_PSEnvMapSpherePixelLightingFresnelNoFog) },
|
||||
|
||||
{ EnvironmentMapEffect_PSEnvMapDualParabolaPixelLighting, sizeof(EnvironmentMapEffect_PSEnvMapDualParabolaPixelLighting) },
|
||||
{ EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingNoFog, sizeof(EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingNoFog) },
|
||||
{ EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnel, sizeof(EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnel) },
|
||||
{ EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnelNoFog, sizeof(EnvironmentMapEffect_PSEnvMapDualParabolaPixelLightingFresnelNoFog) },
|
||||
};
|
||||
|
||||
|
||||
|
@ -252,6 +316,26 @@ const int EffectBase<EnvironmentMapEffectTraits>::PixelShaderIndices[] =
|
|||
5, // per pixel lighting (biased vertex normals), no fog
|
||||
6, // per pixel lighting (biased vertex normals), fresnel
|
||||
7, // per pixel lighting (biased vertex normals), fresnel, no fog
|
||||
|
||||
8, // spheremap pixel lighting
|
||||
9, // spheremap pixel lighting, no fog
|
||||
10, // spheremap pixel lighting, fresnel
|
||||
11, // spheremap pixel lighting, fresnel, no fog
|
||||
|
||||
8, // spheremap pixel lighting (biased vertex normals)
|
||||
9, // spheremap pixel lighting (biased vertex normals), no fog
|
||||
10, // spheremap pixel lighting (biased vertex normals), fresnel
|
||||
11, // spheremap pixel lighting (biased vertex normals), fresnel, no fog
|
||||
|
||||
12, // dual-parabola pixel lighting
|
||||
13, // dual-parabola pixel lighting, no fog
|
||||
14, // dual-parabola pixel lighting, fresnel
|
||||
15, // dual-parabola pixel lighting, fresnel, no fog
|
||||
|
||||
12, // dual-parabola pixel lighting (biased vertex normals)
|
||||
13, // dual-parabola pixel lighting (biased vertex normals), no fog
|
||||
14, // dual-parabola pixel lighting (biased vertex normals), fresnel
|
||||
15, // dual-parabola pixel lighting (biased vertex normals), fresnel, no fog
|
||||
};
|
||||
|
||||
|
||||
|
@ -266,7 +350,8 @@ EnvironmentMapEffect::Impl::Impl(_In_ ID3D11Device* device)
|
|||
preferPerPixelLighting(false),
|
||||
fresnelEnabled(true),
|
||||
specularEnabled(false),
|
||||
biasedVertexNormals(false)
|
||||
biasedVertexNormals(false),
|
||||
mapping(Mapping_Cube)
|
||||
{
|
||||
static_assert(_countof(EffectBase<EnvironmentMapEffectTraits>::VertexShaderIndices) == EnvironmentMapEffectTraits::ShaderPermutationCount, "array/max mismatch");
|
||||
static_assert(_countof(EffectBase<EnvironmentMapEffectTraits>::VertexShaderBytecode) == EnvironmentMapEffectTraits::VertexShaderCount, "array/max mismatch");
|
||||
|
@ -298,29 +383,50 @@ int EnvironmentMapEffect::Impl::GetCurrentShaderPermutation() const noexcept
|
|||
permutation += 2;
|
||||
}
|
||||
|
||||
if (preferPerPixelLighting)
|
||||
if (mapping == Mapping_Sphere)
|
||||
{
|
||||
permutation += 16;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Support specular?
|
||||
if (specularEnabled)
|
||||
permutation += 40;
|
||||
|
||||
if (biasedVertexNormals)
|
||||
{
|
||||
permutation += 4;
|
||||
}
|
||||
}
|
||||
else if (mapping == Mapping_DualParabola)
|
||||
{
|
||||
permutation += 48;
|
||||
|
||||
// Use the only-bother-with-the-first-light shader optimization?
|
||||
if (!lights.lightEnabled[1] && !lights.lightEnabled[2])
|
||||
if (biasedVertexNormals)
|
||||
{
|
||||
permutation += 8;
|
||||
permutation += 4;
|
||||
}
|
||||
}
|
||||
|
||||
if (biasedVertexNormals)
|
||||
else // Mapping_Cube
|
||||
{
|
||||
// Compressed normals need to be scaled and biased in the vertex shader.
|
||||
permutation += 20;
|
||||
if (preferPerPixelLighting)
|
||||
{
|
||||
permutation += 16;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Support specular?
|
||||
if (specularEnabled)
|
||||
{
|
||||
permutation += 4;
|
||||
}
|
||||
|
||||
// Use the only-bother-with-the-first-light shader optimization?
|
||||
if (!lights.lightEnabled[1] && !lights.lightEnabled[2])
|
||||
{
|
||||
permutation += 8;
|
||||
}
|
||||
}
|
||||
|
||||
if (biasedVertexNormals)
|
||||
{
|
||||
// Compressed normals need to be scaled and biased in the vertex shader.
|
||||
permutation += 20;
|
||||
}
|
||||
}
|
||||
|
||||
return permutation;
|
||||
|
@ -568,6 +674,25 @@ void EnvironmentMapEffect::SetEnvironmentMap(_In_opt_ ID3D11ShaderResourceView*
|
|||
|
||||
|
||||
// Additional settings.
|
||||
void EnvironmentMapEffect::SetMode(EnvironmentMapEffect::Mapping mapping)
|
||||
{
|
||||
if (static_cast<int>(mapping) < 0 || static_cast<int>(mapping) >= EnvironmentMapEffectTraits::MappingCount)
|
||||
{
|
||||
throw std::invalid_argument("Unsupported mapping");
|
||||
}
|
||||
|
||||
if (mapping == Mapping_DualParabola)
|
||||
{
|
||||
if (pImpl->GetDeviceFeatureLevel() < D3D_FEATURE_LEVEL_10_0)
|
||||
{
|
||||
throw std::exception("Dual Parabola requires Feature Level 10.0 or later");
|
||||
}
|
||||
}
|
||||
|
||||
pImpl->mapping = mapping;
|
||||
}
|
||||
|
||||
|
||||
void EnvironmentMapEffect::SetEnvironmentMapAmount(float value)
|
||||
{
|
||||
pImpl->constants.environmentMapAmount = value;
|
||||
|
|
|
@ -81,7 +81,310 @@ namespace
|
|||
}
|
||||
|
||||
|
||||
#if (_WIN32_WINNT >= _WIN32_WINNT_WIN10)
|
||||
#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_GAMES)
|
||||
|
||||
#include <GameInput.h>
|
||||
|
||||
//======================================================================================
|
||||
// GameInput
|
||||
//======================================================================================
|
||||
|
||||
class GamePad::Impl
|
||||
{
|
||||
public:
|
||||
Impl(GamePad* owner) :
|
||||
mOwner(owner),
|
||||
mCtrlChanged(INVALID_HANDLE_VALUE),
|
||||
mDeviceToken(0),
|
||||
mMostRecentGamepad(0)
|
||||
{
|
||||
if (s_gamePad)
|
||||
{
|
||||
throw std::exception("GamePad is a singleton");
|
||||
}
|
||||
|
||||
s_gamePad = this;
|
||||
|
||||
ThrowIfFailed(GameInputCreate(mGameInput.GetAddressOf()));
|
||||
|
||||
ThrowIfFailed(mGameInput->RegisterDeviceCallback(
|
||||
nullptr,
|
||||
GameInputKindGamepad,
|
||||
GameInputDeviceConnected,
|
||||
GameInputBlockingEnumeration,
|
||||
this,
|
||||
OnGameInputDevice,
|
||||
&mDeviceToken));
|
||||
}
|
||||
|
||||
Impl(Impl&&) = default;
|
||||
Impl& operator= (Impl&&) = default;
|
||||
|
||||
Impl(Impl const&) = delete;
|
||||
Impl& operator= (Impl const&) = delete;
|
||||
|
||||
~Impl()
|
||||
{
|
||||
if (mDeviceToken)
|
||||
{
|
||||
if (mGameInput)
|
||||
{
|
||||
HRESULT hr = mGameInput->UnregisterCallback(mDeviceToken, UINT64_MAX);
|
||||
if (FAILED(hr))
|
||||
{
|
||||
DebugTrace("ERROR: GameInput::UnregisterCallback [gamepad] failed (%08X)", static_cast<unsigned int>(hr));
|
||||
}
|
||||
}
|
||||
|
||||
mDeviceToken = 0;
|
||||
}
|
||||
|
||||
s_gamePad = nullptr;
|
||||
}
|
||||
|
||||
void GetState(int player, _Out_ State& state, DeadZone deadZoneMode)
|
||||
{
|
||||
memset(&state, 0, sizeof(State));
|
||||
|
||||
IGameInputDevice* device = nullptr;
|
||||
|
||||
if (player >= 0 && player < MAX_PLAYER_COUNT)
|
||||
{
|
||||
device = mInputDevices[player].Get();
|
||||
if (!device)
|
||||
return;
|
||||
}
|
||||
else if (player == c_MostRecent)
|
||||
{
|
||||
player = mMostRecentGamepad;
|
||||
assert(player >= 0 && player < MAX_PLAYER_COUNT);
|
||||
device = mInputDevices[player].Get();
|
||||
if (!device)
|
||||
return;
|
||||
}
|
||||
else if (player != c_MergedInput)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
ComPtr<IGameInputReading> reading;
|
||||
if (SUCCEEDED(mGameInput->GetCurrentReading(GameInputKindGamepad, device, reading.GetAddressOf())))
|
||||
{
|
||||
GameInputGamepadState pad;
|
||||
if (reading->GetGamepadState(&pad))
|
||||
{
|
||||
state.connected = true;
|
||||
state.packet = reading->GetSequenceNumber(GameInputKindGamepad);
|
||||
|
||||
state.buttons.a = (pad.buttons & GameInputGamepadA) != 0;
|
||||
state.buttons.b = (pad.buttons & GameInputGamepadB) != 0;
|
||||
state.buttons.x = (pad.buttons & GameInputGamepadX) != 0;
|
||||
state.buttons.y = (pad.buttons & GameInputGamepadY) != 0;
|
||||
state.buttons.leftStick = (pad.buttons & GameInputGamepadLeftThumbstick) != 0;
|
||||
state.buttons.rightStick = (pad.buttons & GameInputGamepadRightThumbstick) != 0;
|
||||
state.buttons.leftShoulder = (pad.buttons & GameInputGamepadLeftShoulder) != 0;
|
||||
state.buttons.rightShoulder = (pad.buttons & GameInputGamepadRightShoulder) != 0;
|
||||
state.buttons.view = (pad.buttons & GameInputGamepadView) != 0;
|
||||
state.buttons.menu = (pad.buttons & GameInputGamepadMenu) != 0;
|
||||
|
||||
state.dpad.up = (pad.buttons & GameInputGamepadDPadUp) != 0;
|
||||
state.dpad.down = (pad.buttons & GameInputGamepadDPadDown) != 0;
|
||||
state.dpad.right = (pad.buttons & GameInputGamepadDPadRight) != 0;
|
||||
state.dpad.left = (pad.buttons & GameInputGamepadDPadLeft) != 0;
|
||||
|
||||
ApplyStickDeadZone(pad.leftThumbstickX, pad.leftThumbstickY,
|
||||
deadZoneMode, 1.f, c_XboxOneThumbDeadZone,
|
||||
state.thumbSticks.leftX, state.thumbSticks.leftY);
|
||||
|
||||
ApplyStickDeadZone(pad.rightThumbstickX, pad.rightThumbstickY,
|
||||
deadZoneMode, 1.f, c_XboxOneThumbDeadZone,
|
||||
state.thumbSticks.rightX, state.thumbSticks.rightY);
|
||||
|
||||
state.triggers.left = pad.leftTrigger;
|
||||
state.triggers.right = pad.rightTrigger;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void GetCapabilities(int player, _Out_ Capabilities& caps)
|
||||
{
|
||||
if (player == c_MostRecent)
|
||||
player = mMostRecentGamepad;
|
||||
|
||||
if (player >= 0 && player < MAX_PLAYER_COUNT)
|
||||
{
|
||||
IGameInputDevice* device = mInputDevices[player].Get();
|
||||
if (device)
|
||||
{
|
||||
if (device->GetDeviceStatus() & GameInputDeviceConnected)
|
||||
{
|
||||
auto deviceInfo = device->GetDeviceInfo();
|
||||
caps.connected = true;
|
||||
caps.gamepadType = Capabilities::GAMEPAD;
|
||||
caps.id = deviceInfo->deviceId;
|
||||
caps.vid = deviceInfo->vendorId;
|
||||
caps.pid = deviceInfo->productId;
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
mInputDevices[player].Reset();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
memset(&caps, 0, sizeof(Capabilities));
|
||||
}
|
||||
|
||||
bool SetVibration(int player, float leftMotor, float rightMotor, float leftTrigger, float rightTrigger) noexcept
|
||||
{
|
||||
if (player == c_MostRecent)
|
||||
player = mMostRecentGamepad;
|
||||
|
||||
if (player >= 0 && player < MAX_PLAYER_COUNT)
|
||||
{
|
||||
IGameInputDevice* device = mInputDevices[player].Get();
|
||||
if (device)
|
||||
{
|
||||
GameInputRumbleParams const params =
|
||||
{
|
||||
leftMotor,
|
||||
rightMotor,
|
||||
leftTrigger,
|
||||
rightTrigger
|
||||
};
|
||||
|
||||
device->SetRumbleState(¶ms);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
void Suspend() noexcept
|
||||
{
|
||||
for (int player = 0; player < MAX_PLAYER_COUNT; ++player)
|
||||
{
|
||||
IGameInputDevice* device = mInputDevices[player].Get();
|
||||
if (device)
|
||||
{
|
||||
device->SetRumbleState(nullptr);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Resume() noexcept
|
||||
{
|
||||
for (int player = 0; player < MAX_PLAYER_COUNT; ++player)
|
||||
{
|
||||
IGameInputDevice* device = mInputDevices[player].Get();
|
||||
if (device)
|
||||
{
|
||||
if (!(device->GetDeviceStatus() & GameInputDeviceConnected))
|
||||
{
|
||||
mInputDevices[player].Reset();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void GetDevice(int player, _Outptr_ IGameInputDevice** device) noexcept
|
||||
{
|
||||
if (!device)
|
||||
return;
|
||||
|
||||
if (player == c_MostRecent)
|
||||
player = mMostRecentGamepad;
|
||||
|
||||
*device = nullptr;
|
||||
|
||||
if (player >= 0 && player < MAX_PLAYER_COUNT)
|
||||
{
|
||||
IGameInputDevice* dev = mInputDevices[player].Get();
|
||||
if (dev)
|
||||
{
|
||||
dev->AddRef();
|
||||
*device = dev;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
GamePad* mOwner;
|
||||
|
||||
static GamePad::Impl* s_gamePad;
|
||||
|
||||
HANDLE mCtrlChanged;
|
||||
|
||||
private:
|
||||
ComPtr<IGameInput> mGameInput;
|
||||
ComPtr<IGameInputDevice> mInputDevices[MAX_PLAYER_COUNT];
|
||||
|
||||
GameInputCallbackToken mDeviceToken;
|
||||
|
||||
int mMostRecentGamepad;
|
||||
|
||||
static void CALLBACK OnGameInputDevice(
|
||||
_In_ GameInputCallbackToken,
|
||||
_In_ void * context,
|
||||
_In_ IGameInputDevice * device,
|
||||
_In_ uint64_t,
|
||||
_In_ GameInputDeviceStatus currentStatus,
|
||||
_In_ GameInputDeviceStatus) noexcept
|
||||
{
|
||||
auto impl = reinterpret_cast<GamePad::Impl*>(context);
|
||||
|
||||
if (currentStatus & GameInputDeviceConnected)
|
||||
{
|
||||
size_t empty = MAX_PLAYER_COUNT;
|
||||
size_t k = 0;
|
||||
for (; k < MAX_PLAYER_COUNT; ++k)
|
||||
{
|
||||
if (impl->mInputDevices[k].Get() == device)
|
||||
{
|
||||
impl->mMostRecentGamepad = static_cast<int>(k);
|
||||
break;
|
||||
}
|
||||
else if (!impl->mInputDevices[k])
|
||||
{
|
||||
if (empty >= MAX_PLAYER_COUNT)
|
||||
empty = k;
|
||||
}
|
||||
}
|
||||
|
||||
if (k >= MAX_PLAYER_COUNT)
|
||||
{
|
||||
// Silently ignore "extra" gamepads as there's no hard limit
|
||||
if (empty < MAX_PLAYER_COUNT)
|
||||
{
|
||||
impl->mInputDevices[empty] = device;
|
||||
impl->mMostRecentGamepad = static_cast<int>(empty);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for (size_t k = 0; k < MAX_PLAYER_COUNT; ++k)
|
||||
{
|
||||
if (impl->mInputDevices[k].Get() == device)
|
||||
{
|
||||
impl->mInputDevices[k].Reset();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (impl->mCtrlChanged != INVALID_HANDLE_VALUE)
|
||||
{
|
||||
SetEvent(impl->mCtrlChanged);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
GamePad::Impl* GamePad::Impl::s_gamePad = nullptr;
|
||||
|
||||
|
||||
#elif (_WIN32_WINNT >= _WIN32_WINNT_WIN10) && !defined(_GAMING_DESKTOP)
|
||||
|
||||
//======================================================================================
|
||||
// Windows::Gaming::Input (Windows 10)
|
||||
|
@ -185,7 +488,7 @@ public:
|
|||
ScanGamePads();
|
||||
}
|
||||
|
||||
if (player == -1)
|
||||
if (player == c_MostRecent)
|
||||
player = mMostRecentGamepad;
|
||||
|
||||
if ((player >= 0) && (player < MAX_PLAYER_COUNT))
|
||||
|
@ -250,7 +553,7 @@ public:
|
|||
ScanGamePads();
|
||||
}
|
||||
|
||||
if (player == -1)
|
||||
if (player == c_MostRecent)
|
||||
player = mMostRecentGamepad;
|
||||
|
||||
if ((player >= 0) && (player < MAX_PLAYER_COUNT))
|
||||
|
@ -309,7 +612,7 @@ public:
|
|||
{
|
||||
using namespace ABI::Windows::Gaming::Input;
|
||||
|
||||
if (player == -1)
|
||||
if (player == c_MostRecent)
|
||||
player = mMostRecentGamepad;
|
||||
|
||||
if ((player >= 0) && (player < MAX_PLAYER_COUNT))
|
||||
|
@ -654,7 +957,7 @@ public:
|
|||
ScanGamePads();
|
||||
}
|
||||
|
||||
if (player == -1)
|
||||
if (player == c_MostRecent)
|
||||
player = mMostRecentGamepad;
|
||||
|
||||
if ((player >= 0) && (player < MAX_PLAYER_COUNT))
|
||||
|
@ -716,7 +1019,7 @@ public:
|
|||
ScanGamePads();
|
||||
}
|
||||
|
||||
if (player == -1)
|
||||
if (player == c_MostRecent)
|
||||
player = mMostRecentGamepad;
|
||||
|
||||
if ((player >= 0) && (player < MAX_PLAYER_COUNT))
|
||||
|
@ -780,7 +1083,7 @@ public:
|
|||
{
|
||||
using namespace ABI::Windows::Xbox::Input;
|
||||
|
||||
if (player == -1)
|
||||
if (player == c_MostRecent)
|
||||
player = mMostRecentGamepad;
|
||||
|
||||
if ((player >= 0) && (player < MAX_PLAYER_COUNT))
|
||||
|
@ -964,7 +1267,7 @@ public:
|
|||
|
||||
void GetState(int player, _Out_ State& state, DeadZone deadZoneMode)
|
||||
{
|
||||
if (player == -1)
|
||||
if (player == c_MostRecent)
|
||||
player = GetMostRecent();
|
||||
|
||||
ULONGLONG time = GetTickCount64();
|
||||
|
@ -1041,7 +1344,7 @@ public:
|
|||
|
||||
void GetCapabilities(int player, _Out_ Capabilities& caps)
|
||||
{
|
||||
if (player == -1)
|
||||
if (player == c_MostRecent)
|
||||
player = GetMostRecent();
|
||||
|
||||
ULONGLONG time = GetTickCount64();
|
||||
|
@ -1098,7 +1401,7 @@ public:
|
|||
|
||||
bool SetVibration(int player, float leftMotor, float rightMotor, float leftTrigger, float rightTrigger) noexcept
|
||||
{
|
||||
if (player == -1)
|
||||
if (player == c_MostRecent)
|
||||
player = GetMostRecent();
|
||||
|
||||
ULONGLONG time = GetTickCount64();
|
||||
|
@ -1339,7 +1642,17 @@ void GamePad::Resume() noexcept
|
|||
}
|
||||
|
||||
|
||||
#if (_WIN32_WINNT >= _WIN32_WINNT_WIN10) || defined(_XBOX_ONE)
|
||||
#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_GAMES)
|
||||
void GamePad::RegisterEvents(HANDLE ctrlChanged) noexcept
|
||||
{
|
||||
pImpl->mCtrlChanged = (!ctrlChanged) ? INVALID_HANDLE_VALUE : ctrlChanged;
|
||||
}
|
||||
|
||||
void GamePad::GetDevice(int player, _Outptr_ IGameInputDevice** device) noexcept
|
||||
{
|
||||
pImpl->GetDevice(player, device);
|
||||
}
|
||||
#elif ((_WIN32_WINNT >= _WIN32_WINNT_WIN10) && !defined(_GAMING_DESKTOP)) || defined(_XBOX_ONE)
|
||||
void GamePad::RegisterEvents(HANDLE ctrlChanged, HANDLE userChanged) noexcept
|
||||
{
|
||||
pImpl->mCtrlChanged = (!ctrlChanged) ? INVALID_HANDLE_VALUE : ctrlChanged;
|
||||
|
|
|
@ -9,76 +9,17 @@
|
|||
|
||||
#include "pch.h"
|
||||
#include "GeometricPrimitive.h"
|
||||
#include "Effects.h"
|
||||
#include "BufferHelpers.h"
|
||||
#include "CommonStates.h"
|
||||
#include "DirectXHelpers.h"
|
||||
#include "SharedResourcePool.h"
|
||||
#include "Effects.h"
|
||||
#include "Geometry.h"
|
||||
#include "SharedResourcePool.h"
|
||||
|
||||
using namespace DirectX;
|
||||
using Microsoft::WRL::ComPtr;
|
||||
|
||||
|
||||
namespace
|
||||
{
|
||||
// Helper for creating a D3D vertex or index buffer.
|
||||
template<typename T>
|
||||
void CreateBuffer(_In_ ID3D11Device* device, T const& data, D3D11_BIND_FLAG bindFlags, _Outptr_ ID3D11Buffer** pBuffer)
|
||||
{
|
||||
assert(pBuffer != nullptr);
|
||||
|
||||
uint64_t sizeInBytes = uint64_t(data.size()) * sizeof(typename T::value_type);
|
||||
|
||||
if (sizeInBytes > uint64_t(D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM * 1024u * 1024u))
|
||||
throw std::exception("Buffer too large for DirectX 11");
|
||||
|
||||
D3D11_BUFFER_DESC bufferDesc = {};
|
||||
|
||||
bufferDesc.ByteWidth = static_cast<UINT>(sizeInBytes);
|
||||
bufferDesc.BindFlags = bindFlags;
|
||||
bufferDesc.Usage = D3D11_USAGE_DEFAULT;
|
||||
|
||||
D3D11_SUBRESOURCE_DATA dataDesc = {};
|
||||
|
||||
dataDesc.pSysMem = data.data();
|
||||
|
||||
ThrowIfFailed(
|
||||
device->CreateBuffer(&bufferDesc, &dataDesc, pBuffer)
|
||||
);
|
||||
|
||||
assert(pBuffer != nullptr && *pBuffer != nullptr);
|
||||
_Analysis_assume_(pBuffer != nullptr && *pBuffer != nullptr);
|
||||
|
||||
SetDebugObjectName(*pBuffer, "DirectXTK:GeometricPrimitive");
|
||||
}
|
||||
|
||||
|
||||
// Helper for creating a D3D input layout.
|
||||
void CreateInputLayout(_In_ ID3D11Device* device, IEffect* effect, _Outptr_ ID3D11InputLayout** pInputLayout)
|
||||
{
|
||||
assert(pInputLayout != nullptr);
|
||||
|
||||
void const* shaderByteCode;
|
||||
size_t byteCodeLength;
|
||||
|
||||
effect->GetVertexShaderBytecode(&shaderByteCode, &byteCodeLength);
|
||||
|
||||
ThrowIfFailed(
|
||||
device->CreateInputLayout(
|
||||
GeometricPrimitive::VertexType::InputElements,
|
||||
GeometricPrimitive::VertexType::InputElementCount,
|
||||
shaderByteCode, byteCodeLength,
|
||||
pInputLayout)
|
||||
);
|
||||
|
||||
assert(pInputLayout != nullptr && *pInputLayout != nullptr);
|
||||
_Analysis_assume_(pInputLayout != nullptr && *pInputLayout != nullptr);
|
||||
|
||||
SetDebugObjectName(*pInputLayout, "DirectXTK:GeometricPrimitive");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Internal GeometricPrimitive implementation class.
|
||||
class GeometricPrimitive::Impl
|
||||
{
|
||||
|
@ -87,9 +28,16 @@ public:
|
|||
|
||||
void Initialize(_In_ ID3D11DeviceContext* deviceContext, const VertexCollection& vertices, const IndexCollection& indices);
|
||||
|
||||
void XM_CALLCONV Draw(FXMMATRIX world, CXMMATRIX view, CXMMATRIX projection, FXMVECTOR color, _In_opt_ ID3D11ShaderResourceView* texture, bool wireframe, std::function<void()>& setCustomState) const;
|
||||
void XM_CALLCONV Draw(FXMMATRIX world, CXMMATRIX view, CXMMATRIX projection,
|
||||
FXMVECTOR color,
|
||||
_In_opt_ ID3D11ShaderResourceView* texture,
|
||||
bool wireframe,
|
||||
std::function<void()>& setCustomState) const;
|
||||
|
||||
void Draw(_In_ IEffect* effect, _In_ ID3D11InputLayout* inputLayout, bool alpha, bool wireframe, std::function<void()>& setCustomState) const;
|
||||
void Draw(_In_ IEffect* effect,
|
||||
_In_ ID3D11InputLayout* inputLayout,
|
||||
bool alpha, bool wireframe,
|
||||
std::function<void()>& setCustomState) const;
|
||||
|
||||
void CreateInputLayout(_In_ IEffect* effect, _Outptr_ ID3D11InputLayout** inputLayout) const;
|
||||
|
||||
|
@ -145,10 +93,18 @@ GeometricPrimitive::Impl::SharedResources::SharedResources(_In_ ID3D11DeviceCont
|
|||
|
||||
// Create input layouts.
|
||||
effect->SetTextureEnabled(true);
|
||||
::CreateInputLayout(device.Get(), effect.get(), &inputLayoutTextured);
|
||||
ThrowIfFailed(
|
||||
CreateInputLayoutFromEffect<VertexType>(device.Get(), effect.get(), &inputLayoutTextured)
|
||||
);
|
||||
|
||||
SetDebugObjectName(inputLayoutTextured.Get(), "DirectXTK:GeometricPrimitive");
|
||||
|
||||
effect->SetTextureEnabled(false);
|
||||
::CreateInputLayout(device.Get(), effect.get(), &inputLayoutUntextured);
|
||||
ThrowIfFailed(
|
||||
CreateInputLayoutFromEffect<VertexType>(device.Get(), effect.get(), &inputLayoutUntextured)
|
||||
);
|
||||
|
||||
SetDebugObjectName(inputLayoutUntextured.Get(), "DirectXTK:GeometricPrimitive");
|
||||
}
|
||||
|
||||
|
||||
|
@ -202,8 +158,16 @@ void GeometricPrimitive::Impl::Initialize(ID3D11DeviceContext* deviceContext, co
|
|||
ComPtr<ID3D11Device> device;
|
||||
deviceContext->GetDevice(&device);
|
||||
|
||||
CreateBuffer(device.Get(), vertices, D3D11_BIND_VERTEX_BUFFER, &mVertexBuffer);
|
||||
CreateBuffer(device.Get(), indices, D3D11_BIND_INDEX_BUFFER, &mIndexBuffer);
|
||||
ThrowIfFailed(
|
||||
CreateStaticBuffer(device.Get(), vertices, D3D11_BIND_VERTEX_BUFFER, mVertexBuffer.ReleaseAndGetAddressOf())
|
||||
);
|
||||
|
||||
ThrowIfFailed(
|
||||
CreateStaticBuffer(device.Get(), indices, D3D11_BIND_INDEX_BUFFER, mIndexBuffer.ReleaseAndGetAddressOf())
|
||||
);
|
||||
|
||||
SetDebugObjectName(mVertexBuffer.Get(), "DirectXTK:GeometricPrimitive");
|
||||
SetDebugObjectName(mIndexBuffer.Get(), "DirectXTK:GeometricPrimitive");
|
||||
|
||||
mIndexCount = static_cast<UINT>(indices.size());
|
||||
}
|
||||
|
@ -309,7 +273,14 @@ void GeometricPrimitive::Impl::CreateInputLayout(IEffect* effect, ID3D11InputLay
|
|||
ComPtr<ID3D11Device> device;
|
||||
deviceContext->GetDevice(&device);
|
||||
|
||||
::CreateInputLayout(device.Get(), effect, inputLayout);
|
||||
ThrowIfFailed(
|
||||
CreateInputLayoutFromEffect<VertexType>(device.Get(), effect, inputLayout)
|
||||
);
|
||||
|
||||
assert(inputLayout != nullptr && *inputLayout != nullptr);
|
||||
_Analysis_assume_(inputLayout != nullptr && *inputLayout != nullptr);
|
||||
|
||||
SetDebugObjectName(*inputLayout, "DirectXTK:GeometricPrimitive");
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -74,7 +74,7 @@ void DirectX::ComputeBox(VertexCollection& vertices, IndexCollection& indices, c
|
|||
indices.clear();
|
||||
|
||||
// A box has six faces, each one pointing in a different direction.
|
||||
const int FaceCount = 6;
|
||||
constexpr int FaceCount = 6;
|
||||
|
||||
static const XMVECTORF32 faceNormals[FaceCount] =
|
||||
{
|
||||
|
|
|
@ -56,7 +56,7 @@ public:
|
|||
s_graphicsMemory = nullptr;
|
||||
}
|
||||
|
||||
void Initialize(_In_ ID3D11DeviceX* device, UINT backBufferCount)
|
||||
void Initialize(_In_ ID3D11DeviceX* device, unsigned int backBufferCount)
|
||||
{
|
||||
assert(device != nullptr);
|
||||
mDevice = device;
|
||||
|
@ -239,7 +239,7 @@ public:
|
|||
s_graphicsMemory = nullptr;
|
||||
}
|
||||
|
||||
void Initialize(_In_ ID3D11Device* device, UINT backBufferCount) noexcept
|
||||
void Initialize(_In_ ID3D11Device* device, unsigned int backBufferCount) noexcept
|
||||
{
|
||||
UNREFERENCED_PARAMETER(device);
|
||||
UNREFERENCED_PARAMETER(backBufferCount);
|
||||
|
@ -273,9 +273,9 @@ GraphicsMemory::Impl* GraphicsMemory::Impl::s_graphicsMemory = nullptr;
|
|||
|
||||
// Public constructor.
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
GraphicsMemory::GraphicsMemory(_In_ ID3D11DeviceX* device, UINT backBufferCount)
|
||||
GraphicsMemory::GraphicsMemory(_In_ ID3D11DeviceX* device, unsigned int backBufferCount)
|
||||
#else
|
||||
GraphicsMemory::GraphicsMemory(_In_ ID3D11Device* device, UINT backBufferCount)
|
||||
GraphicsMemory::GraphicsMemory(_In_ ID3D11Device* device, unsigned int backBufferCount)
|
||||
#endif
|
||||
: pImpl(std::make_unique<Impl>(this))
|
||||
{
|
||||
|
|
|
@ -18,9 +18,13 @@ using Microsoft::WRL::ComPtr;
|
|||
|
||||
static_assert(sizeof(Keyboard::State) == (256 / 8), "Size mismatch for State");
|
||||
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic ignored "-Wunused-function"
|
||||
#endif
|
||||
|
||||
namespace
|
||||
{
|
||||
void KeyDown(int key, Keyboard::State& state) noexcept
|
||||
inline void KeyDown(int key, Keyboard::State& state) noexcept
|
||||
{
|
||||
if (key < 0 || key > 0xfe)
|
||||
return;
|
||||
|
@ -31,7 +35,7 @@ namespace
|
|||
ptr[(key >> 5)] |= bf;
|
||||
}
|
||||
|
||||
void KeyUp(int key, Keyboard::State& state) noexcept
|
||||
inline void KeyUp(int key, Keyboard::State& state) noexcept
|
||||
{
|
||||
if (key < 0 || key > 0xfe)
|
||||
return;
|
||||
|
@ -44,7 +48,131 @@ namespace
|
|||
}
|
||||
|
||||
|
||||
#if !defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP)
|
||||
#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_GAMES)
|
||||
|
||||
#include <GameInput.h>
|
||||
|
||||
//======================================================================================
|
||||
// GameInput
|
||||
//======================================================================================
|
||||
|
||||
class Keyboard::Impl
|
||||
{
|
||||
public:
|
||||
Impl(Keyboard* owner) :
|
||||
mOwner(owner),
|
||||
mConnected(0),
|
||||
mDeviceToken(0),
|
||||
mKeyState{}
|
||||
{
|
||||
if (s_keyboard)
|
||||
{
|
||||
throw std::exception("Keyboard is a singleton");
|
||||
}
|
||||
|
||||
s_keyboard = this;
|
||||
|
||||
ThrowIfFailed(GameInputCreate(mGameInput.GetAddressOf()));
|
||||
|
||||
ThrowIfFailed(mGameInput->RegisterDeviceCallback(
|
||||
nullptr,
|
||||
GameInputKindKeyboard,
|
||||
GameInputDeviceConnected,
|
||||
GameInputBlockingEnumeration,
|
||||
this,
|
||||
OnGameInputDevice,
|
||||
&mDeviceToken));
|
||||
}
|
||||
|
||||
Impl(Impl&&) = default;
|
||||
Impl& operator= (Impl&&) = default;
|
||||
|
||||
Impl(Impl const&) = delete;
|
||||
Impl& operator= (Impl const&) = delete;
|
||||
|
||||
~Impl()
|
||||
{
|
||||
if (mDeviceToken)
|
||||
{
|
||||
if (mGameInput)
|
||||
{
|
||||
HRESULT hr = mGameInput->UnregisterCallback(mDeviceToken, UINT64_MAX);
|
||||
if (FAILED(hr))
|
||||
{
|
||||
DebugTrace("ERROR: GameInput::UnregisterCallback [keyboard] failed (%08X)", static_cast<unsigned int>(hr));
|
||||
}
|
||||
}
|
||||
|
||||
mDeviceToken = 0;
|
||||
}
|
||||
|
||||
s_keyboard = nullptr;
|
||||
}
|
||||
|
||||
void GetState(State& state) const
|
||||
{
|
||||
state = {};
|
||||
|
||||
ComPtr<IGameInputReading> reading;
|
||||
if (SUCCEEDED(mGameInput->GetCurrentReading(GameInputKindKeyboard, nullptr, reading.GetAddressOf())))
|
||||
{
|
||||
uint32_t readCount = reading->GetKeyState(c_MaxSimultaneousKeys, mKeyState);
|
||||
for (size_t j = 0; j < readCount; ++j)
|
||||
{
|
||||
int vk = static_cast<int>(mKeyState[j].virtualKey);
|
||||
KeyDown(vk, state);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Reset() noexcept
|
||||
{
|
||||
}
|
||||
|
||||
bool IsConnected() const
|
||||
{
|
||||
return mConnected > 0;
|
||||
}
|
||||
|
||||
Keyboard* mOwner;
|
||||
uint32_t mConnected;
|
||||
|
||||
static Keyboard::Impl* s_keyboard;
|
||||
|
||||
private:
|
||||
static constexpr size_t c_MaxSimultaneousKeys = 16;
|
||||
|
||||
ComPtr<IGameInput> mGameInput;
|
||||
GameInputCallbackToken mDeviceToken;
|
||||
|
||||
mutable GameInputKeyState mKeyState[c_MaxSimultaneousKeys];
|
||||
|
||||
static void CALLBACK OnGameInputDevice(
|
||||
_In_ GameInputCallbackToken,
|
||||
_In_ void * context,
|
||||
_In_ IGameInputDevice *,
|
||||
_In_ uint64_t,
|
||||
_In_ GameInputDeviceStatus currentStatus,
|
||||
_In_ GameInputDeviceStatus) noexcept
|
||||
{
|
||||
auto impl = reinterpret_cast<Keyboard::Impl*>(context);
|
||||
|
||||
if (currentStatus & GameInputDeviceConnected)
|
||||
{
|
||||
++impl->mConnected;
|
||||
}
|
||||
else if (impl->mConnected > 0)
|
||||
{
|
||||
--impl->mConnected;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Keyboard::Impl* Keyboard::Impl::s_keyboard = nullptr;
|
||||
|
||||
|
||||
#elif !defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP)
|
||||
|
||||
//======================================================================================
|
||||
// Win32 desktop implementation
|
||||
|
@ -186,6 +314,7 @@ void Keyboard::ProcessMessage(UINT message, WPARAM wParam, LPARAM lParam)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
#else
|
||||
|
||||
//======================================================================================
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
|
||||
#include "DDS.h"
|
||||
#include "DDSTextureLoader.h"
|
||||
#include "PlatformHelpers.h"
|
||||
|
||||
|
||||
namespace DirectX
|
||||
|
@ -96,10 +97,23 @@ namespace DirectX
|
|||
case DXGI_FORMAT_AYUV:
|
||||
case DXGI_FORMAT_Y410:
|
||||
case DXGI_FORMAT_YUY2:
|
||||
#if (defined(_XBOX_ONE) && defined(_TITLE)) || defined(_GAMING_XBOX)
|
||||
case DXGI_FORMAT_R10G10B10_7E3_A2_FLOAT:
|
||||
case DXGI_FORMAT_R10G10B10_6E4_A2_FLOAT:
|
||||
case DXGI_FORMAT_R10G10B10_SNORM_A2_UNORM:
|
||||
#endif
|
||||
return 32;
|
||||
|
||||
case DXGI_FORMAT_P010:
|
||||
case DXGI_FORMAT_P016:
|
||||
#if (_WIN32_WINNT >= _WIN32_WINNT_WIN10)
|
||||
case DXGI_FORMAT_V408:
|
||||
#endif
|
||||
#if (defined(_XBOX_ONE) && defined(_TITLE)) || defined(_GAMING_XBOX)
|
||||
case DXGI_FORMAT_D16_UNORM_S8_UINT:
|
||||
case DXGI_FORMAT_R16_UNORM_X8_TYPELESS:
|
||||
case DXGI_FORMAT_X16_TYPELESS_G8_UINT:
|
||||
#endif
|
||||
return 24;
|
||||
|
||||
case DXGI_FORMAT_R8G8_TYPELESS:
|
||||
|
@ -118,6 +132,10 @@ namespace DirectX
|
|||
case DXGI_FORMAT_B5G5R5A1_UNORM:
|
||||
case DXGI_FORMAT_A8P8:
|
||||
case DXGI_FORMAT_B4G4R4A4_UNORM:
|
||||
#if (_WIN32_WINNT >= _WIN32_WINNT_WIN10)
|
||||
case DXGI_FORMAT_P208:
|
||||
case DXGI_FORMAT_V208:
|
||||
#endif
|
||||
return 16;
|
||||
|
||||
case DXGI_FORMAT_NV12:
|
||||
|
@ -131,22 +149,6 @@ namespace DirectX
|
|||
case DXGI_FORMAT_R8_SNORM:
|
||||
case DXGI_FORMAT_R8_SINT:
|
||||
case DXGI_FORMAT_A8_UNORM:
|
||||
case DXGI_FORMAT_AI44:
|
||||
case DXGI_FORMAT_IA44:
|
||||
case DXGI_FORMAT_P8:
|
||||
return 8;
|
||||
|
||||
case DXGI_FORMAT_R1_UNORM:
|
||||
return 1;
|
||||
|
||||
case DXGI_FORMAT_BC1_TYPELESS:
|
||||
case DXGI_FORMAT_BC1_UNORM:
|
||||
case DXGI_FORMAT_BC1_UNORM_SRGB:
|
||||
case DXGI_FORMAT_BC4_TYPELESS:
|
||||
case DXGI_FORMAT_BC4_UNORM:
|
||||
case DXGI_FORMAT_BC4_SNORM:
|
||||
return 4;
|
||||
|
||||
case DXGI_FORMAT_BC2_TYPELESS:
|
||||
case DXGI_FORMAT_BC2_UNORM:
|
||||
case DXGI_FORMAT_BC2_UNORM_SRGB:
|
||||
|
@ -162,35 +164,24 @@ namespace DirectX
|
|||
case DXGI_FORMAT_BC7_TYPELESS:
|
||||
case DXGI_FORMAT_BC7_UNORM:
|
||||
case DXGI_FORMAT_BC7_UNORM_SRGB:
|
||||
return 8;
|
||||
|
||||
#if (_WIN32_WINNT >= _WIN32_WINNT_WIN10)
|
||||
|
||||
case DXGI_FORMAT_V408:
|
||||
return 24;
|
||||
|
||||
case DXGI_FORMAT_P208:
|
||||
case DXGI_FORMAT_V208:
|
||||
return 16;
|
||||
|
||||
#endif // (_WIN32_WINNT >= _WIN32_WINNT_WIN10)
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
|
||||
case DXGI_FORMAT_R10G10B10_7E3_A2_FLOAT:
|
||||
case DXGI_FORMAT_R10G10B10_6E4_A2_FLOAT:
|
||||
case DXGI_FORMAT_R10G10B10_SNORM_A2_UNORM:
|
||||
return 32;
|
||||
|
||||
case DXGI_FORMAT_D16_UNORM_S8_UINT:
|
||||
case DXGI_FORMAT_R16_UNORM_X8_TYPELESS:
|
||||
case DXGI_FORMAT_X16_TYPELESS_G8_UINT:
|
||||
return 24;
|
||||
|
||||
case DXGI_FORMAT_AI44:
|
||||
case DXGI_FORMAT_IA44:
|
||||
case DXGI_FORMAT_P8:
|
||||
#if (defined(_XBOX_ONE) && defined(_TITLE)) || defined(_GAMING_XBOX)
|
||||
case DXGI_FORMAT_R4G4_UNORM:
|
||||
#endif
|
||||
return 8;
|
||||
|
||||
#endif // _XBOX_ONE && _TITLE
|
||||
case DXGI_FORMAT_R1_UNORM:
|
||||
return 1;
|
||||
|
||||
case DXGI_FORMAT_BC1_TYPELESS:
|
||||
case DXGI_FORMAT_BC1_UNORM:
|
||||
case DXGI_FORMAT_BC1_UNORM_SRGB:
|
||||
case DXGI_FORMAT_BC4_TYPELESS:
|
||||
case DXGI_FORMAT_BC4_UNORM:
|
||||
case DXGI_FORMAT_BC4_SNORM:
|
||||
return 4;
|
||||
|
||||
case DXGI_FORMAT_UNKNOWN:
|
||||
case DXGI_FORMAT_FORCE_UINT:
|
||||
|
@ -552,7 +543,7 @@ namespace DirectX
|
|||
bpe = 4;
|
||||
break;
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
#if (defined(_XBOX_ONE) && defined(_TITLE)) || defined(_GAMING_XBOX)
|
||||
|
||||
case DXGI_FORMAT_D16_UNORM_S8_UINT:
|
||||
case DXGI_FORMAT_R16_UNORM_X8_TYPELESS:
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
|
||||
#include "pch.h"
|
||||
#include "Model.h"
|
||||
|
||||
#include "CommonStates.h"
|
||||
#include "DirectXHelpers.h"
|
||||
#include "Effects.h"
|
||||
|
@ -115,25 +114,19 @@ void ModelMeshPart::DrawInstanced(
|
|||
_Use_decl_annotations_
|
||||
void ModelMeshPart::CreateInputLayout(ID3D11Device* d3dDevice, IEffect* ieffect, ID3D11InputLayout** iinputLayout) const
|
||||
{
|
||||
if (iinputLayout)
|
||||
{
|
||||
*iinputLayout = nullptr;
|
||||
}
|
||||
|
||||
if (!vbDecl || vbDecl->empty())
|
||||
throw std::exception("Model mesh part missing vertex buffer input elements data");
|
||||
|
||||
if (vbDecl->size() > D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT)
|
||||
throw std::exception("Model mesh part input layout size is too large for DirectX 11");
|
||||
|
||||
void const* shaderByteCode;
|
||||
size_t byteCodeLength;
|
||||
|
||||
assert(ieffect != nullptr);
|
||||
ieffect->GetVertexShaderBytecode(&shaderByteCode, &byteCodeLength);
|
||||
|
||||
assert(d3dDevice != nullptr);
|
||||
|
||||
ThrowIfFailed(
|
||||
d3dDevice->CreateInputLayout(vbDecl->data(),
|
||||
static_cast<UINT>(vbDecl->size()),
|
||||
shaderByteCode, byteCodeLength,
|
||||
iinputLayout)
|
||||
CreateInputLayoutFromEffect(d3dDevice, ieffect, vbDecl->data(), vbDecl->size(), iinputLayout)
|
||||
);
|
||||
|
||||
assert(iinputLayout != nullptr && *iinputLayout != nullptr);
|
||||
|
@ -154,18 +147,10 @@ void ModelMeshPart::ModifyEffect(ID3D11Device* d3dDevice, std::shared_ptr<IEffec
|
|||
this->effect = ieffect;
|
||||
this->isAlpha = isalpha;
|
||||
|
||||
void const* shaderByteCode;
|
||||
size_t byteCodeLength;
|
||||
|
||||
effect->GetVertexShaderBytecode(&shaderByteCode, &byteCodeLength);
|
||||
|
||||
assert(d3dDevice != nullptr);
|
||||
|
||||
ThrowIfFailed(
|
||||
d3dDevice->CreateInputLayout(vbDecl->data(),
|
||||
static_cast<UINT>(vbDecl->size()),
|
||||
shaderByteCode, byteCodeLength,
|
||||
&inputLayout)
|
||||
CreateInputLayoutFromEffect(d3dDevice, effect.get(), vbDecl->data(), vbDecl->size(), inputLayout.ReleaseAndGetAddressOf())
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -9,14 +9,12 @@
|
|||
|
||||
#include "pch.h"
|
||||
#include "Model.h"
|
||||
|
||||
#include "DDSTextureLoader.h"
|
||||
#include "DirectXHelpers.h"
|
||||
#include "Effects.h"
|
||||
#include "VertexTypes.h"
|
||||
|
||||
#include "DirectXHelpers.h"
|
||||
#include "PlatformHelpers.h"
|
||||
#include "BinaryReader.h"
|
||||
#include "PlatformHelpers.h"
|
||||
|
||||
using namespace DirectX;
|
||||
using Microsoft::WRL::ComPtr;
|
||||
|
@ -195,29 +193,18 @@ namespace
|
|||
};
|
||||
|
||||
// Helper for creating a D3D input layout.
|
||||
void CreateInputLayout(_In_ ID3D11Device* device, IEffect* effect, _Out_ ID3D11InputLayout** pInputLayout, bool skinning)
|
||||
void CreateCMOInputLayout(_In_ ID3D11Device* device, _In_ IEffect* effect, _Outptr_ ID3D11InputLayout** pInputLayout, bool skinning)
|
||||
{
|
||||
void const* shaderByteCode;
|
||||
size_t byteCodeLength;
|
||||
|
||||
effect->GetVertexShaderBytecode(&shaderByteCode, &byteCodeLength);
|
||||
|
||||
if (skinning)
|
||||
{
|
||||
ThrowIfFailed(
|
||||
device->CreateInputLayout(VertexPositionNormalTangentColorTextureSkinning::InputElements,
|
||||
VertexPositionNormalTangentColorTextureSkinning::InputElementCount,
|
||||
shaderByteCode, byteCodeLength,
|
||||
pInputLayout)
|
||||
CreateInputLayoutFromEffect<VertexPositionNormalTangentColorTextureSkinning>(device, effect, pInputLayout)
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
ThrowIfFailed(
|
||||
device->CreateInputLayout(VertexPositionNormalTangentColorTexture::InputElements,
|
||||
VertexPositionNormalTangentColorTexture::InputElementCount,
|
||||
shaderByteCode, byteCodeLength,
|
||||
pInputLayout)
|
||||
CreateInputLayoutFromEffect<VertexPositionNormalTangentColorTexture>(device, effect, pInputLayout)
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -473,8 +460,7 @@ std::unique_ptr<Model> DirectX::Model::CreateFromCMO(
|
|||
desc.ByteWidth = static_cast<UINT>(ibBytes);
|
||||
desc.BindFlags = D3D11_BIND_INDEX_BUFFER;
|
||||
|
||||
D3D11_SUBRESOURCE_DATA initData = {};
|
||||
initData.pSysMem = indexes;
|
||||
D3D11_SUBRESOURCE_DATA initData = { indexes, 0, 0 };
|
||||
|
||||
ThrowIfFailed(
|
||||
device->CreateBuffer(&desc, &initData, &ibs[j])
|
||||
|
@ -698,8 +684,7 @@ std::unique_ptr<Model> DirectX::Model::CreateFromCMO(
|
|||
if (fxFactoryDGSL && !enableSkinning)
|
||||
{
|
||||
// Can use CMO vertex data directly
|
||||
D3D11_SUBRESOURCE_DATA initData = {};
|
||||
initData.pSysMem = vbData[j].ptr;
|
||||
D3D11_SUBRESOURCE_DATA initData = { vbData[j].ptr, 0, 0 };
|
||||
|
||||
ThrowIfFailed(
|
||||
device->CreateBuffer(&desc, &initData, &vbs[j])
|
||||
|
@ -799,8 +784,7 @@ std::unique_ptr<Model> DirectX::Model::CreateFromCMO(
|
|||
}
|
||||
|
||||
// Create vertex buffer from temporary buffer
|
||||
D3D11_SUBRESOURCE_DATA initData = {};
|
||||
initData.pSysMem = temp.get();
|
||||
D3D11_SUBRESOURCE_DATA initData = { temp.get(), 0, 0 };
|
||||
|
||||
ThrowIfFailed(
|
||||
device->CreateBuffer(&desc, &initData, &vbs[j])
|
||||
|
@ -837,7 +821,7 @@ std::unique_ptr<Model> DirectX::Model::CreateFromCMO(
|
|||
info.emissiveTexture = m.texture[3].empty() ? nullptr : m.texture[3].c_str();
|
||||
info.pixelShader = m.pixelShader.c_str();
|
||||
|
||||
const int offset = DGSLEffectFactory::DGSLEffectInfo::BaseTextureOffset;
|
||||
constexpr int offset = DGSLEffectFactory::DGSLEffectInfo::BaseTextureOffset;
|
||||
for (int i = 0; i < (DGSLEffect::MaxTextures - offset); ++i)
|
||||
{
|
||||
info.textures[i] = m.texture[i + offset].empty() ? nullptr : m.texture[i + offset].c_str();
|
||||
|
@ -865,7 +849,7 @@ std::unique_ptr<Model> DirectX::Model::CreateFromCMO(
|
|||
m.effect = fxFactory.CreateEffect(info, nullptr);
|
||||
}
|
||||
|
||||
CreateInputLayout(device, m.effect.get(), &m.il, enableSkinning);
|
||||
CreateCMOInputLayout(device, m.effect.get(), &m.il, enableSkinning);
|
||||
}
|
||||
|
||||
// Build mesh parts
|
||||
|
|
|
@ -9,14 +9,11 @@
|
|||
|
||||
#include "pch.h"
|
||||
#include "Model.h"
|
||||
|
||||
#include "DirectXHelpers.h"
|
||||
#include "Effects.h"
|
||||
#include "VertexTypes.h"
|
||||
|
||||
#include "DirectXHelpers.h"
|
||||
#include "PlatformHelpers.h"
|
||||
#include "BinaryReader.h"
|
||||
|
||||
#include "PlatformHelpers.h"
|
||||
#include "SDKMesh.h"
|
||||
|
||||
using namespace DirectX;
|
||||
|
@ -364,27 +361,6 @@ namespace
|
|||
|
||||
return flags;
|
||||
}
|
||||
|
||||
// Helper for creating a D3D input layout.
|
||||
void CreateInputLayout(_In_ ID3D11Device* device, _In_ IEffect* effect, std::vector<D3D11_INPUT_ELEMENT_DESC>& inputDesc, _Out_ ID3D11InputLayout** pInputLayout)
|
||||
{
|
||||
void const* shaderByteCode;
|
||||
size_t byteCodeLength;
|
||||
|
||||
effect->GetVertexShaderBytecode(&shaderByteCode, &byteCodeLength);
|
||||
|
||||
ThrowIfFailed(
|
||||
device->CreateInputLayout(inputDesc.data(),
|
||||
static_cast<UINT>(inputDesc.size()),
|
||||
shaderByteCode, byteCodeLength,
|
||||
pInputLayout)
|
||||
);
|
||||
|
||||
assert(pInputLayout != nullptr && *pInputLayout != nullptr);
|
||||
_Analysis_assume_(pInputLayout != nullptr && *pInputLayout != nullptr);
|
||||
|
||||
SetDebugObjectName(*pInputLayout, "ModelSDKMESH");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -542,8 +518,7 @@ std::unique_ptr<Model> DirectX::Model::CreateFromSDKMESH(
|
|||
desc.ByteWidth = static_cast<UINT>(vh.SizeBytes);
|
||||
desc.BindFlags = D3D11_BIND_VERTEX_BUFFER;
|
||||
|
||||
D3D11_SUBRESOURCE_DATA initData = {};
|
||||
initData.pSysMem = verts;
|
||||
D3D11_SUBRESOURCE_DATA initData = { verts, 0, 0 };
|
||||
|
||||
ThrowIfFailed(
|
||||
d3dDevice->CreateBuffer(&desc, &initData, &vbs[j])
|
||||
|
@ -589,8 +564,7 @@ std::unique_ptr<Model> DirectX::Model::CreateFromSDKMESH(
|
|||
desc.ByteWidth = static_cast<UINT>(ih.SizeBytes);
|
||||
desc.BindFlags = D3D11_BIND_INDEX_BUFFER;
|
||||
|
||||
D3D11_SUBRESOURCE_DATA initData = {};
|
||||
initData.pSysMem = indices;
|
||||
D3D11_SUBRESOURCE_DATA initData = { indices, 0, 0 };
|
||||
|
||||
ThrowIfFailed(
|
||||
d3dDevice->CreateBuffer(&desc, &initData, &ibs[j])
|
||||
|
@ -705,7 +679,12 @@ std::unique_ptr<Model> DirectX::Model::CreateFromSDKMESH(
|
|||
}
|
||||
|
||||
ComPtr<ID3D11InputLayout> il;
|
||||
CreateInputLayout(d3dDevice, mat.effect.get(), *vbDecls[mh.VertexBuffers[0]].get(), &il);
|
||||
ThrowIfFailed(
|
||||
CreateInputLayoutFromEffect(d3dDevice, mat.effect.get(),
|
||||
vbDecls[mh.VertexBuffers[0]]->data(), vbDecls[mh.VertexBuffers[0]]->size(), il.GetAddressOf())
|
||||
);
|
||||
|
||||
SetDebugObjectName(il.Get(), "ModelSDKMESH");
|
||||
|
||||
auto part = new ModelMeshPart();
|
||||
part->isAlpha = mat.alpha;
|
||||
|
|
|
@ -9,13 +9,11 @@
|
|||
|
||||
#include "pch.h"
|
||||
#include "Model.h"
|
||||
|
||||
#include "DirectXHelpers.h"
|
||||
#include "Effects.h"
|
||||
#include "VertexTypes.h"
|
||||
|
||||
#include "DirectXHelpers.h"
|
||||
#include "PlatformHelpers.h"
|
||||
#include "BinaryReader.h"
|
||||
#include "PlatformHelpers.h"
|
||||
|
||||
#include "vbo.h"
|
||||
|
||||
|
@ -110,8 +108,7 @@ std::unique_ptr<Model> DirectX::Model::CreateFromVBO(
|
|||
desc.ByteWidth = static_cast<UINT>(vertSize);
|
||||
desc.BindFlags = D3D11_BIND_VERTEX_BUFFER;
|
||||
|
||||
D3D11_SUBRESOURCE_DATA initData = {};
|
||||
initData.pSysMem = verts;
|
||||
D3D11_SUBRESOURCE_DATA initData = { verts, 0, 0 };
|
||||
|
||||
ThrowIfFailed(
|
||||
device->CreateBuffer(&desc, &initData, vb.GetAddressOf())
|
||||
|
@ -128,8 +125,7 @@ std::unique_ptr<Model> DirectX::Model::CreateFromVBO(
|
|||
desc.ByteWidth = static_cast<UINT>(indexSize);
|
||||
desc.BindFlags = D3D11_BIND_INDEX_BUFFER;
|
||||
|
||||
D3D11_SUBRESOURCE_DATA initData = {};
|
||||
initData.pSysMem = indices;
|
||||
D3D11_SUBRESOURCE_DATA initData = { indices, 0, 0 };
|
||||
|
||||
ThrowIfFailed(
|
||||
device->CreateBuffer(&desc, &initData, ib.GetAddressOf())
|
||||
|
@ -149,20 +145,12 @@ std::unique_ptr<Model> DirectX::Model::CreateFromVBO(
|
|||
}
|
||||
|
||||
ComPtr<ID3D11InputLayout> il;
|
||||
{
|
||||
void const* shaderByteCode;
|
||||
size_t byteCodeLength;
|
||||
|
||||
ieffect->GetVertexShaderBytecode(&shaderByteCode, &byteCodeLength);
|
||||
ThrowIfFailed(
|
||||
CreateInputLayoutFromEffect<VertexPositionNormalTexture>(device, ieffect.get(), il.GetAddressOf())
|
||||
);
|
||||
|
||||
ThrowIfFailed(
|
||||
device->CreateInputLayout(VertexPositionNormalTexture::InputElements,
|
||||
VertexPositionNormalTexture::InputElementCount,
|
||||
shaderByteCode, byteCodeLength,
|
||||
il.GetAddressOf()));
|
||||
|
||||
SetDebugObjectName(il.Get(), "ModelVBO");
|
||||
}
|
||||
SetDebugObjectName(il.Get(), "ModelVBO");
|
||||
|
||||
auto part = new ModelMeshPart();
|
||||
part->indexCount = header->numIndices;
|
||||
|
|
|
@ -17,7 +17,383 @@ using namespace DirectX;
|
|||
using Microsoft::WRL::ComPtr;
|
||||
|
||||
|
||||
#if !defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP)
|
||||
#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_GAMES)
|
||||
|
||||
#include <GameInput.h>
|
||||
|
||||
//======================================================================================
|
||||
// Win32 + GameInput implementation
|
||||
//======================================================================================
|
||||
|
||||
//
|
||||
// Call this static function from your Window Message Procedure
|
||||
//
|
||||
// LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
|
||||
// {
|
||||
// switch (message)
|
||||
// {
|
||||
// case WM_ACTIVATEAPP:
|
||||
// case WM_MOUSEMOVE:
|
||||
// case WM_LBUTTONDOWN:
|
||||
// case WM_LBUTTONUP:
|
||||
// case WM_RBUTTONDOWN:
|
||||
// case WM_RBUTTONUP:
|
||||
// case WM_MBUTTONDOWN:
|
||||
// case WM_MBUTTONUP:
|
||||
// case WM_MOUSEWHEEL:
|
||||
// case WM_XBUTTONDOWN:
|
||||
// case WM_XBUTTONUP:
|
||||
// Mouse::ProcessMessage(message, wParam, lParam);
|
||||
// break;
|
||||
//
|
||||
// }
|
||||
// }
|
||||
//
|
||||
|
||||
class Mouse::Impl
|
||||
{
|
||||
public:
|
||||
explicit Impl(Mouse* owner) noexcept(false) :
|
||||
mState{},
|
||||
mOwner(owner),
|
||||
mIs4k(false),
|
||||
mConnected(0),
|
||||
mDeviceToken(0),
|
||||
mMode(MODE_ABSOLUTE),
|
||||
mScrollWheelCurrent(0),
|
||||
mRelativeX(INT64_MAX),
|
||||
mRelativeY(INT64_MAX),
|
||||
mRelativeWheelY(INT64_MAX)
|
||||
{
|
||||
if (s_mouse)
|
||||
{
|
||||
throw std::exception("Mouse is a singleton");
|
||||
}
|
||||
|
||||
s_mouse = this;
|
||||
|
||||
ThrowIfFailed(GameInputCreate(mGameInput.GetAddressOf()));
|
||||
|
||||
ThrowIfFailed(mGameInput->RegisterDeviceCallback(
|
||||
nullptr,
|
||||
GameInputKindMouse,
|
||||
GameInputDeviceConnected,
|
||||
GameInputBlockingEnumeration,
|
||||
this,
|
||||
OnGameInputDevice,
|
||||
&mDeviceToken));
|
||||
|
||||
mScrollWheelValue.reset(CreateEventEx(nullptr, nullptr, CREATE_EVENT_MANUAL_RESET, EVENT_MODIFY_STATE | SYNCHRONIZE));
|
||||
if (!mScrollWheelValue)
|
||||
{
|
||||
throw std::exception("CreateEventEx");
|
||||
}
|
||||
}
|
||||
|
||||
Impl(Impl&&) = default;
|
||||
Impl& operator= (Impl&&) = default;
|
||||
|
||||
Impl(Impl const&) = delete;
|
||||
Impl& operator= (Impl const&) = delete;
|
||||
|
||||
~Impl()
|
||||
{
|
||||
if (mDeviceToken)
|
||||
{
|
||||
if (mGameInput)
|
||||
{
|
||||
HRESULT hr = mGameInput->UnregisterCallback(mDeviceToken, UINT64_MAX);
|
||||
if (FAILED(hr))
|
||||
{
|
||||
DebugTrace("ERROR: GameInput::UnregisterCallback [mouse] failed (%08X)", static_cast<unsigned int>(hr));
|
||||
}
|
||||
}
|
||||
|
||||
mDeviceToken = 0;
|
||||
}
|
||||
|
||||
s_mouse = nullptr;
|
||||
}
|
||||
|
||||
void GetState(State& state) const
|
||||
{
|
||||
memcpy(&state, &mState, sizeof(State));
|
||||
state.positionMode = mMode;
|
||||
|
||||
DWORD result = WaitForSingleObjectEx(mScrollWheelValue.get(), 0, FALSE);
|
||||
if (result == WAIT_FAILED)
|
||||
throw std::exception("WaitForSingleObjectEx");
|
||||
|
||||
if (result == WAIT_OBJECT_0)
|
||||
{
|
||||
mScrollWheelCurrent = 0;
|
||||
}
|
||||
|
||||
if (state.positionMode == MODE_RELATIVE)
|
||||
{
|
||||
state.x = state.y = 0;
|
||||
|
||||
ComPtr<IGameInputReading> reading;
|
||||
if (SUCCEEDED(mGameInput->GetCurrentReading(GameInputKindMouse, nullptr, reading.GetAddressOf())))
|
||||
{
|
||||
GameInputMouseState mouse;
|
||||
if (reading->GetMouseState(&mouse))
|
||||
{
|
||||
state.leftButton = (mouse.buttons & GameInputMouseLeftButton) != 0;
|
||||
state.middleButton = (mouse.buttons & GameInputMouseMiddleButton) != 0;
|
||||
state.rightButton = (mouse.buttons & GameInputMouseRightButton) != 0;
|
||||
state.xButton1 = (mouse.buttons & GameInputMouseButton4) != 0;
|
||||
state.xButton2 = (mouse.buttons & GameInputMouseButton5) != 0;
|
||||
|
||||
if (mRelativeX != INT64_MAX)
|
||||
{
|
||||
state.x = static_cast<int>(mouse.positionX - mRelativeX);
|
||||
state.y = static_cast<int>(mouse.positionY - mRelativeY);
|
||||
int scrollDelta = static_cast<int>(mouse.wheelY - mRelativeWheelY);
|
||||
mScrollWheelCurrent += scrollDelta;
|
||||
}
|
||||
|
||||
mRelativeX = mouse.positionX;
|
||||
mRelativeY = mouse.positionY;
|
||||
mRelativeWheelY = mouse.wheelY;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
state.scrollWheelValue = mScrollWheelCurrent;
|
||||
}
|
||||
|
||||
void ResetScrollWheelValue() noexcept
|
||||
{
|
||||
SetEvent(mScrollWheelValue.get());
|
||||
}
|
||||
|
||||
void SetMode(Mode mode)
|
||||
{
|
||||
if (mMode == mode)
|
||||
return;
|
||||
|
||||
mMode = mode;
|
||||
mRelativeX = INT64_MAX;
|
||||
mRelativeY = INT64_MAX;
|
||||
mRelativeWheelY = INT64_MAX;
|
||||
|
||||
ShowCursor((mode == MODE_ABSOLUTE) ? TRUE : FALSE);
|
||||
}
|
||||
|
||||
bool IsConnected() const noexcept
|
||||
{
|
||||
return mConnected > 0;
|
||||
}
|
||||
|
||||
bool IsVisible() const noexcept
|
||||
{
|
||||
if (mMode == MODE_RELATIVE)
|
||||
return false;
|
||||
|
||||
CURSORINFO info = { sizeof(CURSORINFO), 0, nullptr, {} };
|
||||
if (!GetCursorInfo(&info))
|
||||
return false;
|
||||
|
||||
return (info.flags & CURSOR_SHOWING) != 0;
|
||||
}
|
||||
|
||||
void SetVisible(bool visible)
|
||||
{
|
||||
if (mMode == MODE_RELATIVE)
|
||||
return;
|
||||
|
||||
CURSORINFO info = { sizeof(CURSORINFO), 0, nullptr, {} };
|
||||
if (!GetCursorInfo(&info))
|
||||
{
|
||||
throw std::exception("GetCursorInfo");
|
||||
}
|
||||
|
||||
bool isvisible = (info.flags & CURSOR_SHOWING) != 0;
|
||||
if (isvisible != visible)
|
||||
{
|
||||
ShowCursor(visible);
|
||||
}
|
||||
}
|
||||
|
||||
State mState;
|
||||
Mouse* mOwner;
|
||||
bool mIs4k;
|
||||
uint32_t mConnected;
|
||||
|
||||
static Mouse::Impl* s_mouse;
|
||||
|
||||
private:
|
||||
ComPtr<IGameInput> mGameInput;
|
||||
GameInputCallbackToken mDeviceToken;
|
||||
|
||||
Mode mMode;
|
||||
ScopedHandle mScrollWheelValue;
|
||||
|
||||
mutable int mScrollWheelCurrent;
|
||||
mutable int64_t mRelativeX;
|
||||
mutable int64_t mRelativeY;
|
||||
mutable int64_t mRelativeWheelY;
|
||||
|
||||
friend void Mouse::ProcessMessage(UINT message, WPARAM wParam, LPARAM lParam);
|
||||
|
||||
static void CALLBACK OnGameInputDevice(
|
||||
_In_ GameInputCallbackToken,
|
||||
_In_ void * context,
|
||||
_In_ IGameInputDevice *,
|
||||
_In_ uint64_t,
|
||||
_In_ GameInputDeviceStatus currentStatus,
|
||||
_In_ GameInputDeviceStatus) noexcept
|
||||
{
|
||||
auto impl = reinterpret_cast<Mouse::Impl*>(context);
|
||||
|
||||
if (currentStatus & GameInputDeviceConnected)
|
||||
{
|
||||
++impl->mConnected;
|
||||
}
|
||||
else if (impl->mConnected > 0)
|
||||
{
|
||||
--impl->mConnected;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Mouse::Impl* Mouse::Impl::s_mouse = nullptr;
|
||||
|
||||
|
||||
void Mouse::ProcessMessage(UINT message, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
auto pImpl = Impl::s_mouse;
|
||||
|
||||
if (!pImpl)
|
||||
return;
|
||||
|
||||
DWORD result = WaitForSingleObjectEx(pImpl->mScrollWheelValue.get(), 0, FALSE);
|
||||
if (result == WAIT_FAILED)
|
||||
throw std::exception("WaitForSingleObjectEx");
|
||||
|
||||
if (result == WAIT_OBJECT_0)
|
||||
{
|
||||
pImpl->mScrollWheelCurrent = 0;
|
||||
}
|
||||
|
||||
switch (message)
|
||||
{
|
||||
case WM_ACTIVATEAPP:
|
||||
if (wParam)
|
||||
{
|
||||
if (pImpl->mMode == MODE_RELATIVE)
|
||||
{
|
||||
pImpl->mRelativeX = INT64_MAX;
|
||||
pImpl->mRelativeY = INT64_MAX;
|
||||
|
||||
ShowCursor(FALSE);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
memset(&pImpl->mState, 0, sizeof(State));
|
||||
}
|
||||
return;
|
||||
|
||||
case WM_MOUSEMOVE:
|
||||
break;
|
||||
|
||||
case WM_LBUTTONDOWN:
|
||||
pImpl->mState.leftButton = true;
|
||||
break;
|
||||
|
||||
case WM_LBUTTONUP:
|
||||
pImpl->mState.leftButton = false;
|
||||
break;
|
||||
|
||||
case WM_RBUTTONDOWN:
|
||||
pImpl->mState.rightButton = true;
|
||||
break;
|
||||
|
||||
case WM_RBUTTONUP:
|
||||
pImpl->mState.rightButton = false;
|
||||
break;
|
||||
|
||||
case WM_MBUTTONDOWN:
|
||||
pImpl->mState.middleButton = true;
|
||||
break;
|
||||
|
||||
case WM_MBUTTONUP:
|
||||
pImpl->mState.middleButton = false;
|
||||
break;
|
||||
|
||||
case WM_MOUSEWHEEL:
|
||||
if (pImpl->mMode == MODE_ABSOLUTE)
|
||||
{
|
||||
pImpl->mScrollWheelCurrent += GET_WHEEL_DELTA_WPARAM(wParam);
|
||||
}
|
||||
return;
|
||||
|
||||
case WM_XBUTTONDOWN:
|
||||
switch (GET_XBUTTON_WPARAM(wParam))
|
||||
{
|
||||
case XBUTTON1:
|
||||
pImpl->mState.xButton1 = true;
|
||||
break;
|
||||
|
||||
case XBUTTON2:
|
||||
pImpl->mState.xButton2 = true;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case WM_XBUTTONUP:
|
||||
switch (GET_XBUTTON_WPARAM(wParam))
|
||||
{
|
||||
case XBUTTON1:
|
||||
pImpl->mState.xButton1 = false;
|
||||
break;
|
||||
|
||||
case XBUTTON2:
|
||||
pImpl->mState.xButton2 = false;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// Not a mouse message, so exit
|
||||
return;
|
||||
}
|
||||
|
||||
if (pImpl->mMode == MODE_ABSOLUTE)
|
||||
{
|
||||
// All mouse messages provide a new pointer position
|
||||
int xPos = static_cast<short>(LOWORD(lParam)); // GET_X_LPARAM(lParam);
|
||||
int yPos = static_cast<short>(HIWORD(lParam)); // GET_Y_LPARAM(lParam);
|
||||
|
||||
if (pImpl->mIs4k)
|
||||
{
|
||||
pImpl->mState.x = static_cast<int>(xPos) * 2;
|
||||
pImpl->mState.y = static_cast<int>(yPos) * 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
pImpl->mState.x = static_cast<int>(xPos);
|
||||
pImpl->mState.y = static_cast<int>(yPos);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void Mouse::SetResolution(bool use4k)
|
||||
{
|
||||
auto pImpl = Impl::s_mouse;
|
||||
|
||||
if (!pImpl)
|
||||
return;
|
||||
|
||||
pImpl->mIs4k = use4k;
|
||||
}
|
||||
|
||||
|
||||
#elif !defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP)
|
||||
|
||||
//======================================================================================
|
||||
// Win32 desktop implementation
|
||||
|
@ -57,7 +433,7 @@ using Microsoft::WRL::ComPtr;
|
|||
class Mouse::Impl
|
||||
{
|
||||
public:
|
||||
Impl(Mouse* owner) :
|
||||
explicit Impl(Mouse* owner) noexcept(false) :
|
||||
mState{},
|
||||
mOwner(owner),
|
||||
mWindow(nullptr),
|
||||
|
@ -162,16 +538,14 @@ public:
|
|||
return GetSystemMetrics(SM_MOUSEPRESENT) != 0;
|
||||
}
|
||||
|
||||
bool IsVisible() const
|
||||
bool IsVisible() const noexcept
|
||||
{
|
||||
if (mMode == MODE_RELATIVE)
|
||||
return false;
|
||||
|
||||
CURSORINFO info = { sizeof(CURSORINFO), 0, nullptr, {} };
|
||||
if (!GetCursorInfo(&info))
|
||||
{
|
||||
throw std::exception("GetCursorInfo");
|
||||
}
|
||||
return false;
|
||||
|
||||
return (info.flags & CURSOR_SHOWING) != 0;
|
||||
}
|
||||
|
@ -496,7 +870,7 @@ void Mouse::ProcessMessage(UINT message, WPARAM wParam, LPARAM lParam)
|
|||
class Mouse::Impl
|
||||
{
|
||||
public:
|
||||
Impl(Mouse* owner) :
|
||||
explicit Impl(Mouse* owner) noexcept(false) :
|
||||
mOwner(owner)
|
||||
{
|
||||
if (s_mouse)
|
||||
|
@ -530,7 +904,7 @@ public:
|
|||
return false;
|
||||
}
|
||||
|
||||
bool IsVisible() const
|
||||
bool IsVisible() const noexcept
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
@ -561,7 +935,7 @@ Mouse::Impl* Mouse::Impl::s_mouse = nullptr;
|
|||
// {
|
||||
// m_mouse->SetWindow(window);
|
||||
// }
|
||||
//
|
||||
//
|
||||
// void App::OnDpiChanged(DisplayInformation^ sender, Object^ args)
|
||||
// {
|
||||
// m_mouse->SetDpi(sender->LogicalDpi);
|
||||
|
@ -573,7 +947,7 @@ Mouse::Impl* Mouse::Impl::s_mouse = nullptr;
|
|||
class Mouse::Impl
|
||||
{
|
||||
public:
|
||||
Impl(Mouse* owner) :
|
||||
explicit Impl(Mouse* owner) noexcept(false) :
|
||||
mState{},
|
||||
mOwner(owner),
|
||||
mDPI(96.f),
|
||||
|
@ -717,14 +1091,14 @@ public:
|
|||
return false;
|
||||
}
|
||||
|
||||
bool IsVisible() const
|
||||
bool IsVisible() const noexcept
|
||||
{
|
||||
if (mMode == MODE_RELATIVE)
|
||||
return false;
|
||||
|
||||
ComPtr<ABI::Windows::UI::Core::ICoreCursor> cursor;
|
||||
HRESULT hr = mWindow->get_PointerCursor(cursor.GetAddressOf());
|
||||
ThrowIfFailed(hr);
|
||||
if (FAILED(mWindow->get_PointerCursor(cursor.GetAddressOf())))
|
||||
return false;
|
||||
|
||||
return cursor != 0;
|
||||
}
|
||||
|
@ -1076,7 +1450,7 @@ bool Mouse::IsConnected() const
|
|||
return pImpl->IsConnected();
|
||||
}
|
||||
|
||||
bool Mouse::IsVisible() const
|
||||
bool Mouse::IsVisible() const noexcept
|
||||
{
|
||||
return pImpl->IsVisible();
|
||||
}
|
||||
|
|
|
@ -42,9 +42,9 @@ struct NormalMapEffectTraits
|
|||
{
|
||||
using ConstantBufferType = NormalMapEffectConstants;
|
||||
|
||||
static const int VertexShaderCount = 4;
|
||||
static const int PixelShaderCount = 4;
|
||||
static const int ShaderPermutationCount = 16;
|
||||
static constexpr int VertexShaderCount = 4;
|
||||
static constexpr int PixelShaderCount = 4;
|
||||
static constexpr int ShaderPermutationCount = 16;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -44,10 +44,10 @@ struct PBREffectTraits
|
|||
{
|
||||
using ConstantBufferType = PBREffectConstants;
|
||||
|
||||
static const int VertexShaderCount = 4;
|
||||
static const int PixelShaderCount = 5;
|
||||
static const int ShaderPermutationCount = 10;
|
||||
static const int RootSignatureCount = 1;
|
||||
static constexpr int VertexShaderCount = 4;
|
||||
static constexpr int PixelShaderCount = 5;
|
||||
static constexpr int ShaderPermutationCount = 10;
|
||||
static constexpr int RootSignatureCount = 1;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -38,6 +38,8 @@ namespace DirectX
|
|||
return s_str;
|
||||
}
|
||||
|
||||
HRESULT get_result() const noexcept { return result; }
|
||||
|
||||
private:
|
||||
HRESULT result;
|
||||
};
|
||||
|
|
|
@ -68,11 +68,11 @@ namespace
|
|||
{
|
||||
// Helper for creating a D3D vertex or index buffer.
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
void CreateBuffer(_In_ ID3D11DeviceX* device, size_t bufferSize, D3D11_BIND_FLAG bindFlag, _Out_ ID3D11Buffer** pBuffer)
|
||||
void CreateDynamicBuffer(_In_ ID3D11DeviceX* device, uint32_t bufferSize, D3D11_BIND_FLAG bindFlag, _Outptr_ ID3D11Buffer** pBuffer)
|
||||
{
|
||||
D3D11_BUFFER_DESC desc = {};
|
||||
|
||||
desc.ByteWidth = static_cast<UINT>(bufferSize);
|
||||
desc.ByteWidth = bufferSize;
|
||||
desc.BindFlags = bindFlag;
|
||||
desc.Usage = D3D11_USAGE_DEFAULT;
|
||||
desc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE;
|
||||
|
@ -84,11 +84,11 @@ namespace
|
|||
SetDebugObjectName(*pBuffer, "DirectXTK:PrimitiveBatch");
|
||||
}
|
||||
#else
|
||||
void CreateBuffer(_In_ ID3D11Device* device, size_t bufferSize, D3D11_BIND_FLAG bindFlag, _Out_ ID3D11Buffer** pBuffer)
|
||||
void CreateDynamicBuffer(_In_ ID3D11Device* device, uint32_t bufferSize, D3D11_BIND_FLAG bindFlag, _Outptr_ ID3D11Buffer** pBuffer)
|
||||
{
|
||||
D3D11_BUFFER_DESC desc = {};
|
||||
|
||||
desc.ByteWidth = static_cast<UINT>(bufferSize);
|
||||
desc.ByteWidth = bufferSize;
|
||||
desc.BindFlags = bindFlag;
|
||||
desc.Usage = D3D11_USAGE_DYNAMIC;
|
||||
desc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE;
|
||||
|
@ -135,10 +135,14 @@ PrimitiveBatchBase::Impl::Impl(_In_ ID3D11DeviceContext* deviceContext, size_t m
|
|||
if (vertexSize > D3D11_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES)
|
||||
throw std::exception("Vertex size is too large for DirectX 11");
|
||||
|
||||
if ((uint64_t(maxIndices) * sizeof(uint16_t)) > uint64_t(D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM * 1024u * 1024u))
|
||||
uint64_t ibBytes = uint64_t(maxIndices) * sizeof(uint16_t);
|
||||
if (ibBytes > uint64_t(D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM * 1024u * 1024u)
|
||||
|| ibBytes > UINT32_MAX)
|
||||
throw std::exception("IB too large for DirectX 11");
|
||||
|
||||
if ((uint64_t(maxVertices) * uint64_t(vertexSize)) > uint64_t(D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM * 1024u * 1024u))
|
||||
uint64_t vbBytes = uint64_t(maxVertices) * uint64_t(vertexSize);
|
||||
if (vbBytes > uint64_t(D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM * 1024u * 1024u)
|
||||
|| vbBytes > UINT32_MAX)
|
||||
throw std::exception("VB too large for DirectX 11");
|
||||
|
||||
#if defined(_XBOX_ONE) && defined(_TITLE)
|
||||
|
@ -150,11 +154,11 @@ PrimitiveBatchBase::Impl::Impl(_In_ ID3D11DeviceContext* deviceContext, size_t m
|
|||
// If you only intend to draw non-indexed geometry, specify maxIndices = 0 to skip creating the index buffer.
|
||||
if (maxIndices > 0)
|
||||
{
|
||||
CreateBuffer(deviceX.Get(), maxIndices * sizeof(uint16_t), D3D11_BIND_INDEX_BUFFER, &mIndexBuffer);
|
||||
CreateDynamicBuffer(deviceX.Get(), static_cast<uint32_t>(ibBytes), D3D11_BIND_INDEX_BUFFER, &mIndexBuffer);
|
||||
}
|
||||
|
||||
// Create the vertex buffer.
|
||||
CreateBuffer(deviceX.Get(), maxVertices * vertexSize, D3D11_BIND_VERTEX_BUFFER, &mVertexBuffer);
|
||||
CreateDynamicBuffer(deviceX.Get(), static_cast<uint32_t>(vbBytes), D3D11_BIND_VERTEX_BUFFER, &mVertexBuffer);
|
||||
|
||||
grfxMemoryIB = grfxMemoryVB = nullptr;
|
||||
#else
|
||||
|
@ -163,11 +167,11 @@ PrimitiveBatchBase::Impl::Impl(_In_ ID3D11DeviceContext* deviceContext, size_t m
|
|||
// If you only intend to draw non-indexed geometry, specify maxIndices = 0 to skip creating the index buffer.
|
||||
if (maxIndices > 0)
|
||||
{
|
||||
CreateBuffer(device.Get(), maxIndices * sizeof(uint16_t), D3D11_BIND_INDEX_BUFFER, &mIndexBuffer);
|
||||
CreateDynamicBuffer(device.Get(), static_cast<uint32_t>(ibBytes), D3D11_BIND_INDEX_BUFFER, &mIndexBuffer);
|
||||
}
|
||||
|
||||
// Create the vertex buffer.
|
||||
CreateBuffer(device.Get(), maxVertices * vertexSize, D3D11_BIND_VERTEX_BUFFER, &mVertexBuffer);
|
||||
CreateDynamicBuffer(device.Get(), static_cast<uint32_t>(vbBytes), D3D11_BIND_VERTEX_BUFFER, &mVertexBuffer);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include <cstdint>
|
||||
|
||||
namespace DXUT
|
||||
{
|
||||
|
@ -105,24 +106,22 @@ namespace DXUT
|
|||
//--------------------------------------------------------------------------------------
|
||||
// Hard Defines for the various structures
|
||||
//--------------------------------------------------------------------------------------
|
||||
const uint32_t SDKMESH_FILE_VERSION = 101;
|
||||
const uint32_t SDKMESH_FILE_VERSION_V2 = 200;
|
||||
constexpr uint32_t SDKMESH_FILE_VERSION = 101;
|
||||
constexpr uint32_t SDKMESH_FILE_VERSION_V2 = 200;
|
||||
|
||||
const uint32_t MAX_VERTEX_ELEMENTS = 32;
|
||||
const uint32_t MAX_VERTEX_STREAMS = 16;
|
||||
const uint32_t MAX_FRAME_NAME = 100;
|
||||
const uint32_t MAX_MESH_NAME = 100;
|
||||
const uint32_t MAX_SUBSET_NAME = 100;
|
||||
const uint32_t MAX_MATERIAL_NAME = 100;
|
||||
const uint32_t MAX_TEXTURE_NAME = MAX_PATH;
|
||||
const uint32_t MAX_MATERIAL_PATH = MAX_PATH;
|
||||
const uint32_t INVALID_FRAME = uint32_t(-1);
|
||||
const uint32_t INVALID_MESH = uint32_t(-1);
|
||||
const uint32_t INVALID_MATERIAL = uint32_t(-1);
|
||||
const uint32_t INVALID_SUBSET = uint32_t(-1);
|
||||
const uint32_t INVALID_ANIMATION_DATA = uint32_t(-1);
|
||||
const uint32_t INVALID_SAMPLER_SLOT = uint32_t(-1);
|
||||
const uint32_t ERROR_RESOURCE_VALUE = 1;
|
||||
constexpr uint32_t MAX_VERTEX_ELEMENTS = 32;
|
||||
constexpr uint32_t MAX_VERTEX_STREAMS = 16;
|
||||
constexpr uint32_t MAX_FRAME_NAME = 100;
|
||||
constexpr uint32_t MAX_MESH_NAME = 100;
|
||||
constexpr uint32_t MAX_SUBSET_NAME = 100;
|
||||
constexpr uint32_t MAX_MATERIAL_NAME = 100;
|
||||
constexpr uint32_t MAX_TEXTURE_NAME = MAX_PATH;
|
||||
constexpr uint32_t MAX_MATERIAL_PATH = MAX_PATH;
|
||||
constexpr uint32_t INVALID_FRAME = uint32_t(-1);
|
||||
constexpr uint32_t INVALID_MESH = uint32_t(-1);
|
||||
constexpr uint32_t INVALID_MATERIAL = uint32_t(-1);
|
||||
constexpr uint32_t INVALID_SUBSET = uint32_t(-1);
|
||||
constexpr uint32_t INVALID_ANIMATION_DATA = uint32_t(-1);
|
||||
|
||||
//--------------------------------------------------------------------------------------
|
||||
// Enumerated Types.
|
||||
|
|
|
@ -349,7 +349,7 @@ HRESULT DirectX::SaveWICTextureToFile(
|
|||
const wchar_t* fileName,
|
||||
const GUID* targetFormat,
|
||||
std::function<void(IPropertyBag2*)> setCustomProps,
|
||||
bool forceSRGB) noexcept
|
||||
bool forceSRGB)
|
||||
{
|
||||
if (!fileName)
|
||||
return E_INVALIDARG;
|
||||
|
|
|
@ -30,7 +30,7 @@ goto continue
|
|||
|
||||
:continuepc
|
||||
|
||||
set PCDXC="%WindowsSdkVerBinPath%\x86\fxc.exe"
|
||||
set PCFXC="%WindowsSdkVerBinPath%x86\fxc.exe"
|
||||
if exist %PCFXC% goto continue
|
||||
set PCFXC="%WindowsSdkBinPath%%WindowsSDKVersion%\x86\fxc.exe"
|
||||
if exist %PCFXC% goto continue
|
||||
|
@ -118,6 +118,8 @@ call :CompileShader%1 EnvironmentMapEffect vs VSEnvMapOneLightFresnel
|
|||
call :CompileShader%1 EnvironmentMapEffect vs VSEnvMapOneLightFresnelBn
|
||||
call :CompileShader%1 EnvironmentMapEffect vs VSEnvMapPixelLighting
|
||||
call :CompileShader%1 EnvironmentMapEffect vs VSEnvMapPixelLightingBn
|
||||
call :CompileShaderSM4%1 EnvironmentMapEffect vs VSEnvMapPixelLightingSM4
|
||||
call :CompileShaderSM4%1 EnvironmentMapEffect vs VSEnvMapPixelLightingBnSM4
|
||||
|
||||
call :CompileShader%1 EnvironmentMapEffect ps PSEnvMap
|
||||
call :CompileShader%1 EnvironmentMapEffect ps PSEnvMapNoFog
|
||||
|
@ -128,6 +130,16 @@ call :CompileShader%1 EnvironmentMapEffect ps PSEnvMapPixelLightingNoFog
|
|||
call :CompileShader%1 EnvironmentMapEffect ps PSEnvMapPixelLightingFresnel
|
||||
call :CompileShader%1 EnvironmentMapEffect ps PSEnvMapPixelLightingFresnelNoFog
|
||||
|
||||
call :CompileShader%1 EnvironmentMapEffect ps PSEnvMapSpherePixelLighting
|
||||
call :CompileShader%1 EnvironmentMapEffect ps PSEnvMapSpherePixelLightingNoFog
|
||||
call :CompileShader%1 EnvironmentMapEffect ps PSEnvMapSpherePixelLightingFresnel
|
||||
call :CompileShader%1 EnvironmentMapEffect ps PSEnvMapSpherePixelLightingFresnelNoFog
|
||||
|
||||
call :CompileShaderSM4%1 EnvironmentMapEffect ps PSEnvMapDualParabolaPixelLighting
|
||||
call :CompileShaderSM4%1 EnvironmentMapEffect ps PSEnvMapDualParabolaPixelLightingNoFog
|
||||
call :CompileShaderSM4%1 EnvironmentMapEffect ps PSEnvMapDualParabolaPixelLightingFresnel
|
||||
call :CompileShaderSM4%1 EnvironmentMapEffect ps PSEnvMapDualParabolaPixelLightingFresnelNoFog
|
||||
|
||||
call :CompileShader%1 SkinnedEffect vs VSSkinnedVertexLightingOneBone
|
||||
call :CompileShader%1 SkinnedEffect vs VSSkinnedVertexLightingOneBoneBn
|
||||
call :CompileShader%1 SkinnedEffect vs VSSkinnedVertexLightingTwoBones
|
||||
|
|
|
@ -1,343 +0,0 @@
|
|||
#if 0
|
||||
//
|
||||
// Generated by Microsoft (R) D3D Shader Disassembler
|
||||
//
|
||||
//
|
||||
// Input signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// COLOR 0 xyzw 0 NONE float xyzw
|
||||
// COLOR 1 xyzw 1 NONE float w
|
||||
// TEXCOORD 0 xy 2 NONE float xy
|
||||
//
|
||||
//
|
||||
// Output signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// SV_Target 0 xyzw 0 TARGET float xyzw
|
||||
//
|
||||
//
|
||||
// Constant buffer to DX9 shader constant mappings:
|
||||
//
|
||||
// Target Reg Buffer Start Reg # of Regs Data Conversion
|
||||
// ---------- ------- --------- --------- ----------------------
|
||||
// c0 cb0 1 2 ( FLT, FLT, FLT, FLT)
|
||||
//
|
||||
//
|
||||
// Sampler/Resource to DX9 shader sampler mappings:
|
||||
//
|
||||
// Target Sampler Source Sampler Source Resource
|
||||
// -------------- --------------- ----------------
|
||||
// s0 s0 t0
|
||||
//
|
||||
//
|
||||
// Level9 shader bytecode:
|
||||
//
|
||||
ps_2_0
|
||||
dcl t0 // pin<0,1,2,3>
|
||||
dcl t1 // pin<4,5,6,7>
|
||||
dcl t2.xy // pin<8,9>
|
||||
dcl_2d s0
|
||||
|
||||
#line 111 "D:\ATG\st_dev\Kits\DirectXTK\Src\Shaders\AlphaTestEffect.fx"
|
||||
texld r0, t2, s0
|
||||
mad r1.w, r0.w, t0.w, -c0.x
|
||||
mul r0, r0, t0 // ::color<0,1,2,3>
|
||||
abs r1.x, r1.w
|
||||
add r1.x, r1.x, -c0.y
|
||||
cmp r1, r1.x, c0.w, c0.z
|
||||
texkill r1
|
||||
|
||||
#line 18 "D:\ATG\st_dev\Kits\DirectXTK\Src\Shaders\Common.fxh"
|
||||
mad r1.xyz, c1, r0.w, -r0
|
||||
mad r0.xyz, t1.w, r1, r0 // ApplyFog::color<0,1,2>
|
||||
mov oC0, r0 // ::PSAlphaTestEqNe<0,1,2,3>
|
||||
|
||||
// approximately 10 instruction slots used (1 texture, 9 arithmetic)
|
||||
ps_4_0
|
||||
dcl_constantbuffer CB0[3], immediateIndexed
|
||||
dcl_sampler s0, mode_default
|
||||
dcl_resource_texture2d (float,float,float,float) t0
|
||||
dcl_input_ps linear v0.xyzw
|
||||
dcl_input_ps linear v1.w
|
||||
dcl_input_ps linear v2.xy
|
||||
dcl_output o0.xyzw
|
||||
dcl_temps 2
|
||||
sample r0.xyzw, v2.xyxx, t0.xyzw, s0
|
||||
mad r1.x, r0.w, v0.w, -cb0[1].x
|
||||
mul r0.xyzw, r0.xyzw, v0.xyzw
|
||||
lt r1.x, |r1.x|, cb0[1].y
|
||||
movc r1.x, r1.x, cb0[1].z, cb0[1].w
|
||||
lt r1.x, r1.x, l(0.000000)
|
||||
discard_nz r1.x
|
||||
mad r1.xyz, cb0[2].xyzx, r0.wwww, -r0.xyzx
|
||||
mad o0.xyz, v1.wwww, r1.xyzx, r0.xyzx
|
||||
mov o0.w, r0.w
|
||||
ret
|
||||
// Approximately 0 instruction slots used
|
||||
#endif
|
||||
|
||||
const BYTE AlphaTestEffect_PSAlphaTestEqNe[] =
|
||||
{
|
||||
68, 88, 66, 67, 65, 153,
|
||||
224, 77, 127, 159, 122, 32,
|
||||
3, 97, 172, 234, 185, 5,
|
||||
105, 111, 1, 0, 0, 0,
|
||||
16, 6, 0, 0, 4, 0,
|
||||
0, 0, 48, 0, 0, 0,
|
||||
180, 3, 0, 0, 116, 5,
|
||||
0, 0, 220, 5, 0, 0,
|
||||
65, 111, 110, 57, 124, 3,
|
||||
0, 0, 124, 3, 0, 0,
|
||||
0, 2, 255, 255, 72, 3,
|
||||
0, 0, 52, 0, 0, 0,
|
||||
1, 0, 40, 0, 0, 0,
|
||||
52, 0, 0, 0, 52, 0,
|
||||
1, 0, 36, 0, 0, 0,
|
||||
52, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 0, 2, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 2, 255, 255, 254, 255,
|
||||
155, 0, 68, 66, 85, 71,
|
||||
40, 0, 0, 0, 64, 2,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
2, 0, 0, 0, 152, 0,
|
||||
0, 0, 14, 0, 0, 0,
|
||||
160, 0, 0, 0, 4, 0,
|
||||
0, 0, 240, 1, 0, 0,
|
||||
16, 1, 0, 0, 68, 58,
|
||||
92, 65, 84, 71, 92, 115,
|
||||
116, 95, 100, 101, 118, 92,
|
||||
75, 105, 116, 115, 92, 68,
|
||||
105, 114, 101, 99, 116, 88,
|
||||
84, 75, 92, 83, 114, 99,
|
||||
92, 83, 104, 97, 100, 101,
|
||||
114, 115, 92, 65, 108, 112,
|
||||
104, 97, 84, 101, 115, 116,
|
||||
69, 102, 102, 101, 99, 116,
|
||||
46, 102, 120, 0, 68, 58,
|
||||
92, 65, 84, 71, 92, 115,
|
||||
116, 95, 100, 101, 118, 92,
|
||||
75, 105, 116, 115, 92, 68,
|
||||
105, 114, 101, 99, 116, 88,
|
||||
84, 75, 92, 83, 114, 99,
|
||||
92, 83, 104, 97, 100, 101,
|
||||
114, 115, 92, 67, 111, 109,
|
||||
109, 111, 110, 46, 102, 120,
|
||||
104, 0, 40, 0, 0, 0,
|
||||
100, 0, 0, 0, 0, 0,
|
||||
255, 255, 116, 2, 0, 0,
|
||||
0, 0, 255, 255, 128, 2,
|
||||
0, 0, 0, 0, 255, 255,
|
||||
140, 2, 0, 0, 0, 0,
|
||||
255, 255, 152, 2, 0, 0,
|
||||
111, 0, 0, 0, 164, 2,
|
||||
0, 0, 113, 0, 0, 0,
|
||||
180, 2, 0, 0, 111, 0,
|
||||
0, 0, 200, 2, 0, 0,
|
||||
113, 0, 0, 0, 216, 2,
|
||||
0, 0, 113, 0, 0, 0,
|
||||
228, 2, 0, 0, 113, 0,
|
||||
0, 0, 244, 2, 0, 0,
|
||||
113, 0, 0, 0, 8, 3,
|
||||
0, 0, 18, 0, 1, 0,
|
||||
16, 3, 0, 0, 18, 0,
|
||||
1, 0, 36, 3, 0, 0,
|
||||
18, 0, 1, 0, 56, 3,
|
||||
0, 0, 80, 83, 65, 108,
|
||||
112, 104, 97, 84, 101, 115,
|
||||
116, 69, 113, 78, 101, 0,
|
||||
1, 0, 3, 0, 1, 0,
|
||||
4, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 13, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
2, 0, 3, 0, 65, 112,
|
||||
112, 108, 121, 70, 111, 103,
|
||||
0, 99, 111, 108, 111, 114,
|
||||
0, 171, 1, 0, 3, 0,
|
||||
1, 0, 4, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
12, 0, 0, 0, 0, 0,
|
||||
1, 0, 2, 0, 255, 255,
|
||||
6, 0, 0, 0, 0, 0,
|
||||
1, 0, 2, 0, 3, 0,
|
||||
112, 105, 110, 0, 68, 105,
|
||||
102, 102, 117, 115, 101, 0,
|
||||
83, 112, 101, 99, 117, 108,
|
||||
97, 114, 0, 84, 101, 120,
|
||||
67, 111, 111, 114, 100, 0,
|
||||
171, 171, 1, 0, 3, 0,
|
||||
1, 0, 2, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
120, 1, 0, 0, 76, 1,
|
||||
0, 0, 128, 1, 0, 0,
|
||||
76, 1, 0, 0, 137, 1,
|
||||
0, 0, 148, 1, 0, 0,
|
||||
5, 0, 0, 0, 1, 0,
|
||||
10, 0, 1, 0, 3, 0,
|
||||
164, 1, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
2, 0, 3, 0, 1, 0,
|
||||
0, 0, 4, 0, 5, 0,
|
||||
6, 0, 7, 0, 2, 0,
|
||||
0, 0, 8, 0, 9, 0,
|
||||
255, 255, 255, 255, 0, 0,
|
||||
0, 0, 16, 1, 0, 0,
|
||||
32, 1, 0, 0, 1, 0,
|
||||
0, 0, 48, 1, 0, 0,
|
||||
60, 1, 0, 0, 69, 1,
|
||||
0, 0, 76, 1, 0, 0,
|
||||
1, 0, 0, 0, 92, 1,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
69, 1, 0, 0, 76, 1,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
104, 1, 0, 0, 16, 1,
|
||||
0, 0, 116, 1, 0, 0,
|
||||
188, 1, 0, 0, 3, 0,
|
||||
0, 0, 204, 1, 0, 0,
|
||||
77, 105, 99, 114, 111, 115,
|
||||
111, 102, 116, 32, 40, 82,
|
||||
41, 32, 72, 76, 83, 76,
|
||||
32, 83, 104, 97, 100, 101,
|
||||
114, 32, 67, 111, 109, 112,
|
||||
105, 108, 101, 114, 32, 49,
|
||||
48, 46, 49, 0, 31, 0,
|
||||
0, 2, 0, 0, 0, 128,
|
||||
0, 0, 15, 176, 31, 0,
|
||||
0, 2, 0, 0, 0, 128,
|
||||
1, 0, 15, 176, 31, 0,
|
||||
0, 2, 0, 0, 0, 128,
|
||||
2, 0, 3, 176, 31, 0,
|
||||
0, 2, 0, 0, 0, 144,
|
||||
0, 8, 15, 160, 66, 0,
|
||||
0, 3, 0, 0, 15, 128,
|
||||
2, 0, 228, 176, 0, 8,
|
||||
228, 160, 4, 0, 0, 4,
|
||||
1, 0, 8, 128, 0, 0,
|
||||
255, 128, 0, 0, 255, 176,
|
||||
0, 0, 0, 161, 5, 0,
|
||||
0, 3, 0, 0, 15, 128,
|
||||
0, 0, 228, 128, 0, 0,
|
||||
228, 176, 35, 0, 0, 2,
|
||||
1, 0, 1, 128, 1, 0,
|
||||
255, 128, 2, 0, 0, 3,
|
||||
1, 0, 1, 128, 1, 0,
|
||||
0, 128, 0, 0, 85, 161,
|
||||
88, 0, 0, 4, 1, 0,
|
||||
15, 128, 1, 0, 0, 128,
|
||||
0, 0, 255, 160, 0, 0,
|
||||
170, 160, 65, 0, 0, 1,
|
||||
1, 0, 15, 128, 4, 0,
|
||||
0, 4, 1, 0, 7, 128,
|
||||
1, 0, 228, 160, 0, 0,
|
||||
255, 128, 0, 0, 228, 129,
|
||||
4, 0, 0, 4, 0, 0,
|
||||
7, 128, 1, 0, 255, 176,
|
||||
1, 0, 228, 128, 0, 0,
|
||||
228, 128, 1, 0, 0, 2,
|
||||
0, 8, 15, 128, 0, 0,
|
||||
228, 128, 255, 255, 0, 0,
|
||||
83, 72, 68, 82, 184, 1,
|
||||
0, 0, 64, 0, 0, 0,
|
||||
110, 0, 0, 0, 89, 0,
|
||||
0, 4, 70, 142, 32, 0,
|
||||
0, 0, 0, 0, 3, 0,
|
||||
0, 0, 90, 0, 0, 3,
|
||||
0, 96, 16, 0, 0, 0,
|
||||
0, 0, 88, 24, 0, 4,
|
||||
0, 112, 16, 0, 0, 0,
|
||||
0, 0, 85, 85, 0, 0,
|
||||
98, 16, 0, 3, 242, 16,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
98, 16, 0, 3, 130, 16,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
98, 16, 0, 3, 50, 16,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
101, 0, 0, 3, 242, 32,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
104, 0, 0, 2, 2, 0,
|
||||
0, 0, 69, 0, 0, 9,
|
||||
242, 0, 16, 0, 0, 0,
|
||||
0, 0, 70, 16, 16, 0,
|
||||
2, 0, 0, 0, 70, 126,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
0, 96, 16, 0, 0, 0,
|
||||
0, 0, 50, 0, 0, 11,
|
||||
18, 0, 16, 0, 1, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
0, 0, 0, 0, 58, 16,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
10, 128, 32, 128, 65, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 56, 0,
|
||||
0, 7, 242, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 14,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 30, 16, 0, 0, 0,
|
||||
0, 0, 49, 0, 0, 9,
|
||||
18, 0, 16, 0, 1, 0,
|
||||
0, 0, 10, 0, 16, 128,
|
||||
129, 0, 0, 0, 1, 0,
|
||||
0, 0, 26, 128, 32, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 55, 0, 0, 11,
|
||||
18, 0, 16, 0, 1, 0,
|
||||
0, 0, 10, 0, 16, 0,
|
||||
1, 0, 0, 0, 42, 128,
|
||||
32, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 58, 128,
|
||||
32, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 49, 0,
|
||||
0, 7, 18, 0, 16, 0,
|
||||
1, 0, 0, 0, 10, 0,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
1, 64, 0, 0, 0, 0,
|
||||
0, 0, 13, 0, 4, 3,
|
||||
10, 0, 16, 0, 1, 0,
|
||||
0, 0, 50, 0, 0, 11,
|
||||
114, 0, 16, 0, 1, 0,
|
||||
0, 0, 70, 130, 32, 0,
|
||||
0, 0, 0, 0, 2, 0,
|
||||
0, 0, 246, 15, 16, 0,
|
||||
0, 0, 0, 0, 70, 2,
|
||||
16, 128, 65, 0, 0, 0,
|
||||
0, 0, 0, 0, 50, 0,
|
||||
0, 9, 114, 32, 16, 0,
|
||||
0, 0, 0, 0, 246, 31,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
70, 2, 16, 0, 1, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
0, 0, 0, 0, 54, 0,
|
||||
0, 5, 130, 32, 16, 0,
|
||||
0, 0, 0, 0, 58, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
62, 0, 0, 1, 73, 83,
|
||||
71, 78, 96, 0, 0, 0,
|
||||
3, 0, 0, 0, 8, 0,
|
||||
0, 0, 80, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
0, 0, 0, 0, 15, 15,
|
||||
0, 0, 80, 0, 0, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
1, 0, 0, 0, 15, 8,
|
||||
0, 0, 86, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
2, 0, 0, 0, 3, 3,
|
||||
0, 0, 67, 79, 76, 79,
|
||||
82, 0, 84, 69, 88, 67,
|
||||
79, 79, 82, 68, 0, 171,
|
||||
79, 83, 71, 78, 44, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
8, 0, 0, 0, 32, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 3, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
15, 0, 0, 0, 83, 86,
|
||||
95, 84, 97, 114, 103, 101,
|
||||
116, 0, 171, 171
|
||||
};
|
Двоичный файл не отображается.
|
@ -1,283 +0,0 @@
|
|||
#if 0
|
||||
//
|
||||
// Generated by Microsoft (R) D3D Shader Disassembler
|
||||
//
|
||||
//
|
||||
// Input signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// COLOR 0 xyzw 0 NONE float xyzw
|
||||
// TEXCOORD 0 xy 1 NONE float xy
|
||||
//
|
||||
//
|
||||
// Output signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// SV_Target 0 xyzw 0 TARGET float xyzw
|
||||
//
|
||||
//
|
||||
// Constant buffer to DX9 shader constant mappings:
|
||||
//
|
||||
// Target Reg Buffer Start Reg # of Regs Data Conversion
|
||||
// ---------- ------- --------- --------- ----------------------
|
||||
// c0 cb0 1 1 ( FLT, FLT, FLT, FLT)
|
||||
//
|
||||
//
|
||||
// Sampler/Resource to DX9 shader sampler mappings:
|
||||
//
|
||||
// Target Sampler Source Sampler Source Resource
|
||||
// -------------- --------------- ----------------
|
||||
// s0 s0 t0
|
||||
//
|
||||
//
|
||||
// Level9 shader bytecode:
|
||||
//
|
||||
ps_2_0
|
||||
dcl t0 // pin<0,1,2,3>
|
||||
dcl t1.xy // pin<4,5>
|
||||
dcl_2d s0
|
||||
|
||||
#line 124 "D:\ATG\st_dev\Kits\DirectXTK\Src\Shaders\AlphaTestEffect.fx"
|
||||
texld r0, t1, s0
|
||||
mad r1.w, r0.w, t0.w, -c0.x
|
||||
mul r0, r0, t0 // ::color<0,1,2,3>
|
||||
mov oC0, r0 // ::PSAlphaTestEqNeNoFog<0,1,2,3>
|
||||
abs r0.x, r1.w
|
||||
add r0.x, r0.x, -c0.y
|
||||
cmp r0, r0.x, c0.w, c0.z
|
||||
texkill r0
|
||||
|
||||
// approximately 8 instruction slots used (1 texture, 7 arithmetic)
|
||||
ps_4_0
|
||||
dcl_constantbuffer CB0[2], immediateIndexed
|
||||
dcl_sampler s0, mode_default
|
||||
dcl_resource_texture2d (float,float,float,float) t0
|
||||
dcl_input_ps linear v0.xyzw
|
||||
dcl_input_ps linear v1.xy
|
||||
dcl_output o0.xyzw
|
||||
dcl_temps 2
|
||||
sample r0.xyzw, v1.xyxx, t0.xyzw, s0
|
||||
mad r1.x, r0.w, v0.w, -cb0[1].x
|
||||
mul r0.xyzw, r0.xyzw, v0.xyzw
|
||||
mov o0.xyzw, r0.xyzw
|
||||
lt r0.x, |r1.x|, cb0[1].y
|
||||
movc r0.x, r0.x, cb0[1].z, cb0[1].w
|
||||
lt r0.x, r0.x, l(0.000000)
|
||||
discard_nz r0.x
|
||||
ret
|
||||
// Approximately 0 instruction slots used
|
||||
#endif
|
||||
|
||||
const BYTE AlphaTestEffect_PSAlphaTestEqNeNoFog[] =
|
||||
{
|
||||
68, 88, 66, 67, 51, 166,
|
||||
176, 29, 155, 181, 178, 64,
|
||||
208, 217, 33, 166, 4, 202,
|
||||
58, 59, 1, 0, 0, 0,
|
||||
220, 4, 0, 0, 4, 0,
|
||||
0, 0, 48, 0, 0, 0,
|
||||
244, 2, 0, 0, 88, 4,
|
||||
0, 0, 168, 4, 0, 0,
|
||||
65, 111, 110, 57, 188, 2,
|
||||
0, 0, 188, 2, 0, 0,
|
||||
0, 2, 255, 255, 136, 2,
|
||||
0, 0, 52, 0, 0, 0,
|
||||
1, 0, 40, 0, 0, 0,
|
||||
52, 0, 0, 0, 52, 0,
|
||||
1, 0, 36, 0, 0, 0,
|
||||
52, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 2, 255, 255, 254, 255,
|
||||
120, 0, 68, 66, 85, 71,
|
||||
40, 0, 0, 0, 180, 1,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 100, 0,
|
||||
0, 0, 11, 0, 0, 0,
|
||||
104, 0, 0, 0, 3, 0,
|
||||
0, 0, 120, 1, 0, 0,
|
||||
192, 0, 0, 0, 68, 58,
|
||||
92, 65, 84, 71, 92, 115,
|
||||
116, 95, 100, 101, 118, 92,
|
||||
75, 105, 116, 115, 92, 68,
|
||||
105, 114, 101, 99, 116, 88,
|
||||
84, 75, 92, 83, 114, 99,
|
||||
92, 83, 104, 97, 100, 101,
|
||||
114, 115, 92, 65, 108, 112,
|
||||
104, 97, 84, 101, 115, 116,
|
||||
69, 102, 102, 101, 99, 116,
|
||||
46, 102, 120, 0, 40, 0,
|
||||
0, 0, 0, 0, 255, 255,
|
||||
232, 1, 0, 0, 0, 0,
|
||||
255, 255, 244, 1, 0, 0,
|
||||
0, 0, 255, 255, 0, 2,
|
||||
0, 0, 124, 0, 0, 0,
|
||||
12, 2, 0, 0, 126, 0,
|
||||
0, 0, 28, 2, 0, 0,
|
||||
124, 0, 0, 0, 48, 2,
|
||||
0, 0, 124, 0, 0, 0,
|
||||
64, 2, 0, 0, 126, 0,
|
||||
0, 0, 76, 2, 0, 0,
|
||||
126, 0, 0, 0, 88, 2,
|
||||
0, 0, 126, 0, 0, 0,
|
||||
104, 2, 0, 0, 126, 0,
|
||||
0, 0, 124, 2, 0, 0,
|
||||
80, 83, 65, 108, 112, 104,
|
||||
97, 84, 101, 115, 116, 69,
|
||||
113, 78, 101, 78, 111, 70,
|
||||
111, 103, 0, 171, 171, 171,
|
||||
1, 0, 3, 0, 1, 0,
|
||||
4, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 6, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
2, 0, 3, 0, 99, 111,
|
||||
108, 111, 114, 0, 171, 171,
|
||||
1, 0, 3, 0, 1, 0,
|
||||
4, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 5, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
2, 0, 3, 0, 112, 105,
|
||||
110, 0, 68, 105, 102, 102,
|
||||
117, 115, 101, 0, 84, 101,
|
||||
120, 67, 111, 111, 114, 100,
|
||||
0, 171, 171, 171, 1, 0,
|
||||
3, 0, 1, 0, 2, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 28, 1, 0, 0,
|
||||
252, 0, 0, 0, 36, 1,
|
||||
0, 0, 48, 1, 0, 0,
|
||||
5, 0, 0, 0, 1, 0,
|
||||
6, 0, 1, 0, 2, 0,
|
||||
64, 1, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
2, 0, 3, 0, 1, 0,
|
||||
0, 0, 4, 0, 5, 0,
|
||||
255, 255, 255, 255, 0, 0,
|
||||
0, 0, 192, 0, 0, 0,
|
||||
216, 0, 0, 0, 1, 0,
|
||||
0, 0, 232, 0, 0, 0,
|
||||
0, 0, 0, 0, 244, 0,
|
||||
0, 0, 252, 0, 0, 0,
|
||||
1, 0, 0, 0, 12, 1,
|
||||
0, 0, 192, 0, 0, 0,
|
||||
24, 1, 0, 0, 80, 1,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
96, 1, 0, 0, 77, 105,
|
||||
99, 114, 111, 115, 111, 102,
|
||||
116, 32, 40, 82, 41, 32,
|
||||
72, 76, 83, 76, 32, 83,
|
||||
104, 97, 100, 101, 114, 32,
|
||||
67, 111, 109, 112, 105, 108,
|
||||
101, 114, 32, 49, 48, 46,
|
||||
49, 0, 31, 0, 0, 2,
|
||||
0, 0, 0, 128, 0, 0,
|
||||
15, 176, 31, 0, 0, 2,
|
||||
0, 0, 0, 128, 1, 0,
|
||||
3, 176, 31, 0, 0, 2,
|
||||
0, 0, 0, 144, 0, 8,
|
||||
15, 160, 66, 0, 0, 3,
|
||||
0, 0, 15, 128, 1, 0,
|
||||
228, 176, 0, 8, 228, 160,
|
||||
4, 0, 0, 4, 1, 0,
|
||||
8, 128, 0, 0, 255, 128,
|
||||
0, 0, 255, 176, 0, 0,
|
||||
0, 161, 5, 0, 0, 3,
|
||||
0, 0, 15, 128, 0, 0,
|
||||
228, 128, 0, 0, 228, 176,
|
||||
1, 0, 0, 2, 0, 8,
|
||||
15, 128, 0, 0, 228, 128,
|
||||
35, 0, 0, 2, 0, 0,
|
||||
1, 128, 1, 0, 255, 128,
|
||||
2, 0, 0, 3, 0, 0,
|
||||
1, 128, 0, 0, 0, 128,
|
||||
0, 0, 85, 161, 88, 0,
|
||||
0, 4, 0, 0, 15, 128,
|
||||
0, 0, 0, 128, 0, 0,
|
||||
255, 160, 0, 0, 170, 160,
|
||||
65, 0, 0, 1, 0, 0,
|
||||
15, 128, 255, 255, 0, 0,
|
||||
83, 72, 68, 82, 92, 1,
|
||||
0, 0, 64, 0, 0, 0,
|
||||
87, 0, 0, 0, 89, 0,
|
||||
0, 4, 70, 142, 32, 0,
|
||||
0, 0, 0, 0, 2, 0,
|
||||
0, 0, 90, 0, 0, 3,
|
||||
0, 96, 16, 0, 0, 0,
|
||||
0, 0, 88, 24, 0, 4,
|
||||
0, 112, 16, 0, 0, 0,
|
||||
0, 0, 85, 85, 0, 0,
|
||||
98, 16, 0, 3, 242, 16,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
98, 16, 0, 3, 50, 16,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
101, 0, 0, 3, 242, 32,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
104, 0, 0, 2, 2, 0,
|
||||
0, 0, 69, 0, 0, 9,
|
||||
242, 0, 16, 0, 0, 0,
|
||||
0, 0, 70, 16, 16, 0,
|
||||
1, 0, 0, 0, 70, 126,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
0, 96, 16, 0, 0, 0,
|
||||
0, 0, 50, 0, 0, 11,
|
||||
18, 0, 16, 0, 1, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
0, 0, 0, 0, 58, 16,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
10, 128, 32, 128, 65, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 56, 0,
|
||||
0, 7, 242, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 14,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 30, 16, 0, 0, 0,
|
||||
0, 0, 54, 0, 0, 5,
|
||||
242, 32, 16, 0, 0, 0,
|
||||
0, 0, 70, 14, 16, 0,
|
||||
0, 0, 0, 0, 49, 0,
|
||||
0, 9, 18, 0, 16, 0,
|
||||
0, 0, 0, 0, 10, 0,
|
||||
16, 128, 129, 0, 0, 0,
|
||||
1, 0, 0, 0, 26, 128,
|
||||
32, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 55, 0,
|
||||
0, 11, 18, 0, 16, 0,
|
||||
0, 0, 0, 0, 10, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
42, 128, 32, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
58, 128, 32, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
49, 0, 0, 7, 18, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
10, 0, 16, 0, 0, 0,
|
||||
0, 0, 1, 64, 0, 0,
|
||||
0, 0, 0, 0, 13, 0,
|
||||
4, 3, 10, 0, 16, 0,
|
||||
0, 0, 0, 0, 62, 0,
|
||||
0, 1, 73, 83, 71, 78,
|
||||
72, 0, 0, 0, 2, 0,
|
||||
0, 0, 8, 0, 0, 0,
|
||||
56, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
3, 0, 0, 0, 0, 0,
|
||||
0, 0, 15, 15, 0, 0,
|
||||
62, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
3, 0, 0, 0, 1, 0,
|
||||
0, 0, 3, 3, 0, 0,
|
||||
67, 79, 76, 79, 82, 0,
|
||||
84, 69, 88, 67, 79, 79,
|
||||
82, 68, 0, 171, 79, 83,
|
||||
71, 78, 44, 0, 0, 0,
|
||||
1, 0, 0, 0, 8, 0,
|
||||
0, 0, 32, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
0, 0, 0, 0, 15, 0,
|
||||
0, 0, 83, 86, 95, 84,
|
||||
97, 114, 103, 101, 116, 0,
|
||||
171, 171
|
||||
};
|
Двоичный файл не отображается.
|
@ -1,325 +0,0 @@
|
|||
#if 0
|
||||
//
|
||||
// Generated by Microsoft (R) D3D Shader Disassembler
|
||||
//
|
||||
//
|
||||
// Input signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// COLOR 0 xyzw 0 NONE float xyzw
|
||||
// COLOR 1 xyzw 1 NONE float w
|
||||
// TEXCOORD 0 xy 2 NONE float xy
|
||||
//
|
||||
//
|
||||
// Output signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// SV_Target 0 xyzw 0 TARGET float xyzw
|
||||
//
|
||||
//
|
||||
// Constant buffer to DX9 shader constant mappings:
|
||||
//
|
||||
// Target Reg Buffer Start Reg # of Regs Data Conversion
|
||||
// ---------- ------- --------- --------- ----------------------
|
||||
// c0 cb0 1 2 ( FLT, FLT, FLT, FLT)
|
||||
//
|
||||
//
|
||||
// Sampler/Resource to DX9 shader sampler mappings:
|
||||
//
|
||||
// Target Sampler Source Sampler Source Resource
|
||||
// -------------- --------------- ----------------
|
||||
// s0 s0 t0
|
||||
//
|
||||
//
|
||||
// Level9 shader bytecode:
|
||||
//
|
||||
ps_2_0
|
||||
dcl t0 // pin<0,1,2,3>
|
||||
dcl t1 // pin<4,5,6,7>
|
||||
dcl t2.xy // pin<8,9>
|
||||
dcl_2d s0
|
||||
|
||||
#line 87 "D:\ATG\st_dev\Kits\DirectXTK\Src\Shaders\AlphaTestEffect.fx"
|
||||
texld r0, t2, s0
|
||||
mad r1.w, r0.w, t0.w, -c0.x
|
||||
mul r0, r0, t0 // ::color<0,1,2,3>
|
||||
cmp r1, r1.w, c0.w, c0.z
|
||||
texkill r1
|
||||
|
||||
#line 18 "D:\ATG\st_dev\Kits\DirectXTK\Src\Shaders\Common.fxh"
|
||||
mad r1.xyz, c1, r0.w, -r0
|
||||
mad r0.xyz, t1.w, r1, r0 // ApplyFog::color<0,1,2>
|
||||
mov oC0, r0 // ::PSAlphaTestLtGt<0,1,2,3>
|
||||
|
||||
// approximately 8 instruction slots used (1 texture, 7 arithmetic)
|
||||
ps_4_0
|
||||
dcl_constantbuffer CB0[3], immediateIndexed
|
||||
dcl_sampler s0, mode_default
|
||||
dcl_resource_texture2d (float,float,float,float) t0
|
||||
dcl_input_ps linear v0.xyzw
|
||||
dcl_input_ps linear v1.w
|
||||
dcl_input_ps linear v2.xy
|
||||
dcl_output o0.xyzw
|
||||
dcl_temps 2
|
||||
sample r0.xyzw, v2.xyxx, t0.xyzw, s0
|
||||
mul r0.xyzw, r0.xyzw, v0.xyzw
|
||||
lt r1.x, r0.w, cb0[1].x
|
||||
movc r1.x, r1.x, cb0[1].z, cb0[1].w
|
||||
lt r1.x, r1.x, l(0.000000)
|
||||
discard_nz r1.x
|
||||
mad r1.xyz, cb0[2].xyzx, r0.wwww, -r0.xyzx
|
||||
mad o0.xyz, v1.wwww, r1.xyzx, r0.xyzx
|
||||
mov o0.w, r0.w
|
||||
ret
|
||||
// Approximately 0 instruction slots used
|
||||
#endif
|
||||
|
||||
const BYTE AlphaTestEffect_PSAlphaTestLtGt[] =
|
||||
{
|
||||
68, 88, 66, 67, 98, 25,
|
||||
91, 169, 6, 124, 199, 15,
|
||||
68, 135, 172, 93, 172, 15,
|
||||
224, 179, 1, 0, 0, 0,
|
||||
180, 5, 0, 0, 4, 0,
|
||||
0, 0, 48, 0, 0, 0,
|
||||
136, 3, 0, 0, 24, 5,
|
||||
0, 0, 128, 5, 0, 0,
|
||||
65, 111, 110, 57, 80, 3,
|
||||
0, 0, 80, 3, 0, 0,
|
||||
0, 2, 255, 255, 28, 3,
|
||||
0, 0, 52, 0, 0, 0,
|
||||
1, 0, 40, 0, 0, 0,
|
||||
52, 0, 0, 0, 52, 0,
|
||||
1, 0, 36, 0, 0, 0,
|
||||
52, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 0, 2, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 2, 255, 255, 254, 255,
|
||||
151, 0, 68, 66, 85, 71,
|
||||
40, 0, 0, 0, 48, 2,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
2, 0, 0, 0, 152, 0,
|
||||
0, 0, 12, 0, 0, 0,
|
||||
160, 0, 0, 0, 4, 0,
|
||||
0, 0, 224, 1, 0, 0,
|
||||
0, 1, 0, 0, 68, 58,
|
||||
92, 65, 84, 71, 92, 115,
|
||||
116, 95, 100, 101, 118, 92,
|
||||
75, 105, 116, 115, 92, 68,
|
||||
105, 114, 101, 99, 116, 88,
|
||||
84, 75, 92, 83, 114, 99,
|
||||
92, 83, 104, 97, 100, 101,
|
||||
114, 115, 92, 65, 108, 112,
|
||||
104, 97, 84, 101, 115, 116,
|
||||
69, 102, 102, 101, 99, 116,
|
||||
46, 102, 120, 0, 68, 58,
|
||||
92, 65, 84, 71, 92, 115,
|
||||
116, 95, 100, 101, 118, 92,
|
||||
75, 105, 116, 115, 92, 68,
|
||||
105, 114, 101, 99, 116, 88,
|
||||
84, 75, 92, 83, 114, 99,
|
||||
92, 83, 104, 97, 100, 101,
|
||||
114, 115, 92, 67, 111, 109,
|
||||
109, 111, 110, 46, 102, 120,
|
||||
104, 0, 40, 0, 0, 0,
|
||||
100, 0, 0, 0, 0, 0,
|
||||
255, 255, 100, 2, 0, 0,
|
||||
0, 0, 255, 255, 112, 2,
|
||||
0, 0, 0, 0, 255, 255,
|
||||
124, 2, 0, 0, 0, 0,
|
||||
255, 255, 136, 2, 0, 0,
|
||||
87, 0, 0, 0, 148, 2,
|
||||
0, 0, 89, 0, 0, 0,
|
||||
164, 2, 0, 0, 87, 0,
|
||||
0, 0, 184, 2, 0, 0,
|
||||
89, 0, 0, 0, 200, 2,
|
||||
0, 0, 89, 0, 0, 0,
|
||||
220, 2, 0, 0, 18, 0,
|
||||
1, 0, 228, 2, 0, 0,
|
||||
18, 0, 1, 0, 248, 2,
|
||||
0, 0, 18, 0, 1, 0,
|
||||
12, 3, 0, 0, 80, 83,
|
||||
65, 108, 112, 104, 97, 84,
|
||||
101, 115, 116, 76, 116, 71,
|
||||
116, 0, 1, 0, 3, 0,
|
||||
1, 0, 4, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
11, 0, 0, 0, 0, 0,
|
||||
1, 0, 2, 0, 3, 0,
|
||||
65, 112, 112, 108, 121, 70,
|
||||
111, 103, 0, 99, 111, 108,
|
||||
111, 114, 0, 171, 1, 0,
|
||||
3, 0, 1, 0, 4, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 10, 0, 0, 0,
|
||||
0, 0, 1, 0, 2, 0,
|
||||
255, 255, 6, 0, 0, 0,
|
||||
0, 0, 1, 0, 2, 0,
|
||||
3, 0, 112, 105, 110, 0,
|
||||
68, 105, 102, 102, 117, 115,
|
||||
101, 0, 83, 112, 101, 99,
|
||||
117, 108, 97, 114, 0, 84,
|
||||
101, 120, 67, 111, 111, 114,
|
||||
100, 0, 171, 171, 1, 0,
|
||||
3, 0, 1, 0, 2, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 104, 1, 0, 0,
|
||||
60, 1, 0, 0, 112, 1,
|
||||
0, 0, 60, 1, 0, 0,
|
||||
121, 1, 0, 0, 132, 1,
|
||||
0, 0, 5, 0, 0, 0,
|
||||
1, 0, 10, 0, 1, 0,
|
||||
3, 0, 148, 1, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 2, 0, 3, 0,
|
||||
1, 0, 0, 0, 4, 0,
|
||||
5, 0, 6, 0, 7, 0,
|
||||
2, 0, 0, 0, 8, 0,
|
||||
9, 0, 255, 255, 255, 255,
|
||||
0, 0, 0, 0, 0, 1,
|
||||
0, 0, 16, 1, 0, 0,
|
||||
1, 0, 0, 0, 32, 1,
|
||||
0, 0, 44, 1, 0, 0,
|
||||
53, 1, 0, 0, 60, 1,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
76, 1, 0, 0, 0, 0,
|
||||
0, 0, 53, 1, 0, 0,
|
||||
60, 1, 0, 0, 1, 0,
|
||||
0, 0, 88, 1, 0, 0,
|
||||
0, 1, 0, 0, 100, 1,
|
||||
0, 0, 172, 1, 0, 0,
|
||||
3, 0, 0, 0, 188, 1,
|
||||
0, 0, 77, 105, 99, 114,
|
||||
111, 115, 111, 102, 116, 32,
|
||||
40, 82, 41, 32, 72, 76,
|
||||
83, 76, 32, 83, 104, 97,
|
||||
100, 101, 114, 32, 67, 111,
|
||||
109, 112, 105, 108, 101, 114,
|
||||
32, 49, 48, 46, 49, 0,
|
||||
31, 0, 0, 2, 0, 0,
|
||||
0, 128, 0, 0, 15, 176,
|
||||
31, 0, 0, 2, 0, 0,
|
||||
0, 128, 1, 0, 15, 176,
|
||||
31, 0, 0, 2, 0, 0,
|
||||
0, 128, 2, 0, 3, 176,
|
||||
31, 0, 0, 2, 0, 0,
|
||||
0, 144, 0, 8, 15, 160,
|
||||
66, 0, 0, 3, 0, 0,
|
||||
15, 128, 2, 0, 228, 176,
|
||||
0, 8, 228, 160, 4, 0,
|
||||
0, 4, 1, 0, 8, 128,
|
||||
0, 0, 255, 128, 0, 0,
|
||||
255, 176, 0, 0, 0, 161,
|
||||
5, 0, 0, 3, 0, 0,
|
||||
15, 128, 0, 0, 228, 128,
|
||||
0, 0, 228, 176, 88, 0,
|
||||
0, 4, 1, 0, 15, 128,
|
||||
1, 0, 255, 128, 0, 0,
|
||||
255, 160, 0, 0, 170, 160,
|
||||
65, 0, 0, 1, 1, 0,
|
||||
15, 128, 4, 0, 0, 4,
|
||||
1, 0, 7, 128, 1, 0,
|
||||
228, 160, 0, 0, 255, 128,
|
||||
0, 0, 228, 129, 4, 0,
|
||||
0, 4, 0, 0, 7, 128,
|
||||
1, 0, 255, 176, 1, 0,
|
||||
228, 128, 0, 0, 228, 128,
|
||||
1, 0, 0, 2, 0, 8,
|
||||
15, 128, 0, 0, 228, 128,
|
||||
255, 255, 0, 0, 83, 72,
|
||||
68, 82, 136, 1, 0, 0,
|
||||
64, 0, 0, 0, 98, 0,
|
||||
0, 0, 89, 0, 0, 4,
|
||||
70, 142, 32, 0, 0, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
90, 0, 0, 3, 0, 96,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
88, 24, 0, 4, 0, 112,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
85, 85, 0, 0, 98, 16,
|
||||
0, 3, 242, 16, 16, 0,
|
||||
0, 0, 0, 0, 98, 16,
|
||||
0, 3, 130, 16, 16, 0,
|
||||
1, 0, 0, 0, 98, 16,
|
||||
0, 3, 50, 16, 16, 0,
|
||||
2, 0, 0, 0, 101, 0,
|
||||
0, 3, 242, 32, 16, 0,
|
||||
0, 0, 0, 0, 104, 0,
|
||||
0, 2, 2, 0, 0, 0,
|
||||
69, 0, 0, 9, 242, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 16, 16, 0, 2, 0,
|
||||
0, 0, 70, 126, 16, 0,
|
||||
0, 0, 0, 0, 0, 96,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
56, 0, 0, 7, 242, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 14, 16, 0, 0, 0,
|
||||
0, 0, 70, 30, 16, 0,
|
||||
0, 0, 0, 0, 49, 0,
|
||||
0, 8, 18, 0, 16, 0,
|
||||
1, 0, 0, 0, 58, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
10, 128, 32, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
55, 0, 0, 11, 18, 0,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
10, 0, 16, 0, 1, 0,
|
||||
0, 0, 42, 128, 32, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 58, 128, 32, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 49, 0, 0, 7,
|
||||
18, 0, 16, 0, 1, 0,
|
||||
0, 0, 10, 0, 16, 0,
|
||||
1, 0, 0, 0, 1, 64,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
13, 0, 4, 3, 10, 0,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
50, 0, 0, 11, 114, 0,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
70, 130, 32, 0, 0, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
246, 15, 16, 0, 0, 0,
|
||||
0, 0, 70, 2, 16, 128,
|
||||
65, 0, 0, 0, 0, 0,
|
||||
0, 0, 50, 0, 0, 9,
|
||||
114, 32, 16, 0, 0, 0,
|
||||
0, 0, 246, 31, 16, 0,
|
||||
1, 0, 0, 0, 70, 2,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
70, 2, 16, 0, 0, 0,
|
||||
0, 0, 54, 0, 0, 5,
|
||||
130, 32, 16, 0, 0, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
0, 0, 0, 0, 62, 0,
|
||||
0, 1, 73, 83, 71, 78,
|
||||
96, 0, 0, 0, 3, 0,
|
||||
0, 0, 8, 0, 0, 0,
|
||||
80, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
3, 0, 0, 0, 0, 0,
|
||||
0, 0, 15, 15, 0, 0,
|
||||
80, 0, 0, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
3, 0, 0, 0, 1, 0,
|
||||
0, 0, 15, 8, 0, 0,
|
||||
86, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
3, 0, 0, 0, 2, 0,
|
||||
0, 0, 3, 3, 0, 0,
|
||||
67, 79, 76, 79, 82, 0,
|
||||
84, 69, 88, 67, 79, 79,
|
||||
82, 68, 0, 171, 79, 83,
|
||||
71, 78, 44, 0, 0, 0,
|
||||
1, 0, 0, 0, 8, 0,
|
||||
0, 0, 32, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
0, 0, 0, 0, 15, 0,
|
||||
0, 0, 83, 86, 95, 84,
|
||||
97, 114, 103, 101, 116, 0,
|
||||
171, 171
|
||||
};
|
Двоичный файл не отображается.
|
@ -1,264 +0,0 @@
|
|||
#if 0
|
||||
//
|
||||
// Generated by Microsoft (R) D3D Shader Disassembler
|
||||
//
|
||||
//
|
||||
// Input signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// COLOR 0 xyzw 0 NONE float xyzw
|
||||
// TEXCOORD 0 xy 1 NONE float xy
|
||||
//
|
||||
//
|
||||
// Output signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// SV_Target 0 xyzw 0 TARGET float xyzw
|
||||
//
|
||||
//
|
||||
// Constant buffer to DX9 shader constant mappings:
|
||||
//
|
||||
// Target Reg Buffer Start Reg # of Regs Data Conversion
|
||||
// ---------- ------- --------- --------- ----------------------
|
||||
// c0 cb0 1 1 ( FLT, FLT, FLT, FLT)
|
||||
//
|
||||
//
|
||||
// Sampler/Resource to DX9 shader sampler mappings:
|
||||
//
|
||||
// Target Sampler Source Sampler Source Resource
|
||||
// -------------- --------------- ----------------
|
||||
// s0 s0 t0
|
||||
//
|
||||
//
|
||||
// Level9 shader bytecode:
|
||||
//
|
||||
ps_2_0
|
||||
dcl t0 // pin<0,1,2,3>
|
||||
dcl t1.xy // pin<4,5>
|
||||
dcl_2d s0
|
||||
|
||||
#line 100 "D:\ATG\st_dev\Kits\DirectXTK\Src\Shaders\AlphaTestEffect.fx"
|
||||
texld r0, t1, s0
|
||||
mad r1.w, r0.w, t0.w, -c0.x
|
||||
mul r0, r0, t0 // ::color<0,1,2,3>
|
||||
mov oC0, r0 // ::PSAlphaTestLtGtNoFog<0,1,2,3>
|
||||
cmp r0, r1.w, c0.w, c0.z
|
||||
texkill r0
|
||||
|
||||
// approximately 6 instruction slots used (1 texture, 5 arithmetic)
|
||||
ps_4_0
|
||||
dcl_constantbuffer CB0[2], immediateIndexed
|
||||
dcl_sampler s0, mode_default
|
||||
dcl_resource_texture2d (float,float,float,float) t0
|
||||
dcl_input_ps linear v0.xyzw
|
||||
dcl_input_ps linear v1.xy
|
||||
dcl_output o0.xyzw
|
||||
dcl_temps 2
|
||||
sample r0.xyzw, v1.xyxx, t0.xyzw, s0
|
||||
mul r0.xyzw, r0.xyzw, v0.xyzw
|
||||
lt r1.x, r0.w, cb0[1].x
|
||||
mov o0.xyzw, r0.xyzw
|
||||
movc r0.x, r1.x, cb0[1].z, cb0[1].w
|
||||
lt r0.x, r0.x, l(0.000000)
|
||||
discard_nz r0.x
|
||||
ret
|
||||
// Approximately 0 instruction slots used
|
||||
#endif
|
||||
|
||||
const BYTE AlphaTestEffect_PSAlphaTestLtGtNoFog[] =
|
||||
{
|
||||
68, 88, 66, 67, 170, 255,
|
||||
28, 65, 185, 81, 67, 189,
|
||||
96, 124, 184, 113, 42, 100,
|
||||
175, 111, 1, 0, 0, 0,
|
||||
128, 4, 0, 0, 4, 0,
|
||||
0, 0, 48, 0, 0, 0,
|
||||
200, 2, 0, 0, 252, 3,
|
||||
0, 0, 76, 4, 0, 0,
|
||||
65, 111, 110, 57, 144, 2,
|
||||
0, 0, 144, 2, 0, 0,
|
||||
0, 2, 255, 255, 92, 2,
|
||||
0, 0, 52, 0, 0, 0,
|
||||
1, 0, 40, 0, 0, 0,
|
||||
52, 0, 0, 0, 52, 0,
|
||||
1, 0, 36, 0, 0, 0,
|
||||
52, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 2, 255, 255, 254, 255,
|
||||
116, 0, 68, 66, 85, 71,
|
||||
40, 0, 0, 0, 164, 1,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 100, 0,
|
||||
0, 0, 9, 0, 0, 0,
|
||||
104, 0, 0, 0, 3, 0,
|
||||
0, 0, 104, 1, 0, 0,
|
||||
176, 0, 0, 0, 68, 58,
|
||||
92, 65, 84, 71, 92, 115,
|
||||
116, 95, 100, 101, 118, 92,
|
||||
75, 105, 116, 115, 92, 68,
|
||||
105, 114, 101, 99, 116, 88,
|
||||
84, 75, 92, 83, 114, 99,
|
||||
92, 83, 104, 97, 100, 101,
|
||||
114, 115, 92, 65, 108, 112,
|
||||
104, 97, 84, 101, 115, 116,
|
||||
69, 102, 102, 101, 99, 116,
|
||||
46, 102, 120, 0, 40, 0,
|
||||
0, 0, 0, 0, 255, 255,
|
||||
216, 1, 0, 0, 0, 0,
|
||||
255, 255, 228, 1, 0, 0,
|
||||
0, 0, 255, 255, 240, 1,
|
||||
0, 0, 100, 0, 0, 0,
|
||||
252, 1, 0, 0, 102, 0,
|
||||
0, 0, 12, 2, 0, 0,
|
||||
100, 0, 0, 0, 32, 2,
|
||||
0, 0, 100, 0, 0, 0,
|
||||
48, 2, 0, 0, 102, 0,
|
||||
0, 0, 60, 2, 0, 0,
|
||||
102, 0, 0, 0, 80, 2,
|
||||
0, 0, 80, 83, 65, 108,
|
||||
112, 104, 97, 84, 101, 115,
|
||||
116, 76, 116, 71, 116, 78,
|
||||
111, 70, 111, 103, 0, 171,
|
||||
171, 171, 1, 0, 3, 0,
|
||||
1, 0, 4, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
6, 0, 0, 0, 0, 0,
|
||||
1, 0, 2, 0, 3, 0,
|
||||
99, 111, 108, 111, 114, 0,
|
||||
171, 171, 1, 0, 3, 0,
|
||||
1, 0, 4, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
5, 0, 0, 0, 0, 0,
|
||||
1, 0, 2, 0, 3, 0,
|
||||
112, 105, 110, 0, 68, 105,
|
||||
102, 102, 117, 115, 101, 0,
|
||||
84, 101, 120, 67, 111, 111,
|
||||
114, 100, 0, 171, 171, 171,
|
||||
1, 0, 3, 0, 1, 0,
|
||||
2, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 12, 1,
|
||||
0, 0, 236, 0, 0, 0,
|
||||
20, 1, 0, 0, 32, 1,
|
||||
0, 0, 5, 0, 0, 0,
|
||||
1, 0, 6, 0, 1, 0,
|
||||
2, 0, 48, 1, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 2, 0, 3, 0,
|
||||
1, 0, 0, 0, 4, 0,
|
||||
5, 0, 255, 255, 255, 255,
|
||||
0, 0, 0, 0, 176, 0,
|
||||
0, 0, 200, 0, 0, 0,
|
||||
1, 0, 0, 0, 216, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
228, 0, 0, 0, 236, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
252, 0, 0, 0, 176, 0,
|
||||
0, 0, 8, 1, 0, 0,
|
||||
64, 1, 0, 0, 2, 0,
|
||||
0, 0, 80, 1, 0, 0,
|
||||
77, 105, 99, 114, 111, 115,
|
||||
111, 102, 116, 32, 40, 82,
|
||||
41, 32, 72, 76, 83, 76,
|
||||
32, 83, 104, 97, 100, 101,
|
||||
114, 32, 67, 111, 109, 112,
|
||||
105, 108, 101, 114, 32, 49,
|
||||
48, 46, 49, 0, 31, 0,
|
||||
0, 2, 0, 0, 0, 128,
|
||||
0, 0, 15, 176, 31, 0,
|
||||
0, 2, 0, 0, 0, 128,
|
||||
1, 0, 3, 176, 31, 0,
|
||||
0, 2, 0, 0, 0, 144,
|
||||
0, 8, 15, 160, 66, 0,
|
||||
0, 3, 0, 0, 15, 128,
|
||||
1, 0, 228, 176, 0, 8,
|
||||
228, 160, 4, 0, 0, 4,
|
||||
1, 0, 8, 128, 0, 0,
|
||||
255, 128, 0, 0, 255, 176,
|
||||
0, 0, 0, 161, 5, 0,
|
||||
0, 3, 0, 0, 15, 128,
|
||||
0, 0, 228, 128, 0, 0,
|
||||
228, 176, 1, 0, 0, 2,
|
||||
0, 8, 15, 128, 0, 0,
|
||||
228, 128, 88, 0, 0, 4,
|
||||
0, 0, 15, 128, 1, 0,
|
||||
255, 128, 0, 0, 255, 160,
|
||||
0, 0, 170, 160, 65, 0,
|
||||
0, 1, 0, 0, 15, 128,
|
||||
255, 255, 0, 0, 83, 72,
|
||||
68, 82, 44, 1, 0, 0,
|
||||
64, 0, 0, 0, 75, 0,
|
||||
0, 0, 89, 0, 0, 4,
|
||||
70, 142, 32, 0, 0, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
90, 0, 0, 3, 0, 96,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
88, 24, 0, 4, 0, 112,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
85, 85, 0, 0, 98, 16,
|
||||
0, 3, 242, 16, 16, 0,
|
||||
0, 0, 0, 0, 98, 16,
|
||||
0, 3, 50, 16, 16, 0,
|
||||
1, 0, 0, 0, 101, 0,
|
||||
0, 3, 242, 32, 16, 0,
|
||||
0, 0, 0, 0, 104, 0,
|
||||
0, 2, 2, 0, 0, 0,
|
||||
69, 0, 0, 9, 242, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 16, 16, 0, 1, 0,
|
||||
0, 0, 70, 126, 16, 0,
|
||||
0, 0, 0, 0, 0, 96,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
56, 0, 0, 7, 242, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 14, 16, 0, 0, 0,
|
||||
0, 0, 70, 30, 16, 0,
|
||||
0, 0, 0, 0, 49, 0,
|
||||
0, 8, 18, 0, 16, 0,
|
||||
1, 0, 0, 0, 58, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
10, 128, 32, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
54, 0, 0, 5, 242, 32,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 14, 16, 0, 0, 0,
|
||||
0, 0, 55, 0, 0, 11,
|
||||
18, 0, 16, 0, 0, 0,
|
||||
0, 0, 10, 0, 16, 0,
|
||||
1, 0, 0, 0, 42, 128,
|
||||
32, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 58, 128,
|
||||
32, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 49, 0,
|
||||
0, 7, 18, 0, 16, 0,
|
||||
0, 0, 0, 0, 10, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
1, 64, 0, 0, 0, 0,
|
||||
0, 0, 13, 0, 4, 3,
|
||||
10, 0, 16, 0, 0, 0,
|
||||
0, 0, 62, 0, 0, 1,
|
||||
73, 83, 71, 78, 72, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
8, 0, 0, 0, 56, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 3, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
15, 15, 0, 0, 62, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 3, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
3, 3, 0, 0, 67, 79,
|
||||
76, 79, 82, 0, 84, 69,
|
||||
88, 67, 79, 79, 82, 68,
|
||||
0, 171, 79, 83, 71, 78,
|
||||
44, 0, 0, 0, 1, 0,
|
||||
0, 0, 8, 0, 0, 0,
|
||||
32, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
3, 0, 0, 0, 0, 0,
|
||||
0, 0, 15, 0, 0, 0,
|
||||
83, 86, 95, 84, 97, 114,
|
||||
103, 101, 116, 0, 171, 171
|
||||
};
|
Двоичный файл не отображается.
Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше
Загрузка…
Ссылка в новой задаче