Что делать, если указал в имгуи кодировку перед imgui.Text, u8, а в игре, отображаются символы?

Shepi

Активный
Автор темы
178
37
Версия MoonLoader
.026-beta
Вообщем, в самой функции imgui.OnDrawFrame имеются такие строки:

if imgui.CollapsingHeader(u8'Заголовок') then
imgui.Text(u8'текст')
end

Но, в игре, вместо русских букв вылезают иероглифы..
1628878556519.png

Помогите пожалуйста.
 

Gorskin

♥ Love Lua ♥
Проверенный
1,333
1,169
Вообщем, в самой функции imgui.OnDrawFrame имеются такие строки:

if imgui.CollapsingHeader(u8'Заголовок') then
imgui.Text(u8'текст')
end

Но, в игре, вместо русских букв вылезают иероглифы..
Посмотреть вложение 109982
Помогите пожалуйста.
где-то выше main():
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8
 

PanSeek

t.me/dailypanseek
Всефорумный модератор
908
1,775
Файл в utf-8 сохранен был, нужен CP1251.
У меня все нормально:
Lua:
local imgui = require 'mimgui'
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8

local mainFrame = imgui.OnFrame(
function() return true end,
function(self)
    imgui.Begin(u8"Тест1")
    if imgui.CollapsingHeader(u8'Заголовок') then
        imgui.Text(u8'Текст')
    end
    imgui.End()
end)
1628880281972.png

1628880291610.png
 
  • Нравится
Реакции: James Saula

Shepi

Активный
Автор темы
178
37
Файл в utf-8 сохранен был, нужен CP1251.
У меня все нормально:
Lua:
local imgui = require 'mimgui'
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8

local mainFrame = imgui.OnFrame(
function() return true end,
function(self)
    imgui.Begin(u8"Тест1")
    if imgui.CollapsingHeader(u8'Заголовок') then
        imgui.Text(u8'Текст')
    end
    imgui.End()
end)
это, а что это за ошибка?
[ML] (error) eg: D:\sbork\moonloader\eg.lua:10: attempt to call field 'ImBool' (a nil value)
stack traceback:
D:\sbork\moonloader\eg.lua:10: in main chunk
 

PanSeek

t.me/dailypanseek
Всефорумный модератор
908
1,775
это, а что это за ошибка?
[ML] (error) eg: D:\sbork\moonloader\eg.lua:10: attempt to call field 'ImBool' (a nil value)
stack traceback:
D:\sbork\moonloader\eg.lua:10: in main chunk
Не объявлена переменная исходя из ошибки. Я не знаю что у тебя там.
И зачем старым 1.52 пользоваться..
Вот под 1.52 ImGui:
Lua:
local imgui = require 'imgui'
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8

function main()
    imgui.Process = true
end

function imgui.OnDrawFrame()
    imgui.Begin(u8"Тест1")
    if imgui.CollapsingHeader(u8'Заголовок') then
        imgui.Text(u8'Текст')
    end
    imgui.End()
end
 
  • Нравится
Реакции: James Saula

Shepi

Активный
Автор темы
178
37
Не объявлена переменная исходя из ошибки. Я не знаю что у тебя там.
И зачем старым 1.52 пользоваться..
Вот под 1.52 ImGui:
Lua:
local imgui = require 'imgui'
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8

function main()
    imgui.Process = true
end

function imgui.OnDrawFrame()
    imgui.Begin(u8"Тест1")
    if imgui.CollapsingHeader(u8'Заголовок') then
        imgui.Text(u8'Текст')
    end
    imgui.End()
end
Заменил всё так, как у тебя было написано, результат:
1628882654504.png