SoShaderParameter2f(3)
π SoShaderParameter2f β from the Coin manual, section 3 π
okay bestie, welcome to SoShaderParameter2f(3) β¨ this is the page for the SoShaderParameter2f class, and she is serving one very specific purpose π
β¨ NAME β¨
SoShaderParameter2f β the class you reach for when you wanna define a two-dimensional floating point value as a shader parameter π
like. that's it. that's her whole thing. two floats, side by side, living their best life as a shader parameter π¦ ngl it's giving "small but essential" and we love that for her π
no cap, this is only part 1 of the page β more is coming, so don't go anywhere π
β¨ SYNOPSIS β¨
#include <Inventor/nodes/SoShaderParameter.h>
Inherits SoUniformShaderParameter. So yeah, everything that parent class brings to the table? She's got it too, no cap. π«Ά
π Public Member Functions π
virtual SoType getTypeId (void) constβ the classic "who even am I" type-identity method. πvirtual void updateParameter (SoGLShaderObject *shaderObject)β bestie this is the main character move: it updates the shader parameter in the OpenGL state using whatever's sitting in thevaluefield. That's literally her whole job. β¨
πΈ Public Member Functions inherited from SoNode πΈ
void setOverride (const SbBool state)SbBool isOverride (void) constvoid setNodeType (const NodeType type)NodeType getNodeType (void) constvirtual SoNode * copy (SbBool copyconnections=FALSE) constvirtual SbBool affectsState (void) constvirtual void doAction (SoAction *action)virtual void GLRender (SoGLRenderAction *action)virtual void GLRenderBelowPath (SoGLRenderAction *action)virtual void GLRenderInPath (SoGLRenderAction *action)virtual void GLRenderOffPath (SoGLRenderAction *action)virtual void callback (SoCallbackAction *action)virtual void getBoundingBox (SoGetBoundingBoxAction *action)virtual void getMatrix (SoGetMatrixAction *action)virtual void handleEvent (SoHandleEventAction *action)virtual void pick (SoPickAction *action)virtual void rayPick (SoRayPickAction *action)virtual void search (SoSearchAction *action)virtual void write (SoWriteAction *action)virtual void audioRender (SoAudioRenderAction *action)virtual void getPrimitiveCount (SoGetPrimitiveCountAction *action)virtual void grabEventsSetup (void)virtual void grabEventsCleanup (void)virtual void startNotify (void)virtual void notify (SoNotList *l)SbUniqueId getNodeId (void) constvirtual SoChildList * getChildren (void) constvirtual void writeInstance (SoOutput *out)virtual SoNode * addToCopyDict (void) constvirtual void copyContents (const SoFieldContainer *from, SbBool copyconnections)virtual SoFieldContainer * copyThroughConnection (void) const
That's the whole roster, okay, I didn't skip a single one. π
π¦ Public Member Functions inherited from SoFieldContainer π¦
void setToDefaults (void)SbBool hasDefaultValues (void) constSbBool fieldsAreEqual (const SoFieldContainer *container) constvoid copyFieldValues (const SoFieldContainer *container, SbBool copyconnections=FALSE)SbBool set (const char *const fielddata)void get (SbString &fielddata)virtual int getFields (SoFieldList &l) constvirtual int getAllFields (SoFieldList &l) constvirtual SoField * getField (const SbName &name) constvirtual SoField * getEventIn (const SbName &name) constvirtual SoField * getEventOut (const SbName &name) constSbBool getFieldName (const SoField *const field, SbName &name) constSbBool enableNotify (const SbBool flag)SbBool isNotifyEnabled (void) constSbBool set (const char *fielddata, SoInput *input)void get (SbString &fielddata, SoOutput *out)virtual SbBool validateNewFieldValue (SoField *field, void *newval)virtual void addWriteReference (SoOutput *out, SbBool isfromfield=FALSE)SbBool getIsBuiltIn (void) constvirtual void getFieldsMemorySize (size_t &managed, size_t &unmanaged) constvoid setUserData (void *userdata) constvoid * getUserData (void) const
π Public Member Functions inherited from SoBase π
void ref (void) constvoid unref (void) constvoid unrefNoDelete (void) constint32_t getRefCount (void) constvoid touch (void)SbBool isOfType (SoType type) constβ returnsTRUEif the type of this object is either of the same type or inherited from type. iykyk πvirtual SbName getName (void) constvirtual void setName (const SbName &newname)void addAuditor (void *const auditor, const SoNotRec::Type type)void removeAuditor (void *const auditor, const SoNotRec::Type type)const SoAuditorList & getAuditors (void) constSbBool shouldWrite (void)void assertAlive (void) const
π Static Public Member Functions π
static SoType getClassTypeId (void)static void initClass ()β sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system. She's doing the paperwork so you don't have to, queen. π
β Static Public Member Functions inherited from SoUniformShaderParameter β
static SoType getClassTypeId (void)static void initClass (void)β sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system. Same ritual, different class. β¨
π Static Public Member Functions inherited from SoShaderParameter π
static SoType getClassTypeId (void)static void initClass ()β sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system. Yeah bestie, they all do it, it's a whole family tradition. π«Ά
π Static Public Member Functions inherited from SoNode π
static uint32_t getCompatibilityTypes (const SoType &nodetype)static SoType getClassTypeId (void)static SoNode * getByName (const SbName &name)static int getByName (const SbName &name, SoNodeList &l)static void initClass (void)β sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.static void initClasses (void)static SbUniqueId getNextNodeId (void)static int getActionMethodIndex (const SoType type)static void getBoundingBoxS (SoAction *action, SoNode *node)static void GLRenderS (SoAction *action, SoNode *node)static void callbackS (SoAction *action, SoNode *node)static void getMatrixS (SoAction *action, SoNode *node)static void handleEventS (SoAction *action, SoNode *node)static void pickS (SoAction *action, SoNode *node)static void rayPickS (SoAction *action, SoNode *node)static void searchS (SoAction *action, SoNode *node)static void writeS (SoAction *action, SoNode *node)static void audioRenderS (SoAction *action, SoNode *node)static void getPrimitiveCountS (SoAction *action, SoNode *node)
π Static Public Member Functions inherited from SoFieldContainer π
static void initClass (void)β sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.static SoType getClassTypeId (void)β this static method returns theSoTypeobject associated with objects of this class.static void cleanupClass (void)static void initCopyDict (void)static void addCopy (const SoFieldContainer *orig, const SoFieldContainer *copy)static SoFieldContainer * checkCopy (const SoFieldContainer *orig)static SoFieldContainer * findCopy (const SoFieldContainer *orig, const SbBool copyconnections)static void copyDone (void)
π§ Static Public Member Functions inherited from SoBase π§
static void initClass (void)β sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.static SoType getClassTypeId (void)β this static method returns theSoTypeobject associated with objects of this class.static void addName (SoBase *const base, const char *const name)static void removeName (SoBase *const base, const char *const name)static void incrementCurrentWriteCounter (void)static void decrementCurrentWriteCounter (void)static SoBase * getNamedBase (const SbName &name, SoType type)static int getNamedBases (const SbName &name, SoBaseList &baselist, SoType type)static SbBool read (SoInput *input, SoBase *&base, SoType expectedtype)static void setInstancePrefix (const SbString &c)static void setTraceRefs (SbBool trace)static SbBool getTraceRefs (void)static SbBool connectRoute (SoInput *input, const SbName &fromnodename, const SbName &fromfieldname, const SbName &tonodename, const SbName &tofieldname)static SbBool readRoute (SoInput *input)
π Public Attributes π
SoSFVec2f valueβ this is the two floats, bestie. The whole point of her existence. π―
πΈ Public Attributes inherited from SoShaderParameter πΈ
SoSFString nameSoSFInt32 identifier
π₯ Protected Member Functions π₯
virtual const SoFieldData * getFieldData (void) const
π Protected Member Functions inherited from SoUniformShaderParameter π
SoGLShaderParameter * getGLShaderParameter (const uint32_t cachecontext)void ensureParameter (SoGLShaderObject *shader)
π· Protected Member Functions inherited from SoShaderParameter π·
SoShaderParameter ()virtual ~SoShaderParameter ()
π¦ Protected Member Functions inherited from SoNode π¦
SoNode (void)virtual ~SoNode ()virtual SbBool readInstance (SoInput *in, unsigned short flags)
πΊ Protected Member Functions inherited from SoFieldContainer πΊ
SoFieldContainer (void)virtual ~SoFieldContainer ()
π« Protected Member Functions inherited from SoBase π«
SoBase (void)virtual ~SoBase ()virtual void destroy (void)SbBool hasMultipleWriteRefs (void) constSbBool writeHeader (SoOutput *out, SbBool isgroup, SbBool isengine) constvoid writeFooter (SoOutput *out) constvirtual const char * getFileFormatName (void) constvirtual SoNotRec createNotRec (void)
π Static Protected Member Functions π
static const SoFieldData ** getFieldDataPtr (void)
β¨ Static Protected Member Functions inherited from SoUniformShaderParameter β¨
static const SoFieldData ** getFieldDataPtr (void)
π¦ Static Protected Member Functions inherited from SoShaderParameter π¦
static const SoFieldData ** getFieldDataPtr (void)
β Static Protected Member Functions inherited from SoNode β
static const SoFieldData ** getFieldDataPtr (void)static void setNextActionMethodIndex (int index)static int getNextActionMethodIndex (void)static void incNextActionMethodIndex (void)static void setCompatibilityTypes (const SoType &nodetype, const uint32_t bitmask)
π Static Protected Member Functions inherited from SoBase π
static uint32_t getCurrentWriteCounter (void)static void staticDataLock (void)static void staticDataUnlock (void)
π«Ά Additional Inherited Members π«Ά
π Public Types inherited from SoNode π
enum NodeType { INVENTOR = 0x0000, VRML1 = 0x0001, VRML2 = 0x0002, INVENTOR_1 = 0x0004, INVENTOR_2_0 = 0x0008, INVENTOR_2_1 = 0x0010, INVENTOR_2_5 = 0x0020, INVENTOR_2_6 = 0x0040, COIN_1_0 = 0x0080, COIN_2_0 = 0x0100, EXTENSION = 0x0200, COIN_2_2 = 0x0400, COIN_2_3 = 0x0800, COIN_2_4 = 0x1000, INVENTOR_5_0 = 0x2000, COIN_2_5 = 0x4000, COIN_3_0 = 0x8000, INVENTOR_6_0 = 0x10000, COIN_4_0 = 0x20000 }
Look at that bitmask lineup, it's giving legacy support realness. π
π Protected Types inherited from SoBase π
enum BaseFlags { IS_ENGINE = 0x01, IS_GROUP = 0x02 }
π§ Protected Attributes inherited from SoNode π§
SbUniqueId uniqueId
π Protected Attributes inherited from SoFieldContainer π
SbBool isBuiltIn
πΈ Static Protected Attributes inherited from SoNode πΈ
static SbUniqueId nextUniqueId = 1static int nextActionMethodIndex = 0
π Detailed Description π
The SoShaderParameter2f class is used to define a two-dimensional floating point value as shader parameter. That's it, that's her whole vibe β two floats, one value field, zero drama. π
β¨
β¨ Member Function Documentation β¨
okay bestie, this is the part where we meet the actual functions. grab a boba, we're going in π§
π¦ SoType SoShaderParameter2f::getClassTypeId (void) β [static]
static method, no instance needed, she does not need you to show up with an object. she just hands you the SoType object that's associated with objects of this class. that's it. that's the whole vibe. β¨
π₯ SoType SoShaderParameter2f::getTypeId (void) const β [virtual]
this one gives you back the type identification of an object that's derived from a class inheriting SoBase. what's it for, you ask? runtime type checking and "downward" casting. literally the whole personality is "who am I and can you cast me down". iconic behavior tbh π
reimplemented from SoUniformShaderParameter β so yeah, she's over here doing her own version of a thing her parent class already had. main character energy.
π const SoFieldData ** SoShaderParameter2f::getFieldDataPtr (void) β [static], [protected]
ngl bestie, this one is internal to the library. like, the manpage itself says it "is not likely to be of interest to the application programmer". so if you're just out here writing app code? this is not your moment. move along, gorgeous π
but for the record, since we keep every detail around here: it returns the SoFieldData class which holds information about fields in this node.
π const SoFieldData * SoShaderParameter2f::getFieldData (void) const β [protected], [virtual]
this one returns a pointer to the class-wide field data storage object for this instance. and listen β if there are no fields present, it returns NULL. not empty, not vibes, NULL. so check before you dereference, okay?? π
reimplemented from SoUniformShaderParameter (yes, again, she's customizing)
πΈ void SoShaderParameter2f::updateParameter (SoGLShaderObject *shaderObject) β [virtual]
the moment we've all been waiting for π«Ά this one updates the shader parameter in the OpenGL state using the content of the value field. so like, whatever you put in value? that's what goes into the GL state. she's the bridge between your little field and the actual graphics pipeline. ate, honestly.
implements SoUniformShaderParameter
π Member Data Documentation π
β SoSFVec2f SoShaderParameter2f::value
the shader parameter value. that's literally the entire description, no notes, she's straightforward like that. it's an SoSFVec2f, so it's a vec2f, and it is the value. periodt π
π Author π
Generated automatically by Doxygen for Coin from the source code. so like, no human author to thank, just the machine doing her thing, we love an automated queen π€β¨
and that's a wrap on SoShaderParameter2f(3) bestie!! this page is from Coin version 4.0.10, and the date on it is Thu Jun 25 2026 00:00:00. go forth and set your vec2f values, you've got this ππ¦π
π¦ where this page comes from
- fedora 43: Coin4-devel 4.0.10-1.fc43 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 43: Coin4-devel 4.0.10-1.fc43 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 44: Coin4-devel 4.0.10-1.fc44 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 44: Coin4-devel 4.0.10-1.fc44 Β· BSD-3-Clause AND GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms