ChunkRenderInfo -> chunkupdate.py
This commit is contained in:
parent
9bf9a9c4e3
commit
4e6e074360
@ -3,48 +3,13 @@
|
||||
"""
|
||||
from __future__ import absolute_import, division, print_function
|
||||
import logging
|
||||
from mcedit2.rendering import scenegraph, rendergraph, layers
|
||||
|
||||
from mcedit2.rendering import scenegraph, rendergraph
|
||||
from mcedit2.rendering.scenegraph import NamedChildrenNode
|
||||
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
class ChunkRenderInfo(object):
|
||||
maxlod = 2
|
||||
minlod = 0
|
||||
|
||||
def __init__(self, worldScene, chunkPosition):
|
||||
"""
|
||||
|
||||
:param worldScene:
|
||||
:type worldScene: mcedit2.rendering.worldscene.WorldScene
|
||||
:param chunkPosition:
|
||||
:type chunkPosition: (int, int)
|
||||
:return:
|
||||
:rtype:
|
||||
"""
|
||||
super(ChunkRenderInfo, self).__init__()
|
||||
self.worldScene = worldScene
|
||||
self.detailLevel = worldScene.minlod
|
||||
self.invalidLayers = set(layers.Layer.AllLayers)
|
||||
self.renderedLayers = set()
|
||||
|
||||
self.chunkPosition = chunkPosition
|
||||
self.bufferSize = 0
|
||||
self.vertexNodes = []
|
||||
cx, cz = chunkPosition
|
||||
self.translateOffset = (cx << 4, 0, cz << 4)
|
||||
|
||||
def getChunkVertexNodes(self):
|
||||
return iter(self.vertexNodes)
|
||||
|
||||
@property
|
||||
def visibleLayers(self):
|
||||
return self.worldScene.visibleLayers #xxxx
|
||||
|
||||
@property
|
||||
def layersToRender(self):
|
||||
return len(self.invalidLayers) + len(self.visibleLayers - self.renderedLayers)
|
||||
|
||||
class ChunkNode(scenegraph.Node):
|
||||
RenderNodeClass = rendergraph.TranslateRenderNode
|
||||
|
||||
|
@ -22,11 +22,49 @@ from mceditlib.selection import BoundingBox, SectionBox
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class ChunkRenderInfo(object):
|
||||
maxlod = 2
|
||||
minlod = 0
|
||||
|
||||
def __init__(self, worldScene, chunkPosition):
|
||||
"""
|
||||
|
||||
:param worldScene:
|
||||
:type worldScene: mcedit2.rendering.worldscene.WorldScene
|
||||
:param chunkPosition:
|
||||
:type chunkPosition: (int, int)
|
||||
:return:
|
||||
:rtype:
|
||||
"""
|
||||
super(ChunkRenderInfo, self).__init__()
|
||||
self.worldScene = worldScene
|
||||
self.detailLevel = worldScene.minlod
|
||||
self.invalidLayers = set(layers.Layer.AllLayers)
|
||||
self.renderedLayers = set()
|
||||
|
||||
self.chunkPosition = chunkPosition
|
||||
self.bufferSize = 0
|
||||
self.vertexNodes = []
|
||||
cx, cz = chunkPosition
|
||||
self.translateOffset = (cx << 4, 0, cz << 4)
|
||||
|
||||
def getChunkVertexNodes(self):
|
||||
return iter(self.vertexNodes)
|
||||
|
||||
@property
|
||||
def visibleLayers(self):
|
||||
return self.worldScene.visibleLayers #xxxx
|
||||
|
||||
@property
|
||||
def layersToRender(self):
|
||||
return len(self.invalidLayers) + len(self.visibleLayers - self.renderedLayers)
|
||||
|
||||
|
||||
class ChunkUpdate(object):
|
||||
def __init__(self, updateTask, chunkInfo, chunk):
|
||||
"""
|
||||
:type updateTask: mcedit2.rendering.worldscene.SceneUpdateTask
|
||||
:type chunkInfo: mcedit2.rendering.chunknode.ChunkRenderInfo
|
||||
:type chunkInfo: mcedit2.rendering.chunkupdate.ChunkRenderInfo
|
||||
:type chunk: AnvilChunk
|
||||
:rtype: ChunkUpdate
|
||||
"""
|
||||
@ -401,4 +439,3 @@ class SectionUpdate(object):
|
||||
modelMesh.createVertexArrays()
|
||||
self.blockMeshes.append(modelMesh)
|
||||
yield
|
||||
|
||||
|
@ -11,7 +11,8 @@ import itertools
|
||||
from mcedit2.rendering.layers import Layer
|
||||
from mcedit2.rendering import chunkupdate, scenegraph
|
||||
from mcedit2.rendering import renderstates
|
||||
from mcedit2.rendering.chunknode import ChunkNode, ChunkRenderInfo, ChunkGroupNode
|
||||
from mcedit2.rendering.chunknode import ChunkNode, ChunkGroupNode
|
||||
from mcedit2.rendering.chunkupdate import ChunkRenderInfo
|
||||
from mcedit2.rendering.depths import DepthOffset
|
||||
from mcedit2.rendering.geometrycache import GeometryCache
|
||||
|
||||
|
Reference in New Issue
Block a user