近期热门
粉丝2
关注 0
获赞 0
观察产品的操作 讨论

[U3D] 观察产品的操作 讨论

[复制链接]
3111 7 0 0 12年前 举报
好多,很丰富,英文教程,就是没字幕。 哎。。。。。
研究 观察产品的操作  !
实现旋转 拉近 平移

网上找到的代码 挺好  不过就实现了旋转。感谢网友们!
是控制相机的

代码放出
var target : Transform;
var distance = 10.0;

var xSpeed = 120.0;
var ySpeed = 120.0;

var yMinLimit = -20;
var yMaxLimit = 80;

var distanceMin = 3;
var distanceMax = 15;

private var x = 0.0;
private var y = 0.0;


@script AddComponentMenu("Camera-Control/Mouse Orbit")

static function ClampAngle (angle : float, min : float, max : float) {
    if (angle < -360)
        angle += 360;
    if (angle > 360)
        angle -= 360;
    return Mathf.Clamp (angle, min, max);
}



function Start () {
    var angles = transform.eulerAngles;
    x = angles.y;
    y = angles.x;
   
    // Make the rigid body not change rotation
    if (rigidbody)
        rigidbody.freezeRotation = true;
}

function LateUpdate () {
if(Input.GetAxis("Fire1")==0)return;


    if (target) {
        x += Input.GetAxis("Mouse X") * xSpeed * distance* 0.02;
        y -= Input.GetAxis("Mouse Y") * ySpeed * 0.02;

       y = ClampAngle(y, yMinLimit, yMaxLimit);
        
        var rotation = Quaternion.Euler(y, x, 0);

        distance = Mathf.Clamp(distance - Input.GetAxis("Mouse ScrollWheel")*5, distanceMin, distanceMax);
        
        var hit : RaycastHit;
        if (Physics.Linecast (target.position, transform.position, hit)) {
                distance -=  hit.distance;
        }
        
        var position = rotation * Vector3(0.0, 0.0, -distance) + target.position;

        transform.rotation = rotation;
        transform.position = position;
   
    }

}
0
点赞
0
打赏
0
添加到收藏夹

0

点击复制链接

使用微信扫码分享
一次扣10个券
全部评论7
您需要登录后才可以回帖 登录

限制相机上下旋转的角度    playmaker里面可以记录rotate的值啊,compare后选择rotate的值是否变化貌似就可以了。。。。没试验过
12年前
回复

使用道具 举报

还是playmaker方便啊
12年前
回复

使用道具 举报

明显的。。。
12年前
回复

使用道具 举报

@script AddComponentMenu("Camera-Control/Mouse Orbit")
脚本必然是给camera啊
12年前
回复

使用道具 举报

脚本应该给谁的啊??还有那个Transform的要拉哪个进来?
12年前
回复

使用道具 举报

对代码实在搞不懂 {:soso_e113:}   不会编程!

但用playmaker 不写代码 都已实现操作 旋转 拉近 平移
离不开playmaker 了  {:soso_e120:}     

也碰到个问题!想限制相机上下旋转的角度 ,一直没成功。
Clamp Float_浮点限制     Sample Curve_采样曲线  自己理解的应该可以限制 但没成功 {:soso_e154:}
  希望高手指点!
继续研究playmaker   
12年前
回复

使用道具 举报

很吊的设计啊
12年前
回复

使用道具 举报

您当前使用的浏览器IE内核版本过低会导致网站显示错误

请使用高速内核浏览器或其他浏览器