Navigation System design process menu

User Tag List

Page 5 of 5 FirstFirst 12345
Results 61 to 62 of 62
  1. #61
    ostapus's Avatar Active Member
    Reputation
    60
    Join Date
    Nov 2008
    Posts
    180
    Thanks G/R
    3/10
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    doodas are m2 and should be scaled... good catch.

    Navigation System design process
  2. #62
    Flowerew's Avatar Master Sergeant
    Reputation
    72
    Join Date
    Oct 2009
    Posts
    134
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by FenixTX2 View Post
    I 'think' i've solved my problem. Inside wowmappers adt_c.cpp class there is a method:

    Code:
    void Adt_c::GetDoodads(Meshes_t *meshes) {
       for (AdtDoodads_t::iterator doodad = doodads_.begin();
           doodad != doodads_.end();
           ++doodad) {
        const MddfChunk_s::DoodadInfo_s &info = *doodad->info;
        const M2_c *m2 = doodad->m2;
    
        // add new doodad
        meshes->push_back(Mesh_c());
        Mesh_c *mesh = &meshes->back();
    
        // if we have a skin we get the real mesh
        if(m2->skin.get() != NULL) {
          m2->GetMesh(*m2->skin, mesh);
        } else {
          m2->GetBVMesh(mesh);
        }
    
        // don't forget to readjust positions and rotations!
        static const float map_center = 17066.0f + (2.0f/3.0f);
        mesh->SetPositon(Vec3_t(info.pos.x-map_center, info.pos.y, info.pos.z-map_center));
        mesh->SetRotation(Vec3_t(-info.rot.x, info.rot.y-90, info.rot.z-90));
        mesh->SetScale(info.scale/1024.0f);
      }
    }
    That bottom line sets the scale for the loaded doodad. However the corresponding method in wowmappers mesh_c.cpp class was overriding the input float with 1.0f

    Code:
    void Mesh_c::SetScale(float scale) {
      scale_ = 1.0f;
    }

    I've changed the code to use the input float and now my maps look correct.

    Is this the correct thing to do? I've had a look on wowdev but couldn't find any reference to doodad scaling.
    Thanks
    Very nice find, Fenix. I committed that fix to the repository and added you to the special thanks section on the front page of wowmapper. I don't know why I did that in my code, but thanks to you it's gone now . Here's the link to the paragraph for doodad scaling: ADT/v18 - WoW.Dev Wiki
    Again thanks, and +rep to you.

Page 5 of 5 FirstFirst 12345

Similar Threads

  1. Replies: 20
    Last Post: 11-24-2013, 04:49 PM
  2. [ArcEmu] [Website] Professional Website System and Cool Design!
    By NerieX in forum WoW EMU General Releases
    Replies: 46
    Last Post: 10-16-2010, 01:47 PM
  3. Designing in-process classes for objects
    By lanman92 in forum Programming
    Replies: 8
    Last Post: 07-07-2009, 07:49 PM
  4. The Honour System Explained
    By Cush in forum World of Warcraft Guides
    Replies: 2
    Last Post: 05-27-2006, 06:50 PM
  5. Replies: 0
    Last Post: 03-24-2006, 01:43 AM
All times are GMT -5. The time now is 06:23 PM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search