Пару вопросов о дизайне в Imgui

alex_siz2

Новичок
Автор темы
8
0
Версия MoonLoader
.027.0-preview
Вообщем хочу сделать красивое меню в Imgui но вот дело в том что я не знаю как, хочу спросить у вас как сделать к примеру из
Этого:
Screenshot.png

Вот Это:
Screenshot (1).png

Меня просто не устраивает длина Слайдера ибо из за длины слайдера не видно текст в окне и вообщем не очень смотрится, еще вообщем хочу сделать секции.
Типо Этого:
BXG41ZW.png

Ну и еще кое что, как сделать окно Imgui в центр и убрать вот это:
Screenshot (2).png


Заранее спасибо всем тем кто сможет хоть чем-то помочь, Всем спасибо на этом все.
P.S На счет imgui.Input опять таки не знаю как сделать его меньше ибо не смотрится. (еще раз спасибо)
 

Quasper

Известный
834
354
1 и 5
Lua:
imgui.PushItemWidth(30.0)
imgui.SliderInt(...) --вместо слайдера может быть любой другой элемент
imgui.PopItemWidth()
второе, третье и четвертое
Lua:
function imgui.OnDrawFrame()
--допустим у тебя окно размерами 500х500
local resolX, resolY = getScreenResolution() --получаем разрешение
local posX, posY = resolX / 2 - 250, resolY / 2 - 250 --ширину окна делим на 2 и вычитаем половину размера будущего окна по X, с Y аналогично
    if main_window.v then
    imgui.SetNextWindowSize(imgui.ImVec2(), imgui.Cond.FirstUseEver) -- флаг imgui.Cond.FirstUseEver устанавливает позицию при первоначальном рендере
    imgui.SetNextWindowPos(imgui.ImVec2(posX, posY), imgui.Cond.FirstUseEver)  -- [[ну теперь собственно устанавливаем позицию окна
    уберёшь флаг и окно будет по дефолту с каждым запуском в центре]]
        imgui.Begin("Main menu", main_window, imgui.WindowFlags.NoResize) --флаг NoResize убирает возможность менять размер
            imgui.SetCursorPos(imgui.ImVec2(X, Y)) -- устанавливаем первоначальные коорды рендера по X и Y(координаты окна имгуи)
                imgui.BeginChild("Name", imgui.ImVec2(sizeX, sizeY), true)--sizeX, sizeY - размеры. true - обводка
                    --тут элементы
                imgui.EndChild()
            imgui.SetCursorPos(imgui.ImVec2(X, Y)) -- опять же устанавливаем начальные коорды рендера
            --ну и тут опять чилд и т.д
        imgui.End()
    end
end
 
  • Нравится
Реакции: Tranzit