Pandas3D更新终端

2024-06-08 12:33:49 发布

您现在位置:Python中文网/ 问答频道 /正文

所以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

断言错误出现在控制台中,但它与导入的函数有关,而不是我的代码。在


Tags: 代码self参数间隔def选项panda3dangle