Model Utilities

Page 2 of 12 FirstFirst 12345678910 ... LastLast
Results 16 to 30 of 174
  1. #16
    Alpha Member GlaphanKing is offline
    MemberRank
    Sep 2008 Join Date
    World of MorrowLocation
    2,594Posts

    Re: Model Utilities

    Small update: Wrote a raw data dumper for any o3d file. A lot of what I am seeing suggest that you need the 3 files in conjunction with one another.

    The o3d file is base: it holds mesh data, uv texturing (if any), and the skeleton (poorly named unless its the player).

    Obviously the .chr is the bone structure which sounds redundant because the o3d already has the base skeleton inside. Go figure.

    The .ani file has the bones and animation data inside it to tell the o3d how to move the mesh.

    I will be posting some sample files so you can see how it works. Duotone, and Popilli (think thats his name) were very close with the format. Wish they would have updated the converter when the source came out. Its ok though, it still helped me keep on track deciphering the formats.

    I used to have the xor key for the name decryption, but I lost it so I skipped that part. Seems fine as long as you skip the right amount of character spaces.

  2. #17
    Flyff Developer ShadowDragon is offline
    MemberRank
    Apr 2009 Join Date
    1,916Posts

    Re: Model Utilities

    Seems like you're making great progress on this project. keep up the good work.

  3. #18
    Alpha Member GlaphanKing is offline
    MemberRank
    Sep 2008 Join Date
    World of MorrowLocation
    2,594Posts

    Re: Model Utilities

    making some changes to the RAW dumper. Also added some more tools to it such as a GUI editor.

    I may add in a Obj2O3D/O3D2Obj converter based on what I have written as well.

    Oh I also found out something interesting that the old converter had issues with. The reason, it was hard to import certain objects like Bubble, certain NPCs and world objects is because they had more than one Geometry Object. The one NPC had a bag, a hat and the body. So when you loaded it you only saw the bag or hat. I have corrected this error in loading ALL objects so I hope that gives people some new hope for conversions.

  4. #19
    Unity Developer SirTwistedStorm is offline
    MemberRank
    Oct 2008 Join Date
    TexasLocation
    597Posts

    Re: Model Utilities

    Quote Originally Posted by GlaphanKing View Post
    making some changes to the RAW dumper. Also added some more tools to it such as a GUI editor.

    I may add in a Obj2O3D/O3D2Obj converter based on what I have written as well.

    Oh I also found out something interesting that the old converter had issues with. The reason, it was hard to import certain objects like Bubble, certain NPCs and world objects is because they had more than one Geometry Object. The one NPC had a bag, a hat and the body. So when you loaded it you only saw the bag or hat. I have corrected this error in loading ALL objects so I hope that gives people some new hope for conversions.
    by GUI editor do you mean like daisy but working on v18 res?

  5. #20
    Alpha Member GlaphanKing is offline
    MemberRank
    Sep 2008 Join Date
    World of MorrowLocation
    2,594Posts

    Re: Model Utilities

    I can't give out too many details but yes, in a way its a daisy-like editor. I don't have the v18 res files but I should be able to get ahold of them unless someone wants to share just that part.

  6. #21
    0xC0FFEE spikensbror is offline
    MemberRank
    Dec 2006 Join Date
    SwedenLocation
    1,855Posts

    Re: Model Utilities

    Import -> Obj/ASE/O3D/etc
    Export -> Obj/ASE/O3D/etc

    Enough said.

  7. #22
    Alpha Member GlaphanKing is offline
    MemberRank
    Sep 2008 Join Date
    World of MorrowLocation
    2,594Posts

    Re: Model Utilities

    o3d is ASE in binary format broken into 3 files with some things tweaked here and there for proprietary use.

  8. #23
    0xC0FFEE spikensbror is offline
    MemberRank
    Dec 2006 Join Date
    SwedenLocation
    1,855Posts

    Re: Model Utilities

    Still, just upon import, convert the format inputted to an all-around format like OBJ or ASE then on export convert the shared format to the specified export format.
    Makes things much easier.

  9. #24
    Alpha Member GlaphanKing is offline
    MemberRank
    Sep 2008 Join Date
    World of MorrowLocation
    2,594Posts

    Re: Model Utilities

    thats my plan. sorry if I didn't explain it that way but its what I ultimately meant. I also said in the future to get the source to read fbx but one thing at a time.

  10. #25
    0xC0FFEE spikensbror is offline
    MemberRank
    Dec 2006 Join Date
    SwedenLocation
    1,855Posts

    Re: Model Utilities

    Alright, just needed to clear that up.

  11. #26
    3D Dev heathj is offline
    MemberRank
    Sep 2008 Join Date
    UKLocation
    497Posts

    Re: Model Utilities

    just thought id let you know you get the 3ds max SDK when you purchase the program, so unless someone has a copy of it, it could be hard to get a copy. from when i was looking into the format ages back it seems the aeonsoft custom ASE format is just usual ASE with support for skin and physique modifiers and exports the vertex weighting for each bone and their transforms on export

  12. #27
    Alpha Member GlaphanKing is offline
    MemberRank
    Sep 2008 Join Date
    World of MorrowLocation
    2,594Posts

    Re: Model Utilities

    I have the FBX SDK from autodesk's website. As far as the ase format. I've figured out most of it with some help from some people I know.

    The only thing thats bothering me now is getting the face definitions. I'm not a modeling programmer so 3d stuff is relatively new but I'm picking it up very fast.

    I got the vertices but I need to figure out where the faces are located or are they generated after the vertices are stored?

  13. #28
    Ace of Hearts Reimniess is offline
    MemberRank
    Jul 2009 Join Date
    in your headLocation
    784Posts

    Re: Model Utilities

    faces are all triangles, to to believe it just has faces as sets of 3 vertices and then a surface is formed between them, not sure if that's what you were looking for but that was my first thought, been awhile.

  14. #29
    0xC0FFEE spikensbror is offline
    MemberRank
    Dec 2006 Join Date
    SwedenLocation
    1,855Posts

    Re: Model Utilities

    Wow... common 3d knowledge. ^
    He needs to figure out how ASE faces are stored.

  15. #30
    Alpha Member GlaphanKing is offline
    MemberRank
    Sep 2008 Join Date
    World of MorrowLocation
    2,594Posts

    Re: Model Utilities

    i know what faces, vertices, weights, normals, etc. are in 3D. Let me explain a little. I don't program in 3d modeling in the fact that in DirectX programming you have to generate a lot of code for one model on the screen. Its quite ridiculous really. Loading an FBX file in C++ vs o3d is way easier and more versatile.

    More to the point. The faces are a specific order. Such as vertices 1/4/3 are a triangle. That's what I need to see. When the model is loading it doesn't compensate for that or its just not documented very coherently. And yes I have translated the files from Korean. The only thing I can see is that the vertices are normalized from the Skinvertex or NormalVertex Struct but then you have the IndexBuffer m_pIB that is nothing more than an array of unsigned shorts or WORD variables. If I'm not mistaken these are the order of the vertices for triangles. I just have to break them up into 3s. I guess, I don't know, I'm still learning.

    Edit:

    Here is a dump of Mia using what i have coded.
    Spoiler:

    Code:
    Ver: 22
    ID: -479374430
    U: 0 V:0
    //Reserved
    BBox Min: {X:-0.3310214 Y:-0.02486365 Z:-0.1929625}
    BBox Max: {X:0.4829123 Y:1.382212 Z:0.3088572}
    PerSlerp: 0.5
    Max Frames: 0
    Max Objects: 2
    Group 0
    =======================================
    Mesh Object 0
    Type:GMT_SKIN
    ID: 45
    MaxVertexList: 86
    MaxFaceList: 78
    Parent Index: -1
    LocalTM:
    1 0 0 0
    0 1 0 0
    0 0 1 0
    0 0 0 1
    V : {X:0.1652207 Y:0.08860558 Z:-0.02291926}
    V : {X:0.1374426 Y:0.0788412 Z:-0.05804889}
    V : {X:0.1795887 Y:0.1077669 Z:-0.03960638}
    V : {X:0.1518106 Y:0.09800252 Z:-0.07473602}
    V : {X:0.2766508 Y:0.1426531 Z:0.02572384}
    V : {X:0.3333057 Y:0.0824379 Z:0.0613934}
    V : {X:0.2946743 Y:0.05609865 Z:0.02158964}
    V : {X:0.2610826 Y:0.0761546 Z:-0.02808022}
    V : {X:0.252208 Y:0.130857 Z:-0.05852025}
    V : {X:0.2732492 Y:0.1881621 Z:-0.05189911}
    V : {X:0.3118806 Y:0.2145015 Z:-0.01209531}
    V : {X:0.3454724 Y:0.1944456 Z:0.03757455}
    V : {X:0.354347 Y:0.1397431 Z:0.06801459}
    V : {X:0.4100266 Y:0.04278984 Z:0.03421459}
    V : {X:0.3553936 Y:0.00554056 Z:-0.02207636}
    V : {X:0.3078876 Y:0.03390379 Z:-0.0923201}
    V : {X:0.2953371 Y:0.1112647 Z:-0.1353688}
    V : {X:0.3250939 Y:0.1923064 Z:-0.1260052}
    V : {X:0.3797269 Y:0.2295557 Z:-0.06971418}
    V : {X:0.4272327 Y:0.2011925 Z:0.0005297199}
    V : {X:0.4397833 Y:0.1238315 Z:0.04357841}
    V : {X:0.461871 Y:0.04693413 Z:-0.03989129}
    V : {X:0.4232396 Y:0.02059488 Z:-0.07969499}
    V : {X:0.3896479 Y:0.04065075 Z:-0.1293648}
    V : {X:0.3807733 Y:0.09535322 Z:-0.1598049}
    V : {X:0.4018144 Y:0.1526584 Z:-0.1531838}
    V : {X:0.4404459 Y:0.1789976 Z:-0.1133799}
    V : {X:0.4740377 Y:0.1589418 Z:-0.06371012}
    V : {X:0.4829122 Y:0.1042394 Z:-0.03327007}
    V : {X:0.4584695 Y:0.09244318 Z:-0.1175142}
    V : {X:0.1430908 Y:0.08375387 Z:-0.08308376}
    V : {X:0.1380426 Y:0.08058338 Z:-0.05473322}
    V : {X:0.1087718 Y:0.05192918 Z:-0.09275237}
    V : {X:0.1037237 Y:0.0487587 Z:-0.06440184}
    V : {X:0.129413 Y:0.05209227 Z:-0.07425215}
    V : {X:0.1098929 Y:0.07347164 Z:-0.07533704}
    V : {X:0.08264048 Y:0.02777882 Z:-0.09269007}
    V : {X:0.1041215 Y:0.04219751 Z:-0.1056906}
    V : {X:0.1053267 Y:0.00775251 Z:-0.1224723}
    V : {X:0.08706604 Y:0.01287584 Z:-0.1443507}
    V : {X:0.1393937 Y:-0.00433578 Z:-0.1537356}
    V : {X:0.121133 Y:0.0007875399 Z:-0.1756139}
    V : {X:0.144911 Y:-0.00477324 Z:-0.1554737}
    V : {X:0.139323 Y:-0.00485048 Z:-0.183896}
    V : {X:0.1911392 Y:-0.0128253 Z:-0.1645402}
    V : {X:0.1855512 Y:-0.01290255 Z:-0.1929625}
    V : {X:0.2274848 Y:-0.02375555 Z:-0.1641577}
    V : {X:0.2249075 Y:0.00505772 Z:-0.1653395}
    V : {X:0.2684924 Y:-0.01491985 Z:-0.1370907}
    V : {X:0.2649228 Y:0.01285019 Z:-0.1445077}
    V : {X:0.2439582 Y:-0.00400219 Z:-0.1409413}
    V : {X:0.2629715 Y:-0.007326129 Z:-0.162537}
    V : {X:0.2795271 Y:0.008422949 Z:-0.1115381}
    V : {X:0.2985404 Y:0.00509901 Z:-0.1331339}
    V : {X:0.2759536 Y:-0.01231356 Z:-0.1309231}
    V : {X:0.272384 Y:0.01545649 Z:-0.1383401}
    V : {X:0.3067463 Y:0.01204329 Z:-0.09637263}
    V : {X:0.3019529 Y:0.03337116 Z:-0.1153594}
    V : {X:0.2842223 Y:0.01457148 Z:-0.1070358}
    V : {X:0.3085544 Y:0.00754662 Z:-0.1210698}
    V : {X:0.3088889 Y:0.04474296 Z:-0.07937138}
    V : {X:0.333221 Y:0.03771801 Z:-0.09340534}
    V : {X:0.1939096 Y:-0.01213007 Z:-0.162029}
    V : {X:0.204642 Y:-0.01227303 Z:-0.1889184}
    V : {X:0.238092 Y:-0.00745602 Z:-0.1444179}
    V : {X:0.2488244 Y:-0.007599069 Z:-0.1713073}
    V : {X:0.1678953 Y:-0.02398901 Z:-0.1747057}
    V : {X:0.1726692 Y:0.00456333 Z:-0.1757219}
    V : {X:0.2170122 Y:-0.02486343 Z:-0.168332}
    V : {X:0.214435 Y:0.00394983 Z:-0.1695139}
    V : {X:0.1125081 Y:-0.01081553 Z:-0.1519798}
    V : {X:0.1213933 Y:0.01672506 Z:-0.1529465}
    V : {X:0.1569378 Y:-0.02208042 Z:-0.1725567}
    V : {X:0.1617117 Y:0.00647192 Z:-0.1735729}
    V : {X:0.08164483 Y:0.02107658 Z:-0.1017685}
    V : {X:0.1031259 Y:0.03549519 Z:-0.114769}
    V : {X:0.1044332 Y:-0.007950209 Z:-0.1445694}
    V : {X:0.1133183 Y:0.01959028 Z:-0.1455361}
    V : {X:0.1016767 Y:0.0339139 Z:-0.07822052}
    V : {X:0.08242995 Y:0.05227137 Z:-0.08966236}
    V : {X:0.09747618 Y:0.00563812 Z:-0.1165209}
    V : {X:0.07822951 Y:0.02399559 Z:-0.1279627}
    V : {X:0.1690649 Y:0.08269786 Z:-0.05513349}
    V : {X:0.1509648 Y:0.1036602 Z:-0.0466477}
    V : {X:0.1375477 Y:0.05963572 Z:-0.07196044}
    V : {X:0.1180276 Y:0.0810151 Z:-0.07304533}
    0 1 2 1 0 3 4 5 6 4 7 5 4 8 7 4 9 8 4 10 9 4 11 10 4 12 11 4 6 12 13 6 5 6 13 14 15 5 7 5 15 13 16 7 8 7 16 15 17 8 9 8 17 16 18 9 10 9 18 17 19 10 11 10 19 18 20 11 12 11 20 19 14 12 6 12 14 20 21 14 13 14 21 22 23 13 15 13 23 21 24 15 16 15 24 23 25 16 17 16 25 24 26 17 18 17 26 25 27 18 19 18 27 26 28 19 20 19 28 27 22 20 14 20 22 28 29 22 21 29 21 23 29 23 24 29 24 25 29 25 26 29 26 27 29 27 28 29 28 22 30 31 32 31 30 33 34 35 36 35 34 37 38 39 40 39 38 41 42 43 44 43 42 45 46 47 48 47 46 49 50 51 52 51 50 53 54 55 56 55 54 57 58 59 60 59 58 61 62 63 64 63 62 65 66 67 68 67 66 69 70 71 72 71 70 73 74 75 76 75 74 77 78 79 80 79 78 81 82 83 84 83 82 85
      
    Mesh Object 1
    Type:19
    ID: 27
    MaxVertexList: 26
    MaxFaceList: 26
    Parent Index: 27
    LocalTM:
    3.783506E-44 3.783506E-44 3.783506E-44 3.783506E-44
    3.783506E-44 2.802597E-44 2.802597E-44 2.802597E-44
    2.802597E-44 2.802597E-44 2.802597E-44 2.942727E-44
    2.942727E-44 3.082857E-44 3.082857E-44 3.082857E-44
    V : {X:3.643376E-44 Y:3.363116E-44 Z:3.363116E-44}
    V : {X:3.363116E-44 Y:3.363116E-44 Z:3.222986E-44}
    V : {X:3.222986E-44 Y:3.363116E-44 Z:3.363116E-44}
    V : {X:3.082857E-44 Y:3.082857E-44 Z:3.222986E-44}
    V : {X:3.222986E-44 Y:2.942727E-44 Z:2.942727E-44}
    V : {X:3.082857E-44 Y:3.082857E-44 Z:2.942727E-44}
    V : {X:2.942727E-44 Y:2.942727E-44 Z:2.942727E-44}
    V : {X:2.662467E-44 Y:2.662467E-44 Z:2.802597E-44}
    V : {X:2.802597E-44 Y:1.401298E-45 Z:0}
    V : {X:1 Y:1 Z:1}
    V : {X:0 Y:1 Z:1}
    V : {X:1 Y:0 Z:0.9}
    V : {X:0.9 Y:0.9 Z:0}
    V : {X:0 Y:0 Z:0}
    V : {X:0 Y:0 Z:2.101948E-44}
    V : {X:1.747124E+19 Y:1.281315E-11 Z:1.285311E+22}
    V : {X:2.359268E-38 Y:0 Z:5.368709E+08}
    V : {X:0 Y:2.407412E-35 Z:-1.701412E+38}
    V : {X:0 Y:0 Z:0}
    V : {X:0 Y:0 Z:0}
    V : {X:0 Y:0 Z:0}
    V : {X:0 Y:0 Z:0}
    V : {X:0 Y:0 Z:0}
    V : {X:0 Y:0 Z:0}
    V : {X:0 Y:0 Z:0}
    V : {X:0 Y:0 Z:0}
    13158 3129 29661 44351 13429 3901 44826 36669 28715 45887 14174 52285 15322 16957 24127 5439 30587 64828 13163 12601 23980 1343 43360 20284 54047 8765


    The first mesh object reads fine but the second object is off by a little bit in some spots. Just wanted to show that I'm not bullshitting anyone here.
    Last edited by GlaphanKing; 06-10-11 at 01:40 AM.



Page 2 of 12 FirstFirst 12345678910 ... LastLast

Advertisement