Roja Report post Posted November 5, 2011 I was working on a new emote(a salute when I encountered this problem viewing it in world: http://www.eternal-lands.com/misc/bug_fingerbone.jpg The one on the left is in world, the one on the right is from Blender. As you can see the one in world looks kinda mangled, like the bone is bent wrong. However it looks perfectly fine in blender AND in the cal3d viewer. So it seems to be something in the client. Can anyone take a look at this problem? I can send this emote file if needed of course. If no one can fix it then...that's how it's gonna look when the update comes, cause I tried everything on my end that I could think of Share this post Link to post Share on other sites
Schmurk Report post Posted November 5, 2011 Hello Roja Do you have this problem only when UVP is set to 1 or also when it is set to 0? Share this post Link to post Share on other sites
revi Report post Posted November 5, 2011 Are you sure it's the finger bones bending the wrong way? For me, it looks like the back of the hand is deformed in world, as if it's at least twice as thick as it should be. If you follow the line along the palm to the pinkie, it looks ok (that is the under/inner side of the hand, at the lower edge of the hand in the image) Share this post Link to post Share on other sites
Roja Report post Posted November 5, 2011 Ah..that was it Schmurk. When I set UVP to 0 it works correctly Share this post Link to post Share on other sites
Schmurk Report post Posted November 6, 2011 Ok. Xaphier would probably have more clues than me about it but I can try to look at it and see if I can find anything... By the way, it's probably the same bug you've found some time ago when you said that the boots of the char was not exactly at the same position with UVP 0 and 1. Could you put the emote file somewhere online or send it to me by mail please? Share this post Link to post Share on other sites
Schmurk Report post Posted November 8, 2011 Good news, I found the bug! The problem comes from the weights of the vertices that are compressed on 8 bits when they are passed to the vertex program. We are loosing some precision when we do that so I've just changed the conversion by rounding the value instead of trunking it and it reduces the effect. It's still not perfect but it's much better. I will commit the change this evening after the work... Share this post Link to post Share on other sites
Roja Report post Posted November 8, 2011 Ok thanks so much Schmurk! Share this post Link to post Share on other sites
Schmurk Report post Posted November 8, 2011 It's committed so you can try it. Please tell me if it solves your problem correctly... Share this post Link to post Share on other sites
Roja Report post Posted November 9, 2011 Do I need to compile with any special setting? I don't notice any difference. I do however notice a LOT of vertices moving when i turn on/off the use animation program, also the lighting changes on the models. Share this post Link to post Share on other sites
Schmurk Report post Posted November 9, 2011 No you don't. Yes there are a lot of vertices moving but there should be less with the fix. Can you verify that you have this in the actor_init.cpp file at line 581: buffer[i].m_weight[j] = (Uint8)(weight_buffer[i * 4 + j] * 255.0f + 0.5f); If yes then it should work correctly. If it's not working, there's probably a mistake somewhere else. Are you sure to launch the good exe file? On my side, I've tested with human, dwarf and elf models in case they were different and they all works. Share this post Link to post Share on other sites
Roja Report post Posted November 9, 2011 Alrighty now I got it. Yes it looks great!! Thank you so much! Share this post Link to post Share on other sites
Schmurk Report post Posted November 9, 2011 Ok, great! Share this post Link to post Share on other sites