unity4.0第一人称视角相关问题,谢谢!急
做好了3D场景,首先想用第一人称视角漫游场景,视角想通过拖拽鼠标左键旋转,而不是像原始的滑动鼠标旋转;其次想在场景中点击带有图片纹理的物体时,弹出提示或者图片;最后是,同...
做好了3D场景,首先想用第一人称视角漫游场景,视角想通过拖拽鼠标左键旋转,而不是像原始的滑动鼠标旋转;其次想在场景中点击带有图片纹理的物体时,弹出提示或者图片;最后是,同一个场景如何设置几个快速的切换场景位置的图标,点击方便直接到达!谢谢了!
展开
1个回答
展开全部
第一个:你想将第一人称本来的鼠标移动带动摄像头转动效果 限制为按住鼠标左键?
方法:打开第一人称物体上的脚本MouseLook.cs,将update函数里的代码全部转移进一个if判断语句里,例如:
if(按下鼠标左键)
{
MouseLook.cs的update函数本来的语句(摄像头跟随鼠标移动而转动功能)
}
这之间可能会出点小错误,if判断会总是为true,我就遇到过,你如果出现了再来问我;
第二个:点击场景中物体,如果物体带有纹理,就弹出一个提示框或图片?
方法:先添加两个标签,名称随意,例如you(表示有纹理),meiyou(表示没纹理),为场景中的物体都添加标签,有纹理的添加you,没有的添加meiyou。之后就是射线碰撞了,当点击鼠标左键的时候调用camera的从屏幕的某个位置向摄像机看的方向发送一条射线函数,具体函数名我忘了,我都是用到的时候在查,好久没用就忘了,去unity圣典搜一下就出来了,然后射线碰到了碰撞盒会返回该游戏物体,直接判断他的标签是否是you,是的话,就弹出一个提示框就行(NGUI做个提示框很简单吧,不用说了),要显示图片的话,也用NGUI的texture就行,最好给场景物体命一些容易区分的名,到时候根据点中物体的不同名字分别导入你事先设置好的图片(用www导入就行),过程较长,我就只提供方法了。
第三个:我可以理解为 --鼠标点击界面上的某一图标(例如按钮),就把指定物体移到场景中的指定位置?
方法:这个很简单,直接用NGUI做几个按钮,放到屏幕上,每个按钮的单击回调函数里面就直接设置指定物体到指定位置就行,例如
public void OnClick()
{
指定物体的引用.transform.localPosition = new Vector3(?,?,?);//你想移到的位置
}
方法:打开第一人称物体上的脚本MouseLook.cs,将update函数里的代码全部转移进一个if判断语句里,例如:
if(按下鼠标左键)
{
MouseLook.cs的update函数本来的语句(摄像头跟随鼠标移动而转动功能)
}
这之间可能会出点小错误,if判断会总是为true,我就遇到过,你如果出现了再来问我;
第二个:点击场景中物体,如果物体带有纹理,就弹出一个提示框或图片?
方法:先添加两个标签,名称随意,例如you(表示有纹理),meiyou(表示没纹理),为场景中的物体都添加标签,有纹理的添加you,没有的添加meiyou。之后就是射线碰撞了,当点击鼠标左键的时候调用camera的从屏幕的某个位置向摄像机看的方向发送一条射线函数,具体函数名我忘了,我都是用到的时候在查,好久没用就忘了,去unity圣典搜一下就出来了,然后射线碰到了碰撞盒会返回该游戏物体,直接判断他的标签是否是you,是的话,就弹出一个提示框就行(NGUI做个提示框很简单吧,不用说了),要显示图片的话,也用NGUI的texture就行,最好给场景物体命一些容易区分的名,到时候根据点中物体的不同名字分别导入你事先设置好的图片(用www导入就行),过程较长,我就只提供方法了。
第三个:我可以理解为 --鼠标点击界面上的某一图标(例如按钮),就把指定物体移到场景中的指定位置?
方法:这个很简单,直接用NGUI做几个按钮,放到屏幕上,每个按钮的单击回调函数里面就直接设置指定物体到指定位置就行,例如
public void OnClick()
{
指定物体的引用.transform.localPosition = new Vector3(?,?,?);//你想移到的位置
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询