Browse Source

Batch、HaltThresHold类文件改修了注释说明,新增一个configBatch.php示例文件

master
yuanjiajia 2 years ago
parent
commit
b2255b06b2
  1. 2
      .vscode/launch.json
  2. 32
      examples/configBatch.php
  3. 7
      src/scene/render/Batch.php
  4. 10
      src/scene/render/HaltThresHold.php

2
.vscode/launch.json

@ -11,7 +11,7 @@
"name": "Launch currently open script", "name": "Launch currently open script",
"type": "php", "type": "php",
"request": "launch", "request": "launch",
"program": "${workspaceFolder}/examples/configLightStrategy.php",
"program": "${workspaceFolder}/examples/configBatch.php",
"cwd": "${workspaceFolder}", "cwd": "${workspaceFolder}",
"port": 9055 "port": 9055
} }

32
examples/configBatch.php

@ -0,0 +1,32 @@
<?php
namespace Blobt\Luxcore\scene;
include dirname(dirname(__FILE__)) . "/vendor/autoload.php";
/**
* 设置终止渲染参数
*/
$batch = new render\Batch(); //实例一个Batch类对象,当前默认的采样器类型为 Sobol
$batch->halttime = 600; //设置渲染时间超时600秒(此参数优先级最高,如果渲染时间超时,则立即终止渲染,而不管其他条件是否已经设置或已经满足)
$batch->haltspp = "500 200"; //设置每像素平均采样数达到500,且每像素自适应采样达200:
// 1、不启用噪波阈值状态下,如果渲染图像已满足采样条件,则触发终止渲染。
// 2、启用噪波阈值状态下,如果渲染图像已满足采样条件,且图像噪波低于噪波阈值($stoprenderingEnable参数为
// false状态时),触发终止渲染。
$batch->haltthreshold = "0.004"; //默认情况下,设置当图像噪波低于这个阈值时,则触发终止渲染,而不管 采样数 是否已设置或是否已满足。
$batch->haltthresholdcfg = new render\HaltThresHold(); //当使用噪波值作为终止渲染的条件时,配一个 噪波阈值类 的参数,HaltThresHold类的具体参数可查看其注释说明。
$batch->haltthresholdcfg->stoprenderingEnable = BaseCfg::CLOSE; //设置当图像噪波低于这个阈值时,且渲染图像已满足采样条件,才触发终止渲染。
echo $batch; //输出采样器配置参数
?>

7
src/scene/render/Batch.php

@ -8,13 +8,14 @@ class Batch extends BaseCfg
{ {
/** /**
* @var string 每像素光线跟踪采样数与光线跟踪自适应采样数量,取值:一组大于等于0的分别表示降噪彩样次数和灯光采样次数的整数值字符串,0表示不启用这个参数,大于0表示启这个参数
* 其中,必须在光线跟踪则启用时, 光线跟数量自适应 参数才可以设置大于零的整数。
* @var string 每像素光线跟踪平均采样数 每像素光线跟踪自适应采样数,取值:一组大于等于0的分别表示 每像素光线跟踪平均采样数
* 每像素光线跟踪自适应采样数 整数值字符串,0表示不启用这个参数,大于0表示启这个参数,其中,必须在 光线跟踪 参数中启
* 光线跟踪自适应采样数量 时, 每像素光线跟踪自适应采样数量 参数才可以设置大于零的整数。
*/ */
public $haltspp = "500 0"; public $haltspp = "500 0";
/** /**
* @var integer 渲染的时间,单位秒,(取值:大于等于0的整数)
* @var integer 渲染超时的设置,单位秒,(取值:大于等于0的整数)
*/ */
public $halttime = 0; public $halttime = 0;

10
src/scene/render/HaltThresHold.php

@ -7,22 +7,24 @@ class HaltThresHold extends BaseCfg
{ {
/** /**
* @var integer TODO:具体作用尚未明确,(取值:大于1的整数)
* @var integer TODO:第一次测试需要收集样本数(取值:大于1的整数)。在进行第一次收集测试之前要渲染多少个样本。请注意,第一
* 次实际噪声检查仅出现在第二次测试(预热步骤)样本之后,具体作用尚不确明。
*/ */
public $hwarmup = 64; public $hwarmup = 64;
/** /**
* @var integer TODO:具体作用尚未明确,(取值:大于16的整数)
* @var integer TODO:每次测试所需样本数。如果场景渲染非常缓慢且快速,则在收集测试之间渲染的采样将使用较小的值。具体作用尚未
* 明确,取值:大于16的整数。
*/ */
public $step = 64; public $step = 64;
/** /**
* @var bool TODO:具体作用尚未明确,(默认取值:true)
* @var bool TODO:是否加入抗锯齿作为影响终止渲染条件的因素。(默认取值:true)
*/ */
public $filterEnable = true; public $filterEnable = true;
/** /**
* bool 当渲染器状态达到此类参数设置的值,是否停止渲染,(默认取值:true)
* @var bool 当渲染器状态达到此类参数设置的值,是否停止渲染,(默认取值:true)
*/ */
public $stoprenderingEnable = true; public $stoprenderingEnable = true;

Loading…
Cancel
Save