使用反转法线材质球,实现切换天空盒相同的功能,优点:包体变小

切换天空盒

第一步先把SKY 天空球资源导入到工程里,

第二步:天空球文件下的SKY预制件拖入到场景里

第三步 选着SKY材质球,拖入自己的全景图片(图片分辨率不能超过5000*5000,否则手机无法显示)

如果并没有效果,看看图片的设置

还没有效果的话,重新烘焙场景,这样就能正常显示了

javascript 复制代码
const { regClass, property } = Laya;
import MeshRenderer = Laya.MeshRenderer;
import Material = Laya.Material;
@regClass()
export class Script extends Laya.Script {
    //declare owner : Laya.Sprite3D;
    //declare owner : Laya.Sprite;


    public scene3D: Laya.Scene3D;

    @property({ type: Laya.Button })
    public button: Laya.Button;

    switch: boolean = false;
    sky: MeshRenderer;
    public onStart() {
        console.log("Script Start");
        this.scene3D = Laya.stage.getChildAt(0) as Laya.Scene3D

        let sky = this.scene3D.getChildByName("SKY");
        if (sky) {
            this.sky = sky.getChildAt(0).getComponent(MeshRenderer)
        }
        else {
            console.log("没有找到SKY");
        }
        this.button.on(Laya.Event.CLICK, this, () => {
            this.switch = !this.switch;
            this.SwitchSkyBoxMaterial(this.switch ? "resources/1.lmat" : "resources/2.lmat", () => { });
        });
    }

    public SwitchSkyBoxMaterial(skyBoxPath: string, action: () => void) {
        //程序化天空盒
        Laya.loader.load(skyBoxPath).then((mat: Material) => {
            this.sky.material = mat;
            action?.();
        });
    }
}
相关推荐
CG_MAGIC2 天前
多软件互通避坑:模型互导不碎面、不丢材质
3d·材质·效果图·建模教程·渲云渲染
●VON3 天前
鸿蒙NEXT视觉特效深度解析:gradientMask渐变遮罩与Material材质系统
华为·harmonyos·鸿蒙·材质·新特性
赛德传动4 天前
蜗轮蜗杆升降机丝杆材质不同对承载与耐磨度影响大吗?
制造·材质
远离UE45 天前
UE5 如何在延时渲染在材质编辑器提前使用到多灯光的数据
ue5·编辑器·材质
搁浅小泽5 天前
PFC电感各材质作用解析
材质·可靠性工程师
CG_MAGIC8 天前
PBR 材质通用套用技巧
3d·材质·效果图·建模教程·渲云渲染
CG_MAGIC11 天前
主流 3D 软件文件互通互导教程
3d·材质·效果图·建模教程·渲云渲染
吴梓穆11 天前
UE5 材质参数集
ue5·材质
阿斯加德D15 天前
我的世界生活大冒险整合包下载高版本2026最新分享
测试工具·游戏·游戏程序·生活·材质
BSD_HY15 天前
薄膜开关技术深度解析:PET与PC材质对比、工业4.0接口设计及汽车电子产品应用
汽车·人机交互·制造·材质·薄膜开关