Panda3D
|
This is a generic buffer object that lives in graphics memory. More...
#include <pandadoc.hpp>
Public Member Functions | |
__init__ (const ShaderBuffer) | |
__init__ (str name, uint64_t size, GeomEnums::UsageHint usage_hint) | |
Creates an uninitialized buffer object with the given size. More... | |
__init__ (str name, VectorUchar initial_data, GeomEnums::UsageHint usage_hint) | |
Creates a buffer object initialized with the given data. More... | |
bool | isPrepared (PreparedGraphicsObjects prepared_objects) |
Returns true if the data has already been prepared or enqueued for preparation on the indicated GSG, false otherwise. More... | |
prepare (PreparedGraphicsObjects prepared_objects) | |
Indicates that the data should be enqueued to be prepared in the indicated prepared_objects at the beginning of the next frame. More... | |
BufferContext | prepareNow (PreparedGraphicsObjects prepared_objects, GraphicsStateGuardianBase gsg) |
Creates a context for the data on the particular GSG, if it does not already exist. More... | |
bool | release (PreparedGraphicsObjects prepared_objects) |
Frees the data context only on the indicated object, if it exists there. More... | |
int | releaseAll () |
Frees the context allocated on all objects for which the data has been declared. More... | |
![]() | |
object | __reduce__ () |
object | __reduce_persist__ (object pickler) |
VectorUchar | encodeToBamStream () |
Converts the TypedWritable object into a single stream of data using a BamWriter, and returns that data as a bytes object. More... | |
bool | encodeToBamStream (VectorUchar data, BamWriter writer) |
Converts the TypedWritable object into a single stream of data using a BamWriter, and stores that data in the indicated string. More... | |
fillin (DatagramIterator scan, BamReader manager) | |
This internal function is intended to be called by each class's make_from_bam() method to read in all of the relevant data from the BamFile for the new object. More... | |
UpdateSeq | getBamModified () |
Returns the current bam_modified counter. More... | |
markBamModified () | |
Increments the bam_modified counter, so that this object will be invalidated and retransmitted on any open bam streams. More... | |
![]() | |
TypeHandle | getType () |
int | getTypeIndex () |
Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. More... | |
bool | isExactType (TypeHandle handle) |
Returns true if the current object is the indicated type exactly. More... | |
bool | isOfType (TypeHandle handle) |
Returns true if the current object is or derives from the indicated type. More... | |
![]() | |
int | getRefCount () |
Returns the current reference count. More... | |
ref () | |
Explicitly increments the reference count. More... | |
bool | testRefCountIntegrity () |
Does some easy checks to make sure that the reference count isn't completely bogus. More... | |
bool | testRefCountNonzero () |
Does some easy checks to make sure that the reference count isn't zero, or completely bogus. More... | |
bool | unref () |
Explicitly decrements the reference count. More... | |
![]() | |
__init__ (const Namable) | |
__init__ (str initial_name) | |
clearName () | |
Resets the Namable's name to empty. More... | |
str | getName () |
bool | hasName () |
Returns true if the Namable has a nonempty name set, false if the name is empty. More... | |
output (Ostream out) | |
Outputs the Namable. More... | |
setName (str name) | |
![]() | |
__init__ () | |
__init__ (const GeomEnums) | |
Static Public Member Functions | |
static TypeHandle | getClassType () |
![]() | |
static TypedWritableReferenceCount | decodeFromBamStream (VectorUchar data, BamReader reader) |
Reads the bytes created by a previous call to encode_to_bam_stream(), and extracts and returns the single object on those bytes. More... | |
static TypeHandle | getClassType () |
![]() | |
static TypeHandle | getClassType () |
![]() | |
static TypeHandle | getClassType () |
![]() | |
static TypeHandle | getClassType () |
![]() | |
static TypeHandle | getClassType () |
Public Attributes | |
uint64_t | data_size_bytes |
Returns the buffer size in bytes. More... | |
GeomEnums::UsageHint | usage_hint |
Returns the buffer usage hint. More... | |
![]() | |
TypeHandle | type |
Returns the TypeHandle representing this object's type. More... | |
![]() | |
int | ref_count |
The current reference count. More... | |
![]() | |
const String | name |
This is a generic buffer object that lives in graphics memory.
__init__ | ( | const | ShaderBuffer | ) |
__init__ | ( | str | name, |
uint64_t | size, | ||
GeomEnums::UsageHint | usage_hint | ||
) |
Creates an uninitialized buffer object with the given size.
For now, these parameters cannot be modified, but this may change in the future.
__init__ | ( | str | name, |
VectorUchar | initial_data, | ||
GeomEnums::UsageHint | usage_hint | ||
) |
Creates a buffer object initialized with the given data.
For now, these parameters cannot be modified, but this may change in the future.
|
static |
bool isPrepared | ( | PreparedGraphicsObjects | prepared_objects | ) |
Returns true if the data has already been prepared or enqueued for preparation on the indicated GSG, false otherwise.
prepare | ( | PreparedGraphicsObjects | prepared_objects | ) |
Indicates that the data should be enqueued to be prepared in the indicated prepared_objects at the beginning of the next frame.
This will ensure the data is already loaded into the GSG if it is expected to be rendered soon.
Use this function instead of prepare_now() to preload datas from a user interface standpoint.
BufferContext prepareNow | ( | PreparedGraphicsObjects | prepared_objects, |
GraphicsStateGuardianBase | gsg | ||
) |
Creates a context for the data on the particular GSG, if it does not already exist.
Returns the new (or old) BufferContext. This assumes that the GraphicsStateGuardian is the currently active rendering context and that it is ready to accept new datas. If this is not necessarily the case, you should use prepare() instead.
Normally, this is not called directly except by the GraphicsStateGuardian; a data does not need to be explicitly prepared by the user before it may be rendered.
bool release | ( | PreparedGraphicsObjects | prepared_objects | ) |
Frees the data context only on the indicated object, if it exists there.
Returns true if it was released, false if it had not been prepared.
int releaseAll | ( | ) |
Frees the context allocated on all objects for which the data has been declared.
Returns the number of contexts which have been freed.
uint64_t data_size_bytes |
Returns the buffer size in bytes.
GeomEnums::UsageHint usage_hint |
Returns the buffer usage hint.