Futile.Init C# (CSharp) Method

Init() public method

public Init ( FutileParams, futileParams ) : void
futileParams FutileParams,
return void
    public void Init(FutileParams futileParams)
    {
        enabled = true;
        _futileParams = futileParams;

        Application.targetFrameRate = _futileParams.targetFrameRate;

        FShader.Init(); //set up the basic shaders
        FFacetType.Init(); //set up the types of facets (Quads, Triangles, etc)

        screen = new FScreen(_futileParams);

        //
        //Camera setup from https://github.com/prime31/UIToolkit/blob/master/Assets/Plugins/UIToolkit/UI.cs
        //

        _cameraHolder = new GameObject();
        _cameraHolder.transform.parent = gameObject.transform;

        _camera = _cameraHolder.AddComponent<Camera>();
        _camera.tag = "MainCamera";
        _camera.name = "Camera";
        //_camera.clearFlags = CameraClearFlags.Depth; //TODO: check if this is faster or not?
        _camera.clearFlags = CameraClearFlags.SolidColor;
        _camera.nearClipPlane = -50.0f;
        _camera.farClipPlane = 50.0f;
        _camera.depth = 100;
        _camera.rect = new Rect(0.0f, 0.0f, 1.0f, 1.0f);
        _camera.backgroundColor = _futileParams.backgroundColor;

        //we multiply this stuff by scaleInverse to make sure everything is in points, not pixels
        _camera.orthographic = true;
        _camera.orthographicSize = screen.pixelHeight/2 * displayScaleInverse;

        UpdateCameraPosition();

        touchManager = new FTouchManager();

        atlasManager = new FAtlasManager();

        CreateDefaultAtlases();

        _stages = new List<FStage>();

        stage = new FStage("Futile.stage");

        AddStage (stage);
    }