• 大小: 2.49MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-08-13
  • 语言: 其他
  • 标签: CubeMapping  d3d11  

资源简介

d3d11中通过cube mapping实现天空盒效果。包含全部源代码及可执行程序。 操作方法:通过鼠标左键旋转镜头。

资源截图

代码片段和文件信息

#include “Effects.h“
#include 
#include 

using namespace std;

bool Effect::Init(ID3D11Device *devicestd::wstring fileName)
{
vector shader;
if(!ReadBinaryFile(fileNameshader))
return false;

if(FAILED(D3DX11CreateEffectFromMemory(&shader[0]shader.size()0device&fx)))
{
MessageBox(NULLL“Create Effect failed!“L“Error“MB_OK);
return false;
}

return true;
}

bool BasicColorEffect::Init(ID3D11Device *devicestd::wstring fileName)
{
if(!Effect::Init(devicefileName))
return false;

fxWorldViewProj = fx->GetVariableByName(“g_worldViewProj“)->AsMatrix();
fxBasicColorTech = fx->GetTechniqueByName(“BasicColor“);

return true;
}

bool BasicEffect::Init(ID3D11Device *device std::wstring fileName)
{
if(!Effect::Init(devicefileName))
return false;

fxWorldViewProj = fx->GetVariableByName(“g_worldViewProj“)->AsMatrix();
fxWorld = fx->GetVariableByName(“g_world“)->AsMatrix();
fxWorldInvTranspose = fx->GetVariableByName(“g_worldInvTranspose“)->AsMatrix();
fxMaterial = fx->GetVariableByName(“g_material“);
fxTexTrans = fx->GetVariableByName(“g_texTrans“)->AsMatrix();
fxShadowTrans = fx->GetVariableByName(“g_shadowTrans“)->AsMatrix();
fxSR = fx->GetVariableByName(“g_tex“)->AsShaderResource();
fxShadowMap = fx->GetVariableByName(“g_shadowMap“)->AsShaderResource();

fxDirLights = fx->GetVariableByName(“g_lights“);
fxEyePos = fx->GetVariableByName(“g_eyePos“);
fxFogStart = fx->GetVariableByName(“g_fogStart“)->AsScalar();
fxFogRange = fx->GetVariableByName(“g_fogRange“)->AsScalar();
fxFogColor = fx->GetVariableByName(“g_fogColor“)->AsVector();


fxLight1Tech = fx->GetTechniqueByName(“Light1“);
fxLight2Tech = fx->GetTechniqueByName(“Light2“);
fxLight3Tech = fx->GetTechniqueByName(“Light3“);
fxLight1TexTech = fx->GetTechniqueByName(“Light1Tex“);
fxLight2TexTech = fx->GetTechniqueByName(“Light2Tex“);
fxLight3TexTech = fx->GetTechniqueByName(“Light3Tex“);
fxLight1TexClipTech = fx->GetTechniqueByName(“Light1TexClip“);
fxLight2TexClipTech = fx->GetTechniqueByName(“Light2TexClip“);
fxLight3TexClipTech = fx->GetTechniqueByName(“Light3TexClip“);
fxLight1FogTech = fx->GetTechniqueByName(“Light1Fog“);
fxLight2FogTech = fx->GetTechniqueByName(“Light2Fog“);
fxLight3FogTech = fx->GetTechniqueByName(“Light3Fog“);
fxLight1TexFogTech = fx->GetTechniqueByName(“Light1TexFog“);
fxLight2TexFogTech = fx->GetTechniqueByName(“Light2TexFog“);
fxLight3TexFogTech = fx->GetTechniqueByName(“Light3TexFog“);
fxLight1TexClipFogTech = fx->GetTechniqueByName(“Light1TexClipFog“);
fxLight2TexClipFogTech = fx->GetTechniqueByName(“Light2TexClipFog“);
fxLight3TexClipFogTech = fx->GetTechniqueByName(“Light3TexClipFog“);
fxLight1FogClipTech = fx->GetTechniqueByName(“Light1FogClip“);
fxLight2FogClipTech = fx->GetTechniqueByName(“Light2FogClip“);
fxLight3FogClipTech = fx->GetTechniqueByName(“Light3FogClip“);
fxLight1TexFogClipTech = fx->GetTechnique

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2013-02-13 07:50  CubeMapping\
     目录           0  2013-02-13 07:46  CubeMapping\Common\
     文件         484  2013-01-18 22:09  CubeMapping\Common\AppUtil.cpp
     文件        1522  2013-01-18 22:10  CubeMapping\Common\AppUtil.h
     文件        2890  2013-01-20 04:52  CubeMapping\Common\Camera.cpp
     文件        2297  2013-02-03 22:43  CubeMapping\Common\Camera.h
     文件       14207  2013-01-18 22:08  CubeMapping\Common\GeometryGens.cpp
     文件        1272  2013-01-18 21:13  CubeMapping\Common\GeometryGens.h
     文件        1119  2013-01-18 22:15  CubeMapping\Common\Lights.h
     文件        6865  2013-01-18 20:33  CubeMapping\Common\RenderStates.cpp
     文件         981  2013-01-18 20:31  CubeMapping\Common\RenderStates.h
     文件        1993  2013-01-18 20:28  CubeMapping\Common\Timer.cpp
     文件         808  2013-01-18 20:21  CubeMapping\Common\Timer.h
     文件       11598  2013-02-03 22:35  CubeMapping\Common\WinApp.cpp
     文件        2417  2013-02-03 22:34  CubeMapping\Common\WinApp.h
     文件      148647  2013-01-31 02:41  CubeMapping\Common\xnacollision.cpp
     文件        9295  2010-05-14 08:48  CubeMapping\Common\xnacollision.h
     文件      266240  2013-02-13 07:47  CubeMapping\CubeMapping.exe
     文件         888  2013-02-05 00:57  CubeMapping\CubeMapping.sln
     文件        6866  2013-02-08 06:59  CubeMapping\CubeMapping.vcxproj
     文件        3375  2013-02-06 06:26  CubeMapping\CubeMapping.vcxproj.filters
     文件        5272  2013-02-08 06:25  CubeMapping\Effects.cpp
     文件        6936  2013-02-08 06:02  CubeMapping\Effects.h
     目录           0  2013-02-13 07:51  CubeMapping\FX\
     文件        9751  2013-02-04 01:53  CubeMapping\FX\Basic.fx
     文件      147379  2013-02-04 01:59  CubeMapping\FX\Basic.fxo
     文件        4891  2013-02-04 01:48  CubeMapping\FX\Light.fx
     文件         956  2013-02-13 07:33  CubeMapping\FX\SkyBox.fx
     文件        2414  2013-02-08 06:49  CubeMapping\FX\SkyBox.fxo
     文件        1599  2013-02-08 05:20  CubeMapping\Inputs.cpp
     文件         904  2013-02-08 05:16  CubeMapping\Inputs.h
............此处省略3个文件信息

评论

共有 条评论