Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 阿科雷–;光估计_Java_Android_Kotlin_Augmented Reality_Arcore - Fatal编程技术网

Java 阿科雷–;光估计

Java 阿科雷–;光估计,java,android,kotlin,augmented-reality,arcore,Java,Android,Kotlin,Augmented Reality,Arcore,我一直在努力了解如何在我的Android应用程序中使用ARCore的光线估计功能。大多数关于光线估计的教程都是针对Unity的。然而,我在我的项目中使用Android Studio 如果有人能解释如何在关闭灯光时使用灯光估计来触发着色器或动画的更改?目前在ARCore中没有真实的灯光估计,只是粗略的近似 让我们看看Android Studio中用于ARCore光线估计的代码应该是什么样子: try { session.setCameraTextureName(backgroundRend

我一直在努力了解如何在我的Android应用程序中使用ARCore的
光线估计功能。大多数关于光线估计的教程都是针对Unity的。然而,我在我的项目中使用Android Studio


如果有人能解释如何在关闭灯光时使用灯光估计来触发着色器或动画的更改?

目前在ARCore中没有真实的灯光估计,只是粗略的近似

让我们看看Android Studio中用于ARCore光线估计的代码应该是什么样子:

try {
    session.setCameraTextureName(backgroundRenderer.getTextureId());

    Frame frame = session.update();
    Camera camera = frame.getCamera();

    // Compute lighting from average intensity of the image.
    // 3 components here are color factors, the fourth one is intensity.

    final float[] colorCorrectionRgba = new float[4];
    frame.getLightEstimate().getColorCorrection(colorCorrectionRgba, 0); 

} catch (Throwable t) {
    Log.e(TAG, "Exception on the OpenGL thread", t);
}
这个估计仅仅是从手机的彩色摄像头中获取的整个场景的平均亮度
1.0
为白色,
0.0
为黑色。它与您所在房间的实际亮度无关,但取决于相机如何通过其曝光设置感知亮度。相机的曝光总是不准确的,这取决于相机指向的位置。您只获得整个场景的一个全局灯光估计值。无法根据对象所在的特定区域亮度调整对象


Hello\u AR\u示例
项目的着色器将对象颜色与全局灯光估计值相乘。这会调整(通常会降低)最终曲面颜色的RGB亮度

嗨,@PankajLohia!你已经试过了吗?