位置: 编程技术 - 正文

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

  • 实际已缴纳所得税额在汇算清缴报告里怎么看
  • 已经作为损失的资产以后纳税年度收回的会计处理
  • 企业实缴不到位怎么办
  • 飞机票退票费如何处理账务
  • 个人所得税app是什么意思
  • 固定资产出售损益
  • 临时税务登记可以开发票吗
  • 航空运单可以作为提货凭证吗
  • 合同款未付怎么写欠条
  • 长期股权投资会减值损失吗
  • 住宿费专用发票税率是多少
  • 企业所得税年报补报
  • 进料料件内销账务处理怎么做?
  • 出口退税进项发票稽核
  • 工程施工购买的标示牌怎么开票给甲方
  • 公司买了股票怎么做账
  • 房屋租赁违法
  • 土地受让人是什么意思
  • 互联网合同要交社保吗
  • 行政单位租个人房子能用收据下账吗
  • 营改增实施过程中的难点
  • 开票资料填写
  • 退回押金如果要退回吗
  • 是否所有电池产品都需在进口环节缴纳消费税?
  • win11操作中心怎么关闭
  • 应收票据到期收回时和未到期转让时
  • 王者荣耀中钟馗怎么出装
  • 存出保证金计入货币资金吗
  • 费用发票开的是跨年的账务处理?
  • php数组函数,选班长
  • php_fileinfo作用
  • 富贵竹怎么养才能更旺盛水培生根
  • 房地产土地使用税核减条件
  • php处理数组的函数
  • 房地产企业利润
  • chatGPT背后的真正逻辑
  • 个人所得税申报流程图
  • 持有至到期投资账务处理
  • 购买农产品取得增值税普通发票可以抵扣吗
  • 营业执照上的注册资金可以改吗
  • 接待客人发生的事故
  • 织梦模板改成帝国模板
  • 新公司开账户需要多少钱
  • 个体户需要税务报道不
  • 现时社保缴费
  • 企业所得税季度平均值怎么算
  • 非广告性质的赞助支出
  • 企业应收账款怎么记账
  • 给员工的奖金计入什么科目
  • 房地产开发结转成本
  • 帮客户支付的机票计入什么科目
  • 资产减值损失的原因
  • 企业间借款利息开票税收分类编码
  • 咨询服务公司的经营范围
  • 公司账户转个人往来款
  • 会计收入的定义和分类
  • 厂房拆了建住宅可以么
  • 卡巴斯基 试用
  • ubuntu更换版本
  • centos怎么扩容
  • 苹果7开发者模式怎么打开
  • 安装centos6.6详细步骤
  • win10预览版好吗
  • 如何在xp系统中调整移动硬盘
  • win10打
  • linux显示日期格式命令是
  • win10天气预报设置
  • 在linux操作系统中,/etc/rc.d/init.d
  • easyui下拉列表
  • Cocos2dx3.2 Crazy Tetris 游戏输入(键盘事件,重力事件,触摸屏事件)
  • opengl中点画圆算法
  • js如何将输入的数存到数组中
  • nodejs发送post请求socket hand up
  • android的intent介绍
  • vue中的echarts
  • 介绍一个简单的实验
  • Unity3d C# HttpWebRequest 异步下载文件
  • HorizontalListView
  • 钢结构税收政策
  • 国税发票如何查询真伪
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设