From d5a9a3ed131d56b99f7c5769ebfc2404f1266570 Mon Sep 17 00:00:00 2001 From: Nick Gasson Date: Wed, 11 Aug 2010 22:52:56 +0100 Subject: [PATCH] Building models should now only be in positive xyz space --- buildings/platform_end/platform_end.mtl | 2 +- buildings/platform_end/platform_end.obj | 161 ++++++++--------- buildings/platform_end/platform_end.wings | Bin 1777 -> 1796 bytes buildings/platform_middle/platform_middle.mtl | 2 +- buildings/platform_middle/platform_middle.obj | 163 +++++++++--------- .../platform_middle/platform_middle.wings | Bin 1676 -> 1690 bytes include/IModel.hpp | 6 +- src/Building.cpp | 11 +- src/Model.cpp | 9 +- 9 files changed, 188 insertions(+), 166 deletions(-) diff --git a/buildings/platform_end/platform_end.mtl b/buildings/platform_end/platform_end.mtl index 7372904..9eb0f34 100644 --- a/buildings/platform_end/platform_end.mtl +++ b/buildings/platform_end/platform_end.mtl @@ -1,4 +1,4 @@ -# Exported from Wings 3D 1.0.1 +# Exported from Wings 3D 1.2 newmtl concrete Ns 100.0 d 1.0 diff --git a/buildings/platform_end/platform_end.obj b/buildings/platform_end/platform_end.obj index b84f144..0fdc611 100644 --- a/buildings/platform_end/platform_end.obj +++ b/buildings/platform_end/platform_end.obj @@ -1,134 +1,137 @@ -# Exported from Wings 3D 1.0.1 +# Exported from Wings 3D 1.2 mtllib platform_end.mtl o cube1 #16 vertices, 28 faces -v -0.50000000 0.0000000e+0 0.50000000 -v -0.50000000 0.35000000 0.50000000 -v 0.50000000 8.9724982e-2 0.19998392 -v 0.50000000 0.0000000e+0 0.19998392 -v -0.50000000 0.0000000e+0 -0.50000000 -v -0.50000000 0.35000000 -0.50000000 -v 0.50000000 8.9724982e-2 -0.24950684 -v 0.50000000 0.0000000e+0 -0.24950684 -v -0.50000000 0.37097152 0.57048761 -v 0.50000000 0.11069650 0.27047153 -v 0.50000000 0.11069650 -0.31999445 -v -0.50000000 0.37097152 -0.57048761 -v -0.50000000 0.40301134 0.57048761 -v 0.50000000 0.14273632 0.27047153 -v 0.50000000 0.14273632 -0.31999445 -v -0.50000000 0.40301134 -0.57048761 -vn 0.28736202 0.0000000e+0 0.95782205 +v -1.7166848e-3 0.0000000e+0 0.92878545 +v -1.7166848e-3 0.35000000 0.92878545 +v 0.99828332 8.9724982e-2 0.70632030 +v 0.99828332 0.0000000e+0 0.70632030 +v -1.7166848e-3 0.0000000e+0 7.2688521e-2 +v -1.7166848e-3 0.35000000 7.2688521e-2 +v 0.99828332 8.9724982e-2 0.25682953 +v 0.99828332 0.0000000e+0 0.25682953 +v -1.7166848e-3 0.37097152 0.99927305 +v 0.99828332 0.11069650 0.77680791 +v 0.99828332 0.11069650 0.18634193 +v -1.7166848e-3 0.37097152 2.2009116e-3 +v -1.7166848e-3 0.40301134 0.99927305 +v 0.99828332 0.14273632 0.77680791 +v 0.99828332 0.14273632 0.18634193 +v -1.7166848e-3 0.40301134 2.2009116e-3 +vn 0.21715642 0.0000000e+0 0.97613682 vn 0.0000000e+0 -1.00000000 0.0000000e+0 vn -1.00000000 0.0000000e+0 0.0000000e+0 -vn 0.28736202 0.0000000e+0 0.95782205 +vn 0.21715642 0.0000000e+0 0.97613682 vn -1.00000000 0.0000000e+0 0.0000000e+0 -vn -0.16175460 -0.94585568 0.28141161 -vn -1.00000000 3.2705206e-16 0.0000000e+0 -vn 0.28736202 0.0000000e+0 0.95782205 -vn -1.00000000 3.2705206e-16 0.0000000e+0 -vn -0.16175460 -0.94585568 0.28141161 +vn -0.18289045 -0.94231150 0.28035714 +vn -1.00000000 -2.5925300e-18 0.0000000e+0 +vn 0.21715642 0.0000000e+0 0.97613682 +vn -1.00000000 -2.5925300e-18 0.0000000e+0 +vn -0.18289045 -0.94231150 0.28035714 vn -1.00000000 0.0000000e+0 0.0000000e+0 -vn 0.28736202 0.0000000e+0 0.95782205 +vn 0.21715642 0.0000000e+0 0.97613682 vn 1.00000000 0.0000000e+0 0.0000000e+0 -vn 1.00000000 0.0000000e+0 0.0000000e+0 -vn -0.16175460 -0.94585568 0.28141161 -vn 0.28736202 0.0000000e+0 0.95782205 +vn 1.00000000 -1.1777675e-14 0.0000000e+0 +vn -0.18289045 -0.94231150 0.28035714 +vn 0.21715642 0.0000000e+0 0.97613682 vn 1.00000000 0.0000000e+0 0.0000000e+0 vn 0.0000000e+0 -1.00000000 0.0000000e+0 -vn 0.28736202 0.0000000e+0 0.95782205 +vn 0.21715642 0.0000000e+0 0.97613682 vn 1.00000000 0.0000000e+0 0.0000000e+0 vn 0.0000000e+0 -1.00000000 0.0000000e+0 vn 0.0000000e+0 -1.00000000 0.0000000e+0 -vn 0.24298583 0.0000000e+0 -0.97002984 +vn 0.18109631 0.0000000e+0 -0.98346537 vn -1.00000000 0.0000000e+0 0.0000000e+0 -vn 0.24298583 0.0000000e+0 -0.97002984 +vn 0.18109631 0.0000000e+0 -0.98346537 vn 0.0000000e+0 -1.00000000 0.0000000e+0 vn -1.00000000 0.0000000e+0 0.0000000e+0 vn -1.00000000 0.0000000e+0 0.0000000e+0 -vn -0.17527926 -0.94363943 -0.28075223 -vn 0.24298583 0.0000000e+0 -0.97002984 -vn -1.00000000 5.2939559e-15 0.0000000e+0 -vn 1.00000000 0.0000000e+0 0.0000000e+0 -vn 0.24298583 0.0000000e+0 -0.97002984 -vn 1.00000000 0.0000000e+0 0.0000000e+0 -vn -0.17527926 -0.94363943 -0.28075223 +vn -0.19324440 -0.94041117 -0.27979175 +vn 0.18109631 0.0000000e+0 -0.98346537 +vn -1.00000000 0.0000000e+0 0.0000000e+0 vn 1.00000000 0.0000000e+0 0.0000000e+0 -vn -0.17527926 -0.94363943 -0.28075223 -vn 0.24298583 0.0000000e+0 -0.97002984 +vn 0.18109631 0.0000000e+0 -0.98346537 +vn 1.00000000 -5.8888373e-15 0.0000000e+0 +vn -0.19324440 -0.94041117 -0.27979175 vn 1.00000000 0.0000000e+0 0.0000000e+0 +vn -0.19324440 -0.94041117 -0.27979175 +vn 0.18109631 0.0000000e+0 -0.98346537 +vn 1.00000000 -5.8888373e-15 0.0000000e+0 vn 1.00000000 0.0000000e+0 0.0000000e+0 vn 0.0000000e+0 -1.00000000 0.0000000e+0 -vn 0.24298583 0.0000000e+0 -0.97002984 -vn -0.16175460 -0.94585568 0.28141161 -vn -1.00000000 -4.6398518e-15 0.0000000e+0 +vn 0.18109631 0.0000000e+0 -0.98346537 +vn -0.18289045 -0.94231150 0.28035714 +vn -1.00000000 -5.1850599e-18 0.0000000e+0 vn -1.00000000 0.0000000e+0 0.0000000e+0 -vn 0.28736202 0.0000000e+0 0.95782205 -vn -0.16175460 -0.94585568 0.28141161 -vn 1.00000000 0.0000000e+0 0.0000000e+0 -vn 0.28736202 0.0000000e+0 0.95782205 +vn 0.21715642 0.0000000e+0 0.97613682 +vn -0.18289045 -0.94231150 0.28035714 +vn 1.00000000 -5.8888373e-15 0.0000000e+0 +vn 0.21715642 0.0000000e+0 0.97613682 vn 1.00000000 0.0000000e+0 0.0000000e+0 vn 1.00000000 0.0000000e+0 0.0000000e+0 -vn 0.28736202 0.0000000e+0 0.95782205 +vn 0.21715642 0.0000000e+0 0.97613682 +vn 1.00000000 -5.8888373e-15 0.0000000e+0 +vn -0.18289045 -0.94231150 0.28035714 vn 1.00000000 0.0000000e+0 0.0000000e+0 -vn -0.16175460 -0.94585568 0.28141161 +vn -0.19324440 -0.94041117 -0.27979175 vn 1.00000000 0.0000000e+0 0.0000000e+0 -vn -0.17527926 -0.94363943 -0.28075223 -vn 1.00000000 0.0000000e+0 0.0000000e+0 -vn 0.24298583 0.0000000e+0 -0.97002984 -vn -0.17527926 -0.94363943 -0.28075223 -vn -1.00000000 3.2705206e-16 0.0000000e+0 -vn 0.24298583 0.0000000e+0 -0.97002984 +vn 0.18109631 0.0000000e+0 -0.98346537 +vn -0.19324440 -0.94041117 -0.27979175 +vn -1.00000000 -2.5925300e-18 0.0000000e+0 +vn 0.18109631 0.0000000e+0 -0.98346537 vn -1.00000000 0.0000000e+0 0.0000000e+0 -vn -0.17527926 -0.94363943 -0.28075223 +vn -0.19324440 -0.94041117 -0.27979175 vn -1.00000000 0.0000000e+0 0.0000000e+0 -vn 0.24298583 0.0000000e+0 -0.97002984 -vn -1.00000000 3.2705206e-16 0.0000000e+0 +vn 0.18109631 0.0000000e+0 -0.98346537 +vn -1.00000000 -2.5925300e-18 0.0000000e+0 vn 0.25188314 0.96775766 0.0000000e+0 -vn 0.28736202 0.0000000e+0 0.95782205 +vn 0.21715642 0.0000000e+0 0.97613682 vn -1.00000000 0.0000000e+0 0.0000000e+0 vn -1.00000000 0.0000000e+0 0.0000000e+0 vn 0.25188314 0.96775766 0.0000000e+0 -vn 0.28736202 0.0000000e+0 0.95782205 -vn 0.28736202 0.0000000e+0 0.95782205 +vn 0.21715642 0.0000000e+0 0.97613682 +vn 0.21715642 0.0000000e+0 0.97613682 vn 1.00000000 0.0000000e+0 0.0000000e+0 vn 0.25188314 0.96775766 0.0000000e+0 vn 0.25188314 0.96775766 0.0000000e+0 vn 1.00000000 0.0000000e+0 0.0000000e+0 -vn 0.24298583 0.0000000e+0 -0.97002984 +vn 0.18109631 0.0000000e+0 -0.98346537 vn 0.25188314 0.96775766 0.0000000e+0 vn 1.00000000 0.0000000e+0 0.0000000e+0 -vn 0.24298583 0.0000000e+0 -0.97002984 +vn 0.18109631 0.0000000e+0 -0.98346537 vn 0.25188314 0.96775766 0.0000000e+0 -vn 0.24298583 0.0000000e+0 -0.97002984 +vn 0.18109631 0.0000000e+0 -0.98346537 vn -1.00000000 0.0000000e+0 0.0000000e+0 g cube1_concrete usemtl concrete +s 1 f 1//1 4//19 2//8 -f 1//2 5//26 4//21 f 2//4 4//16 3//12 -f 2//11 5//27 1//3 f 2//9 12//66 6//31 -f 3//15 10//54 2//10 -f 4//18 5//22 8//41 -f 4//20 7//36 3//13 f 5//23 7//33 8//42 -f 6//28 5//24 2//5 f 6//30 7//38 5//25 -f 6//29 12//63 7//37 f 7//39 10//53 3//14 -f 8//40 7//32 4//17 -f 9//43 2//6 10//47 f 9//44 12//60 2//7 -f 9//45 13//70 12//64 f 10//48 7//34 11//55 f 10//52 13//72 9//46 -f 11//56 7//35 12//59 -f 11//57 15//80 10//51 f 12//65 15//81 11//58 f 13//68 10//49 14//73 -f 14//74 10//50 15//77 -f 14//75 15//79 13//71 f 15//78 12//61 16//83 -f 16//84 12//62 13//69 +s 2 +f 1//2 5//26 4//21 +f 3//15 10//54 2//10 +f 4//18 5//22 8//41 +f 6//29 12//63 7//37 +f 9//43 2//6 10//47 +f 11//56 7//35 12//59 +f 14//75 15//79 13//71 f 16//82 13//67 15//76 +s 3 +f 2//11 5//27 1//3 +f 4//20 7//36 3//13 +f 6//28 5//24 2//5 +f 8//40 7//32 4//17 +f 9//45 13//70 12//64 +f 11//57 15//80 10//51 +f 14//74 10//50 15//77 +f 16//84 12//62 13//69 diff --git a/buildings/platform_end/platform_end.wings b/buildings/platform_end/platform_end.wings index c60262e20194898e340eb4ad8c6663d69da443c1..fe9c0495bfb7a33f07e60213d8fa7757b2b7b9fd 100644 GIT binary patch literal 1796 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 diff --git a/include/IModel.hpp b/include/IModel.hpp index b11f956..b1a91d3 100644 --- a/include/IModel.hpp +++ b/include/IModel.hpp @@ -38,7 +38,9 @@ struct IModel { typedef shared_ptr IModelPtr; // Load a model from a WaveFront .obj file -IModelPtr load_model(IResourcePtr a_res, const string& a_file_name, - float a_scale = 1.0f); +IModelPtr load_model(IResourcePtr a_res, + const string& a_file_name, + float a_scale = 1.0f, + Vector shift = make_vector(0.0f, 0.0f, 0.0f)); #endif diff --git a/src/Building.cpp b/src/Building.cpp index 268b16f..112099a 100644 --- a/src/Building.cpp +++ b/src/Building.cpp @@ -65,7 +65,14 @@ Building::Building(IResourcePtr a_res) parser->parse(a_res->xml_file_name(), *this); - model_ = load_model(a_res, parser_state->model_file, parser_state->scale); + Vector shift = -make_vector(0.5f, 0.0f, 0.5f); + model_ = load_model(a_res, + parser_state->model_file, + parser_state->scale, + shift); + + Vector dim = model_->dimensions(); + debug() << name_ << " " << dim; delete parser_state; } @@ -88,7 +95,7 @@ void Building::render() const void Building::merge(IMeshBufferPtr buf) { - model_->merge(buf, position, angle); + model_->merge(buf, position/* + make_vector(-0.5f, 0.0f, -0.5f)*/, angle); } void Building::text(const string& local_name, const string& a_string) diff --git a/src/Model.cpp b/src/Model.cpp index 342edfe..7327194 100644 --- a/src/Model.cpp +++ b/src/Model.cpp @@ -166,7 +166,10 @@ void Model::compile_mesh() const } // Load a model from a resource -IModelPtr load_model(IResourcePtr a_res, const string& a_file_name, float a_scale) +IModelPtr load_model(IResourcePtr a_res, + const string& a_file_name, + float a_scale, + Vector shift) { // Make a unique cache name const string cache_name = a_res->name() + ":" + a_file_name; @@ -220,6 +223,10 @@ IModelPtr load_model(IResourcePtr a_res, const string& a_file_name, float a_scal float x, y, z; f >> x >> y >> z; + x += shift.x; + y += shift.y; + z += shift.z; + x *= a_scale; y *= a_scale; z *= a_scale; -- 2.39.2