Exemple #1
0
        private void Start()
        {
            GoLPattern currentPattern = gameOfLife.PatternWalker.Current;

            patternName.text        = currentPattern.Name;
            patternDescription.text = currentPattern.Description;
            GameOfLifeOnSelectedPatternChanged(gameOfLife.SelectedPresetTexture);

            gameOfLife.SelectedPatternChanged += GameOfLifeOnSelectedPatternChanged;
            nextButton.onClick.AddListener(NextButtonOnClick);
            previousButton.onClick.AddListener(PreviousButtonOnClick);
            rotateButton.onClick.AddListener(RotateButtonOnClick);

            simSpeedSlider.onValueChanged.AddListener(SimSpeedSliderOnChanged);
            densitySlider.onValueChanged.AddListener(DensitySliderOnChanged);
            generateButton.onClick.AddListener(GenerateButtonOnClick);

            gameOfLife.PatternWalker.Changed += PatternWalkerOnChanged;
        }
        public GoLPatternTexture(GoLPattern goLPattern)
        {
            Texture = new Texture2D(goLPattern.SizeX, goLPattern.SizeY, TextureFormat.RGBA32, false)
            {
                filterMode = FilterMode.Point
            };

            NativeArray <Color32> rawData = Texture.GetRawTextureData <Color32>();

            for (var y = 0; y < goLPattern.SizeY; y++)
            {
                for (var x = 0; x < goLPattern.SizeX; x++)
                {
                    int index = x + y * goLPattern.SizeX;
                    rawData[index] = goLPattern.Data[index]
                    ? Color.white
                    : Color.black;
                }
            }

            Texture.Apply();
        }
Exemple #3
0
 private void PatternWalkerOnChanged(GoLPattern currentPattern)
 {
     SetSelectedPatternTexture(new GoLPatternTexture(currentPattern));
 }
Exemple #4
0
 private void PatternWalkerOnChanged(GoLPattern current)
 {
     patternName.text        = current.Name;
     patternDescription.text = current.Description;
 }