Spaces:
Running
on
Zero
Running
on
Zero
/* | |
* Copyright (C) 2023, Inria | |
* GRAPHDECO research group, https://team.inria.fr/graphdeco | |
* All rights reserved. | |
* | |
* This software is free for non-commercial, research and evaluation use | |
* under the terms of the LICENSE.md file. | |
* | |
* For inquiries contact george.drettakis@inria.fr | |
*/ | |
namespace CudaRasterizer | |
{ | |
class Rasterizer | |
{ | |
public: | |
static void markVisible( | |
int P, | |
float* means3D, | |
float* viewmatrix, | |
float* projmatrix, | |
bool* present); | |
static int forward( | |
std::function<char* (size_t)> geometryBuffer, | |
std::function<char* (size_t)> binningBuffer, | |
std::function<char* (size_t)> imageBuffer, | |
const int P, int D, int M, | |
const float* background, | |
const int width, int height, | |
const float* means3D, | |
const float* shs, | |
const float* colors_precomp, | |
const float* opacities, | |
const float* scales, | |
const float scale_modifier, | |
const float* rotations, | |
const float* transMat_precomp, | |
const float* viewmatrix, | |
const float* projmatrix, | |
const float* cam_pos, | |
const float tan_fovx, float tan_fovy, | |
const bool prefiltered, | |
float* out_color, | |
float* out_others, | |
int* radii = nullptr, | |
bool debug = false); | |
static void backward( | |
const int P, int D, int M, int R, | |
const float* background, | |
const int width, int height, | |
const float* means3D, | |
const float* shs, | |
const float* colors_precomp, | |
const float* scales, | |
const float scale_modifier, | |
const float* rotations, | |
const float* transMat_precomp, | |
const float* viewmatrix, | |
const float* projmatrix, | |
const float* campos, | |
const float tan_fovx, float tan_fovy, | |
const int* radii, | |
char* geom_buffer, | |
char* binning_buffer, | |
char* image_buffer, | |
const float* dL_dpix, | |
const float* dL_depths, | |
float* dL_dmean2D, | |
float* dL_dnormal, | |
float* dL_dopacity, | |
float* dL_dcolor, | |
float* dL_dmean3D, | |
float* dL_dtransMat, | |
float* dL_dsh, | |
float* dL_dscale, | |
float* dL_drot, | |
bool debug); | |
}; | |
}; | |