95 float left,
float right,
float bottom,
float top,
float near,
float far);
117 const float model[4][4],
118 const float proj[4][4],
122 const float model[4][4],
123 const float proj[4][4],
128 const float model[4][4],
129 const float proj[4][4],
134 const float model_inverted[4][4],
135 const float proj[4][4],
169#ifdef USE_GPU_PY_MATRIX_API
173# define GPU_PY_MATRIX_STACK_LEN 31
176#ifndef SUPPRESS_GENERIC_MATRIX_API
178# if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201112L)
179# define _GPU_MAT3_CONST_CAST(x) \
181 void *: (const float(*)[3])(x), \
182 float *: (const float(*)[3])(x), \
183 float(*)[4]: (const float(*)[3])(x), \
184 const void *: (const float(*)[3])(x), \
185 const float *: (const float(*)[3])(x), \
186 const float(*)[3]: (const float(*)[3])(x)))
187# define _GPU_MAT3_CAST(x) \
189 void *: (float(*)[3])(x), \
190 float *: (float(*)[3])(x), \
191 float(*)[3]: (float(*)[3])(x)))
192# define _GPU_MAT4_CONST_CAST(x) \
194 void *: (const float(*)[4])(x), \
195 float *: (const float(*)[4])(x), \
196 float(*)[4]: (const float(*)[4])(x), \
197 const void *: (const float(*)[4])(x), \
198 const float *: (const float(*)[4])(x), \
199 const float(*)[4]: (const float(*)[4])(x)))
200# define _GPU_MAT4_CAST(x) \
202 void *: (float(*)[4])(x), \
203 float *: (float(*)[4])(x), \
204 float(*)[4]: (float(*)[4])(x)))
206# define _GPU_MAT3_CONST_CAST(x) (const float(*)[3])(x)
207# define _GPU_MAT3_CAST(x) (float(*)[3])(x)
208# define _GPU_MAT4_CONST_CAST(x) (const float(*)[4])(x)
209# define _GPU_MAT4_CAST(x) (float(*)[4])(x)
213# define GPU_matrix_mul(x) GPU_matrix_mul(_GPU_MAT4_CONST_CAST(x))
214# define GPU_matrix_set(x) GPU_matrix_set(_GPU_MAT4_CONST_CAST(x))
215# define GPU_matrix_projection_set(x) GPU_matrix_projection_set(_GPU_MAT4_CONST_CAST(x))
216# define GPU_matrix_model_view_get(x) GPU_matrix_model_view_get(_GPU_MAT4_CAST(x))
217# define GPU_matrix_projection_get(x) GPU_matrix_projection_get(_GPU_MAT4_CAST(x))
218# define GPU_matrix_model_view_projection_get(x) \
219 GPU_matrix_model_view_projection_get(_GPU_MAT4_CAST(x))
220# define GPU_matrix_normal_get(x) GPU_matrix_normal_get(_GPU_MAT3_CAST(x))
221# define GPU_matrix_normal_inverse_get(x) GPU_matrix_normal_inverse_get(_GPU_MAT3_CAST(x))
226#define GPU_MATRIX_ORTHO_CLIP_NEAR_DEFAULT (-100)
227#define GPU_MATRIX_ORTHO_CLIP_FAR_DEFAULT (100)
void GPU_matrix_look_at(float eyeX, float eyeY, float eyeZ, float centerX, float centerY, float centerZ, float upX, float upY, float upZ)
#define GPU_matrix_normal_get(x)
void GPU_matrix_translate_2fv(const float vec[2])
void GPU_matrix_rotate_axis(float deg, char axis)
float GPU_polygon_offset_calc(const float(*winmat)[4], float viewdist, float dist)
void GPU_matrix_identity_projection_set()
#define GPU_matrix_model_view_get(x)
void GPU_matrix_project_2fv(const float world[3], const float model[4][4], const float proj[4][4], const int view[4], float r_win[2])
void GPU_matrix_ortho_set(float left, float right, float bottom, float top, float near, float far)
void GPU_matrix_identity_set()
void GPU_matrix_scale_2f(float x, float y)
void GPU_matrix_bind(GPUShader *shader)
void GPU_matrix_perspective_set(float fovy, float aspect, float near, float far)
void GPU_matrix_scale_2fv(const float vec[2])
#define GPU_matrix_set(x)
void GPU_matrix_frustum_set(float left, float right, float bottom, float top, float near, float far)
void GPU_matrix_ortho_set_z(float near, float far)
void GPU_matrix_ortho_2d_set(float left, float right, float bottom, float top)
void GPU_matrix_push_projection()
#define GPU_matrix_mul(x)
void GPU_matrix_scale_3fv(const float vec[3])
void GPU_matrix_scale_3f(float x, float y, float z)
#define GPU_matrix_normal_inverse_get(x)
void GPU_matrix_scale_1f(float factor)
void GPU_matrix_rotate_3fv(float deg, const float axis[3])
void GPU_matrix_rotate_2d(float deg)
void GPU_matrix_pop_projection()
#define GPU_matrix_projection_get(x)
#define GPU_matrix_projection_set(x)
bool GPU_matrix_dirty_get()
bool GPU_matrix_unproject_3fv(const float win[3], const float model_inverted[4][4], const float proj[4][4], const int view[4], float r_world[3])
bool GPU_matrix_unproject_precalc(GPUMatrixUnproject_Precalc *unproj_precalc, const float model[4][4], const float proj[4][4], const int view[4])
#define GPU_matrix_model_view_projection_get(x)
void GPU_matrix_translate_3fv(const float vec[3])
void GPU_matrix_translate_3f(float x, float y, float z)
void GPU_polygon_offset(float viewdist, float dist)
void GPU_matrix_rotate_3f(float deg, float x, float y, float z)
void GPU_matrix_project_3fv(const float world[3], const float model[4][4], const float proj[4][4], const int view[4], float r_win[3])
void GPU_matrix_translate_2f(float x, float y)
in reality light always falls off quadratically Particle Retrieve the data of the particle that spawned the object for example to give variation to multiple instances of an object Point Retrieve information about points in a point cloud Retrieve the edges of an object as it appears to Cycles topology will always appear triangulated Convert a blackbody temperature to an RGB value Normal Generate a perturbed normal from an RGB normal map image Typically used for faking highly detailed surfaces Generate an OSL shader from a file or text data block Image Sample an image file as a texture Gabor Generate Gabor noise Gradient Generate interpolated color and intensity values based on the input vector Magic Generate a psychedelic color texture Voronoi Generate Worley noise based on the distance to random points Typically used to generate textures such as or biological cells Brick Generate a procedural texture producing bricks Texture Retrieve multiple types of texture coordinates nTypically used as inputs for texture nodes Vector Convert a or normal between world
struct GPUShader GPUShader
SIMD_FORCE_INLINE const btScalar & z() const
Return the z value.
draw_view in_light_buf[] float
int GPU_matrix_stack_level_get_projection()
int GPU_matrix_stack_level_get_model_view()
float model_inverted[4][4]
struct GPUMatrixUnproject_Precalc::@247200160336066137273325151263233063175107074314 dims