я пытаюсь вызвать эту функцию
bool intersectRaySphere(const float3& p, const float3& d, const float3& c,
float r, float& t)
{
}
из этого функтина с использованием двойной петли
int main()
{
std::vector<float> ray_direction;
for (int y = 0; y < height(framebuffer); ++y)
{
for (int x = 0; x < width(framebuffer); ++x)
{
float ray_dir_x = (x/width(framebuffer) - 0,5) * w_s;
float ray_dir_y = (y/height(framebuffer) - 0,5) * w_s;
float ray_dir_z = (y * -1);
std::vector<float> ray_direction;
ray_direction.push_back(ray_dir_x);
ray_direction.push_back(ray_dir_y);
ray_direction.push_back(ray_dir_z);
float3& lv_c = ray_direction;
}
Но я не уверен, как объявить параметры для функции bool intersectRaySphere (). Я знаю, что первый параметр p является адресом вектора. Так что я создаю вектор в моей базе с тремя значениями, но я не уверен, как правильно передать его в функцию, где он мне понадобится для работы с ним.
Я пробовал это по-разному - таким образом, здесь я получил сообщение "неверная инициализация ссылки типа math :: float3b &". Буду очень признателен за некоторые советы, как это сделать правильно ...
Роберт