panda3d.core.FrameBufferProperties

class FrameBufferProperties

A container for the various kinds of properties we might ask to have on a graphics frameBuffer before we create a GSG.

Inheritance diagram

Inheritance diagram of FrameBufferProperties

__init__() → None
__init__(param0: FrameBufferProperties) → None
getDepthBits() → int

Individual queries.

getColorBits() → int
getRedBits() → int
getGreenBits() → int
getBlueBits() → int
getAlphaBits() → int
getStencilBits() → int
getAccumBits() → int
getAuxRgba() → int
getAuxHrgba() → int
getAuxFloat() → int
getMultisamples() → int
getCoverageSamples() → int

If coverage samples are specified, and there is hardware support, we use coverage multisampling.

getBackBuffers() → int
getIndexedColor() → bool
getRgbColor() → bool
getStereo() → bool
getForceHardware() → bool
getForceSoftware() → bool
getSrgbColor() → bool
getFloatColor() → bool
getFloatDepth() → bool
setDepthBits(n: int) → None

Individual assigners.

setColorBits(n: int) → None

Sets the number of requested color bits as a single number that represents the sum of the individual numbers of red, green and blue bits. Panda won’t care how the individual bits are divided up.

See also set_rgba_bits, which allows you to specify requirements for the individual components.

setRgbaBits(r: int, g: int, b: int, a: int) → None

Convenience method for setting the red, green, blue and alpha bits in one go.

setRedBits(n: int) → None
setGreenBits(n: int) → None
setBlueBits(n: int) → None
setAlphaBits(n: int) → None
setStencilBits(n: int) → None
setAccumBits(n: int) → None
setAuxRgba(n: int) → None
setAuxHrgba(n: int) → None
setAuxFloat(n: int) → None
setMultisamples(n: int) → None
setCoverageSamples(n: int) → None

If coverage samples are specified, and there is hardware support, we use coverage multisampling

setBackBuffers(n: int) → None
setIndexedColor(n: bool) → None
setRgbColor(n: bool) → None
setStereo(n: bool) → None
setForceHardware(n: bool) → None
setForceSoftware(n: bool) → None
setSrgbColor(n: bool) → None
setFloatColor(n: bool) → None
setFloatDepth(n: bool) → None
static getDefault() → FrameBufferProperties

Returns a FrameBufferProperties structure with all of the default values filled in according to the user’s config file.

Return type

FrameBufferProperties

clear() → None

Unsets all properties that have been specified so far, and resets the FrameBufferProperties structure to its initial empty state.

setAllSpecified() → None

Marks all bits as having been specified.

subsumes(other: FrameBufferProperties) → bool

Returns true if this set of properties makes strictly greater or equal demands of the framebuffer than the other set of framebuffer properties.

addProperties(other: FrameBufferProperties) → None

Sets any properties that are explicitly specified in other on this object. Leaves other properties unchanged.

output(out: ostream) → None

Generates a string representation.

setOneBitPerChannel() → None

If any of the depth, color, alpha, accum, or stencil properties is set to more than one, then they are reduced to one.

isStereo() → bool
isSingleBuffered() → bool
getQuality(reqs: FrameBufferProperties) → int

Assumes that these properties are a description of a window.

Measures how well this window satisfies a specified set of requirements. A higher quality number means that more requirements were satisfied. A quality of zero means that the window is unsuitable.

The routine deducts a lot if the window fails to provide a requested feature. It deducts less if the window provides a feature, but at a degraded level of functionality (ie, the user asks for rgba8, color, but the window only provides rgba4). The routine also deducts a small amount for unnecessary features. For example, if the window has an accumulation buffer when one is not requested will reduce quality slightly. Maximum quality is obtained when the window exactly matches the request.

If you want to know whether the window satisfies all of the requirements, use the “subsumes” function.

isAnySpecified() → bool

Returns true if any properties have been specified, false otherwise.

isBasic() → bool

Returns true if the properties are extremely basic. The following count as basic: rgb or rgba, depth. If anything else is specified, the properties are non-basic.

getAuxMask() → int

Converts the aux bitplanes of the framebuffer into a RenderBuffer::Type.

getBufferMask() → int

Converts the non-aux bitplanes of the framebuffer into a RenderBuffer::Type.

verifyHardwareSoftware(props: FrameBufferProperties, renderer: str) → bool

Validates that the properties represent the desired kind of renderer (hardware or software). If not, prints out an error message and returns false.

setupColorTexture(tex: Texture) → bool

Sets the texture up for render-to-texture matching these framebuffer properties.

Returns true if there was a format that had enough bits, false otherwise. Of course, this is no guarantee that a particular graphics back-end supports rendering to textures of that format.

setupDepthTexture(tex: Texture) → bool

Sets the texture up for render-to-texture matching these framebuffer properties.

Returns true if there was a format that had enough bits, false otherwise. Of course, this is no guarantee that a particular graphics back-end supports rendering to textures of that format.

property depth_bits

Individual queries.

Getter

Individual queries.

Individual queries.

Setter

Individual assigners.

Individual assigners.

Return type

int

property color_bits

Getter Setter

Sets the number of requested color bits as a single number that represents the sum of the individual numbers of red, green and blue bits. Panda won’t care how the individual bits are divided up.

See also set_rgba_bits, which allows you to specify requirements for the individual components.

Return type

int

property red_bits

Getter Setter

Return type

int

property green_bits

Getter Setter

Return type

int

property blue_bits

Getter Setter

Return type

int

property alpha_bits

Getter Setter

Return type

int

property stencil_bits

Getter Setter

Return type

int

property accum_bits

Getter Setter

Return type

int

property aux_rgba

Getter Setter

Return type

int

property aux_hrgba

Getter Setter

Return type

int

property aux_float

Getter Setter

Return type

int

property multisamples

Getter Setter

Return type

int

property coverage_samples
Getter

If coverage samples are specified, and there is hardware support, we use coverage multisampling.

Setter

If coverage samples are specified, and there is hardware support, we use coverage multisampling

Return type

int

property back_buffers

Getter Setter

Return type

int

property indexed_color

Getter Setter

Return type

bool

property rgb_color

Getter Setter

Return type

bool

property stereo

Getter Setter

Return type

bool

property force_hardware

Getter Setter

Return type

bool

property force_software

Getter Setter

Return type

bool

property srgb_color

Getter Setter

Return type

bool

property float_color

Getter Setter

Return type

bool

property float_depth

Getter Setter

Return type

bool