所以Panda3D有这个选项,通过使用参数“bakeInStart”更新Lerp间隔的起始位置,如果我们将其设置为0。但是,我找不到解决这个问题的方法,即每次有一个新的Lerp间隔循环迭代时都要更新end HPR(偏航、俯仰、横滚)值。为了达到预期的效果,我已经设法解决了这个问题,但是必须编写整个屏幕的代码(因为按顺序编写了多个间隔)。到目前为止,我一直在尝试将代码最小化:
self.rotateTargets(0)
def rotateTargets(self, angle):
# Create Lerp intervals for each target orbit node to rotate all of the targets
# in a parallel sequence with easing
self.angle = angle
self.rotateTargets = Sequence(
Parallel(
LerpHprInterval(self.orbitNodes["orbit0"], 4, Point3(0, 0, self.angle+90), blendType = "easeInOut", bakeInStart = 0),
name = "rotateTargets0"), Func(self.targetReparent(self.orbitNodes["orbit0"].getR()))
self.rotateTargets.loop()
def targetReparent(self, newAngle):
# Define new angle
self.newAngle = newAngle
self.angle = self.newAngle
断言错误出现在控制台中,但它与导入的函数有关,而不是我的代码。在
目前没有回答
相关问题 更多 >
编程相关推荐