[]正交相机要怎么控制啊,坐标什么的全部懵!看了这个官方示例表示不懂,为什么还要转化为2D坐标?

正交相机要怎么控制啊,坐标什么的全部懵!看了这个官方示例,调了几个参数,表示不懂,很难控制
,为什么还要转化为2D坐标?
https://layaair.ldc.layabox.co ... amera
Laya.Utils3D.convert3DCoordTo2DScreenCoord()
已邀请:

183*****755

赞同来自:

那个translate是要转换为2d的坐标,正交就是没有透视关系,把所有的3d物体,投影到2d屏幕上

sfsmmc

赞同来自:

Laya3D.init(0, 0, true);
Laya.stage.scaleMode = Laya.Stage.SCALE_FULL;
Laya.stage.screenMode = Laya.Stage.SCREEN_NONE;

var dialog = Laya.stage.addChild(new Laya.Image("../../res/threeDimen/texture/earth.png"));

var scene = Laya.stage.addChild(new Laya.Scene());

var camera = scene.addChild(new Laya.Camera(0, 0.1, 1000));
camera.transform.rotate(new Laya.Vector3(-90, 0, 0), false, false); //-30改为-90
camera.transform.translate(new Laya.Vector3(0, 0.5, 0)); //(0,0.5,500)改为(0, 0.5, 0)
camera.orthographicProjection = true;

var directionLight = scene.addChild(new Laya.DirectionLight());

var layaMonkey = scene.addChild(Laya.Sprite3D.load("../../res/threeDimen/skinModel/LayaMonkey/LayaMonkey.lh"));
var translate = new Laya.Vector3(0, 0, 0); //(500, 500, 0)改为(0,0,0)
var rotation = new Laya.Vector3(0, 0.01, 0);
layaMonkey.once(Laya.Event.HIERARCHY_LOADED, this, function () {
layaMonkey.transform.localScale = new Laya.Vector3(300, 300, 300);
Laya.Utils3D.convert3DCoordTo2DScreenCoord(translate, translate);
layaMonkey.transform.position = translate;
Laya.timer.frameLoop(1, this, function () {
layaMonkey.transform.rotate(rotation);
});
});

Laya.stage.on(Laya.Event.RESIZE, null, function () {
camera.orthographicVerticalSize = Laya.RenderState.clientHeight;
});

要回复问题请先

商务合作
商务合作