summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/BoundingBox.cpp
diff options
context:
space:
mode:
authorRyan Houdek <Sonicadvance1@gmail.com>2015-05-25 08:46:12 -0400
committerRyan Houdek <Sonicadvance1@gmail.com>2015-05-25 08:46:12 -0400
commit69963dc4b0383732b0c55787845c958033242d25 (patch)
tree897a37600d0465ca8cbd6623e9fb6846d13d7e17 /Source/Core/VideoCommon/BoundingBox.cpp
parent5e58d178e08ddf7115c991a6462ff73159d9e453 (diff)
parentfc76d0df38b8324c876f9fd8a1594f1df5b60ba7 (diff)
Merge pull request #2274 from degasus/disable_bbox
Disable bbox
Diffstat (limited to 'Source/Core/VideoCommon/BoundingBox.cpp')
-rw-r--r--Source/Core/VideoCommon/BoundingBox.cpp121
1 files changed, 0 insertions, 121 deletions
diff --git a/Source/Core/VideoCommon/BoundingBox.cpp b/Source/Core/VideoCommon/BoundingBox.cpp
index 51c4511b7e..f1bf5d066e 100644
--- a/Source/Core/VideoCommon/BoundingBox.cpp
+++ b/Source/Core/VideoCommon/BoundingBox.cpp
@@ -18,127 +18,6 @@ namespace BoundingBox
// External vars
bool active = false;
u16 coords[4] = { 0x80, 0xA0, 0x80, 0xA0 };
-u8 posMtxIdx;
-u8 texMtxIdx[8];
-
-
-// Internal vars
-static SetupUnit vtxUnit;
-static VAT myVat;
-static u8 * bufferPos;
-static TVtxDesc vertexDesc;
-static PortableVertexDeclaration vertexDecl;
-
-// Gets the pointer to the current buffer position
-void LOADERDECL SetVertexBufferPosition(VertexLoader* loader)
-{
- bufferPos = g_vertex_manager_write_ptr;
-}
-
-// Prepares the bounding box for new primitive data
-void Prepare(const VAT & vat, int primitive, const TVtxDesc & vtxDesc, const PortableVertexDeclaration & vtxDecl)
-{
- if (!active)
- return;
-
- myVat = vat;
- vertexDesc = vtxDesc;
- vertexDecl = vtxDecl;
-
- vtxUnit.Init(primitive);
-
- // Initialize the SW renderer
- static bool SWinit = false;
-
- if (!SWinit)
- {
- Clipper::Init();
- Rasterizer::Init();
- SWinit = true;
- }
-
- // Update SW renderer values
- Clipper::SetViewOffset();
- Rasterizer::SetScissor();
-
- for (u8 i = 0; i < 4; ++i)
- {
- Rasterizer::SetTevReg(i, 0, true, (s16)PixelShaderManager::constants.kcolors[i][0]);
- Rasterizer::SetTevReg(i, 1, true, (s16)PixelShaderManager::constants.kcolors[i][1]);
- Rasterizer::SetTevReg(i, 2, true, (s16)PixelShaderManager::constants.kcolors[i][2]);
- Rasterizer::SetTevReg(i, 3, true, (s16)PixelShaderManager::constants.kcolors[i][3]);
-
- Rasterizer::SetTevReg(i, 0, false, (s16)PixelShaderManager::constants.colors[i][0]);
- Rasterizer::SetTevReg(i, 1, false, (s16)PixelShaderManager::constants.colors[i][1]);
- Rasterizer::SetTevReg(i, 2, false, (s16)PixelShaderManager::constants.colors[i][2]);
- Rasterizer::SetTevReg(i, 3, false, (s16)PixelShaderManager::constants.colors[i][3]);
- }
-}
-
-// Updates the bounding box
-void LOADERDECL Update(VertexLoader* loader)
-{
- if (!active)
- return;
-
- // Grab vertex input data and transform to output vertex
- InputVertexData myVertex;
- OutputVertexData * outVertex = vtxUnit.GetVertex();
-
- // Feed vertex position and matrix
- myVertex.position = Vec3((const float *)bufferPos);
- myVertex.posMtx = vertexDesc.PosMatIdx ? posMtxIdx : g_main_cp_state.matrix_index_a.PosNormalMtxIdx;
-
- // Transform position
- TransformUnit::TransformPosition(&myVertex, outVertex);
-
- if (g_main_cp_state.vtx_desc.Normal != NOT_PRESENT)
- {
- // Feed normal input data and transform
- memcpy((u8 *)myVertex.normal, bufferPos + vertexDecl.normals[0].offset, sizeof(float) * 3 * ((myVat.g0.NormalElements) ? 3 : 1));
-
- TransformUnit::TransformNormal(&myVertex, myVat.g0.NormalElements, outVertex);
- }
-
- // Feed color input data
- for (int i = 0; i < 2; ++i)
- {
- if (vertexDecl.colors[i].enable)
- {
- u32 color;
- memcpy((u8 *)&color, bufferPos + vertexDecl.colors[i].offset, sizeof(u32));
- *(u32*)myVertex.color[i] = Common::swap32(color);
- }
- }
-
- // Transform color
- TransformUnit::TransformColor(&myVertex, outVertex);
-
- // Feed texture matrices
- int idx = 0;
-
- myVertex.texMtx[0] = (vertexDesc.Tex0MatIdx) ? texMtxIdx[idx++] : g_main_cp_state.matrix_index_a.Tex0MtxIdx;
- myVertex.texMtx[1] = (vertexDesc.Tex1MatIdx) ? texMtxIdx[idx++] : g_main_cp_state.matrix_index_a.Tex1MtxIdx;
- myVertex.texMtx[2] = (vertexDesc.Tex2MatIdx) ? texMtxIdx[idx++] : g_main_cp_state.matrix_index_a.Tex2MtxIdx;
- myVertex.texMtx[3] = (vertexDesc.Tex3MatIdx) ? texMtxIdx[idx++] : g_main_cp_state.matrix_index_a.Tex3MtxIdx;
- myVertex.texMtx[4] = (vertexDesc.Tex4MatIdx) ? texMtxIdx[idx++] : g_main_cp_state.matrix_index_b.Tex4MtxIdx;
- myVertex.texMtx[5] = (vertexDesc.Tex5MatIdx) ? texMtxIdx[idx++] : g_main_cp_state.matrix_index_b.Tex5MtxIdx;
- myVertex.texMtx[6] = (vertexDesc.Tex6MatIdx) ? texMtxIdx[idx++] : g_main_cp_state.matrix_index_b.Tex6MtxIdx;
- myVertex.texMtx[7] = (vertexDesc.Tex7MatIdx) ? texMtxIdx[idx++] : g_main_cp_state.matrix_index_b.Tex7MtxIdx;
-
- // Feed texture coordinate data
- for (int i = 0; i < 8; ++i)
- {
- if (vertexDecl.texcoords[i].enable)
- memcpy((u8 *)&myVertex.texCoords[i], bufferPos + vertexDecl.texcoords[i].offset, sizeof(float) * 2);
- }
-
- // Transform texture coordinate
- TransformUnit::TransformTexCoord(&myVertex, outVertex, false);
-
- // Render the vertex in SW to calculate bbox
- vtxUnit.SetupVertex();
-}
// Save state
void DoState(PointerWrap &p)