Reactor.RActor.Load C# (CSharp) Method

Load() public method

public Load ( string filename ) : void
filename string
return void
        public void Load(string filename)
        {
            _model = REngine.Instance._content.Load<Model>(filename);
            Matrix = Matrix.CreateScale(1.0f);
            Scaling = new Vector3(1f, 1f, 1f);
            Matrix = BuildScalingMatrix(Matrix);
            #if XBOX
            _defaultEffect = REngine.Instance._resourceContent.Load<RShader>("Actor.Xbox");
            #elif MACOSX
            _defaultEffect = RShader.LoadEffectResource("Actor.ogl.mgfxo");
            #else
            _defaultEffect = RShader.LoadEffectResource("Actor.ogl.mgfxo");
            #endif
            _defaultEffect.effect.CurrentTechnique = _defaultEffect.effect.Techniques[0];
            _sphere = _model.Meshes[0].BoundingSphere;
            foreach (ModelMesh mesh in _model.Meshes)
            {
                _sphere = BoundingSphere.CreateMerged(_sphere, mesh.BoundingSphere);
                for (int i = 0; i < mesh.MeshParts.Count; i++)
                {
                    BasicEffect effect = (BasicEffect)mesh.MeshParts[i].Effect;

                    Texture t = effect.Texture;
                    mesh.MeshParts[i].Effect = _defaultEffect.effect.Clone();
                    mesh.MeshParts[i].Effect.Parameters["Texture"].SetValue(t);

                }
            }
            _skinningData = _model.Tag as SkinningData;
            _player = new AnimationPlayer(_skinningData);
            _player.StartClip(_skinningData.AnimationIndexes[0], 1.0f);
            _playing = true;
        }