DrawList

W1ll04eison

Участник
Автор темы
328
19
Версия MoonLoader
.026-beta
Когда я создаю прямоугольник в imgui окне, дополнительно, помимо imgui окна открывается некое imgui окно с названием "Debug"(которого у меня просто нету).


код:
imgui.SetCursorPos(imgui.ImVec2(0, 0))
imgui.SetCursorPos(imgui.ImVec2(0, 0))
local pos = imgui.GetCursorScreenPos()
local im4 = imgui.ImColor(imgui.ImVec4(1.0, 0.25, 0.25, 1.00))
local im2 = imgui.ImColor(imgui.ImVec4(1.0, 0.25, 0.25, 1.00))
imgui.GetWindowDrawList():AddRectFilled(imgui.ImVec2(pos.x, pos.y), imgui.ImVec2(pos.x + 900, pos.y + 60), im4:GetU32(),im2:GetU32(),im2:GetU32(),im4:GetU32())

Подскажите, как это пофиксить и как правильно добавлять DeawList в imgui окно
 
Решение
Lua:
    if array.test_window_state.v then

        local drawList = imgui.GetWindowDrawList()

        local iScreenWidth, iScreenHeight = getScreenResolution()
        local sw, sh = getScreenResolution()
        imgui.ShowCursor = true
        imgui.SetNextWindowPos(imgui.ImVec2(sw / 2, sh / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.PushStyleColor(imgui.Col.WindowBg, imgui.ImVec4(0.09, 0.09, 0.09, 1.00))
        imgui.SetNextWindowSize(imgui.ImVec2(750, 364), imgui.Cond.FirstUseEver)

        imgui.Begin(u8"Меню скрипта", nil, imgui.WindowFlags.NoResize + imgui.WindowFlags.NoCollapse + imgui.WindowFlags.NoMove + imgui.WindowFlags.NoTitleBar + imgui.WindowFlags.NoScrollbar)

            if glavnoe_okno then...

ARMOR

kjor32 is legend
Модератор
4,852
6,081
 

W1ll04eison

Участник
Автор темы
328
19
Я это читал.
НО!
В какое место это пемещять ?
 

W1ll04eison

Участник
Автор темы
328
19
После imgui.Begin() и перед imgui.End(). Типо в окне самом
Смотри, все так и сделал.

Ввожу команду открытия imgui окна - открывается мое imgui окно и + открывается imgui окно с названием "Debug"(которого у меня нету, я без понятия что оно появилось, оно появляется именно когда я вставляю в код, в imgui окно DrawList).
mg 19-10-2022 20-13-37 [0].png


Когда я перетаскиваю неизвестное imgui окно с названием "Debug" на то место, где находиться DrawList - там появляется квадрат(пока туда не передвину его, там не будет квадрата)
mg 19-10-2022 20-13-45 [1].png
 

W1ll04eison

Участник
Автор темы
328
19
Lua:
    if array.test_window_state.v then

        local drawList = imgui.GetWindowDrawList()

        local iScreenWidth, iScreenHeight = getScreenResolution()
        local sw, sh = getScreenResolution()
        imgui.ShowCursor = true
        imgui.SetNextWindowPos(imgui.ImVec2(sw / 2, sh / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.PushStyleColor(imgui.Col.WindowBg, imgui.ImVec4(0.09, 0.09, 0.09, 1.00))
        imgui.SetNextWindowSize(imgui.ImVec2(750, 364), imgui.Cond.FirstUseEver)

        imgui.Begin(u8"Меню скрипта", nil, imgui.WindowFlags.NoResize + imgui.WindowFlags.NoCollapse + imgui.WindowFlags.NoMove + imgui.WindowFlags.NoTitleBar + imgui.WindowFlags.NoScrollbar)

            if glavnoe_okno then

                imgui.SetCursorPos(imgui.ImVec2(5 + 35, 85))
                local p = imgui.GetCursorScreenPos()
                drawList:AddRectFilled(p, imgui.ImVec2(p.x + 30, p.y + 30), 0xFF0000ff)
            end
        imgui.End()
    end

Часть кода, там, где находиться DrawList.
Если кидать весь код, то там свыше 6к строк
 

ARMOR

kjor32 is legend
Модератор
4,852
6,081
Lua:
    if array.test_window_state.v then

        local drawList = imgui.GetWindowDrawList()

        local iScreenWidth, iScreenHeight = getScreenResolution()
        local sw, sh = getScreenResolution()
        imgui.ShowCursor = true
        imgui.SetNextWindowPos(imgui.ImVec2(sw / 2, sh / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.PushStyleColor(imgui.Col.WindowBg, imgui.ImVec4(0.09, 0.09, 0.09, 1.00))
        imgui.SetNextWindowSize(imgui.ImVec2(750, 364), imgui.Cond.FirstUseEver)

        imgui.Begin(u8"Меню скрипта", nil, imgui.WindowFlags.NoResize + imgui.WindowFlags.NoCollapse + imgui.WindowFlags.NoMove + imgui.WindowFlags.NoTitleBar + imgui.WindowFlags.NoScrollbar)

            if glavnoe_okno then

                imgui.SetCursorPos(imgui.ImVec2(5 + 35, 85))
                local p = imgui.GetCursorScreenPos()
                drawList:AddRectFilled(p, imgui.ImVec2(p.x + 30, p.y + 30), 0xFF0000ff)
            end
        imgui.End()
    end

Часть кода, там, где находиться DrawList.
Если кидать весь код, то там свыше 6к строк
Lua:
local drawList = imgui.GetWindowDrawList()
После imgui.Begin
 
  • Нравится
Реакции: W1ll04eison