基于Unity3D引擎的游戏华为音频文件在哪里里

播放的代码都是常用的代码,但出来的声音总是比视频要快一些,快几秒钟。public class PlayMovie : MonoBehaviour{
public MovieTexture movT void Start() { renderer.material.mainTexture = movT
movTexture.Play ();
audio.Play (); }}
如何解决这个问题?
方法1:将视频中的音频用编辑器取出音轨,在开头加几秒钟的空白,另存为其它音频文件,再导入Unity3D,将该文件作为声音文件进行播放。
方法2:在Start()里播放视频和音频,然后暂停。在Update()里取消暂停开始播放。
您还没有登录,请或Unity3D游戏引擎最详尽基础教程 - Sun‘刺眼的博客 - 博客园
随笔 - 732, 文章 - 0, 评论 - 44, 引用 - 0
我一直向所有想做游戏的朋友推荐Unity3D,为什么呢?首先是因为专业,Unity3D非常强大,用它创建一个类似MiniGore这样的3D平面射击游戏简直轻而易举,而就连使命召唤这样的大型3d游戏,如果素材得当也不在话下。二是因为易用,他的操作非常容易,而使用的脚本语言又是JavaScript或者C#,不仅非常简单,也让各个种类的程序员都非常容易上手。再次,就是因为免费,如果你不使用Pro或者Mobile的内容的话,Unity3d就是完全免费的。还有就是对3D模型的兼容性,几乎任何3d模型都可以导入到unity中,可以说是一个很方便的特性。
今天,我就来讲讲Unity3D的基础操作,这可以说是一个新手必读吧,读完之后,你一定会惊叹,原来做一个游戏这么简单。
第一节 加入重力
我们先打开Unity3d,新建一个场景(Scene),新建的时候应该会有对话框要求你加入哪些Asset Package,记得选择Physics Material,因为后面我们一定要用的哦亲。
如果创建的时候没加,你可以再后来的Asset菜单里加:
之后,我们建立一个Cude,调整一下x和z的大小,我这里调成了25,让它变成一个地板,你也可以放一个texture上去,看起来更加真实,我这里从简,再创建一个sphere,在component中选择Physics中的RigidBody,前提是选中你的sphere物体,之后会看到这个Sphere的inpector中加入一个component叫做RigidBody,调整好Camera运行一下,你就会发现Sphere受到重力的影响自动掉落到地板上。
之后,通过我们之前引入的Physics Materials资源包,你还可以选择这个物体的物理性质,我这里选择Bouncy(跳跳),落下之后,这个物体就会蹦来蹦去的,呵呵
第二节 检测碰撞
下面我们通过简单的JavaScript语句来检测碰撞,这在制作游戏中是很有用的,比如说检测到子弹和敌人的碰撞之后,可以使用我们后来要讲到destory命令消灭敌人。
这次我们新建一个Terrain项目,在用Grass贴图来覆盖住它,如果你找不到贴图的话,记得在Asset菜单里找找,看看哪些资源你还没有引入进去。
然后再加入一个Cube项目,我这里叫做PlayerCube,为他加上重力,之后选择bouncy性质,然后我们再新建一个Cude,调整y和z的值让他变成一堵墙,放置好,命名为Wall,别忘了给Terrain改名为Terrain,
之后我们在Asset菜单中建立一个JavaScript项目,改名为CollisionDetect,双击打开,如果你使用的是Unity 3.5的话,就会打开MonoDev,这是一个新工具还是很好用的,在其中新建一个函数,别管Start和Update函数,我们待会会讲。
加入以下代码:
function OnCollisionEnter(theCollision : Collision){
if(theCollision.gameObject.name=="Terrain"){
Debug.Log("Hit terrain");
}else if(theCollision.gameObject.name=="Wall"){
Debug.Log("Hit the wall");
如果看不懂这些代码的话,也没关系,JavaScript是最好学的编程语言,Google一下吧,保存这个JS文件,然后拖到我们的PlayerCube上。
这时候我们运行,就会看到PlayerCube到处蹦,碰到Terrain的时候,控制台就会显示Hit Terrain,碰到wall的时候就会显示Hit the wall。
第三节& 检测用户输入
下面我们来讲一下如何检测用户的键盘和鼠标的操作。
就用我们上次的那个场景,这次我们给PlayerCube加上我们可以控制的动作。就是通过“wasd”或者上下左右键来控制移动。
请注意,如果要使用这里使用的方法来控制移动,那么所控制的物体不能够是一个物理世界的物体,也就是说你要把RigidBody这个component删掉,如果你想要在物理世界里移动物体的话,你就需要我们在下面会讲到的力(force)。
首先我们新建一个JavaScript文件,这里命名为InputDetect吧,输入下面的代码:
#pragma strict
var Player : GameO
function Start () {
function Update () {
Player = GameObject.Find("PlayerCube");
if(Input.GetKey(KeyCode.W)){
Debug.Log("Hit w");
Player.transform.Translate(Vector3.forward * 2);
}else if(Input.GetKey(KeyCode.S)){
Debug.Log("Hit s");
Player.transform.Translate(Vector3.back * 2);
}else if(Input.GetKey(KeyCode.A)){
Debug.Log("Hit a");
Player.transform.Translate(Vector3.left * 2);
}else if(Input.GetKey(KeyCode.D)){
Debug.Log("Hit d");
Player.transform.Translate(Vector3.right * 2);
这时,我们运行这个游戏,就可以通过“WASD”来控制PlayerCube的移动了。
第四节 使用Prefab复制和控制物体
我们可以直接把Prefab看做是个妈,她能生好多小孩,如果妈妈的DNA变了,小孩的跟着变,就是说你可以用Prefab创建物体,然后通过这个Prefab修改所有这类物体的性质,这对于批量生成的敌人或者NPC来说很有用。
首先,先创建一个Prefab,我这里命名为“Mother”,之后新建一个Sphere物体,当然你也可以建一些其他的物体,之后给这个Sphere加上你想要的性质,我加入了RigidBody和Bouncy,之后将Sphere拖到Mother上,你会发现mother变蓝了,之后你就可以随意拖一些mother物体到屏幕上去,你会发现所有的Prefab创建出的物体在清单上都是蓝色的,说明他们都有共同的性质。
当然,作用于一个Prefab上的脚本也会作用到它的子物体上去。
第五节 使用Destroy命令消灭物体
我们游戏中怎么能够没有敌人呢?有敌人就得能够消灭他们,这时候,我们就会使用Destroy命令了。
在这里,我们使用上次Mother生出来的小球球作为敌银,一旦我们的PlayerCube碰撞到了小球的话,就是用Destroy让小球消失。
新建一个JavaScript脚本,输入以下代码:
#pragma strict
var mother : GameO
function Start () {
function Update () {
function OnCollisionEnter(theCollision : Collision){
mother = GameObject.Find("Mother");
if(theCollision.gameObject.name=="Mother"){
Debug.Log("Hit mother");
Destroy(mother);
这段代码很好懂吧,就是检验碰撞,然后销毁碰撞到的Mother物体,别忘了把Destroy的JavaScript文件拖到PlayerCube上去。运行一下,就可以看到碰撞到的物体都被消灭了。
第六节 使用Instantiate命令创造物体
我们直接在界面创造的物体都只是会在界面被初始化的时候加载,那么,如果为了节约内存或者其他什么事情,我想要在游戏过程中添加物体,那该怎么办呢?你猜对了,就是用instantiate命令。
这个命令就是英文实例化的意思,下面我们给碰撞之后消失的mother物体继续初始化一些,也就是说消灭了一些,又来了一大波···
为什么非要用mother呢?因为只有拥有Prefab的物体才能够使用这个命令哦亲。
function Update () {
var instance : GameObject = Instantiate (PreFab,transform.position,transform.rotation);
注意:这样的话,每次刷新一帧都会出现一个新的mother物体,你的内存也许会受不了哦,更合理的方法是按下空格键,然后出现一个新的物体,你可以自己做吗?试试看
你可能已经注意到了,每一个初始化的脚本都会默认有两个函数,就是:
Update()函数 —— 每刷新一帧都会检查并执行
Start()函数 —— 只在场景初始化的时候执行
第七节 使用Timer计时器
这次,我们要让一个计时器倒数,倒数到0的时候创建一个mother物体,来看Javascript代码吧:
#pragma strict
var myTimer : float = 5.0;
function Start () {
function Update () {
if (myTimer &= 0){
myTimer -= Time.deltaT
guiText.text=(""+myTimer);
if (myTimer &= 0){
guiText.text = ("Done");
把这个脚本拖到GUItext控件上,你会发现我们所期待的效果。
第八节 让物体动起来
其实让物体行动的技巧,我们已经会了,不是吗?
如果你觉得不是的话,没有认真的看上面的文章哦,我就再给你讲一次吧。
请特别注意,这种方法不适合物理世界的物体,如果向移动物理世界的物体,请看下一节:
创建一个Cylinder物体,之后将下面的脚本附着在上面。
#pragma strict
var myObject : GameO
function Start () {
function Update () {
myObject.gameObject.Find("Cylinder");
myObject.transform.Translate(Vector3(0,0,1));
第九节 使用物理世界的力
这里是我们讲移动物体的重点,因为大部分的物体移动都是在物理世界完成的,而如果想要在物理世界移动东西,除了position和rotation的移动之外,就是使用“力”了,在高中学过经典物理学的人都知道,要使物体用移动,木有力是不行的,那么我们就开始吧,再新建一个什么物体,我新建了一个Capsule。
之后,我会在这个物体的上方加一个力,让它用力的向下飞,触碰到地之后,通过bouncy这个性质再弹回来。新建一个JavaScript文件,就叫做Force吧,加入如下代码:
#pragma strict
var Power : float = 500.0;
function Start () {
rigidbody.AddForce(Vector3(0,Power,0));
function Update () {
运行之后,会发现capsule其实是个很有幽默感的物体。
第十节 使用贴图和材质
贴图和材质能够使你的虚拟3D世界看起来更加真实,不幸的是,需要大量在PS和AI中的设计工作,最近我一想到要打开PS就有点烦···呜呜。
闲话少说,我已经做好了一个贴图,怎么使用在材质上呢?之后我们怎么才能通过材质使用到其他物体之上呢?
就像你看到的一样,我是直接拖进去的···
之后我们从新建菜单中选择Material这一项,之后选中material,将贴图拖进material的贴图选框里,之后,就可以拖动这个Material赋给任何物体了。
第十一节 使用声效和音乐
音效和音乐对于一个游戏来说是非常重要的,一个寂静无声的世界是无聊的,而且不真实,什么?你说声效和音乐是一个东西?那你就错了,声效是,比如说发射子弹的声音,什么东西爆炸的声音等等,而音乐则是背景音乐什么的,不一样的亲。
对于音乐来说,往往使用立体声音乐,而对于生效来说,我们随便使用一个简单的音乐文件就可以了。
想要在Unity3D中播放音乐,你需要两样东西,一个是监听器,一个是音乐源,监听器是Camera的一个组件,所以你不用担心,你唯一需要增加的就是音乐源。
直接将项目中的音乐拖放到Audio Source项就可以播放,但是如果我们想要在某个特定的点上 播放音乐该怎么办呢?答案就是,写一个脚本,新建一个脚本,输入如下代码:
#pragma strict
var myClip : AudioC
function Start () {
AudioSource.PlayClipAtPoint(myClip,transform.position);
function Update () {
之后将这个脚本拖放到我们的物体上,最后,将音频文件拖放到AudioSource选项框中。
第十二节 使用关节
关节在3D游戏之中的应用非常广,主要在于物理世界的重力影响,下面我们就通过关节来制作一个钟摆。
这次我们新建一个场景,松了一口气?刚才的场景是不是太乱了?你做的时候可以整理一下嘛,呵呵
新建一个cube作为地面,之后一个cube放在上空作为摆垂,之后用几个capsule分别用component中的fixed joint连接起来,之后最上面的那个capsule与世界相连,使用Hinge Joint,这样的话,他会默认与世界相连,不用担心,看图
第十三节 使用Axes
在Edit – Project Setting – input 中可以查看各种形式的input,这些input方法在unity中被叫做Axes。
我们创建一个JavaScript,叫做GetAxes,输入以下内容:
#pragma strict
function Start () {
function Update () {
var Honriz : float = Input.GetAxis("Honrizontal");
Debug.Log(Honriz);
在拖放脚本之后,运行这个场景,看看控制台输出了什么,你就明白了。
第十四节 使用触发器
触发器一般用于检测一个物体是否处于一个空间内,他是怎么做到的呢?
首先,他创造一个大的物体,之后将他的randerer属性去掉,他就隐形了,这样,我们再把他的isCollide属性去掉,他就不会发生碰撞了,之后,我们只需要用脚本检测物体是否与这个物体碰撞就可以了。
我们新建一个场景,做一个地板,再做一个底座,叠加起来,再在他们的上空做一个方块,设置rigidbody属性,将底座设置成为我们刚才说的那种隐形的状态,之后新建一个JavaScript脚本,输入代码
#pragma strict
function Start () {
function Update () {
function OnTriggerEnter (myTrigger : Collider) {
if(myTrigger.gameObject.name == "box"){
Debug.Log("Hit");
按下运行,会发现可以检测出Hit。
第十五节 使用GUI
其实我们已经学过了如何使用GUI text,不信,我们就用屏幕上的字代替我们在上面的程序中的Debug.Log现实的内容。
你自己能做吗?
试试看吧,一个下午写了这么多,有点累。
一定要在Unity中加入一个GUI Text,运行一下,就会发现屏幕上的GUI Text会随着你设定的的内容而变化了。游戏蛮牛学习群(纯技术交流,不闲聊):
扫一扫,访问微社区
后使用快捷导航没有帐号?
签到成功!您今天第{todayrank}个签到,签到排名竞争激烈,记得每天都来签到哦!已连续签到:{constant}天,累计签到:{days}天
当前位置: &
查看: 1716|回复: 1
Unity3D之详解游戏开发音频的播放
86132/10000排名6昨日变化主题帖子积分
常驻蛮牛, 积分 6132, 距离下一级还需 3868 积分
常驻蛮牛, 积分 6132, 距离下一级还需 3868 积分
蛮牛币30457
在线时间502 小时
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
才可以下载或查看,没有帐号?
游戏音频的播放在任何游戏中都占据非常重要的地位,音频的播放还可以分为两种,一种为游戏音乐,另一种为游戏音效。前者适用于较长的音乐,如游戏背景音乐。第二种试用与比较短的游戏音乐,如开枪,打怪 时“砰砰”一瞬间播放的游戏音效。今天MOMO将用下面的例子带盆友们去剖析游戏音乐与音效的播放。Unity3D游戏引擎一共支持4个音乐格式的文件.AIFF 适用于较短的音乐文件可用作游戏打斗音效.WAV 适用于较短的音乐文件可用作游戏打斗音效.MP3 适用于较长的音乐文件可用作游戏背景音乐.OGG 适用于较长的音乐文件可用作游戏背景音乐在场景中创建一个空的游戏对象。GameObject -& CreateEmpty 创建成功后我命名为audio。给audio添加一个AudioSource属性,这个属性非常的重要,Unity播放音乐主要就是要靠这个东西。Component -& Audio – & Audio Source。
test.jsp?url=http%3A%2F%2Funity3d.9ria.com%2Fwp-content%2Fuploads%2F%2F15.png (74.48 KB, 下载次数: 3)
15:26 上传
找一个音乐文件,我这里使用了一个.mp3音乐文件,我命名为0.mp3 如下图所示将它拖动到右侧Audio Clip处。
test.jsp?url=http%3A%2F%2Funity3d.9ria.com%2Fwp-content%2Fuploads%2F%2F24-500x296.png (64.59 KB, 下载次数: 0)
15:26 上传
我们发现 Audio Source 有很多设置的属性,那么MOMO将一些比较重要的属性诺列出来。AudioClip :声音片段,还可以在代码中去动态的截取音乐文件。Mute : 是否静音Bypass Effects: 是否打开音频特效Play On Awake: 开机自动播放Loop:循环播放Volume: 声音大小,取值范围0.0 到 1.0Pitch:播放速度,取值范围在 -3 到 3 之间 设置1 为正常播放,小于1 为减慢播放 大于1为加速播放。创建一个脚本我命名为audio.cs 用来音乐的播放。本章将实现3个按钮 点击实现 播放音乐、 停止音乐、 暂停音乐 ,与一个横向拖动条通过手指的拖动实现动态修改音乐声音。
using UnityE
using System.Cpublic class NewBehaviourScript1 : MonoBehaviour {& & // Use this for initialization
& & void Start () {
& & audio.playOnAwake=
& & // Update is called once per frame
& & void Update () {
& & void OnGUI()
& && &&&if(GUILayout.Button(&Play&,GUILayout.Height(30)))
& && && && &audio.Play();
& && &&&if(GUILayout.Button(&Pause&,GUILayout.Height(30)))
& && && && &if(audio.isPlaying)
& && && && &audio.Pause();
& && &&&if(GUILayout.Button(&Stop&,GUILayout.Height(30)))
& && && && &if(audio.isPlaying)
& && && && &audio.Stop();
}将audio.cs 绑定在摄像头上,将audio游戏对象拖动赋值给Music 这个AudioSource这个对象。这里强调一下AudioListenr ,它音频监听器,用来监听音乐文件的播放。这是一个重要的属性,一定要勾选,只有勾选后才可以进行音乐的播放。
test.jsp?url=http%3A%2F%2Funity3d.9ria.com%2Fwp-content%2Fuploads%2F%2F33-500x325.png (88.44 KB, 下载次数: 3)
15:26 上传
build and run 运行我们这个游戏Demo,一切功能完美实现,哇咔咔~
test.jsp?url=http%3A%2F%2Funity3d.9ria.com%2Fwp-content%2Fuploads%2F%2F44.png (24.07 KB, 下载次数: 0)
15:26 上传
最后欢迎各位盆友可以和MOMO一起讨论Unity3D游戏开发,大家一起学习一起进步.
mp3播放;unity 音乐重新播放;unity中unity让背景循环移动;unity纯音乐mp3;unity3d 音乐格式;unity3d 播放mp3;unity播放本地音乐;unity音乐播放;unity 播放音乐;unity 背景循环;unity 循环背景;unity 5音乐unity mp3;音乐格式unity3d
每日推荐:
最近百度对文件链接审查比较严格,如果遇到链接失效情况,可以加QQ补蛮牛币
5679/1000排名<font color="#FF昨日变化10主题帖子积分
熟悉之中, 积分 679, 距离下一级还需 321 积分
熟悉之中, 积分 679, 距离下一级还需 321 积分
蛮牛币1499
在线时间189 小时
音乐暂停后,在按暂停控件怎么从暂停的地方继续播放音乐
每日推荐:
连续签到30天
原创精华达人
原创精华帖子总数量 ≥ 100
论坛建议之星
为论坛提出建设性的建议并被多数被采纳,必须采纳5条以上
突出贡献奖
宣传论坛,介绍更多的朋友加入≥50人
累积数量达到100000蛮牛币
游戏蛮牛QQ群会员
加入游戏蛮牛官方QQ群
在“新人报到 ”版块发过自己的照片基于Unity3D引擎的手机游戏客户端的研究与实现--《西安电子科技大学》2014年硕士论文
基于Unity3D引擎的手机游戏客户端的研究与实现
【摘要】:随着通信信息技术的快速发展与智能手机的普及,以及手游在渲染和表现力上的优化,越来越多的智能手机用户选择手机游戏作为新的娱乐方式。手机游戏作为手机应用的一部分,受到了很多玩家的青睐,过去几年涌现了很多优秀的手游,例如:《愤怒的小鸟》、《切水果》、《神庙逃亡》、《捕鱼达人》、《Flappy Bird》、《刀塔传奇》等都大受欢迎。Unity3D作为最近几年迅速发展起来的游戏引擎,为快速方便开发手机游戏提供了堪称完美的解决方案。本文首先分析了在智能手机硬件快速发展的大背景下移动游戏行业的现状及发展前景,并在此基础上分析了当前国内小型工作室在使用Unity3D引擎开发手机游戏过程中面临的紧迫问题。其次,对Unity3D引擎进行了整体的概述,介绍了Unity3D引擎的主要特性和发展历程,并与其它游戏引擎进行了比较。紧接着,针对国内小型工作室在使用Untiy3D引擎开发手机游戏过程中遇到的问题,研究了Unity3D引擎在开发手机游戏中常用的一些关键技术,并通过简单demo对某些技术进行了测试验证。然后,通过前期的策划、美术资源的设计以及声音文件的制作,运用Unity3D引擎开发游戏关键技术,设计、编写C#程序脚本,实现了一个简单的射击类游戏项目,经过测试没有出现BUG之后,发布了Android版本的安装包Shoot.apk,并成功在不同屏幕分辨率的手机平台流畅运行。最后,总结了在使用Unity3D引擎在开发手机游戏过程中的经验和教训,并对未来进行了展望。
【学位授予单位】:西安电子科技大学【学位级别】:硕士【学位授予年份】:2014【分类号】:TP317
欢迎:、、)
支持CAJ、PDF文件格式
【参考文献】
中国期刊全文数据库
郭芳芳;刘志勤;;[J];教育观察;2012年10期
【共引文献】
中国期刊全文数据库
林一;陈靖;刘越;王涌天;;[J];计算机学报;2015年02期
任新刚;;[J];林业机械与木工设备;2015年05期
任新刚;;[J];机械工程师;2015年06期
【二级参考文献】
中国期刊全文数据库
陈洪;马钦;朱德海;;[J];农机化研究;2012年03期
陈晓青;王少伟;;[J];软件导刊(教育技术);2011年12期
【相似文献】
中国期刊全文数据库
;[J];现代制造;2006年29期
;[J];电子工业专用设备;2012年03期
;[J];软件;2006年Z1期
;[J];自动化博览;2006年03期
李付民;;[J];软件;2009年02期
张捷;;[J];可编程控制器与工厂自动化;2007年12期
刘清柏;王渺;;[J];水泥技术;2009年03期
张刚;林乐石;杨玉柱;;[J];中国仪器仪表;2010年02期
方凯;;[J];科技信息;2012年28期
杨漾;姚杭飞;杨琛;许淑华;;[J];计算机时代;2014年06期
中国重要会议论文全文数据库
;[A];2002海峡两岸三地无线科技研讨会论文集[C];2002年
王萍;袁为民;;[A];2011年河北省冶金信息化自动化年会论文集[C];2011年
;[A];Proceedings of 2010 Chinese Control and Decision Conference[C];2010年
张振荣;;[A];第一届中国高校通信类院系学术研讨会论文集[C];2007年
赵波;;[A];中国计量协会冶金分会2014年会暨能源计量与绿色冶金论坛论文集[C];2014年
中国硕士学位论文全文数据库
贺苗元;[D];内蒙古大学;2015年
刘佳力;[D];四川师范大学;2015年
甘晨;[D];大连理工大学;2015年
韩大鹏;[D];西安电子科技大学;2014年
郭美卉;[D];北京林业大学;2013年
戴茜;[D];北京林业大学;2014年
陈俊锋;[D];中山大学;2013年
仲于姗;[D];云南大学;2015年
吕林轩;[D];北京交通大学;2015年
何秋海;[D];北京林业大学;2015年
&快捷付款方式
&订购知网充值卡
400-819-9993请在APP上操作
打开万方数据APP,点击右上角"扫一扫",扫描二维码即可将您登录的个人账号与机构账号绑定,绑定后您可在APP上享有机构权限,如需更换机构账号,可到个人中心解绑。
检索详情页
{"words":"$head_words:节奏分析+$head_words:碰撞检测+$head_words:精灵动画","themeword":"$head_words","params":"$title:基于Unity3D的音乐交互游戏设计与实现"}
&&&基于Unity3D的音乐交互游戏设计与实现
基于Unity3D的音乐交互游戏设计与实现
Design and Implementation of Music Interactive Game Based on Unity3D
为了实现音乐交互游戏,在学习和掌握Unity3D知识的基础上,研究碰撞检测技术、节奏分析技术、精灵动画技术及人机交互技术,从而实现场景漫游,音频特效等功能.为了增加游戏的可玩性,研究Ableton Live专业音序器的应用,来分析音乐的节奏并提取标记,将Audition观察到的音乐波形图融合到游戏中,从而考察用户对音乐节奏的把握、手指的反应及眼力.经证明,该游戏具有较好的运行效果,能够引起玩家的兴趣.
摘要: 为了实现音乐交互游戏,在学习和掌握Unity3D知识的基础上,研究碰撞检测技术、节奏分析技术、精灵动画技术及人机交互技术,从而实现场景漫游,音频特效等功能.为了增加游戏的可玩性,研究Ableton Live专业音序器的应用,来分析音乐的节奏并提取标记,将Audition观察到的音乐波形图融合到游戏中,从而考察用户对音乐节奏的把握、手指的反应及眼力.经证明,该...&&
相关论文(与本文研究主题相同或者相近的论文)
同项目论文(和本文同属于一个基金项目成果的论文)
您可以为文献添加知识标签,方便您在书案中进行分类、查找、关联
请输入添加的标签
万方数据知识服务平台--国家科技支撑计划资助项目(编号:2006BAH03B01)
&北京万方数据股份有限公司 万方数据电子出版社
实名学术社交
个性化订阅推荐
快速查看收藏过的文献}

我要回帖

更多关于 oppo音频文件在哪里 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信