babylon.js/blender-材质、纹理、HDR资源

贴图下载网站
https://hdrmaps.com/
https://tietu.znzmo.com/
https://www.hqreslib.com/index
https://polyhaven.com/
https://texture.ninja/
https://www.cgbookcase.com/textures/
https://www.myminifactory.com/scantheworld/#home
第二次
https://polyhaven.com/zh
https://www.cgbookcase.com/textures
https://www.textures.com/library
3dtestures.me
freepbr.com
texturehaven.com
poliigon.com
ccotextures.com

HDR全名High-Dynamic Range, 即高动态范围图像。这种照片更接近人眼的动态范围,甚至超过人眼。简单来说就是保留了丰富的亮部细节和暗部细节的照片。这是一种为了弥补照相机的动态范围不足而同时拍摄多张位置相同而曝光不同的照片,通过图像处理软件制作出来的照片。

一般HDR贴图是用“HDR照片”制作的“无缝贴图”(无缝贴图就是让图片边缘上下左右都能相接,并且无法看出衔接缝隙或是痕迹的图片)。HDR贴图普遍都是自然风光,或是室内环境。

HDR贴图的作用建筑、家居、静物、机械、影视及后期的制作等等的模型的渲染 会需要这样的贴图。其重要作用于:作为环境背景(比如渲染建筑物模型,背景中的蓝天白云树木等等即可用此贴图);亦或是作为被渲染模型的照射以及反射光源(比如渲染汽车或不锈钢材质等高反光模型时,HDR贴图会作为环境光,不但可以起到反光板那样的照射效果,更重要的是被渲染物体表面会产生超丰富逼真的自然反光效果)。

babylon.js加载HDR

babylon.js加载hdr的方式有很多,比如说HDRCubeTexture(可以加载原生row格式hdr文件)、skybox等。

var delayCreateScene = function () {
    // Create a scene.
    var scene = new BABYLON.Scene(engine);

    // Create a default skybox with an environment.
    var hdrTexture = BABYLON.CubeTexture.CreateFromPrefilteredData("textures/environment.dds", scene);
    var currentSkybox = scene.createDefaultSkybox(hdrTexture, true);

    // Append glTF model to scene.
    BABYLON.SceneLoader.Append("scenes/BoomBox/", "BoomBox.gltf", scene, function (scene) {
        // Create a default arc rotate camera and light.
        scene.createDefaultCameraOrLight(true, true, true);

        // The default camera looks at the back of the asset.
        // Rotate the camera by 180 degrees to the front of the asset.
        scene.activeCamera.alpha += Math.PI;
    });

    return scene;
};

HDR贴图,也可以制作成六图天空盒。