Как получить компонент изображения из чертежа в C ++ - PullRequest
0 голосов
/ 25 апреля 2020

У меня есть диалоговое окно со значком символа, и мне нужно иметь возможность настроить это изображение в коде. Но я не знаю, как получить доступ к этому компоненту Image (я помещаю в него материальные экземпляры).

.h

UPROPERTY(EditAnywhere) TSubclassOf<UUserWidget> widgetDialogBottom;
UUserWidget* widgetDialogBottomInstance;

. cpp

widgetDialogBottomInstance = CreateWidget<UUserWidget>(GetWorld(), widgetDialogBottom);
widgetDialogBottomInstance->Image("mi_dialog_2"); // Need something like this
widgetDialogBottomInstance->AddToViewport();

enter image description here

enter image description here

Я создал класс DialogBottomWidget:

.h

UCLASS()
class HOME_API UDialogBottomWidget : public UUserWidget 
{ 
        GENERATED_BODY()

    public: 
        void SetImage(UTexture2D* InTexture);

    private: 
        UPROPERTY(meta = (BindWidget)) UImage* CharacterPreview;
};

. cpp

#include "DialogBottomWidget.h"

void UDialogBottomWidget::SetImage(UTexture2D* InTexture)
{
    CharacterPreview->SetBrushFromTexture(InTexture);
}

.. а затем я сделал проект на основе в этом классе. Что мне теперь делать?

Я могу получить ссылку на изображение MaterialInstanceConstant'/Game/Materials/Faces/mi_dialog_2.mi_dialog_2', но как поместить его в компонент изображения чертежа?

enter image description here

...