我有一个生成器游戏对象,随机生成2个掉落的预制件。
生成器的第一个版本仅包含生成系统,并且下降效果是预制件所具有的一个组件,问题是我希望随着游戏的进行,SpawnRatio的下降速度和同步性将提高,因此我合并了将生成和掉落的系统放到生成器游戏对象中,现在由于某种原因这些对象正在生成但没有掉落。
async export(comp, doc, save) {
// create pdf file
let height = REPORT_PAGE.top;
const header = comp.reportHeader.nativeElement;
const headerCanvas = await html2canvas(header, {svgRendering: true});
height = REPORT_PAGE.top;
let imgHeightHtml = REPORT_PAGE.header * REPORT_PAGE.width / headerCanvas.width;
let contentDataURL = headerCanvas.toDataURL('image/png');
doc.addImage(contentDataURL, 'PNG', REPORT_PAGE.left, height, REPORT_PAGE.width, imgHeightHtml);
if (save) {
doc.save('myreport.pdf');
} else {
doc.addPage();
}
}
答案 0 :(得分:3)
问题在于,每个生成的对象仅调用一次Vector.Translate
。您需要在每一帧中都调用它,以使运动继续进行。
最好在立方体和圆形预制件上附加一个单独的运动脚本,以在其自己的Update()函数中调用Vector.Translate
。
要处理增加的下降速度,您可以让新的运动脚本从生成器脚本中引用一个fallSpeed
变量来调整Vector.Translate
的速度。
speed = spawner.GetComponent<Random_Spawn>().fallSpeed;