Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/143.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
C++ “关于该文件”;“用于GPU光线跟踪器的KD树加速结构”;_C++ - Fatal编程技术网

C++ “关于该文件”;“用于GPU光线跟踪器的KD树加速结构”;

C++ “关于该文件”;“用于GPU光线跟踪器的KD树加速结构”;,c++,C++,我在光线跟踪器采摘公司工作。并阅读了论文“KD树加速结构的GPU光线跟踪器”,我了解了主要流程。“float2”、“float3”和“short2”在论文结构中是什么? 论文这通常意味着它是一个多维变量(想想2D或3D空间),这就是为什么有一个2或3作为后缀: float2变量表示您可以执行以下操作:variable.x=0.0f;变量y=1.0f 与float3类似,但这次还有一个.z部分 在本文中,他们使用这些类型在2D或3D空间中存储点,从而定义KD树的边界框。它们是GPU/CUDA等中使

我在光线跟踪器采摘公司工作。并阅读了论文“KD树加速结构的GPU光线跟踪器”,我了解了主要流程。“float2”、“float3”和“short2”在论文结构中是什么?
论文

这通常意味着它是一个多维变量(想想2D或3D空间),这就是为什么有一个2或3作为后缀:

float2变量表示您可以执行以下操作:
variable.x=0.0f;变量y=1.0f

float3
类似,但这次还有一个
.z
部分


在本文中,他们使用这些类型在2D或3D空间中存储点,从而定义KD树的边界框。

它们是GPU/CUDA等中使用的不同数据类型。。。参见[这个相关的问题][1][1]:但是在“Shane MacLaughlin”提到的问题中,它们被用于CUDA(和openCL?),其中您有特定大小的浮动,内存使用和对齐是一件大事。float2表示2个字节?float2实际上表示2个浮点,因此当浮点为4个字节时,float2将使用8个字节。正如您所说,结构为“leftChildPointer”并标记为short2,为什么指针需要使用两个short来表示?我使用了拾取方法,但效果很差。如果在同一维度中有太多的相等值,这有关系吗?现在的情况是:当选择一个基本体时,它是正确的。但大多数原语都无法选择。我的kd树的算法参考