def __init__(self, dimension, textureAtlas=None, geometryCache=None, bounds=None): super(WorldScene, self).__init__() self.dimension = dimension self.textureAtlas = textureAtlas self.depthOffsetNode = DepthOffsetNode(DepthOffset.Renderer) self.addChild(self.depthOffsetNode) self.textureAtlasNode = TextureAtlasNode(textureAtlas) self.depthOffsetNode.addChild(self.textureAtlasNode) self.renderstateNodes = {} for rsClass in renderstates.allRenderstates: rsNode = scenenode.RenderstateNode(rsClass) self.textureAtlasNode.addChild(rsNode) self.renderstateNodes[rsClass] = rsNode self.groupNodes = {} # by renderstate self.chunkRenderInfo = {} self.visibleLayers = set(Layer.DefaultVisibleLayers) self.updateTask = SceneUpdateTask(self, textureAtlas) if geometryCache is None: geometryCache = GeometryCache() self.geometryCache = geometryCache self.showRedraw = False self.minlod = 0 self.bounds = bounds