Public Types | |
| typedef void(* | TextureSampler) (Iop *material, const Vector2 ¢er, const Vector2 &dU, const Vector2 &dV, TextureFilter *f, Pixel &out, void *context) |
Public Member Functions | |
| VertexContext (const VertexContext &vtx) | |
| Scene * | scene () const |
| void | set_scene (Scene *s) |
| const GeoInfo * | geoinfo () const |
| void | set_geoinfo (const GeoInfo *g) |
| const Primitive * | primitive () const |
| void | set_primitive (const Primitive *p) |
| const GeoInfoRenderState * | get_renderstate () const |
| void | set_renderstate (const GeoInfoRenderState *r) |
| rPrimitive * | rprimitive () const |
| void | set_rprimitive (rPrimitive *rp) |
| Iop * | rmaterial () const |
| void | set_rmaterial (Iop *m) |
| Box3 & | face_uv_bbox () |
| unsigned & | face_clipmask () |
| void | set_transforms (MatrixArray *m) |
| MatrixArray * | transforms () const |
| const Matrix4 & | matrix (int n) const |
| const Matrix4 & | inverse_matrix (int n) const |
| PrimitiveTestCache * | ray_test_cache () const |
| void | set_ray_test_cache (PrimitiveTestCache *r) |
| TextureSampler | texture_sampler () const |
| void | set_texture_sampler (TextureSampler t) |
| Vector4 & | P () const |
| Vector4 & | dPdu () const |
| Vector4 & | dPdv () const |
| float | x () const |
| float | y () const |
| float | z () const |
| float | w () const |
| Vector3 & | PL () const |
| Vector3 & | dPLdu () const |
| Vector3 & | dPLdv () const |
| Vector3 & | PW () const |
| Vector3 & | dPWdu () const |
| Vector3 & | dPWdv () const |
| Vector3 & | MB () const |
| Vector3 & | dMBdu () const |
| Vector3 & | dMBdv () const |
| Vector4 & | UV () const |
| Vector4 & | dUVdu () const |
| Vector4 & | dUVdv () const |
| Vector3 & | N () const |
| Vector3 & | dNdu () const |
| Vector3 & | dNdv () const |
| Vector4 & | Cf () const |
| Vector4 & | dCfdu () const |
| Vector4 & | dCfdv () const |
| float | r () const |
| float | g () const |
| float | b () const |
| float | a () const |
| Vector3 & | VEL () const |
| Vector3 & | dVELdu () const |
| Vector3 & | dVELdv () const |
| void | sample (Iop *material, Pixel &out) const |
Public Attributes | |
| VArray | vP |
| Current values for fragment_shader. | |
| VArray | vdX |
| Change if X of render pixel is increased by 1. | |
| VArray | vdY |
| Change if Y of render pixel is increased by 1. | |
| Vector3 | ambient |
| Global ambient setting. | |
| Iop * | blending_shader |
| bool | texture_sampling |
| void * | render_context |
This class is intended to be passed up a vertex shader tree. It's initialized with basic vertex info like the point location, a UV coordinate and a normal. A shader can then modify the parameters producing effects like point displacement, UV projection, and normal remapping.
| typedef void(* DD::Image::VertexContext::TextureSampler) (Iop *material, const Vector2 ¢er, const Vector2 &dU, const Vector2 &dV, TextureFilter *f, Pixel &out, void *context) |
Callback to redefine the texture sampler
Use the UV and the derivatives of UV to sample the incoming image. UV of 0,0 is mapped to the lower-left corner of the image's format, and 1,1 is mapped to the upper-right corner.
References DD::Image::IopInfoOwner::channels(), DD::Image::ChannelSet::contains(), DD::Image::IopInfoOwner::format(), DD::Image::Box::h(), DD::Image::Iop::sample(), DD::Image::Box::w(), DD::Image::Box::x(), and DD::Image::Box::y().
Referenced by DD::Image::Render::draw_primitives(), and DD::Image::Iop::fragment_shader().
| Iop* DD::Image::VertexContext::blending_shader |
Points at the final shader in the chain.
Referenced by DD::Image::Iop::fragment_shader(), and DD::Image::Render::Span::initialize().
| bool DD::Image::VertexContext::texture_sampling |
Whether shaders should sample their textures.
Referenced by DD::Image::Iop::fragment_shader(), and DD::Image::Render::Span::initialize().
| ©2024 The Foundry Visionmongers, Ltd. All Rights Reserved. |