位置: 编程技术 - 正文

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(二)(物理引擎百科)

  • 居民企业投资收益免征企业所得税
  • 金税盘老是重复更新进不去
  • 劳务发票可以抵扣多少
  • 税控盘反写显没有数据怎么处理
  • 银行的电子退库是什么,怎么做账
  • 营改增后转让土地使用权交什么税
  • 劳务派遣怎么做起来
  • 超标的职工教育经费为什么是可抵扣
  • 商品互换的概念
  • 上期计提的费用是什么
  • 固定资产清理营业外支出汇算清缴需要调增吗
  • 固定资产处置怎么计算
  • 收派服务发票需交税吗
  • 跨年销项税红字发票会计处理?
  • 电脑插上u盘
  • 发票已认证还未开票
  • 深入php:面向对象、模式与实践
  • php字符串赋值
  • windows11怎么操作
  • 最常用的成本核算方法表
  • 分配利润的会计科目
  • php yii框架
  • 国家规定发票多久之内可以开
  • php储存数据的方法
  • php 替换函数
  • 电子发票记账清单入账
  • 微信手机充值怎么自定义金额
  • vue框架是什么样子的
  • 蓝桥杯官网报名2020
  • input输入语句
  • php项目怎么打包
  • 固定资产类别有哪些
  • 应计入财务费用的科目是
  • 当月销售次月开票就按次月申报
  • phpcms程序
  • 存货盘盈盘亏处理会计分录
  • mysql默认存储引擎的命令
  • mongodb集群启动顺序
  • 小规模纳税人成本含税吗
  • 高新企业申报条件有哪些
  • 企业重组后的债权怎么处理
  • 收到上年度所得税退税款会计分录怎么写
  • 固定资产残值怎么做账务处理
  • 接受捐赠的固定资产进项税额可以抵扣吗
  • 网银费用及回单怎么查
  • 租赁厂房生产是生产经营活动吗
  • 发票未到成本如何做分录
  • 现金日记账如何填写
  • 逾期未缴税款法律依据
  • 企业收到补贴资金怎么办
  • 农行公户怎么给公户转账
  • winx64下mysql5.7.19的基本安装流程(详细)
  • sql比较数值大小
  • 注册表被锁定后的处理方法
  • 解决磁盘被写保护的方法
  • exeploer.exe
  • myfastupdate.exe - myfastupdate是什么进程文件 有什么用
  • isignup.exe是什么进程 isignup进程查询
  • win8.1使用技巧大全
  • window10 .net3.5
  • win10 20h2怎么更新
  • js简单实现点击按钮商品加入购物车
  • jquery实现分页功能
  • android 多个activity
  • dos启动方式
  • python在web上的应用
  • android获取位置信息
  • linux 编译
  • nodejs基本原理
  • unity签名
  • js模块化开发教程
  • JavaScript+html5 canvas实现图片破碎重组动画特效
  • dom事件模型由什么组成
  • 一款简单的网络版多媒体课件制作软件是什么
  • 外部js获取当前vue实例
  • html5table
  • 税务局 笔录
  • 发票怎样上传?
  • 重置税务密码
  • 南宁税务局进面分数线
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设