📘

[UE5]ComboBoxで画面解像度変更

2024/02/15に公開

コンフィグ画面作成中…

画面解像度設定のための項目。最初は

https://youtu.be/zLNY1a_9wHE?si=0Usf6iiH464P8Tb2

https://ue5exp0.com/ultimate_menu/

上記を参考に作成していましたが、パッドでの操作がうまくいかず、comboBoxでの使用を考えました。

https://docs.unrealengine.com/5.3/en-US/BlueprintAPI/ComboBox/

いわゆるドロップダウンメニューです。
まずウィジェットにcomboBoxを配置し、関数getResolutionを作成。



ウィンドウモードとフルスクリーンモードで取れる数値が違うらしいので2回foreachしています。
(本当はもっとこの辺考慮するべきなのでしょうが

Int Pointを分解してappend、comboBoxに加えていきます。
現在のモードを取得してデフォルトにセットします。

参考
https://www.youtube.com/watch?v=lT1Wq2Tdt6U&t=92s

getResolutionをconstructに繋ぎます。

あとはchangevalueをトリガーにして変更します
appendした時と同じ文字列でsplitして渡します

動かしただけで変わってしまうので、Applyは別のボタンで決定するなどの仕様の方がいいかもしれません。
windowモードとの関係がありそうなので同画面で決定するのは難しいかなと思い今回はこのような実装にしてみました。

config周り全般に言えることですが、PIEモードで動作せずスタンドアロンでも完全な再現とは行かないようです。

Discussion