Unreal Engine 4
http://uengine.ru/forum/

Русские символы из с++ в ue4
http://uengine.ru/forum/viewtopic.php?f=19&t=2303
Страница 1 из 1

Автор:  SergeyBond [ 21 янв 2016, 09:59 ]
Заголовок сообщения:  Русские символы из с++ в ue4

Добрый день!
Подскажите, пожалуйста, как сделать что бы в ue4 русские слова передаваемые через переменную из с++ , были по русски а не "????" ( с английским текстом попятное дело нет проблем)

Уточнение если не понятно:
Создано в .h:

UPROPERTY(EditAnywhere, Category="Damage")
Fstring Mytext1;

в .срр:

в поле моей функции так же определенной

Mytext1="test-тест";

в редакторе кастингом вызываю мою функцию и вижу в принстринге "test-????"

Возможно нужно что то объявить в с++ ...пробовал setlocale - но он что то не проходит в коде.

Спасибо за помощь заранее.

Автор:  Zhernovoy Sergey [ 21 янв 2016, 10:58 ]
Заголовок сообщения: 

Тут дело в кодировке , если ты будешь использовать ,или точнее хочешь использовать для отладки инфу - ну выводить в лог или на экран ,то делай это используя TEXT("бла бла тут мой текст"). Так же есть другие варики ,но этот самый простой ,однако учти что запаковать проект тебе не даст всеравно ( по крайней мере в HTML5 - точно , так как для сборки исопльзуется питон 2.7 ,а он крилицу не прожовывает и будет выдавать ошибки).

Автор:  Zhernovoy Sergey [ 21 янв 2016, 11:08 ]
Заголовок сообщения: 

Пример вывода инфы для отладки через лог,консоль клиента и на экран :
Код:
         UE_LOG(INU_Log, Warning, "мой текст");           // получишь ошибку при компиляции
         ClientMessage("мой текст в консоль клиента");        // получишь ????????
         GEngine->AddOnScreenDebugMessage(-1, 0.5f, FColor::Yellow, "мой текст на экране"); // получишь ????????

         UE_LOG(INU_Log, Warning, TEXT("мой текст"));           // отобразиться нормально
         ClientMessage(TEXT("мой текст в консоль клиента"));        // отобразиться нормально
         GEngine->AddOnScreenDebugMessage(-1, 0.5f, FColor::Yellow, TEXT("мой текст на экране")); // отобразиться нормально

Автор:  SergeyBond [ 21 янв 2016, 11:14 ]
Заголовок сообщения:  Re:

Zhernovoy Sergey писал(а):
Тут дело в кодировке , если ты будешь использовать ,или точнее хочешь использовать для отладки инфу - ну выводить в лог или на экран ,то делай это используя TEXT("бла бла тут мой текст"). Так же есть другие варики ,но этот самый простой ,однако учти что запаковать проект тебе не даст всеравно ( по крайней мере в HTML5 - точно , так как для сборки исопльзуется питон 2.7 ,а он крилицу не прожовывает и будет выдавать ошибки).


а если не для отладки...то есть я буду вставлять текст из файла тхт...присваивая определенной переменной в с++...а потом посредством функции забирать из кода в редактор?

Автор:  Zhernovoy Sergey [ 21 янв 2016, 11:30 ]
Заголовок сообщения: 

Вообще есть еще LOCTEXT и тд. Но вопрос решаемый ,советую здесь ознакомиться https://docs.unrealengine.com/latest/IN ... index.html

Автор:  SergeyBond [ 21 янв 2016, 11:39 ]
Заголовок сообщения:  Re:

Zhernovoy Sergey писал(а):
Вообще есть еще LOCTEXT и тд. Но вопрос решаемый ,советую здесь ознакомиться https://docs.unrealengine.com/latest/IN ... index.html


Спасибо буду изучать!

Автор:  MOZGIII [ 24 янв 2016, 15:09 ]
Заголовок сообщения:  Re: Re:

SergeyBond писал(а):
Zhernovoy Sergey писал(а):
Тут дело в кодировке , если ты будешь использовать ,или точнее хочешь использовать для отладки инфу - ну выводить в лог или на экран ,то делай это используя TEXT("бла бла тут мой текст"). Так же есть другие варики ,но этот самый простой ,однако учти что запаковать проект тебе не даст всеравно ( по крайней мере в HTML5 - точно , так как для сборки исопльзуется питон 2.7 ,а он крилицу не прожовывает и будет выдавать ошибки).


а если не для отладки...то есть я буду вставлять текст из файла тхт...присваивая определенной переменной в с++...а потом посредством функции забирать из кода в редактор?

При чтении из файла нужно будет использовать правильную кодировку - и будет читаться как надо.

Автор:  wandal [ 22 фев 2016, 18:25 ]
Заголовок сообщения:  Re: Re:

SergeyBond писал(а):
Zhernovoy Sergey писал(а):
Вообще есть еще LOCTEXT и тд. Но вопрос решаемый ,советую здесь ознакомиться https://docs.unrealengine.com/latest/IN ... index.html


Спасибо буду изучать!


Как успехи? Отпишитесь.
Столкнулся с такой же проблемой, но не совсем понимаю как её решить даже после прочтение доков

Автор:  DenCommander [ 09 ноя 2018, 01:54 ]
Заголовок сообщения:  Re:

Zhernovoy Sergey писал(а):
Пример вывода инфы для отладки через лог,консоль клиента и на экран :
Код:
         UE_LOG(INU_Log, Warning, "мой текст");           // получишь ошибку при компиляции
         ClientMessage("мой текст в консоль клиента");        // получишь ????????
         GEngine->AddOnScreenDebugMessage(-1, 0.5f, FColor::Yellow, "мой текст на экране"); // получишь ????????

         UE_LOG(INU_Log, Warning, TEXT("мой текст"));           // отобразиться нормально
         ClientMessage(TEXT("мой текст в консоль клиента"));        // отобразиться нормально
         GEngine->AddOnScreenDebugMessage(-1, 0.5f, FColor::Yellow, TEXT("мой текст на экране")); // отобразиться нормально

У меня та же проблема. Вот такая команда
Код:
UE_LOG(INU_Log, Warning, TEXT("мой текст"));
тоже не прокатывает, в логе unreal engine козябры
Как решается: открываем файл .cpp с искомым русским текстом в стороннем редакторе. Я использую notepad++. Потом выбираем "переконвертировать в UTF-8 with BOM". Записать. После этого перекомпилируем проект, всё должно заработать

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/