最近老大指令我们做一个模型浏览器的功能,于是乎,自然而然想到了Unity。
再于是乎,在网上就搜到了一些关于winform内嵌Unity3D的文章,比如下面的文章:
C# winform嵌入unity3D - 没事儿写个bug
于是乎,就兴冲冲的跑去写BUG去了
然而,出现了意想不到的情况
因为我们这个模型浏览器还有一个模型的显示树,点击相应的树状节点,然后在浏览器内显示相应的模型,既然是用Unity Web Player做这件事,那么与Unity的通信就是重中之重,那当然就是SendMessage这个方法
但是由于涉及了Unity Web Player Control Src动态设置的问题,因此就参照了博客中提到的Src动态设置的文章
但是这下就出问题了
使用SendMessage给Unity发送数据就发送不了了!!!
在网上苦搜了许久都没有解决方案,最后只能放弃Unity转而使用MOGRE做这个事情了
关于这个问题的出现,估计是出在了动态创建上面,因为大多数的动态创建Unity WebPlayer Control基本上都是下面的代码:
Src = src;
if (!File.Exists(Src))
{
return;

在实现Winform内嵌Unity3D的模型浏览器功能时,遇到SendMessage通信障碍。由于Unity Web Player ControlSrc的动态设置,导致无法通过SendMessage发送数据。经过排查,问题可能出在控件的动态创建和释放上。尽管网上教程多,但针对核心的数据交换解决方案缺失,最终项目转向使用MOGRE来解决这一问题。
最低0.47元/天 解锁文章
1920

被折叠的 条评论
为什么被折叠?



