void ARuntimeMeshActor::OnConstruction(const FTransform& Transform)
{
	if (bRunGenerateMeshesOnConstruction)
	{
		GenerateMeshes();
	}
}
Exemplo n.º 2
0
void mx_LevelGenerator::Generate()
{
	MX_ASSERT( room_count_ == 0 );
	MX_ASSERT( connection_count_ == 0 );

	PlaceRooms();
	PlaceConnections();
	CalculateLinkage();

	GenerateMeshes();
	CalculateNormals();
	CalculateTextureCoordinates();
	SetupTextures();
}
void ARuntimeMeshActor::BeginPlay()
{
	bool bIsGameWorld = GetWorld() && GetWorld()->IsGameWorld() && !GetWorld()->IsPreviewWorld() && !GetWorld()->IsEditorWorld();

	bool bHadSerializedMeshData = false;
	if (RuntimeMeshComponent)
	{
		URuntimeMesh* Mesh = RuntimeMeshComponent->GetRuntimeMesh();
		if (Mesh)
		{
			bHadSerializedMeshData = Mesh->HasSerializedMeshData();
		}
	}

	if ((bIsGameWorld && !bHadSerializedMeshData) || bRunGenerateMeshesOnBeginPlay)
	{
		GenerateMeshes();
	}
}