位置: 编程技术 - 正文

U3DPlayer UnityWebPlayer动态改变src

编辑:rootadmin

推荐整理分享U3DPlayer UnityWebPlayer动态改变src,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

单机问题解决了,接下来是动态src的问题,之前有看到过有解决方案的。

今天参考了:Unity动态改变src的解决方法 - 智周万物

我的目的是实现可以打开任意.unity3d文件的功能,把他的代码整理了一下,能删的删,做成了一个用户控件。

不知道为什么我的是AxUnityWebPlayer ,他的是U3DPlayer,难道他已经封装了一层?反正直接用AxUnityWebPlayer代进去能用。

代码:

public partial class U3DPlayer : UserControl

{

public static U3DPlayer AppendTo(Control parent, string path)

{

try

{

U3DPlayer player = new U3DPlayer(path);

parent.Controls.Clear();

parent.Controls.Add(player);

return player;

}

catch (Exception ex)

{

Console.WriteLine(ex);

return null;

}

}

public U3DPlayer(string path)

{

InitializeComponent();

_u3DPlayer = InitU3DPlayer();

OpenFile(path);

}

private AxUnityWebPlayer _u3DPlayer;

private void OpenFile(string path)

{

_u3DPlayer = CreateU3DPlayerEx(path, _u3DPlayer);

}

private AxUnityWebPlayer InitU3DPlayer()

{

var resources = new ComponentResourceManager(GetType());

U3DPlayer UnityWebPlayer动态改变src

AxHost.State state1 = ((AxHost.State)(resources.GetObject("u3dPlayer.OcxState")));

var player = CreateU3DPlayer(state1);

return player;

}

private AxUnityWebPlayer CreateU3DPlayerEx(string path, AxUnityWebPlayer player)

{

var state = GetState(path, player);

return CreateU3DPlayer(state);

}

/*

* 给unity设置src属性时,会自动生成字符串资源,并把它赋&#;给属性OcxState。

* 由于没办法手动生成这个字符串,因而需要通过代码,即先赋&#;给OcxState,再取出来的方式得到需要的字符串资源。

* 然后再将&#;赋给重新创建的控件。

*/

/// <summary>

/// 获取需要的字符串资源

/// </summary>

/// <param name="path"></param>

/// <param name="player"></param>

/// <returns></returns>

private static AxHost.State GetState(string path, AxUnityWebPlayer player)

{

player.src = new FileInfo(path).FullName; //这里是重点

AxHost.State state = player.OcxState;

player.Dispose();//因为之后马上就要创建新的了

return state;

}

private AxUnityWebPlayer CreateU3DPlayer(AxHost.State state1)

{

var player = new AxUnityWebPlayer() { Dock = DockStyle.Fill };

((ISupportInitialize)(player)).BeginInit();

player.OcxState = state1;

Controls.Add(player);

((ISupportInitialize)(player)).EndInit();

return player;

}

}

最后,那个OpenFile是无法改成public的,应该说是,能改,前面两次调用也没问题,但是,第三次开始就会出异常关闭程序(具体原因我也没去深究)。所以使用时就一个U3DPlayer显示一个场景,要换的话,再创建一个就好了。也就是一开始的AppendTo方法。实际上我是有点想把构造函数直接改成private的,但是已经有些地方用了,还是算了。

物理引擎——刚体Rigidbody(二) 一、刚体交互当物体包含刚体的时候就可以收到物理引擎的影响,当物体包含碰撞器的时候物体可以发生碰撞,当物体含有碰撞器不含有刚体的时候可

unity3d移动平台性能优化专题(8):shader优化 当然如果你完全可以采用内置的Mobile下面的shader是最好,性能肯定是杠杠的。但是相信绝大部分游戏还是不得不自己写shader,那就要注意写出高性能的sh

Unity3D 学习笔记 (1) 在公司实习一个星期了,现在来写下这周实习的心得吧。公司用的是Unity3D这东西完全没用过……本来在学校学的是java只能从java转到C#上了,实习了一个

标签: U3DPlayer UnityWebPlayer动态改变src

本文链接地址:https://www.jiuchutong.com/biancheng/378815.html 转载请保留说明!

上一篇:单机环境下在WinForm中使用Unity3d(单机模式在哪)

下一篇:物理引擎——刚体Rigidbody(二)(物理引擎百科)

  • 递延所得税计算题
  • 企业销售不动产增值税税率
  • 报考中级会计师怎么报名
  • 没有上市的公司怎么看财务报表
  • 边际贡献总额分析法的收入为零
  • 没有工会的企业怎么发福利
  • 预算为负数实际为负数 怎么计算完成率
  • 增值税普通发票和普通发票的区别怎么交税
  • 公司如何开现金支票给个人
  • 投资办厂协议
  • 公司为员工买保险好还是个体户为员工买保险好
  • 特许权使用费代扣代缴增值税
  • 国税和地税归哪里管
  • 三类小规模纳税标准
  • 未分配利润调整到其他应付款
  • 专票遗失需要怎么处理?
  • 全年实现利润总额为6035
  • 公司账户收到车险怎么做账
  • 旅行社的综合服务费
  • 开具红字发票后又开了蓝字发票 怎么入账
  • 个人出租房屋给公司可以开专票吗
  • 小规模纳税人如何交增值税
  • win8系统怎么连接无线
  • 电脑开始菜单在右边怎么调回来
  • 成本和费用有什么区别与联系
  • 为员工购买的团员保险
  • win10待机久了自动关机
  • php parse_url
  • 预付款多长时间
  • uniapp传值
  • 兼职如何交税款
  • 财务管理中成本控制的原则
  • 固定资产可以直接入账吗
  • ajax 返回
  • pytorch .t()
  • Vue3通透教程【三】Vue3代码初体验找不同
  • vue怎么打断点
  • 移动端页设计
  • laravel 实例
  • 跨域问题是什么
  • 企业年度预算编制流程
  • 建筑施工企业增值税老项目过度期成本票
  • mongodb的配置文件
  • 结转各项成本的会计分录
  • 投资性房地产的后续计量
  • 家庭分割财产怎么处理
  • sqlserver2005数据库磁盘满了什么文件能删
  • 公司向员工发放的慰问金怎么做账
  • 小规模费用发票可以抵扣增值税吗
  • 承租人损坏租赁物
  • 收购企业如何做账
  • 住宿费用专票可以抵扣吗
  • 增值税发票打印机怎么调整打印位置
  • 发票验旧就是作废么?
  • 外派员工的薪酬构成有哪些项目
  • 公司购买理财产品账务处理
  • 年初建账考虑要点业务流程是否变化
  • sqlserver的主数据库是什么
  • 网页提示堆栈溢出怎么解决
  • win8电脑设置
  • macbook的dock栏
  • mmc.exe是什么
  • win7装完系统我的电脑在哪
  • linux doc
  • linux系统磁盘管理的主要内容
  • windows7桌面回收站打不开
  • java中初始化顺序
  • perl 时间转换
  • Javascript selection的兼容性写法介绍
  • Android AsyncTask简要分析
  • unity3d移动物体
  • python编程入门指南
  • python同一层次的语言必须对齐吗
  • android 启动service
  • 银行流水怎么查
  • 以划拨方式取得的土地使用权
  • 贵阳国家高新技术产业开发区管理委员会
  • 河南省国家税务局电子税务局
  • 开采砂石
  • 上海社保卡原始密码是啥
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设