WMO Collision data (MOBN/MOBR) menu

Shout-Out

User Tag List

Results 1 to 4 of 4
  1. #1
    omni123's Avatar Member
    Reputation
    1
    Join Date
    Jun 2008
    Posts
    5
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    WMO Collision data (MOBN/MOBR)

    Hey,

    I've started a small project with a friend to get some grasps on the concepts behind how WoW stores it's mapping data and we've hit a snag with WMOs and collision information

    From what I can tell it looks like the MOBR chunk stores pre-compiled BSP trees and the MOBN chunk stores a smaller subset of indices in to the MOVI vertices chunk that represent the collision polygons. The MOBR chunk numfaces and firstface value define the indices for that leaf node where the indices are from firstface to firstface + numfaces. I hope this is correct!

    I would of thought that I could render the vertices from the MOVT chunk using an index array constructed from the MOBN chunk and it would just be less detailed but the result I get is nothing resembling the original WMOs (looking like the indices are way off). Is my logic off here?

    The other issue I have is, though I haven't started down this route yet, is how the division between BSPs nodes is defined? I was under the impression that you required a plane to define a BSP node whereas the WoW method seems to simply store all the polygons in that node. Does the first triangle in the firstface->numfaces range define the plane? How do you determine which child to test next when you are performing collision?

    Any help would be appreciated! I hope this post wasn't too fractured... I have been struggling with this for the last week or two and it's very difficult to find information on it.

    EDIT: I should clarify that I also have no idea how to determine which child in the BSP tree to progress to--numfaces and firstface is 0 for every node that is not a leaf. There is a float that I presume must be used to determine distance from the root or something so you can work out which child to progress to?
    Last edited by omni123; 04-11-2010 at 09:44 PM.

    WMO Collision data (MOBN/MOBR)
  2. #2
    MaiN's Avatar Elite User
    Reputation
    335
    Join Date
    Sep 2006
    Posts
    1,047
    Thanks G/R
    0/10
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Actually, you only need to use the MOVI and the MOPY chunks. The MOPY chunk has some flags for each triangle including one that specifies if that triangle is collision-enabled.
    [16:15:41] Cypher: caus the CPU is a dick
    [16:16:07] kynox: CPU is mad
    [16:16:15] Cypher: CPU is all like
    [16:16:16] Cypher: whatever, i do what i want

  3. #3
    omni123's Avatar Member
    Reputation
    1
    Join Date
    Jun 2008
    Posts
    5
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by MaiN View Post
    Actually, you only need to use the MOVI and the MOPY chunks. The MOPY chunk has some flags for each triangle including one that specifies if that triangle is collision-enabled.
    Hey Main, thanks for the reply.

    I'm actually looking to do some things a little more complex then pathfinding for bots and/or information collection... I'm looking to get some pretty well performing and detailed collision detection and response. I understand that I could theoretically test all the vertices with the COLLISION flag set in the MOPY chunk but I thought if there were precompiled BSP's they would be a lot better.

    Am I mistaken or are these BSPs remnants from alpha or something?

  4. #4
    MaiN's Avatar Elite User
    Reputation
    335
    Join Date
    Sep 2006
    Posts
    1,047
    Thanks G/R
    0/10
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by omni123 View Post
    Hey Main, thanks for the reply.

    I'm actually looking to do some things a little more complex then pathfinding for bots and/or information collection... I'm looking to get some pretty well performing and detailed collision detection and response. I understand that I could theoretically test all the vertices with the COLLISION flag set in the MOPY chunk but I thought if there were precompiled BSP's they would be a lot better.

    Am I mistaken or are these BSPs remnants from alpha or something?
    Ah, I actually do not know about that. I assume they are still there in that case. I haven't seen anyone ever implementing/using them though.
    [16:15:41] Cypher: caus the CPU is a dick
    [16:16:07] kynox: CPU is mad
    [16:16:15] Cypher: CPU is all like
    [16:16:16] Cypher: whatever, i do what i want

Similar Threads

  1. [Release] Change FoV/zoom & Render terrain, m2, wmo, liquid, wireframe, collision
    By para_ in forum World of Warcraft Bots and Programs
    Replies: 25
    Last Post: 06-09-2013, 01:53 AM
  2. Collision Data in Memory
    By matamore in forum WoW Memory Editing
    Replies: 13
    Last Post: 01-14-2012, 07:27 AM
  3. WMO - MOPY chunk - collision flag
    By fish2k in forum WoW Memory Editing
    Replies: 6
    Last Post: 04-10-2009, 05:21 AM
  4. How to view the .WMO files?
    By Itazuki in forum WoW ME Questions and Requests
    Replies: 2
    Last Post: 11-06-2006, 05:53 PM
  5. Editing .wmos with mywarcraftstudio
    By Ensui in forum World of Warcraft General
    Replies: 3
    Last Post: 09-26-2006, 07:55 AM
All times are GMT -5. The time now is 10:57 AM. 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