Exemple #1
0
        public void StartRendering(Config.IWorld _config, Config.MapRenderConfig _mapRenderConfig, Vector3 _renderPosition)
        {
            config          = _config;
            mapRenderConfig = _mapRenderConfig;
            renderPosition  = _renderPosition;

            meshData          = null;
            needsToBeRendered = true;

            Task.Run(GenerateMeshData);
        }
        public void StartRendering(Config.IWorld _config, Config.MapRenderConfig _mapRenderConfig, Vector3 _renderPosition)
        {
            config          = _config;
            mapRenderConfig = _mapRenderConfig;
            renderPosition  = _renderPosition;

            data.Clear();
            props.Clear();
            needsToBeRendered = true;

            try { Task.Run(GenerateData); }
            catch (System.Exception e) { throw e; }
        }
Exemple #3
0
        public static List <PropData> LoadDataAt(Vector3 chunkPosition, int chunkSize, Config.IWorld config)
        {
            List <PropData> dataList = new List <PropData>();

            System.Random random = new System.Random();

            for (float z = -chunkSize - 0.5f; z <= chunkSize - 0.5f; z++)
            {
                for (float x = -chunkSize - 0.5f; x <= chunkSize - 0.5f; x++)
                {
                    Vector3 position = chunkPosition + new Vector3(x, 20, z);

                    if (config.HasPropAt(position.x, position.z))
                    {
                        PropData propData = new PropData();
                        propData.position    = position;
                        propData.position.y  = config.GetHeight(position.x, position.z) + config.GetPropVerticalOffset();
                        propData.position.x += 0.5f;
                        propData.position.z += 0.5f;
                        // propData.position.z += 0.5f + (float)random.Next(0, 100) / 1000;
                        propData.prefab = config.GetProp(position.x, position.z);
                        dataList.Add(propData);
                    }
                }
            }

            return(dataList);
        }