Post questions about game models here, or help out others!
-
andy97
- beginner
- Posts: 36
- Joined: Sun Apr 28, 2019 1:15 pm
- Has thanked: 5 times
- Been thanked: 20 times
Post
by andy97 » Mon Aug 03, 2020 11:48 am
Hi,
I'm working on my noesis script and currently stuck at the last step: bone indices + weights. In the screenshots below, it seems like the binding is incorrect.
But in the vertice struct, those bytes are the only one I think that are bone indices and bone weights, following this struct:
Code: Select all
byte tangent[4]
byte normal[4]
byte boneId[4]
byte weight[4]
float position[3]
half texcoord[2]
The file + my script: removed
Last edited by
andy97 on Tue Aug 04, 2020 7:50 pm, edited 2 times in total.
-
shakotay2
- MEGAVETERAN

- Posts: 3461
- Joined: Fri Apr 20, 2012 9:24 am
- Location: Nexus, searching for Jim Kirk
- Has thanked: 955 times
- Been thanked: 1876 times
Post
by shakotay2 » Mon Aug 03, 2020 3:13 pm
Guess you'll get track of the problem as soon as you've found out why the ring finger of the right hand moves when the left arm moves:
.
ringfinger.jpg
You do not have the required permissions to view the files attached to this post.
-
andy97
- beginner
- Posts: 36
- Joined: Sun Apr 28, 2019 1:15 pm
- Has thanked: 5 times
- Been thanked: 20 times
Post
by andy97 » Mon Aug 03, 2020 5:38 pm
That problem is the reason I need help as is in the screenshot. Seems like all bone indices + weights in data are somehow wrong or my binding is not correct (I just read them straightforwardly without any complex step). Also in my screenshot, those two 'long' fingers seems like they were not binded to any bone. Since the skeleton is as same as your screenshot, I'm still thinking the issues are from original bone weights data .
-
episoder
- mega-veteran

- Posts: 162
- Joined: Fri Oct 16, 2015 8:05 pm
- Has thanked: 6 times
- Been thanked: 76 times
Post
by episoder » Mon Aug 03, 2020 9:16 pm
you may have to remap bones. usually the rig/bones are stored in a way that the shaders can be loaded fast. means you have a maximum amount of bones that can be loaded into shader constants per drawcall. so.. you may have to figure out how many bones the engine loads per call, and then remap the rest to the next draw call and remap those again. it's a lil finicky tbh. but...
-
Bigchillghost
- double-veteran

- Posts: 797
- Joined: Tue Jul 05, 2016 9:37 am
- Has thanked: 27 times
- Been thanked: 788 times
Post
by Bigchillghost » Tue Aug 04, 2020 1:24 pm
There're two bone index refference tables for submeshes before the vertices buffer.
indextbl.png
A pretty much common workaround for per-byte bone index format.
You do not have the required permissions to view the files attached to this post.
May you find peace in this puzzle-solving game.
Say it with action: click the
when you get helped.
-
episoder
- mega-veteran

- Posts: 162
- Joined: Fri Oct 16, 2015 8:05 pm
- Has thanked: 6 times
- Been thanked: 76 times
Post
by episoder » Tue Aug 04, 2020 2:09 pm
yes. was just reading the same. this is not dummy data. there's also another table for the 48 bones. seems not related tho. and a bunch of more numbers and "vertex"counts and structures to add or shift around. finicky stuff.

-
andy97
- beginner
- Posts: 36
- Joined: Sun Apr 28, 2019 1:15 pm
- Has thanked: 5 times
- Been thanked: 20 times
Post
by andy97 » Tue Aug 04, 2020 7:47 pm
Hi all, sorry didn't see the last 2 posts but I could figure out the same table like you guys mentioned

it worked, thanks for helping me, really appreciate it
