我正在为Unity 5上的Android平板电脑制作数字图书。我正在使用资产商店中的这个Page Curl插件。
我有3个主要的平面:LeftPage,RightPage和TurningPage,我保留了一个索引,我正在寻找每个页面的页面,这样我就可以管理相应的纹理。当我点击其中一个左页或右页时,翻页动画开始播放,当它结束时,我更新索引值和相应的纹理。
它在Unity Editor中运行完美,并且在平板电脑中与Unity Remote完美配合,但是当我运行已安装的apk时,翻页始终显示在开始时分配的纹理。左右页面工作正常。
打印指定的纹理名称( pageFront.mainTexture.name )我得到了与页面索引值相同的正确纹理,但TurningPage一直显示初始值( indPage = 0 )纹理。
所有纹理都在Texture2D数组的编辑器上进行了对齐。
void Update()
{
...
// If click is in one of four defined areas.
if (mouseX > 970 && mouseX < 1024 && canFlipFwd)
{
if (mouseY > 250 && mouseY < 710)
{
clickCase = 1; // Play animation 1.
changePageFwd();
}
else if (mouseY > 50 && mouseY <= 250)
{
clickCase = 2; // Play animation 2.
changePageFwd();
}
}
else
{
...
}
}
void PageFlipOver(bool pageTurned)
{
if (pageTurned)
{
// Update page index.
indRight += 2;
indPage += 2;
if (indLeft + 2 < pages.Length)
{
indLeft += 2;
leftBackground.mainTexture = pages[indLeft];
if (indLeft + 2 < pages.Length)
pageBack.mainTexture = pages[indLeft + 2];
else
pageBack.mainTexture = pages[indLeft];
}
if (!canFlipBkw)
canFlipBkw = true;
}
canFlip = true;
}
void changePageFwd()
{
if (indRight < pages.Length)
{
rightBackground.mainTexture = pages[indRight];
}
else
{
rightBackground.mainTexture = alpha;
canFlipFwd = false;
}
if (indPage < pages.Length)
pageFront.mainTexture = pages[indPage];
}
欢迎任何帮助,我一直坚持这两个弱点,我找不到什么错误。