Ejemplo n.º 1
0
 public ChunkManagerEntity(
     TychaiaGameWorld gameWorld, 
     IChunkAI[] chunkAI, 
     IProfiler profiler, 
     IChunkRenderer chunkRenderer)
 {
     this.m_World = gameWorld;
     this.m_ChunkAI = chunkAI;
     this.m_Profiler = profiler;
     this.m_ChunkRenderer = chunkRenderer;
     this.m_ChunksToRenderNext = new ClientChunk[0];
 }
Ejemplo n.º 2
0
        public Chunk(World world, ChunkPosition position, IEnvironmentGenerator environmentGenerator, IChunkRenderer renderer, BlockPrototypeMap prototypeMap)
        {
            Position = position;
            this.world = world;
            this.environmentGenerator = environmentGenerator;
            this.renderer = renderer;

            blockArray = new BlockArray(prototypeMap, XDimension, YDimension, ZDimension);
            lightArray = new Array3<byte>(XDimension, YDimension, ZDimension);

            OriginInWorld = new BlockPosition(Position, new RelativeBlockPosition(0, 0, 0));
            neighborhoodPositions = new[]
            {
                Position,
                Position.Left,
                Position.Right,
                Position.Front,
                Position.Back
            };
        }
 public DualContourDeferredColoredChunkSystem(GraphicsDevice device, ContentLibrary contentLibrary, IChunkManager chunkManager, CameraManager cameraManager, World world, ITerrainGradientFunction densityGradientFunction, float minimumSolidDensity)
 {
     _builder  = new DualContourChunkBuilder(device, world, densityGradientFunction, minimumSolidDensity);
     _renderer = new DeferredColoredChunkRenderer(world.EngineConfiguration, contentLibrary, device, cameraManager, chunkManager);
 }