1.laya代码编辑器设置错误怎么办?
2.UE4:源码编译与编辑器生成项目的源码区别
laya代码编辑器设置错误怎么办?
重装完系统后,打开Laya IDE,编辑当我切换到场景编辑器的器退时候,弹出错误框让我备受煎熬。出循我一遍心里骂娘一遍给Laya社区BBS发帖求助,源码也没有人回音。编辑jq输入源码怎么办,器退总不能再重装一遍系统吧,出循这不是源码我的风格,那就只好硬着头皮去解决这个问题了。编辑
从弹窗中大致看到源码位置,器退打开源码文件夹全局搜索webGL!找到弹窗位置了!出循
在文件LayaAirIDE\resources\app\out\vs\layaEditor\h5\renders\uiviewer\editor.max.js
的源码行
if (!WebGL.enable()){
alert("Laya3D init error,must support webGL!");
return;
}
嗯,是编辑因为IDE需要用到WebGL功能,打开开发者工具,器退直播源码输出创建一个canvas,然后调用getContext('webgl')返回null,确实不支持。奇怪,为什么不支持呢?原来是好好的啊。
经过1天的思考,没啥思路,源码保密工具上网搜索一把,终于发现了重要线索:
electron webgl初始化失败blog.csdn.net
原来如此,可以尝试一下这个骚操作,问题是这个代码放哪儿呢?文章没有说。我把代码放到一个页面里面,失败,很显然这个貌似是支付源码修复electron的代码,于是我根据package.json中的入口js找到resources/app/out/main.js,把代码插入其中
init() {
let idepath = this.path.joim.scxhdzs.com#his.app.getPath("appData"), "LayaAirIDE");
this.fs.exists(idepath, function (exists) {
if (!exists) {
require("fs").mkdir(idepath);
}
});
this.app.commandLine.appendSwitch('ignore-gpu-blacklist');
this.app.once("ready", () => {
this.start();
});
this.ipcMain.on("openFile", () => {
console.log("----------------------------收到消息")
console.log(process.argv, "-------------------------")
})
}
重启Laya,不弹窗了,成功!
基于Electron开发的软件会有想不到的坑,也因为可以修改软件代码来解决,js真是通达达源码好用!
UE4:源码编译与编辑器生成项目的区别
UE4源码编译与编辑器生成项目的区别主要体现在 uproject和sln文件上。
首先,编辑器生成的项目文件(uproject)会使用版本号来明确关联使用的引擎版本,这种关联方式直观且易于识别。例如,文件名会包含版本号,如"Project_v1.0.0.uproject",这样可以轻松知道项目的引擎对应版本。
相反,源代码编译的项目文件使用的是全局唯一标识符(GUID),以表示本地引擎的版本。这意味着在不同的PC上,即使使用相同的引擎,生成的uproject文件的GUID也会不同,这是为了区分本地环境的差异。
其次,sln文件(解决方案文件)之间的差异主要在于其中包含的UE4解决方案的绝对路径。这部分内容是编辑器生成的,而源码编译项目则不会包含这些特定的路径信息,因为它们是由开发人员手动构建的。
总结来说,编辑器生成的项目文件更侧重于版本管理和引擎关联,而源码编译则更注重项目的自定义和跨平台一致性。两者在结构和内容上有所不同,以满足不同开发阶段的需求。