恳请大家帮帮忙,关于用js控制3D旋转

JavaScript013

恳请大家帮帮忙,关于用js控制3D旋转,第1张

rotate的作用是平面旋转,是个css样式,比如顺时针旋转45度

.className{

    transform:rotate(45deg)

}

#pragma strict

public var capsule:GameObject

private var i:float = 0

public var speed:float

public var allTime:float

function Start () {

}

function Update () {

i+=Time.deltaTime

if(i<allTime){

capsule.transform.Rotate(Vector3.up*Time.deltaTime*speed)

}

}

解释一下,capsule这个不用说就是你的圆柱体了,inspector面板中赋值一下就好了。i是一个计时用的,不用管。speed,就是旋转的速度了,speed假如等于60,就是每秒旋转60度,allTime就是旋转的总共的时间。例如,你想这个圆柱以每秒60度旋转120度就停止,这是speed =60,allTime = 2,就好了。不过这样的弊端就是它旋转的不是恰好120,可能119.8度这样的,有误差

在使用three.js加载3D模型之后,项目中遇到一个问题:需要将3D模型旋转之后的位姿转换成图片并保存下来,尝试了两种方法:

问题:由于canvas中加载的是3D模型,导致转换出来的图片一片漆黑,方法失败

经过尝试之后,成功将模型转换成图片(base64编码图片)

方法如下:

转换之后,imgData为base64编码的图片,可以直接进行显示