Compare commits
No commits in common. "9058d453ed7496d91a95c31182aa2fa75f96ef68" and "bbe99240d6f0b491eb386b799cf4f17cfd108d45" have entirely different histories.
9058d453ed
...
bbe99240d6
@ -17,19 +17,19 @@ SamplerState samLinear {
|
||||
struct VS_INPUT
|
||||
{
|
||||
float4 Pos : POSITION;
|
||||
float4 Weight : TEXCOORD0;
|
||||
float4 Joint : TEXCOORD1;
|
||||
float3 Normal : NORMAL;
|
||||
float2 Tex : TEXCOORD0;
|
||||
float4 Weight : BLENDWEIGHT0;
|
||||
float4 Joint : BLENDINDICES0;
|
||||
float2 Tex : TEXCOORD2;
|
||||
};
|
||||
|
||||
struct PS_INPUT
|
||||
{
|
||||
float4 Pos : SV_POSITION;
|
||||
float3 Normal : NORMAL;
|
||||
float2 Tex : TEXCOORD0;
|
||||
float4 Weight : BLENDWEIGHT0;
|
||||
float4 Joint : BLENDINDICES0;
|
||||
float4 Weight : TEXCOORD0;
|
||||
float4 Joint : TEXCOORD1;
|
||||
float3 Normal : TEXCOORD2;
|
||||
float2 Tex : TEXCOORD3;
|
||||
};
|
||||
|
||||
PS_INPUT VS(VS_INPUT input)
|
||||
|
||||
@ -48,16 +48,12 @@ HRESULT InitInput(HINSTANCE hInstance)
|
||||
void UpdateInput()
|
||||
{
|
||||
XINPUT_STATE state;
|
||||
DWORD ret;
|
||||
for (DWORD i = 0; i < 4; i++) {
|
||||
ret = g_XInputGetState(i, &state);
|
||||
if (ret == ERROR_SUCCESS) {
|
||||
break;
|
||||
DWORD ret = g_XInputGetState(i, &state);
|
||||
if (ret != ERROR_SUCCESS) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
if (ret != ERROR_SUCCESS) {
|
||||
g_Joystate = {};
|
||||
return;
|
||||
break;
|
||||
}
|
||||
|
||||
const float trigger = 1.0f / 255.0f;
|
||||
|
||||
70
src/main.cpp
70
src/main.cpp
@ -389,32 +389,6 @@ HRESULT LoadMesh()
|
||||
return hr;
|
||||
}
|
||||
|
||||
// normals
|
||||
bd.Usage = D3D10_USAGE_IMMUTABLE;
|
||||
bd.ByteWidth = mesh->normal_size;
|
||||
bd.BindFlags = D3D10_BIND_VERTEX_BUFFER;
|
||||
bd.CPUAccessFlags = 0;
|
||||
bd.MiscFlags = 0;
|
||||
initData.pSysMem = mesh->normal;
|
||||
hr = g_pd3dDevice->CreateBuffer(&bd, &initData, &g_pVertexBuffers[1]);
|
||||
if (FAILED(hr)) {
|
||||
print("CreateBuffer\n");
|
||||
return hr;
|
||||
}
|
||||
|
||||
// texcoords
|
||||
bd.Usage = D3D10_USAGE_IMMUTABLE;
|
||||
bd.ByteWidth = mesh->texcoord_0_size;
|
||||
bd.BindFlags = D3D10_BIND_VERTEX_BUFFER;
|
||||
bd.CPUAccessFlags = 0;
|
||||
bd.MiscFlags = 0;
|
||||
initData.pSysMem = mesh->texcoord_0;
|
||||
hr = g_pd3dDevice->CreateBuffer(&bd, &initData, &g_pVertexBuffers[2]);
|
||||
if (FAILED(hr)) {
|
||||
print("CreateBuffer\n");
|
||||
return hr;
|
||||
}
|
||||
|
||||
// weights
|
||||
bd.Usage = D3D10_USAGE_IMMUTABLE;
|
||||
bd.ByteWidth = mesh->weights_0_size;
|
||||
@ -422,7 +396,7 @@ HRESULT LoadMesh()
|
||||
bd.CPUAccessFlags = 0;
|
||||
bd.MiscFlags = 0;
|
||||
initData.pSysMem = mesh->weights_0;
|
||||
hr = g_pd3dDevice->CreateBuffer(&bd, &initData, &g_pVertexBuffers[3]);
|
||||
hr = g_pd3dDevice->CreateBuffer(&bd, &initData, &g_pVertexBuffers[1]);
|
||||
if (FAILED(hr)) {
|
||||
print("CreateBuffer\n");
|
||||
return hr;
|
||||
@ -435,6 +409,32 @@ HRESULT LoadMesh()
|
||||
bd.CPUAccessFlags = 0;
|
||||
bd.MiscFlags = 0;
|
||||
initData.pSysMem = mesh->joints_0;
|
||||
hr = g_pd3dDevice->CreateBuffer(&bd, &initData, &g_pVertexBuffers[2]);
|
||||
if (FAILED(hr)) {
|
||||
print("CreateBuffer\n");
|
||||
return hr;
|
||||
}
|
||||
|
||||
// normals
|
||||
bd.Usage = D3D10_USAGE_IMMUTABLE;
|
||||
bd.ByteWidth = mesh->normal_size;
|
||||
bd.BindFlags = D3D10_BIND_VERTEX_BUFFER;
|
||||
bd.CPUAccessFlags = 0;
|
||||
bd.MiscFlags = 0;
|
||||
initData.pSysMem = mesh->normal;
|
||||
hr = g_pd3dDevice->CreateBuffer(&bd, &initData, &g_pVertexBuffers[3]);
|
||||
if (FAILED(hr)) {
|
||||
print("CreateBuffer\n");
|
||||
return hr;
|
||||
}
|
||||
|
||||
// texcoords
|
||||
bd.Usage = D3D10_USAGE_IMMUTABLE;
|
||||
bd.ByteWidth = mesh->texcoord_0_size;
|
||||
bd.BindFlags = D3D10_BIND_VERTEX_BUFFER;
|
||||
bd.CPUAccessFlags = 0;
|
||||
bd.MiscFlags = 0;
|
||||
initData.pSysMem = mesh->texcoord_0;
|
||||
hr = g_pd3dDevice->CreateBuffer(&bd, &initData, &g_pVertexBuffers[4]);
|
||||
if (FAILED(hr)) {
|
||||
print("CreateBuffer\n");
|
||||
@ -1010,7 +1010,7 @@ HRESULT InitDirect3DDevice()
|
||||
D3D10_CREATE_DEVICE_DEBUG,
|
||||
(D3D10_CREATE_DEVICE_FLAG)0,
|
||||
};
|
||||
UINT numFlags = (sizeof (flags)) / (sizeof (flags[0]));
|
||||
UINT numFlags = (sizeof (flags)) / (sizeof (flags[0]));
|
||||
|
||||
HRESULT hr;
|
||||
D3D10_DRIVER_TYPE driverType = D3D10_DRIVER_TYPE_NULL;
|
||||
@ -1108,11 +1108,11 @@ HRESULT InitDirect3DDevice()
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
D3D10_INPUT_ELEMENT_DESC layout[] = {
|
||||
{"POSITION" , 0, DXGI_FORMAT_R32G32B32_FLOAT, 0, 0, D3D10_INPUT_PER_VERTEX_DATA, 0},
|
||||
{"NORMAL" , 0, DXGI_FORMAT_R32G32B32_FLOAT, 1, 0, D3D10_INPUT_PER_VERTEX_DATA, 0},
|
||||
{"TEXCOORD" , 0, DXGI_FORMAT_R32G32_FLOAT, 2, 0, D3D10_INPUT_PER_VERTEX_DATA, 0},
|
||||
{"BLENDWEIGHT" , 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 3, 0, D3D10_INPUT_PER_VERTEX_DATA, 0},
|
||||
{"BLENDINDICES", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 4, 0, D3D10_INPUT_PER_VERTEX_DATA, 0},
|
||||
{"POSITION", 0, DXGI_FORMAT_R32G32B32_FLOAT, 0, 0, D3D10_INPUT_PER_VERTEX_DATA, 0},
|
||||
{"TEXCOORD", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 1, 0, D3D10_INPUT_PER_VERTEX_DATA, 0},
|
||||
{"TEXCOORD", 1, DXGI_FORMAT_R32G32B32A32_FLOAT, 2, 0, D3D10_INPUT_PER_VERTEX_DATA, 0},
|
||||
{"NORMAL" , 0, DXGI_FORMAT_R32G32B32_FLOAT, 3, 0, D3D10_INPUT_PER_VERTEX_DATA, 0},
|
||||
{"TEXCOORD", 2, DXGI_FORMAT_R32G32_FLOAT, 4, 0, D3D10_INPUT_PER_VERTEX_DATA, 0},
|
||||
};
|
||||
UINT numElements = (sizeof (layout)) / (sizeof (layout[0]));
|
||||
|
||||
@ -1388,10 +1388,10 @@ void RenderModel(float t)
|
||||
|
||||
UINT stride[] = {
|
||||
(sizeof (mesh->position[0])),
|
||||
(sizeof (mesh->normal[0])),
|
||||
(sizeof (mesh->texcoord_0[0])),
|
||||
(sizeof (mesh->weights_0[0])),
|
||||
(sizeof (mesh->joints_0[0])),
|
||||
(sizeof (mesh->normal[0])),
|
||||
(sizeof (mesh->texcoord_0[0])),
|
||||
};
|
||||
UINT offset[] = { 0, 0, 0, 0, 0 };
|
||||
g_pd3dDevice->IASetInputLayout(g_pVertexLayout);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user