- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Unity3d和网页数据交互的基本原理
Unity3d和网页数据交互的基本原理本篇unity3d教程我们来学下下Unity3d和网页数据交互的基本原理以及如何实现与网页的通信,下面简单介绍下:1. u3d是一个3D游戏引擎由于和编辑器集成在一起 所以也可以理解为一个制作/开发平台2. u3d使用javascript C#作为核心脚本语言 来驱动整个游戏引擎3. 平台可以发布为Exe执行文件或者打包为供网页调用的一个独立的包文件4. u3d制作的工程具有高度的可移植性 可以在ps xbox360 android iphone mac 等系统上运行嵌入网页1. 实现和Flash插入网页原理完全一致 使用ActiveX控件 嵌入在网页中 所以和Flash一样 需要安装一个播放器插件(=3M)2. 如果察看页面源代码 则可以看到如下嵌入部分object id=”UnityObject” classid=”clsid:444785F1-DE89-4295-863A-D46C3A781394″width=”600″ height=”450″codebase=”/download_webplayer/UnityWebPlayer.cab#version=2,0,0,0″param name=”src” value=”MyDataFile.unity3d” /embed id=”UnityEmbed” src=”MyDataFile.unity3d” width=”600″ height=”450″type=”application/vnd.unity” pluginspage=”/unity-web-player-2.x” //object?3. 和Flash一样 在浏览器中加载3d场景或者读取时的图标进度条等都能进行自定义 也可以自定义是否激活是用右键菜单数据交互1. 在unity3d中调用网页js函数如我们在html中有脚本函数:则在u3d中我们可以写函数来调用js函数如:[pre]Application.ExternalCall( “SayHello”, “The game says hello!” );[/pre]2. 在unity3d中直接执行一段脚本代码(这也是可行的) 如:[pre]Application.ExternalEval([/pre][pre] “if(document.location.host != ‘’) { document.location=’; }”?绿色部分是一个字符串 也是一段js脚本在u3d可以直接执行一段js脚本3. 在js中调用unity3d函数(传递消息等)假如在u3d中有一段功能函数(也是用js写的)function MyFunction(param : String{Debug.Log(param);}则如果需要在js中呼叫这个函数可以这样写:script type=”text/javascript” language=”javascript”!–function SaySomethingToUnity(document.getElementById(“UnityContent”).SendMessage(“MyObject”, “MyFunction”, “Hello from a web page!”);–/script唯一要注意的是MyObject代表u3d中的一个物体名称为MyObject ,MyFunction是赋予给这个问题的函数,最后一个字符为传递的参数。如此可以实现调用和数据传递。与php,jsp?等的表单数据交互这应该是今后会可能用到的主要方式 原理是利用form表单传递数据 php中已经使用过多次 没有问题 jsp中应该同理以php为例Unity3d可以用向某个指定页面发送表单数据然后在php中使用_POST获取传递过来的表单数据比如我们有一个网页:?/index.php其页面源文件如下:?php$action=$_POST[“myform_action”];//定义一个变量$action用来获取页面传递过来的表单数据if ($action!=””){echo$action;}//如果接受到了数据则打印出数据内容?在unity3d中我们发送数据的代码如下:varform = newWWWForm();//定义一个网页表单form.AddField( “myform_action”, “Action1″ );//添加一个表单字段名称为myform_action内容是Action1vardownload = newWWW( “/index.php”, form );//发送表单数据到指定网址页面假如index.php中执行的是数据库/统计操作 我们就可以对传递的数据进行保存读取或者其他操作了,好了,本篇unity
您可能关注的文档
- PSUF松下鼓励员工创业的激励机制.doc
- PSP牧场物语蜜糖村钓鱼攻略.doc
- ps的分辨率与像素的区别.docx
- PS学习的流程及初期处理手法.doc
- PW品味生活馆成功被誉为“十大家具品牌”之一.doc
- Python-Apache安装手册ycf1.1.docx
- PS中各种颜色的代码.doc
- python-ctypes模块中文帮助.docx
- python-twisted模块代码实例.doc
- python2yield使用小结.docx
- 数据仓库:Redshift:Redshift与BI工具集成.docx
- 数据仓库:Redshift:数据仓库原理与设计.docx
- 数据仓库:Snowflake:数据仓库成本控制与Snowflake定价策略.docx
- 大数据基础:大数据概述:大数据处理框架MapReduce.docx
- 实时计算:GoogleDataflow服务架构解析.docx
- 分布式存储系统:HDFS与MapReduce集成教程.docx
- 实时计算:Azure Stream Analytics:数据流窗口与聚合操作.docx
- 实时计算:Kafka Streams:Kafka Streams架构与原理.docx
- 实时计算:Kafka Streams:Kafka Streams连接器开发与使用.docx
- 数据仓库:BigQuery:BigQuery数据分区与索引优化.docx
文档评论(0)