如何在unity3d 触屏拖拽物体中拖拽任意的对象

&>&Unity3D鼠标拖拽绕任意轴旋转的实现
Unity3D鼠标拖拽绕任意轴旋转的实现
上传大小:15KB
Unity3D鼠标拖拽绕任意轴旋转的实现
综合评分:3(3位用户评分)
所需积分/C币:
下载个数:36
{%username%}回复{%com_username%}{%time%}\
/*点击出现回复框*/
$(".respond_btn").on("click", function (e) {
$(this).parents(".rightLi").children(".respond_box").show();
e.stopPropagation();
$(".cancel_res").on("click", function (e) {
$(this).parents(".res_b").siblings(".res_area").val("");
$(this).parents(".respond_box").hide();
e.stopPropagation();
/*删除评论*/
$(".del_comment_c").on("click", function (e) {
var id = $(e.target).attr("id");
$.getJSON('/index.php/comment/do_invalid/' + id,
function (data) {
if (data.succ == 1) {
$(e.target).parents(".conLi").remove();
alert(data.msg);
$(".res_btn").click(function (e) {
var q = $("#form1").serializeArray();
console.log(q);
var res_area_r = $.trim($(".res_area_r").val());
if (res_area_r == '') {
$(".res_text").css({color: "red"});
$.post("/index.php/comment/do_comment_reply/", q,
function (data) {
if (data.succ == 1) {
var $target,
evt = e || window.
$target = $(evt.target || evt.srcElement);
var $dd = $target.parents('dd');
var $wrapReply = $dd.find('.respond_box');
console.log($wrapReply);
var mess = $(".res_area_r").val();
var str = str.replace(/{%header%}/g, data.header)
.replace(/{%href%}/g, 'http://' + window.location.host + '/user/' + data.username)
.replace(/{%username%}/g, data.username)
.replace(/{%com_username%}/g, _username)
.replace(/{%time%}/g, data.time)
.replace(/{%id%}/g, data.id)
.replace(/{%mess%}/g, mess);
$dd.after(str);
$(".respond_box").hide();
$(".res_area_r").val("");
$(".res_area").val("");
$wrapReply.hide();
alert(data.msg);
}, "json");
/*删除回复*/
$(".rightLi").on("click",'.del_comment_r', function (e) {
var id = $(e.target).attr("id");
$.getJSON('/index.php/comment/do_comment_del/' + id,
function (data) {
if (data.succ == 1) {
$(e.target).parent().parent().parent().parent().parent().remove();
$(e.target).parents('.res_list').remove()
alert(data.msg);
//填充回复
function KeyP(v) {
$(".res_area_r").val($.trim($(".res_area").val()));
评论共有3条
骗人的,坑爹资源,完全copy网上
能运行,但没看出来 是绕任意轴的?
还不错,但不是我想要的
审核通过送C币
Windows编程
创建者:stamp1973
Quartz.NET官方实例历史版本
创建者:qq_
C#代码实例
创建者:nihang1234
上传者其他资源上传者专辑
开发技术热门标签
VIP会员动态
下载频道用户反馈专区
下载频道积分规则调整V1710.18
开通VIP,海量IT资源任性下载
spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip
CSDN&VIP年卡&4000万程序员的必选
为了良好体验,不建议使用迅雷下载
Unity3D鼠标拖拽绕任意轴旋转的实现
会员到期时间:
剩余下载个数:
剩余C币:593
剩余积分:0
为了良好体验,不建议使用迅雷下载
积分不足!
资源所需积分/C币
当前拥有积分
您可以选择
程序员的必选
绿色安全资源
资源所需积分/C币
当前拥有积分
当前拥有C币
(仅够下载10个资源)
全站1200个资源免积分下载
为了良好体验,不建议使用迅雷下载
资源所需积分/C币
当前拥有积分
当前拥有C币
全站600个资源免积分下载
资源所需积分/C币
当前拥有积分
当前拥有C币
您的积分不足,将扣除 10 C币
全站1200个资源免积分下载
为了良好体验,不建议使用迅雷下载
你当前的下载分为234。
你还不是VIP会员
开通VIP会员权限,免积分下载
你下载资源过于频繁,请输入验证码
你下载资源过于频繁,请输入验证码
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
若举报审核通过,可奖励20下载分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
Unity3D鼠标拖拽绕任意轴旋转的实现扫一扫,访问微社区
后使用快捷导航没有帐号?
签到成功!您今天第{todayrank}个签到,签到排名竞争激烈,记得每天都来签到哦!已连续签到:{constant}天,累计签到:{days}天
当前位置: &
_____________________________________________________________________________________________________________
问答求助版块规则:
  1、问题尽量描述清楚
& && &2、代码要放在代码块里
& && &3、附件最好放到云盘,然后把链接放到TXT文档里,上传TXT文档。【最好没有附件,你懂得】
& && &4、本版块回复不得无意义,如:顶、呵呵、不错......以及擦边!【真的会扣分的哦】严重者,封IP!
& && &5、问题得到解决,请选择最佳答案。
& && &6、若问题是你自己解决了,可以联系管理员,返还蛮牛币,写下你的答案,另有蛮牛币奖赏。
_____________________________________________________________________________________________________________
查看: 3054|回复: 6
UGUI如何使用OnMouseDown这个方法 C#。或者怎么实现鼠标拖拽。
本帖为抢楼帖,欢迎抢楼!&
119/50主题帖子积分
注册看看, 积分 19, 距离下一级还需 31 积分
注册看看, 积分 19, 距离下一级还需 31 积分
在线时间9 小时
UGUI如何使用OnMouseDown这个方法 C#。或者怎么实现鼠标拖拽。
ugui 拖拽; 鼠标选中对象;
每日推荐:
71668/5000排名<font color="#FF昨日变化主题帖子积分
日久生情, 积分 1668, 距离下一级还需 3332 积分
日久生情, 积分 1668, 距离下一级还需 3332 积分
蛮牛币2787
在线时间477 小时
OnMouseDown所在的脚本需挂在带有碰撞器的一个物体上,该函数响应的就是那个物体本鼠标选中按下时的动作。
该脚本可以实现鼠标滑过物体时变为蓝色,滑出物体时物体恢复颜色。并且鼠标可以拖动物体移
using UnityE
using System.C
public class MouseChangeColor : MonoBehaviour
& & & & private C
& & & & private Vector3 screenS
& & & & private Vector3
& & & & private Vector3 curScreenS
& & & & private Vector3 CurP
& & & & public Color mouseovercolor = Color.
& & & & // Use this for initialization
& & & & void Start ()
& & & & & & & & orignalcolor = renderer.sharedMaterial.
& & & & & & & & StartCoroutine(OnMouseDown());
& & & & // Update is called once per frame
& & & & void Update () {
& & & & void OnMouseEnter()
& & & & & & & & renderer.material.color =
& & & & void OnMouseExit()
& & & & & & & & renderer.material.color =
& & & & IEnumerator OnMouseDown ()
& & & & & & & & var camera = Camera.mainC
& & & & & & & & if (camera)
& & & & & & & & {
& & & & & & & & & & & & //转换对象到当前屏幕位置
& & & & & & & & & & & & Vector3 screenPosition = camera.WorldToScreenPoint (transform.position);
& & & & & & & & & & & &
& & & & & & & & & & & & //鼠标屏幕坐标
& & & & & & & & & & & & Vector3 mScreenPosition=new Vector3 (Input.mousePosition.x, Input.mousePosition.y, screenPosition.z);
& & & & & & & & & & & & //获得鼠标和对象之间的偏移量,拖拽时相机应该保持不动
& & & & & & & & & & & & Vector3 offset = transform.position - camera.ScreenToWorldPoint( mScreenPosition);
& & & & & & & & & & & & //print (&drag starting:&+transform.name);
& & & & & & & & & & & &&&
& & & & & & & & & & & & //若鼠标左键一直按着则循环继续
& & & & & & & & & & & & while (Input.GetMouseButton (0)) {
& & & & & & & & & & & & & & & &
& & & & & & & & & & & & & & & & //鼠标屏幕上新位置
& & & & & & & & & & & & & & & & mScreenPosition = new Vector3 (Input.mousePosition.x, Input.mousePosition.y, screenPosition.z);
& & & & & & & & & & & &&&
& & & & & & & & & & & & & & & & // 对象新坐标
& & & & & & & & & & & & & & & & transform.position=offset + camera.ScreenToWorldPoint (mScreenPosition);
& & & & & & & & & & & &&&
& & & & & & & & & & & & & & & &
& & & & & & & & & & & & & & & & //协同,等待下一帧继续
& & & & & & & & & & & & & & & & yield return new WaitForFixedUpdate ();
& & & & & & & & & & & & }
& & & & & & & &&&
//& & & & & & & & & & & & print (&drag compeleted&);
& & & & & & & & & & & &
& & & & & & & & }
每日推荐:
5611/1000排名<font color="#FF昨日变化3主题帖子积分
熟悉之中, 积分 611, 距离下一级还需 389 积分
熟悉之中, 积分 611, 距离下一级还需 389 积分
蛮牛币1023
在线时间132 小时
楼上是很完整的 哈哈哈哈好&&我也来学习一下
每日推荐:
5542/1000排名<font color="#FF昨日变化3主题帖子积分
熟悉之中, 积分 542, 距离下一级还需 458 积分
熟悉之中, 积分 542, 距离下一级还需 458 积分
在线时间162 小时
大神阿(膜拜膜拜& && && && && && && && && && && && && && && && && && &
每日推荐:
7排名<font color="#FF昨日变化3主题帖子积分
蛮牛币2129
在线时间387 小时
和NGUI基本一样,不过还是推荐使用NGUI,目前4.6的UGUI不是很完善。
每日推荐:
120/50排名<font color="#FF昨日变化47主题帖子积分
注册看看, 积分 20, 距离下一级还需 30 积分
注册看看, 积分 20, 距离下一级还需 30 积分
在线时间11 小时
我想给UGUI里的Text对象响应OnMouseDown函数,给这个text对象添加了碰撞器,怎么OnMouseDown函数不响应呢?
每日推荐:
4304/500排名<font color="#FF昨日变化4主题帖子积分
四处流浪, 积分 304, 距离下一级还需 196 积分
四处流浪, 积分 304, 距离下一级还需 196 积分
在线时间101 小时
LS问题解决了没
我用input.getMouseButtonDown();也没有响应
[]: freestreets 乐于助人,奖励 3
每日推荐:Unity3d Raycast Target 在拖拽中的问题
Unity3d Raycast Target 在拖拽中的问题
在Unity3d中拖拽对象的时候,要设置对象的Raycast Target属性,使拖拽事件在我们需要的对象上生效。首先,BeginDrag中重要操作是创建拖拽对象,创建对象后就需要将新生成的对象的Raycast Target设置为无效。其次,还需要设置将拖拽到的目标位置的对象的Raycast Target设置为有效。这样目标对象上的Drop事件才会收到和处理。下面是设置Input Field的Raycast Target的示例函数:
本文仅代表作者观点,不代表百度立场。系作者授权百家号发表,未经许可不得转载。
百家号 最近更新:
简介: 潮州本地信息论坛
作者最新文章地图平移拖动功能怎么实现效果比较好?_unity3d吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:78,146贴子:
地图平移拖动功能怎么实现效果比较好?收藏
下面的代码虽然能平移,但是会画面抖动,而且移动后速度会加快。。大神们有好方法吗
达内unity3d培训全程&实战教学&,unity3d金牌讲师授课.免费unity3d课程试听中!到达内unity3d学院学习unity3d,只需4个月速成unity3d游戏工程师.
不能用deltaPosition,当初也想用这个偷点懒,用这个确实会抖动,得自己写,用两个touch.position间距计算平移距离,这样会很流畅
这个方法能拖动地图,但是移动速度很快,一闪就没了
把鼠标位置转换成世界位置,直接赋值position,需要缓动效果的话mathf下有个smop什么的缓动
前提必须是UGUI,而且挂在要拖动的UI上。
这是我在摄像机x轴为90度时测试的,平移的x,z轴。如果摄像机为任意角度的话,可以修改offset分解为任意方向上的平移
deltaPosition的话每次都会从你上次手指移开的地方开始计算移动的距离,而不是从你触摸的那个点开始计算移动量,这里似乎会有点问题吧。if(touch.phase.Begin)
{startpos = touch.}if(touch.phase.moved) {var 移动量 = startpos - touch.}我觉得最好还是不要用deltaPosition
有没有那种滑动地图后mouseup时让地图再渐渐滑动一段距离然后慢慢停止。。
登录百度帐号推荐应用}

我要回帖

更多关于 面向对象拖拽 的文章

更多推荐

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

点击添加站长微信