Во-первых, я знаю, что «правильный» ответ - просто перенести все на C #.Пожалуйста, не пишите этот ответ.Это долгосрочная цель.Мне не нужно слышать, что это повторяется.
У меня есть игра, которую я хотел бы перенести на Unity на ПК (изначально). Она имеет очень тяжелый пользовательский интерфейс.Мне интересно, как бы я пошел о создании графики для пользовательского интерфейса в C ++?Моя игра в настоящее время использует GDI для создания диалогов, каждый в своем собственном буфере, затем BitBlts на экран.
В «идеальном мире» я хотел бы попробовать передать эти буферы в Unity, которая затем отображает ихи передать любые события мыши / жеста обратно в C ++ для обработки.Это клочок, но гораздо быстрее, чем все переносить, и он позволил бы мне сделать несколько прототипов / тестирований, чтобы увидеть, насколько это практично.Затем я мог портировать экраны по одному на Unity или портировать библиотеку пользовательского интерфейса, которую я написал.
Я видел один пост, в котором говорилось о том, чтобы сделать что-то похожее, где C ++ помещал текстуры в OpenGL, где Unity тогдасделать их.Есть ли какие-нибудь статьи, в которых обсуждается, как это сделать на ПК с использованием DirectX, прежде чем я начну взламывать?
Звучит просто, но я был бы признателен за некоторые советы по взаимодействию между ними.Документация на сайте Unity немного разбросана по деталям интерфейса.
Пояснение: Мой вопрос на самом деле о том, что мне нужно сделать с DirectX в C ++ для отправки текстуры обратно.Нужно ли инициализировать DirectX в C ++ так же, как и в Unity, нужно ли передавать дескриптор дисплея или что-то еще в C ++ вместе с дескриптором текстуры и т. Д.?Это так же просто, как просто вызвать процедуру C ++, чтобы вернуть текстуру?Я знаком как с тем, как разговаривать между C # и C ++, так и с тем, как в целом работают 3D-движки. Мне нужно заполнить текстуру DirectX с HDC и каким-то образом передать эти данные обратно в Unity for Display.
Ralph