-
Notifications
You must be signed in to change notification settings - Fork 28
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
Working on morph targets over virtual avatar based on WebAR.rocks face landmarks #1
Comments
…ame for load_geometryFromGLTF() - see #1
Hi @Juanmaramon This error is triggered by the helper by this function: I the last commit I have added an extra argument to pick the geometry you want to use by specifying the name:
in your case it would be:
All geometries should be grouped in the root object. Best regards, |
Hi @xavierjs ! Thanks for the info, now based on FlexibleMask2 example I render some avatar face elements :) I'm using the default values on foolMaskARMetadata.json only chaging the DEFORMEDID value to
then is the DEFORMEDKEYPOINTS array with key value pairs:
with the current glb avatar file that I'm using how can I achive the same effect as the FlexibleMask2 demo? Thanks! |
Hi, You need to provide more points so that the helper can compute the mapping between landmarks and mesh keypoints. Best regards, |
Hi @xavierjs , Aligning with the mesh (https://github.com/xavierjs/WebAR.rocks.face/blob/master/demos/flexibleMask2/assets/face.glb) rotates 90º the geometry and resulting in this: What are you meaning with
Right now, the avatar is rendered at 1:1 scale and without rotations applied to it. DEFORMEDKEYPOINTS are 2D coordinates based on which origin?
Thanks! |
I opened Blender then :
Then I:
Now it works but since the keypoints are not very well positionned, the result is not great. I go back to Blender,
I also removed the ear points from foolMaskARMetadata.json. I can finish the demo as a development service if you are interested. import bmesh
def logSelected():
obj = bpy.context.object
me = obj.data
bm = bmesh.from_edit_mesh(me)
vertices = [e for e in bm.verts]
for vert in vertices:
if vert.select:
co = vert.co
print('[%f,%f,%f]' % (co.x, co.z, -co.y)) |
Hi @xavierjs,
I'm trying the face API and currently working on a basic face tracking demo (I sent you auth data on an email).
Here is the avatar glb file: https://juanmaramon.com/Test/accdemo/demos/xrs/assets/avatar.glb
Based on the Flexible mask demo I was trying to load the GLB file using
`_flexibleMaskHelper.load_geometryFromGLTF(threeLoadingManager, _spec.flexibleMaskURL).then(function(geom){
const face3DKeypoints = (_spec.flexibleMaskPoints) ? _spec.flexibleMaskPoints : WebARRocksFaceHelper.get_facePointPositions();
But it raise this error:
Error: MULTIPLE_GEOMETRIES
Does it need to be all geometry grouped on the root object?
Can you explain some of the options on the settings array?
flexibleMaskPoints and kpInfluenceDecay:
https://github.com/xavierjs/WebAR.rocks.face/blob/69df4f951a82041a121a8bac5ead2fbc3b4bc275/demos/flexibleMask/main.js#L13
Thanks!
The text was updated successfully, but these errors were encountered: