Hi,
I've tried out the idea, earlier raised by chp http://forums.ps2dev.org/viewtopic.php?p=21122#21122, that both morphing and skinning can be combined on psp GPU.
And guess what?... It actually works :) Several blend targets can be first lerped together and then matrix skinning can be applied to resulting vertex. Here is the sample demonstrating the technique in action:
http://rej.50megs.com/psp/morphskin
This feature enables usage of sophisticated animation of texture coords, vertex color animation, geometry morph-targets along with skinning. As well some matrix skinning problems can be fixed (like elbows) using patches with applied morph targets - if anyone ever would care about that on psp ;)
Sample demonstrating simultaneous Morphing and Skinning
Re: Sample demonstrating simultaneous Morphing and Skinning
Cool, I've been meaning to try this out. Do all the vertex attributes get interpolated by morping? Hm, I see at least vertex and colour; I guess texcoords, weights and normals too.ReJ wrote:I've tried out the idea, earlier raised by chp http://forums.ps2dev.org/viewtopic.php?p=21122#21122, that both morphing and skinning can be combined on psp GPU.
And guess what?... It actually works :)
But, oof, the performance seems slow. Must really be hitting the GE hard.
Re: Sample demonstrating simultaneous Morphing and Skinning
ReJ wrote:I've tried out the idea, earlier raised by chp http://forums.ps2dev.org/viewtopic.php?p=21122#21122, that both morphing and skinning can be combined on psp GPU.
And guess what?... It actually works :)
Yes, all vertex attributes are interpolated by morphing.jsgf wrote:Cool, I've been meaning to try this out. Do all the vertex attributes get interpolated by morping? Hm, I see at least vertex and colour; I guess texcoords, weights and normals too.
It is 9216 vertices, 2 morph targets and 8 bones per vertex. And vertices in the sample are huge - 68bytes. Lots of work for GE.jsgf wrote:But, oof, the performance seems slow. Must really be hitting the GE hard.
I'll do a bit of performance testing with different number of bones and morph targets later on.