Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hi-poly upper limit? #528

Open
EoceneMiacid opened this issue Aug 26, 2023 · 3 comments
Open

Hi-poly upper limit? #528

EoceneMiacid opened this issue Aug 26, 2023 · 3 comments

Comments

@EoceneMiacid
Copy link

Hi,

I'm trying to import some models ripped from other games.

https://discord.com/channels/488393111014342656/631752549321539594/1144893890395111484

However dhewm3 doesn't like this:

dhewm3: /drive/src/dhewm3_vk_rt/neo/renderer/Model_md5.cpp:238: void idMD5Mesh::ParseMesh(idLexer&, int, const idJointMat*): Assertion `(texCoords.Num() * sizeof( idDrawVert ))<ID_MAX_ALLOCA_SIZE' failed.


Looks like dhewm3 1.5.3pre crashed with signal SIGABRT (6) - sorry!

Backtrace:
  ./dhewm3(+0x21a4ee) [0x556705def4ee]
  /usr/lib/libc.so.6(+0x3e710) [0x7f55db03e710]
  /usr/lib/libc.so.6(+0x8e83c) [0x7f55db08e83c]
  /usr/lib/libc.so.6(raise+0x18) [0x7f55db03e668]
  /usr/lib/libc.so.6(abort+0xd7) [0x7f55db0264b8]
  /usr/lib/libc.so.6(+0x263dc) [0x7f55db0263dc]
  /usr/lib/libc.so.6(+0x36d26) [0x7f55db036d26]
  ./dhewm3(+0x7d5bc) [0x556705c525bc]
  ./dhewm3(+0x7dd8b) [0x556705c52d8b]
  ./dhewm3(+0x66240) [0x556705c3b240]
  /data/games/pc/software/doom3/d3xp.so(+0x1aee6d) [0x7f559e9aee6d]
  ./dhewm3(+0xf7ac9) [0x556705cccac9]
  ./dhewm3(+0xfa008) [0x556705ccf008]
  /data/games/pc/software/doom3/d3xp.so(+0xba2ab) [0x7f559e8ba2ab]
  ./dhewm3(+0xf082c) [0x556705cc582c]
  ./dhewm3(+0xf7ac9) [0x556705cccac9]
  ./dhewm3(+0xfa008) [0x556705ccf008]
  /data/games/pc/software/doom3/d3xp.so(+0xb1de2) [0x7f559e8b1de2]
  /data/games/pc/software/doom3/d3xp.so(+0xbc03e) [0x7f559e8bc03e]
  /data/games/pc/software/doom3/d3xp.so(+0xbc2f5) [0x7f559e8bc2f5]
  /data/games/pc/software/doom3/d3xp.so(+0xbc3bd) [0x7f559e8bc3bd]
  ./dhewm3(+0x129bdd) [0x556705cfebdd]
  ./dhewm3(+0x129ef6) [0x556705cfeef6]
  ./dhewm3(+0x12a5a8) [0x556705cff5a8]
  ./dhewm3(+0xd0f69) [0x556705ca5f69]
  ./dhewm3(+0x105ab5) [0x556705cdaab5]
  ./dhewm3(+0xd5d28) [0x556705caad28]
  ./dhewm3(+0x317a5) [0x556705c067a5]
  /usr/lib/libc.so.6(+0x27cd0) [0x7f55db027cd0]
  /usr/lib/libc.so.6(__libc_start_main+0x8a) [0x7f55db027d8a]
  ./dhewm3(+0x31da5) [0x556705c06da5]

(Sorry it's not overly useful, build with libbacktrace support to get function names)

These models are much more detailed than doom3 was initially meant to handle. Is this fixable or should I forget about this altogether?

@EoceneMiacid
Copy link
Author

Found a way to make the model work correctly by splitting the mesh up by materials, so I'm not sure this bug report should remain open.

@DanielGibson
Copy link
Member

There's an experimental branch at https://github.com/DanielGibson/dhewm3/tree/scoped-alloc that should fix these issues, at least for the crashes I could reproduce.

Here are Win32 binaries of that branch: dhewm3-1.5.3pre-scopedalloc.zip

Would be great if you (or anyone) could test that branch with your high-poly models, and in case of crashes provide them here so I can reproduce them (please in a way where I can just extract your data and do testModel whatever => include the model and any required defs, materials and textures)

@DanielGibson
Copy link
Member

Have you tested that yet?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants