Panda3D
|
Encapsulates the data from a GeomPrimitive, pre-fetched for one stage of the pipeline. More...
#include "geomPrimitive.h"
Public Member Functions | |
GeomPrimitivePipelineReader (const GeomPrimitivePipelineReader ©)=delete | |
GeomPrimitivePipelineReader (CPT(GeomPrimitive) object, Thread *current_thread) | |
void | check_minmax () const |
Ensures that the primitive's minmax cache has been computed. | |
bool | check_valid (const GeomVertexDataPipelineReader *data_reader) const |
CPT (GeomVertexArrayData) get_maxs() const | |
CPT (GeomVertexArrayData) get_mins() const | |
bool | draw (GraphicsStateGuardianBase *gsg, bool force) const |
Thread * | get_current_thread () const |
int | get_data_size_bytes () const |
Returns the number of bytes stored in the vertices array. | |
CPTA_int | get_ends () const |
int | get_first_vertex () const |
int | get_index_stride () const |
NumericType | get_index_type () const |
int | get_max_vertex () const |
int | get_min_vertex () const |
UpdateSeq | get_modified () const |
int | get_num_primitives () const |
int | get_num_vertices () const |
const GeomPrimitive * | get_object () const |
const unsigned char * | get_read_pointer (bool force) const |
void | get_referenced_vertices (BitArray &bits) const |
Turns on all the bits corresponding to the vertices that are referenced by this GeomPrimitive. | |
ShadeModel | get_shade_model () const |
int | get_strip_cut_index () const |
UsageHint | get_usage_hint () const |
int | get_vertex (int i) const |
Returns the ith vertex index in the table. | |
bool | is_indexed () const |
GeomPrimitivePipelineReader & | operator= (const GeomPrimitivePipelineReader ©)=delete |
IndexBufferContext * | prepare_now (PreparedGraphicsObjects *prepared_objects, GraphicsStateGuardianBase *gsg) const |
Static Public Member Functions | |
static TypeHandle | get_class_type () |
static void | init_type () |
Additional Inherited Members | |
![]() | |
enum | AnimationType { AT_none , AT_panda , AT_hardware } |
enum | Contents { C_other , C_point , C_clip_point , C_vector , C_texcoord , C_color , C_index , C_morph_delta , C_matrix , C_normal } |
enum | GeomRendering { GR_indexed_point = 0x00001 , GR_indexed_other = 0x10000 , GR_indexed_bits = 0x10001 , GR_point = 0x00002 , GR_point_uniform_size = 0x00004 , GR_per_point_size = 0x00008 , GR_point_perspective = 0x00010 , GR_point_aspect_ratio = 0x00020 , GR_point_scale = 0x00040 , GR_point_rotate = 0x00080 , GR_point_sprite = 0x00100 , GR_point_sprite_tex_matrix = 0x00200 , GR_point_bits = 0x003fe , GR_triangle_strip = 0x00400 , GR_triangle_fan = 0x00800 , GR_line_strip = 0x01000 , GR_composite_bits = 0x01c00 , GR_strip_cut_index = 0x20000 , GR_flat_first_vertex = 0x02000 , GR_flat_last_vertex = 0x04000 , GR_shade_model_bits = 0x06000 , GR_render_mode_wireframe = 0x40000 , GR_render_mode_point = 0x80000 , GR_adjacency = 0x100000 } |
enum | NumericType { NT_uint8 , NT_uint16 , NT_uint32 , NT_packed_dcba , NT_packed_dabc , NT_float32 , NT_float64 , NT_stdfloat , NT_int8 , NT_int16 , NT_int32 , NT_packed_ufloat } |
enum | PrimitiveType { PT_none , PT_polygons , PT_lines , PT_points , PT_patches } |
enum | ShadeModel { SM_uniform , SM_smooth , SM_flat_first_vertex , SM_flat_last_vertex } |
enum | UsageHint { UH_client , UH_stream , UH_dynamic , UH_static , UH_unspecified } |
Encapsulates the data from a GeomPrimitive, pre-fetched for one stage of the pipeline.
Definition at line 352 of file geomPrimitive.h.
|
inline |
Definition at line 453 of file geomPrimitive.I.
|
inline |
Definition at line 483 of file geomPrimitive.I.
void GeomPrimitivePipelineReader::check_minmax | ( | ) | const |
Ensures that the primitive's minmax cache has been computed.
Definition at line 2266 of file geomPrimitive.cxx.
References unref_delete().
Referenced by GeomPipelineReader::draw(), GeomPrimitive::get_max_vertex(), and GeomPrimitive::get_min_vertex().
bool GeomPrimitivePipelineReader::check_valid | ( | const GeomVertexDataPipelineReader * | data_reader | ) | const |
Definition at line 2414 of file geomPrimitive.cxx.
|
inlinestatic |
Definition at line 401 of file geomPrimitive.h.
|
inline |
Definition at line 521 of file geomPrimitive.I.
|
inline |
Returns the number of bytes stored in the vertices array.
Definition at line 594 of file geomPrimitive.I.
References VertexDataBuffer::get_size().
Referenced by DXIndexBufferContext9::allocate_ibuffer(), IndexBufferContext::changed_size(), IndexBufferContext::mark_loaded(), and DXIndexBufferContext9::upload_data().
|
inline |
Definition at line 636 of file geomPrimitive.I.
int GeomPrimitivePipelineReader::get_first_vertex | ( | ) | const |
Definition at line 2300 of file geomPrimitive.cxx.
|
inline |
Definition at line 610 of file geomPrimitive.I.
|
inline |
Definition at line 545 of file geomPrimitive.I.
|
inline |
Definition at line 585 of file geomPrimitive.I.
|
inline |
Definition at line 576 of file geomPrimitive.I.
|
inline |
Definition at line 602 of file geomPrimitive.I.
int GeomPrimitivePipelineReader::get_num_primitives | ( | ) | const |
Definition at line 2349 of file geomPrimitive.cxx.
|
inline |
Definition at line 561 of file geomPrimitive.I.
|
inline |
Definition at line 513 of file geomPrimitive.I.
|
inline |
Definition at line 619 of file geomPrimitive.I.
void GeomPrimitivePipelineReader::get_referenced_vertices | ( | BitArray & | bits | ) | const |
Turns on all the bits corresponding to the vertices that are referenced by this GeomPrimitive.
Definition at line 2369 of file geomPrimitive.cxx.
References GeomPrimitive::get_first_vertex(), GeomPrimitive::get_index_type, GeomPrimitive::get_num_vertices, GeomPrimitive::get_strip_cut_index, GeomPrimitive::is_indexed(), BitArray::set_bit(), and BitArray::set_range().
|
inline |
Definition at line 529 of file geomPrimitive.I.
|
inline |
Definition at line 628 of file geomPrimitive.I.
|
inline |
Definition at line 537 of file geomPrimitive.I.
int GeomPrimitivePipelineReader::get_vertex | ( | int | i | ) | const |
Returns the ith vertex index in the table.
Definition at line 2318 of file geomPrimitive.cxx.
References GeomPrimitive::get_num_vertices.
Referenced by GeomPrimitive::make_nonindexed(), and Geom::unify_in_place().
|
inlinestatic |
Definition at line 404 of file geomPrimitive.h.
|
inline |
Definition at line 553 of file geomPrimitive.I.