Download

请教用c++生成立方体的问题

void CreateGeoBrush(UWorld* world, FVector* size)
{
UCubeBuilder* cubeBuilder = Cast<UCubeBuilder>(GEditor->FindBrushBuilder(UCubeBuilder::StaticClass()));
cubeBuilder->X =size.X;
cubeBuilder->Y = size.Y;
cubeBuilder->Z = size.Z;
cubeBuilder->Build(world);
GEditor->Exec(World, TEXT(“Brush Added”));
}

用geometry brush在level里生成立方体的代码,但是。。上面这段代码执行了但是在editor里并没有创建立方体。。
上面这段调用的时候world的worldtype是PIE,貌似也没有选错world。。
是不是哪个地方不对?

PS:AnswerHub去年就有人问过这个问题了。。但是貌似一直到现在也没解决。。求论坛里大神帮忙看一下,万分感谢。
PPS:顺便求一下能在editor里生成actor的c++的相关代码, BP里spawnActor的代码生成的不会出现在editor的outliner里,因为需要手动修改一部分actor的位置大小。如果有做过的请大概告知一下是哪一段代码我自己找也行。。自己从editor的源代码里断了各种鼠标的OnDrop函数还是没找到。。

自己解决了:
GEditor->Exec(World, TEXT(“Brush Added”));
改成
GEditor->Exec(World, TEXT(“Brush Add”));
问题解决了。。
exec的第二个参数是命令,不是传递到log的字符串。。。我一开始搞错了。
顺便测试了一下,命令不区分大小写