2013-06-12 2 views
0

То, что я читал, говорит, что используется отражение между C# и Scaleform. Это работает в основном для запуска взаимодействий и функциональности между MVC, но мне просто интересно, какой будет лучший способ переноса объекта данных из игры в пользовательский интерфейс.Передача объектов данных в Unity Scaleform AS3

Цель состоит в том, чтобы иметь интерфейс UI как можно большую функциональность дисплея. Этот вопрос находится в контексте игры Unity, где ресурсы ограничены, а системы должны быть как можно более разделены.

ответ

1

Вы не можете передать сырой кусок данных в Scaleform и получить его как «голый» объект (например, {id:0, name:"foo", x:100, y:100} и т. Д.). Однако вы можете создавать соответствующие типы контейнеров данных как в C#, так и в AS3 и передавать данные таким образом. Это выполняется с использованием метода value.ConvertFromAsObject и статического метода Value.ConvertToAsObject.

В API Scaleform 4.2 эта информация может быть расположена в разделе 8.1.6, «Передача объектов между C# и AS3».

В качестве альтернативы вы можете взглянуть на реализацию этих функций в SFValue.cs и использовать это как руководство для разработки собственных методов передачи данных с использованием API DirectAccess.