Blender  V2.93
Functions
BKE_subdiv_eval.h File Reference
#include "BLI_sys_types.h"

Go to the source code of this file.

Functions

bool BKE_subdiv_eval_begin (struct Subdiv *subdiv)
 
bool BKE_subdiv_eval_begin_from_mesh (struct Subdiv *subdiv, const struct Mesh *mesh, const float(*coarse_vertex_cos)[3])
 
bool BKE_subdiv_eval_refine_from_mesh (struct Subdiv *subdiv, const struct Mesh *mesh, const float(*coarse_vertex_cos)[3])
 
void BKE_subdiv_eval_init_displacement (struct Subdiv *subdiv)
 
void BKE_subdiv_eval_limit_point (struct Subdiv *subdiv, const int ptex_face_index, const float u, const float v, float r_P[3])
 
void BKE_subdiv_eval_limit_point_and_derivatives (struct Subdiv *subdiv, const int ptex_face_index, const float u, const float v, float r_P[3], float r_dPdu[3], float r_dPdv[3])
 
void BKE_subdiv_eval_limit_point_and_normal (struct Subdiv *subdiv, const int ptex_face_index, const float u, const float v, float r_P[3], float r_N[3])
 
void BKE_subdiv_eval_limit_point_and_short_normal (struct Subdiv *subdiv, const int ptex_face_index, const float u, const float v, float r_P[3], short r_N[3])
 
void BKE_subdiv_eval_face_varying (struct Subdiv *subdiv, const int face_varying_channel, const int ptex_face_index, const float u, const float v, float r_face_varying[2])
 
void BKE_subdiv_eval_displacement (struct Subdiv *subdiv, const int ptex_face_index, const float u, const float v, const float dPdu[3], const float dPdv[3], float r_D[3])
 
void BKE_subdiv_eval_final_point (struct Subdiv *subdiv, const int ptex_face_index, const float u, const float v, float r_P[3])
 
void BKE_subdiv_eval_limit_patch_resolution_point (struct Subdiv *subdiv, const int ptex_face_index, const int resolution, void *buffer, const int offset, const int stride)
 
void BKE_subdiv_eval_limit_patch_resolution_point_and_derivatives (struct Subdiv *subdiv, const int ptex_face_index, const int resolution, void *point_buffer, const int point_offset, const int point_stride, void *du_buffer, const int du_offset, const int du_stride, void *dv_buffer, const int dv_offset, const int dv_stride)
 
void BKE_subdiv_eval_limit_patch_resolution_point_and_normal (struct Subdiv *subdiv, const int ptex_face_index, const int resolution, void *point_buffer, const int point_offset, const int point_stride, void *normal_buffer, const int normal_offset, const int normal_stride)
 
void BKE_subdiv_eval_limit_patch_resolution_point_and_short_normal (struct Subdiv *subdiv, const int ptex_face_index, const int resolution, void *point_buffer, const int point_offset, const int point_stride, void *normal_buffer, const int normal_offset, const int normal_stride)
 

Function Documentation

◆ BKE_subdiv_eval_begin()

bool BKE_subdiv_eval_begin ( struct Subdiv subdiv)

◆ BKE_subdiv_eval_begin_from_mesh()

bool BKE_subdiv_eval_begin_from_mesh ( struct Subdiv subdiv,
const struct Mesh mesh,
const float(*)  coarse_vertex_cos[3] 
)

◆ BKE_subdiv_eval_displacement()

void BKE_subdiv_eval_displacement ( struct Subdiv subdiv,
const int  ptex_face_index,
const float  u,
const float  v,
const float  dPdu[3],
const float  dPdv[3],
float  r_D[3] 
)

◆ BKE_subdiv_eval_face_varying()

void BKE_subdiv_eval_face_varying ( struct Subdiv subdiv,
const int  face_varying_channel,
const int  ptex_face_index,
const float  u,
const float  v,
float  r_face_varying[2] 
)

Definition at line 236 of file subdiv_eval.c.

References OpenSubdiv_Evaluator::evaluateFaceVarying, Subdiv::evaluator, and v.

Referenced by subdiv_eval_uv_layer().

◆ BKE_subdiv_eval_final_point()

void BKE_subdiv_eval_final_point ( struct Subdiv subdiv,
const int  ptex_face_index,
const float  u,
const float  v,
float  r_P[3] 
)

◆ BKE_subdiv_eval_init_displacement()

void BKE_subdiv_eval_init_displacement ( struct Subdiv subdiv)

◆ BKE_subdiv_eval_limit_patch_resolution_point()

void BKE_subdiv_eval_limit_patch_resolution_point ( struct Subdiv subdiv,
const int  ptex_face_index,
const int  resolution,
void *  buffer,
const int  offset,
const int  stride 
)

Definition at line 297 of file subdiv_eval.c.

References BKE_subdiv_eval_limit_point(), buffer, buffer_apply_offset(), float(), stride, v, x, and y.

◆ BKE_subdiv_eval_limit_patch_resolution_point_and_derivatives()

void BKE_subdiv_eval_limit_patch_resolution_point_and_derivatives ( struct Subdiv subdiv,
const int  ptex_face_index,
const int  resolution,
void *  point_buffer,
const int  point_offset,
const int  point_stride,
void *  du_buffer,
const int  du_offset,
const int  du_stride,
void *  dv_buffer,
const int  dv_offset,
const int  dv_stride 
)

◆ BKE_subdiv_eval_limit_patch_resolution_point_and_normal()

void BKE_subdiv_eval_limit_patch_resolution_point_and_normal ( struct Subdiv subdiv,
const int  ptex_face_index,
const int  resolution,
void *  point_buffer,
const int  point_offset,
const int  point_stride,
void *  normal_buffer,
const int  normal_offset,
const int  normal_stride 
)

◆ BKE_subdiv_eval_limit_patch_resolution_point_and_short_normal()

void BKE_subdiv_eval_limit_patch_resolution_point_and_short_normal ( struct Subdiv subdiv,
const int  ptex_face_index,
const int  resolution,
void *  point_buffer,
const int  point_offset,
const int  point_stride,
void *  normal_buffer,
const int  normal_offset,
const int  normal_stride 
)

◆ BKE_subdiv_eval_limit_point()

void BKE_subdiv_eval_limit_point ( struct Subdiv subdiv,
const int  ptex_face_index,
const float  u,
const float  v,
float  r_P[3] 
)

◆ BKE_subdiv_eval_limit_point_and_derivatives()

void BKE_subdiv_eval_limit_point_and_derivatives ( struct Subdiv subdiv,
const int  ptex_face_index,
const float  u,
const float  v,
float  r_P[3],
float  r_dPdu[3],
float  r_dPdv[3] 
)

◆ BKE_subdiv_eval_limit_point_and_normal()

void BKE_subdiv_eval_limit_point_and_normal ( struct Subdiv subdiv,
const int  ptex_face_index,
const float  u,
const float  v,
float  r_P[3],
float  r_N[3] 
)

◆ BKE_subdiv_eval_limit_point_and_short_normal()

void BKE_subdiv_eval_limit_point_and_short_normal ( struct Subdiv subdiv,
const int  ptex_face_index,
const float  u,
const float  v,
float  r_P[3],
short  r_N[3] 
)

◆ BKE_subdiv_eval_refine_from_mesh()

bool BKE_subdiv_eval_refine_from_mesh ( struct Subdiv subdiv,
const struct Mesh mesh,
const float(*)  coarse_vertex_cos[3] 
)