[]Cannot read property 'toDefault' of undefined报错是什么原因

主要代码如下:
Laya.class(MousePickingScene, "MousePickingScene", Laya.Scene);
function MousePickingScene() {
MousePickingScene.super(this);
this.camera = new Laya.Camera(0,0.1,100);
this.addChild(this.camera);
this.camera.clearFlag = Laya.BaseCamera.CLEARFLAG_SKY;
this.skyBox = new Laya.SkyBox();
this.camera.sky = this.skyBox;
this.skyBox.textureCube = Laya.TextureCube.load("skyBox/skyCube.ltc");
this.camera.addComponent(VRCameraMoveScript);
this.ray = new Laya.Ray(new Laya.Vector3(0, 0, 0), new Laya.Vector3(0, 0, 0));
this.point = new Laya.Vector2();
this._outHitInfo = new Laya.RaycastHit();
// this.phasorSpriter3D = new Laya.PhasorSpriter3D();
}

MousePickingScene.prototype.lateRender = function (state) {
MousePickingScene.__super.prototype.lateRender.call(state);
//从屏幕空间生成射线
this.point.elements[0] = Laya.stage.mouseX;
this.point.elements[1] = Laya.stage.mouseY;
this.camera.viewportPointToRay(this.point, this.ray);
//11111111111111就是下面这句报错
Laya.Physics.rayCast(this.ray, this._outHitInfo, Number.MAX_VALUE, 10);
if (this._outHitInfo.sprite3D.name === "tlj"){
isRotate = !isRotate;
}
// this.phasorSpriter3D.begin(Laya.WebGLContext.LINES, state);
// //绘出射线
// this.phasorSpriter3D.line(this.ray.origin.x, this.ray.origin.y, this.ray.origin.z, 1.0, 0.0, 0.0, 1.0, 0, -1, 0, 1.0, 0.0, 0.0, 1.0);
// this.phasorSpriter3D.end();
}


var Stage = Laya.Stage;
var Text = Laya.Text;
var Geolocation = Laya.Geolocation;
var Position = Laya.Position;
var Browser = Laya.Browser;
var Handler = Laya.Handler;


// 百度地图
var map;
var marker;
var BMap = Browser.window.BMap;
var convertor = new BMap.Convertor();

// Div用来显示地图
var mapDiv;

var infoText;

var scene;
var mySwitch;
var target;
var isRotate = true;
(function()
{

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

scene = Laya.stage.addChild(new Laya.Scene());
scene.shadingMode = Laya.BaseScene.VERTEX_SHADING;
Laya.stage.addChild(new MousePickingScene());

// Laya.init(Browser.width, Browser.height);
// Laya.stage.scaleMode = Stage.SCALE_NOSCALE;
infoText = "距离:null";
mySwitch = true;
target = new BMap.Point(113.392307, 23.062487);

createDom();
initMap();
createButton();

var successHandler = new Handler(this, updatePosition);
var errorHandler = new Handler(this, onError);

// 使用高精度位置
Geolocation.enableHighAccuracy = true;
Geolocation.watchPosition(successHandler, errorHandler);

// 绑定作用域
convertToBaiduCoord = convertToBaiduCoord.bind(this);


})();
已邀请:

cuixueying

赞同来自:

你这个问题是打包APP遇到的吗,是3D项目吧,麻烦把问题分类描述清楚些,有没有可以运行并且可以重现问题的Demo呢,我们本地看下!

要回复问题请先

商务合作
商务合作