Mercurial > mm7
diff IndoorCameraD3D.cpp @ 784:b3e08a496778
Merge
author | Nomad |
---|---|
date | Sun, 24 Mar 2013 21:15:01 +0200 |
parents | d170f23f70d1 |
children | 346f7069676a |
line wrap: on
line diff
--- a/IndoorCameraD3D.cpp Sun Mar 24 21:14:28 2013 +0200 +++ b/IndoorCameraD3D.cpp Sun Mar 24 21:15:01 2013 +0200 @@ -7,10 +7,92 @@ #include "OutdoorCamera.h" #include "Render.h" #include "LOD.h" - #include "mm7_data.h" +//----- (004361EF) -------------------------------------------------------- +IndoorCameraD3D::IndoorCameraD3D() +{ + IndoorCameraD3D *v1; // esi@1 + //double v2; // st7@1 + //double v3; // st6@1 + //double v4; // st5@1 + //double v5; // st7@1 + //double v6; // st6@1 + //double v7; // st5@1 + v1 = this; + //IndoorCameraD3D_Vec3::IndoorCameraD3D_Vec3(&this->field_4); + //IndoorCameraD3D_Vec3::IndoorCameraD3D_Vec3(&v1->field_14); + //IndoorCameraD3D_Vec3::IndoorCameraD3D_Vec3(&v1->field_24); + /*_eh_vector_constructor_iterator_(v1->std__vector_000034_prolly_frustrum, + 24, + 6, + (void (__thiscall *)(void *))IndoorCameraD3D_Vec4::IndoorCameraD3D_Vec4, + (void (__thiscall *)(void *))IndoorCameraD3D_Vec4::dtor);*/ + //v2 = 0;//(double)pBLVRenderParams->vPartyPos.z; + //v3 = 0;//(double)pBLVRenderParams->vPartyPos.y; + //v4 = 0;//(double)pBLVRenderParams->vPartyPos.x; + v1->field_108 = 0.0; + v1->blv_party_x = 0; + v1->blv_party_y = 0; + v1->blv_party_z = 0; + //v5 = 0;//(double)pBLVRenderParams->vPartyPos.z; + //v6 = 0;//(double)pBLVRenderParams->vPartyPos.y; + //v7 = 300;//(double)(pBLVRenderParams->vPartyPos.x + 300); + v1->field_138 = 0.0; + v1->blv_party_x_2 = 300; + v1->blv_party_y_2 = 0; + v1->blv_party_z_2 = 0; + v1->field_168 = 0.0; + v1->field_198 = 0.0; + v1->field_1C8 = 0.0; + v1->field_1F8 = 0.0; + v1->field_228 = 0.0; + v1->field_258 = 0.0; + v1->field_288 = 0.0; + v1->field_2B8 = 0.0; + v1->field_2E8 = 0.0; + v1->field_2BC = 0.0; + v1->field_2C0 = 0.0; + v1->field_2C4 = 0.0; + v1->field_318 = 0.0; + v1->field_2EC = 0.0; + v1->field_2F0 = 0.0; + v1->field_2F4 = 0.0; + v1->field_348 = 0.0; + v1->field_31C = 0.0; + v1->field_320 = 0.0; + v1->field_324 = 0.0; + v1->field_378 = 0.0; + v1->field_34C = 0.0; + v1->field_350 = 0.0; + v1->field_354 = 0.0; + for (uint i = 0; i < 16384; ++i) + { + list_0037C[i].field_0 = 0; + list_0037C[i].flt_30 = 0.0f; + } + + list_0037C_size = 0; + for (uint i = 0; i < 256; ++i) + list_E0380[i].mm7__vector_000004_size = 0; + /*v10 = v1->list_E0380; + v12 = 256; + do + { + v10->mm7__vector_000004_size = 0; + //mm7__vector_constructor( + // v10->mm7__vector_000004, + // 48, + // 64, + // (int (__thiscall *)(int))IndoorCameraD3D_stru1::IndoorCameraD3D_stru1); + //++v10; + --v12; + } + while ( v12 );*/ + list_E0380_size = 0; + //v1->vdestructor_ptr = &stru8_pvdtor; +} //----- (004364C5) -------------------------------------------------------- void IndoorCameraD3D::ViewTransfrom_OffsetUV(RenderVertexSoft *pVertices, unsigned int uNumVertices, RenderVertexSoft *pOutVertices, stru320 *a5) @@ -92,8 +174,6 @@ return !bDoNotShow || (v12 = *v10, v12 >= (signed int)0x40000u) && v12 <= (signed int)0x1F400000u; } - - //----- (00436455) -------------------------------------------------------- bool IndoorCameraD3D::IsCulled(BLVFace *pFace) { @@ -329,7 +409,6 @@ pIndoorCamera->ViewTransform(a1a + i); } - //----- (00436932) -------------------------------------------------------- bool IndoorCameraD3D::GetFacetOrientation(char polyType, Vec3_float_ *a2, Vec3_float_ *a3, Vec3_float_ *a4) { @@ -392,7 +471,6 @@ } } - //----- (00438258) -------------------------------------------------------- bool IndoorCameraD3D::is_face_faced_to_camera(BLVFace *pFace, RenderVertexSoft *a2) { @@ -414,7 +492,6 @@ this->list_0037C_size = 0; } - //----- (00438240) -------------------------------------------------------- void IndoorCameraD3D::_438240_draw_lits() { @@ -479,7 +556,6 @@ } } - //----- (00438141) -------------------------------------------------------- void IndoorCameraD3D::_438141_draw_list_0037C() { @@ -528,7 +604,6 @@ } } - //----- (00437D4A) -------------------------------------------------------- void IndoorCameraD3D::_437D4A_draw_some_vertices(float x, float y, float z, unsigned int a5, char a6, float a7) { @@ -713,7 +788,6 @@ } } - //----- (00437C96) -------------------------------------------------------- void IndoorCameraD3D::do_draw_debug_line_d3d(const RenderVertexD3D3 *pLineBegin, unsigned int uDiffuseBegin, const RenderVertexD3D3 *pLineEnd, unsigned int uDiffuseEnd, float z_stuff) { @@ -867,7 +941,6 @@ MessageBoxW(nullptr, L"draw_debug_line() not implemented for SW rendering", L"E:\\WORK\\MSDEV\\MM7\\MM7\\Code\\Core3D.cpp:1383", 0); } - //----- (00437A55) -------------------------------------------------------- void IndoorCameraD3D::debug_outline_d3d(const RenderVertexD3D3 *pLineVertices, unsigned int uNumLines, int uDiffuse, float z_stuff) { @@ -896,7 +969,6 @@ do_draw_debug_line_d3d(&pLineVertices[v5], uDiffuse, pLineVertices, uDiffuse, z_stuff); } - //----- (004379EE) -------------------------------------------------------- void IndoorCameraD3D::debug_outline_sw(RenderVertexSoft *a2, unsigned int uNumVertices, unsigned int uDiffuse, float a5) { @@ -926,7 +998,6 @@ do_draw_debug_line_sw(&a2[v5], uDiffuse, a2, uDiffuse, 0, a5); } - //----- (00437906) -------------------------------------------------------- void IndoorCameraD3D::PrepareAndDrawDebugOutline(BLVFace *pFace, unsigned int uDiffuse) { @@ -972,7 +1043,6 @@ } // 50D9D0: using guessed type char static_sub_437906_byte_50D9D0_init_flag; - //----- (004378BA) -------------------------------------------------------- void IndoorCameraD3D::MatrixMultiply(Matrix3x3_float_ *a1, Matrix3x3_float_ *a2, Matrix3x3_float_ *out) { @@ -1010,7 +1080,6 @@ while ( v6 ); } - //----- (004376E7) -------------------------------------------------------- void IndoorCameraD3D::CreateWorldMatrixAndSomeStuff() { @@ -1067,7 +1136,6 @@ screenCenterY = (double)(pViewport->uScreenCenterY - pViewport->uScreen_TL_Y); } - //----- (00437691) -------------------------------------------------------- void IndoorCameraD3D::Vec3Transform(const IndoorCameraD3D_Vec3 *pVector, IndoorCameraD3D_Vec3 *pOut) { @@ -1390,6 +1458,7 @@ *pOutNumVertices = v5; return result; } + //----- (00436F09) -------------------------------------------------------- void IndoorCameraD3D::_436F09_mess_with_lightmap__clipflag_4(RenderVertexSoft *pInVertices, int uNumInVertices, RenderVertexSoft *pOutVertices, unsigned int *pOutNumVertices) { @@ -1492,7 +1561,6 @@ } } - //----- (00436CDC) -------------------------------------------------------- void IndoorCameraD3D::_436CDC_mess_with_lightmap__clipflag_2(RenderVertexSoft *pInVertices, int uNumInVertices, RenderVertexSoft *pOutVertices, unsigned int *pOutNumVertices) { @@ -1588,7 +1656,6 @@ } } - //----- (00436BB7) -------------------------------------------------------- void IndoorCameraD3D::Project(RenderVertexSoft *pVertices, unsigned int uNumVertices, char a4) { @@ -1658,7 +1725,6 @@ } } - //----- (00436A9A) -------------------------------------------------------- void IndoorCameraD3D::Project(signed int x, signed int y, signed int z, int *a5, int *a6) { @@ -1717,7 +1783,6 @@ return result; } - //----- (00436A24) -------------------------------------------------------- struct IDirect3DTexture2 *IndoorCameraD3D::LoadTextureAndGetHardwarePtr(char *Str1) {