def readFaceShapes(human, drivers, t0, t1): shapeList = [] shapes = {} t,dt = initTimes(list(drivers.keys()), 0.0, 1.0) for name,value in list(drivers.items()): (fname, bone, channel, sign, min, max) = value if (name[-2:] in ["_L", "_R"]): lr = "LR" sname = name[:-2] t += 2*dt else: lr = "Sym" sname = name t += dt try: shape = shapes[fname] doLoad = False except: doLoad = True if doLoad: gui3d.app.progress(t, text="Reading face shape %s" % fname) shape = warpmodifier.compileWarpTarget( 'shared/mhx/targets/body_language/${gender}-${age}/%s.target' % fname, "GenderAge", human, "face") shapes[fname] = shape shapeList.append((sname, shape, lr, min, max)) shapeList.sort() return shapeList
def readFaceShapes(human, drivers, t0, t1): shapeList = [] shapes = {} t, dt = initTimes(drivers.keys(), 0.0, 1.0) for name, value in drivers.items(): (fname, bone, channel, sign, min, max) = value if (name[-2:] in ["_L", "_R"]): lr = "LR" sname = name[:-2] t += 2 * dt else: lr = "Sym" sname = name t += dt try: shape = shapes[fname] doLoad = False except: doLoad = True if doLoad: gui3d.app.progress(t, text="Reading face shape %s" % fname) shape = warpmodifier.compileWarpTarget( 'shared/mhx/targets/body_language/${gender}-${age}/%s.target' % fname, "GenderAge", human, "face") shapes[fname] = shape shapeList.append((sname, shape, lr, min, max)) shapeList.sort() return shapeList
def readCorrectives(drivers, human, folder, landmarks, t0, t1): shapeList = [] t, dt = initTimes(drivers, 0.0, 1.0) for (pose, lr, expr, vars) in drivers: gui3d.app.progress(t, text="Reading corrective %s %s" % (folder, pose)) shape = warpmodifier.compileWarpTarget( "shared/mhx/targets/correctives/%s/caucasian/${gender}-${age}-${tone}-${weight}/%s.target" % (folder, pose), 'GenderAgeToneWeight', human, landmarks) shapeList.append((shape, pose, lr)) t += dt return shapeList
def readExpressionUnits(human, t0, t1): shapeList = [] t, dt = initTimes(ExpressionUnits, 0.0, 1.0) for name in ExpressionUnits: gui3d.app.progress(t, text="Reading expression %s" % name) shape = warpmodifier.compileWarpTarget( 'data/targets/expression/units/${ethnic}/${gender}_${age}/%s.target' % name, "GenderAgeEthnic", human, "face") shapeList.append((name, shape)) t += dt return shapeList
def readExpressionUnits(human, t0, t1, progressCallback = None): targetList = [] t,dt = initTimes(getExpressionUnits(), 0.0, 1.0) referenceVariables = { 'gender': 'female', 'age': 'young' } for name in getExpressionUnits(): if progressCallback: progressCallback(t, text="Reading expression %s" % name) target = warpmodifier.compileWarpTarget('expression-units', name, human, "face", referenceVariables) targetList.append((name, target)) t += dt return targetList
def readCorrectives(drivers, human, folder, landmarks, t0, t1): shapeList = [] t,dt = initTimes(drivers, 0.0, 1.0) for (pose, lr, expr, vars) in drivers: gui3d.app.progress(t, text="Reading corrective %s %s" % (folder, pose)) shape = warpmodifier.compileWarpTarget( "shared/mhx/targets/correctives/%s/caucasian/${gender}-${age}-${tone}-${weight}/%s.target" % (folder, pose), 'GenderAgeToneWeight', human, landmarks) shapeList.append((shape, pose, lr)) t += dt return shapeList
def readExpressionUnits(human, t0, t1): print "REU", human shapeList = [] t,dt = initTimes(ExpressionUnits, 0.0, 1.0) for name in ExpressionUnits: gui3d.app.progress(t, text="Reading expression %s" % name) shape = warpmodifier.compileWarpTarget( 'data/targets/expression/units/${ethnic}/${gender}_${age}/%s.target' % name, "GenderAgeEthnic", human, "face") shapeList.append((name, shape)) t += dt return shapeList
def readCorrectives(drivers, human, part): shapeList = [] warpmodifier.resetWarpTargets(human) for (pose, lr, expr, vars) in drivers: print "Corrective", part, pose if warp.numpy: shape = warpmodifier.compileWarpTarget( "shared/mhx/targets/correctives/%s/${ethnic}/${gender}-${age}/%s.target" % (part, pose), "GenderAgeEthnicModifier", human, part, ) else: shape = loopGendersAges((part, pose), human, "Corrective") shapeList.append((shape, pose, lr)) return shapeList
def readExpressionUnits(human, t0, t1): shapeList = [] warpmodifier.resetWarpTargets(human) dt = t1 - t0 n = len(Expressions) if n > 0: dt /= n t = t0 for name in ExpressionUnits: gui3d.app.progress(t, text="Reading expression %s" % name) if warp.numpy: shape = warpmodifier.compileWarpTarget( "data/targets/expression/units/${ethnic}/${gender}_${age}/%s.target" % name, "GenderAgeEthnicModifier2", human, "face", ) else: shape = loopGendersAges(name, human, "ExpressionUnits") shapeList.append((name, shape)) t += dt return shapeList
def readFaceShapes(human, drivers, t0, t1): shapeList = [] shapes = {} warpmodifier.resetWarpTargets(human) dt = t1 - t0 n = len(drivers.keys()) if n > 0: dt /= n t = t0 for name, value in drivers.items(): (fname, bone, channel, sign, min, max) = value if name[-2:] in ["_L", "_R"]: lr = "LR" sname = name[:-2] else: lr = "Sym" sname = name try: shape = shapes[fname] doLoad = False except: doLoad = True if doLoad: gui3d.app.progress(t, text="Reading face shape %s" % fname) if warp.numpy: shape = warpmodifier.compileWarpTarget( "shared/mhx/targets/body_language/${gender}-${age}/%s.target" % fname, "GenderAgeEthnicModifier", human, "face", ) else: shape = readShape("shared/mhx/targets/body_language/female-young/%s.target" % fname) shapes[fname] = shape shapeList.append((sname, shape, lr, min, max)) t += dt shapeList.sort() return shapeList