Panda3D
|
Public Member Functions | |
def | __init__ (self, gsg=None, limit=None) |
def | cleanup (self) |
def | enterRegion (self, region, buttonName) |
def | findAvailableHoles (self, area, w=None, h=None) |
def | findEmptyRuns (self, bm) |
def | findHole (self, area, w, h) |
def | findHolePieces (self, area) |
def | findLargestHole (self) |
def | findOverflowHole (self, area, w, h) |
def | formatSize (self, size) |
def | graphicsMemoryLimitChanged (self) |
def | isolateTexture (self, tr) |
def | leaveRegion (self, region, buttonName) |
def | makeCanvasBackground (self) |
def | mouseClick (self) |
def | placeTexture (self, tr) |
def | reconfigureWindow (self) |
def | repack (self) |
def | setLimit (self, limit=None) |
def | setRollover (self, tr, pi) |
def | setupCanvas (self) |
def | setupGui (self) |
def | unplaceTexture (self, tr) |
def | updateTextures (self, task) |
def | windowEvent (self, win) |
![]() | |
def | __init__ (self) |
def | accept (self, event, method, extraArgs=[]) |
def | acceptOnce (self, event, method, extraArgs=[]) |
def | addTask (self, args, kwargs) |
def | detectLeaks (self) |
def | doMethodLater (self, args, kwargs) |
def | getAllAccepting (self) |
def | ignore (self, event) |
def | ignoreAll (self) |
def | isAccepting (self, event) |
def | isIgnoring (self, event) |
def | removeAllTasks (self) |
def | removeTask (self, taskOrName) |
Static Public Attributes | |
int | NextIndex = 1 |
int | StatusHeight = 20 |
This class creates a separate graphics window that displays an approximation of the current texture memory, showing the textures that are resident and/or active, and an approximation of the amount of texture memory consumed by each one. It's intended as a useful tool to help determine where texture memory is being spent. Although it represents the textures visually in a 2-d space, it doesn't actually have any idea how textures are physically laid out in memory--but it has to lay them out somehow, so it makes something up. It occasionally rearranges the texture display when it feels it needs to, without regard to what the graphics card is actually doing. This tool can't be used to research texture memory fragmentation issues.
def __init__ | ( | self, | |
gsg = None , |
|||
limit = None |
|||
) |
def cleanup | ( | self | ) |
def enterRegion | ( | self, | |
region, | |||
buttonName | |||
) |
the mouse has rolled over a texture.
def findAvailableHoles | ( | self, | |
area, | |||
w = None , |
|||
h = None |
|||
) |
Finds a list of available holes, of at least the indicated area. Returns a list of tuples, where each tuple is of the form (area, tp). If w and h are non-None, this will short-circuit on the first hole it finds that fits w x h, and return just that hole in a singleton list.
def findEmptyRuns | ( | self, | |
bm | |||
) |
Separates a bitmask into a list of (l, r) tuples, corresponding to the empty regions in the row between 0 and self.w.
def findHole | ( | self, | |
area, | |||
w, | |||
h | |||
) |
Searches for a rectangular hole that is at least area square units big, regardless of its shape, but attempt to find one that comes close to the right shape, at least. If one is found, returns an appropriate TexPlacement; otherwise, returns None.
def findHolePieces | ( | self, | |
area | |||
) |
Returns a list of holes whose net area sums to the given area, or None if there are not enough holes.
def findLargestHole | ( | self | ) |
def findOverflowHole | ( | self, | |
area, | |||
w, | |||
h | |||
) |
Searches for a hole large enough for (w, h), in the overflow space. Since the overflow space is infinite, this will always succeed.
def formatSize | ( | self, | |
size | |||
) |
Returns a size in MB, KB, GB, whatever.
def graphicsMemoryLimitChanged | ( | self | ) |
def isolateTexture | ( | self, | |
tr | |||
) |
Isolates the indicated texture onscreen, or None to restore normal mode.
def leaveRegion | ( | self, | |
region, | |||
buttonName | |||
) |
the mouse is no longer over a texture.
def makeCanvasBackground | ( | self | ) |
def mouseClick | ( | self | ) |
Received a mouse-click within the window. This isolates the currently-highlighted texture into a full-window presentation.
def placeTexture | ( | self, | |
tr | |||
) |
Places the texture somewhere on the canvas where it will fit.
def reconfigureWindow | ( | self | ) |
Resets everything for a new window size.
def repack | ( | self | ) |
Repacks all of the current textures.
def setLimit | ( | self, | |
limit = None |
|||
) |
Indicates the texture memory limit. If limit is None or unspecified, the limit is taken from the GSG, if any; or there is no limit.
def setRollover | ( | self, | |
tr, | |||
pi | |||
) |
Sets the highlighted texture (due to mouse rollover) to the indicated texture, or None to clear it.
def setupCanvas | ( | self | ) |
Creates the "canvas", which is the checkerboard area where texture memory is laid out. The canvas has its own DisplayRegion.
def setupGui | ( | self | ) |
Creates the gui elements and supporting structures.
def unplaceTexture | ( | self, | |
tr | |||
) |
Removes the texture from its place on the canvas.
def updateTextures | ( | self, | |
task | |||
) |
Gets the current list of resident textures and adds new textures or removes old ones from the onscreen display, as necessary.
def windowEvent | ( | self, | |
win | |||
) |
area |
aspect2d |
background |
bitmasks |
canvas |
canvasBackground |
canvasDR |
canvasLens |
canvasRoot |
checkTex |
cleanedUp |
dynamicLimit |
gsg |
h |
isolate |
isolated |
lens |
limit |
lruLimit |
maxHeight |
mouse |
mw |
name |
needsRepack |
|
static |
nextTexRecordKey |
pipe |
placedQSize |
placedSize |
quantize |
render2d |
rollover |
sizeText |
sizeTextNP |
status |
statusBackground |
|
static |
statusText |
statusTextNP |
task |
texPlacements |
texRecordsByKey |
texRecordsByTex |
top |
totalSize |
w |
win |
winSize |