Altseed2
Altseed2 copied to clipboard
親子関係を持つノードの間でIsDrawnActuallyの状態が同期されないことがある
Describe the bug/概要
親子関係のあるノード群で、親ノードが IsDrawn == false
の状態で親を Engine.AddNode
すると子が IsDrawnActually == true になる問題があるみたいです。
Environment/環境
-
OS: Windows 11
-
Graphics:
-
Altseed2 version: 2.2.2
To Reproduce/再現手順
以下のコードで再現します。 最初の100フレームの間は親が表示されず、子は表示されます。 次の100フレームの間は親は表示され、子も表示されます。 その後は、親も子も表示されません。
using Altseed2;
Engine.Initialize("AltseedIsDrawnError", 640, 480);
var node = new CircleNode()
{
Color = new Color(255, 255, 255, 255),
Position = new Vector2F(320, 240),
Radius = 5
};
var node2 = new CircleNode()
{
Color = new Color(255, 0, 0, 255),
Position = new Vector2F(40, 40),
Radius = 5
};
node.AddChildNode(node2);
node.IsDrawn = false;
Engine.AddNode(node);
int frame = 0;
while (Engine.DoEvents())
{
Engine.Update();
++frame;
if (frame == 100)
{
node.IsDrawn = true;
}
else if (frame == 200)
{
node.IsDrawn = false;
}
}
Engine.Terminate();
Expected behavior/期待される動作
上のコードで、起動した直後から親ノードも子ノードも表示されないほうが望ましいのではないかと思います。