add texture mapping
This commit is contained in:
@@ -1,13 +1,29 @@
|
|||||||
#include "Material.h"
|
#include "Material.h"
|
||||||
#include "Utilities.h"
|
#include "Utilities.h"
|
||||||
|
|
||||||
|
#include "WICTextureLoader9.h"
|
||||||
|
|
||||||
|
using namespace DirectX;
|
||||||
|
|
||||||
UINT Material::init(IDirect3DDevice9* pD3DDevice, LPCWSTR textureFileName)
|
UINT Material::init(IDirect3DDevice9* pD3DDevice, LPCWSTR textureFileName)
|
||||||
{
|
{
|
||||||
|
// load texture
|
||||||
|
HRESULT hr = CreateWICTextureFromFile(pD3DDevice, textureFileName, &_pTexture, 0, WIC_LOADER_MIP_AUTOGEN);
|
||||||
|
CheckFailed(hr, 600);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Material::render(IDirect3DDevice9* pD3DDevice)
|
void Material::render(IDirect3DDevice9* pD3DDevice)
|
||||||
{
|
{
|
||||||
|
// set texture
|
||||||
|
pD3DDevice->SetTexture(0, _pTexture);
|
||||||
|
|
||||||
|
// set sampler state
|
||||||
|
pD3DDevice->SetSamplerState(0, D3DSAMP_ADDRESSU, D3DTADDRESS_BORDER);
|
||||||
|
pD3DDevice->SetSamplerState(0, D3DSAMP_BORDERCOLOR, D3DCOLOR_XRGB(255, 0, 255));
|
||||||
|
pD3DDevice->SetSamplerState(0, D3DSAMP_MIPFILTER, D3DTEXF_POINT);
|
||||||
|
pD3DDevice->SetSamplerState(0, D3DSAMP_MAXMIPLEVEL, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Material::deInit()
|
void Material::deInit()
|
||||||
|
|||||||
+1
-1
@@ -9,6 +9,6 @@ public:
|
|||||||
void deInit();
|
void deInit();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
IDirect3DTexture9* _texture = {};
|
IDirect3DTexture9* _pTexture = {};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
+17
-17
@@ -31,12 +31,12 @@ void Mesh::update(FLOAT dt)
|
|||||||
static FLOAT x = 0.0f;
|
static FLOAT x = 0.0f;
|
||||||
static FLOAT y = 0.0f;
|
static FLOAT y = 0.0f;
|
||||||
static FLOAT z = 0.0f;
|
static FLOAT z = 0.0f;
|
||||||
static FLOAT pitch = XM_PIDIV4;
|
static FLOAT pitch = 0.0f;
|
||||||
static FLOAT yaw = 0.0f;
|
static FLOAT yaw = 0.0f;
|
||||||
static FLOAT roll = XM_PIDIV4;
|
static FLOAT roll = 0.0f;
|
||||||
static FLOAT scale = 1.0f;
|
static FLOAT scale = 1.0f;
|
||||||
|
|
||||||
yaw += 1.0f * dt;
|
//yaw += 1.0f * dt;
|
||||||
|
|
||||||
FLOAT move = 1.0f * dt;
|
FLOAT move = 1.0f * dt;
|
||||||
|
|
||||||
@@ -123,10 +123,10 @@ UINT Mesh::createVertexBuffer(IDirect3DDevice9* pD3DDevice)
|
|||||||
|
|
||||||
//// quad with trianglefan
|
//// quad with trianglefan
|
||||||
//// quad with trianglelist & index buffer
|
//// quad with trianglelist & index buffer
|
||||||
//pVertices[0] = Vertex(-0.5f, 0.5f, 0.0f);
|
pVertices[0] = Vertex(-0.5f, 0.5f, 0.0f, 0.0f, 0.0f);
|
||||||
//pVertices[1] = Vertex(0.5f, 0.5f, 0.0f);
|
pVertices[1] = Vertex(0.5f, 0.5f, 0.0f, 1.0f, 0.0f);
|
||||||
//pVertices[2] = Vertex(0.5f, -0.5f, 0.0f);
|
pVertices[2] = Vertex(0.5f, -0.5f, 0.0f, 1.0f, 1.0f);
|
||||||
//pVertices[3] = Vertex(-0.5f, -0.5f, 0.0f);
|
pVertices[3] = Vertex(-0.5f, -0.5f, 0.0f, 0.0f, 1.0f);
|
||||||
|
|
||||||
//// cube with color
|
//// cube with color
|
||||||
//// front
|
//// front
|
||||||
@@ -142,17 +142,17 @@ UINT Mesh::createVertexBuffer(IDirect3DDevice9* pD3DDevice)
|
|||||||
//pVertices[7] = Vertex(0.5f, -0.5f, 0.5f, 200, 200, 200);
|
//pVertices[7] = Vertex(0.5f, -0.5f, 0.5f, 200, 200, 200);
|
||||||
|
|
||||||
// cube with uv
|
// cube with uv
|
||||||
// front
|
//// front
|
||||||
pVertices[0] = Vertex(-0.5f, 0.5f, -0.5f, 0.0f, 0.0f);
|
//pVertices[0] = Vertex(-0.5f, 0.5f, -0.5f, 0.0f, 0.0f);
|
||||||
pVertices[1] = Vertex(0.5f, 0.5f, -0.5f, 1.0f, 0.0f);
|
//pVertices[1] = Vertex(0.5f, 0.5f, -0.5f, 1.0f, 0.0f);
|
||||||
pVertices[2] = Vertex(0.5f, -0.5f, -0.5f, 1.0f, 1.0f);
|
//pVertices[2] = Vertex(0.5f, -0.5f, -0.5f, 1.0f, 1.0f);
|
||||||
pVertices[3] = Vertex(-0.5f, -0.5f, -0.5f, 0.0f, 1.0f);
|
//pVertices[3] = Vertex(-0.5f, -0.5f, -0.5f, 0.0f, 1.0f);
|
||||||
|
|
||||||
// back
|
//// back
|
||||||
pVertices[4] = Vertex(0.5f, 0.5f, 0.5f, 0.0f, 0.0f);
|
//pVertices[4] = Vertex(0.5f, 0.5f, 0.5f, 0.0f, 0.0f);
|
||||||
pVertices[5] = Vertex(-0.5f, 0.5f, 0.5f, 1.0f, 0.0f);
|
//pVertices[5] = Vertex(-0.5f, 0.5f, 0.5f, 1.0f, 0.0f);
|
||||||
pVertices[6] = Vertex(-0.5f, -0.5f, 0.5f, 1.0f, 1.0f);
|
//pVertices[6] = Vertex(-0.5f, -0.5f, 0.5f, 1.0f, 1.0f);
|
||||||
pVertices[7] = Vertex(0.5f, -0.5f, 0.5f, 0.0f, 1.0f);
|
//pVertices[7] = Vertex(0.5f, -0.5f, 0.5f, 0.0f, 1.0f);
|
||||||
|
|
||||||
hr = _pVertexBuffer->Unlock();
|
hr = _pVertexBuffer->Unlock();
|
||||||
CheckFailed(hr, 320);
|
CheckFailed(hr, 320);
|
||||||
|
|||||||
Reference in New Issue
Block a user