当前位置: 首页>>代码示例>>C#>>正文


C# Car.Draw方法代码示例

本文整理汇总了C#中Car.Draw方法的典型用法代码示例。如果您正苦于以下问题:C# Car.Draw方法的具体用法?C# Car.Draw怎么用?C# Car.Draw使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Car的用法示例。


在下文中一共展示了Car.Draw方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: DrawCar

        private void DrawCar(Matrix view, Matrix projection, Car car)
        {
            // TODO: CARMOVE

            car.View = view;
            car.Projection = projection;
            car.Draw(null);

            //foreach (var mesh in car.Model.Meshes) // 5 meshes
            //{
            //    Matrix world = Matrix.Identity;

            //    // Wheel transformation
            //    if ((int)mesh.Tag > 0)
            //    {
            //        world *= Matrix.CreateRotationX(car.WheelRotationX);
            //        if ((int)mesh.Tag > 1)
            //            world *= Matrix.CreateRotationY(car.WheelRotationY);
            //    }

            //    // Local modelspace
            //    world *= mesh.ParentBone.Transform;

            //    // World
            //    world *= car.RotationMatrix * car.TranslationMatrix;

            //    foreach (Effect effect in mesh.Effects) // 5 effects for main, 1 for each wheel
            //    {
            //        EffectParameterCollection param = effect.Parameters;

            //        if (mesh.Name.Equals("main"))
            //        {
            //            param["MaterialReflection"].SetValue(.9f);
            //            param["MaterialShininess"].SetValue(10);
            //        }

            //        param["World"].SetValue(world);
            //        param["View"].SetValue(view);
            //        param["Projection"].SetValue(projection);

            //        if (mesh.Name.Equals("main"))
            //        {

            //            param["NormalMatrix"].SetValue(Matrix.Invert(Matrix.Transpose(world)));

            //            param["EyePosition"].SetValue(Game.GetService<CameraComponent>().Position);

            //            if (mesh.Name == "main")
            //            {
            //                param["MaterialDiffuse"].SetValue(GameSettings.Default.CarColor.ToVector3());
            //                param["MaterialAmbient"].SetValue(GameSettings.Default.CarColor.ToVector3());
            //            }

            //            param["DirectionalLightDirection"].SetValue(directionalLight.Direction);
            //            param["DirectionalLightDiffuse"].SetValue(directionalLight.Diffuse);
            //            param["DirectionalLightAmbient"].SetValue(directionalLight.Ambient);
            //        }
            //    }

            //    mesh.Draw();
            //}
        }
开发者ID:MintL,项目名称:datx02-rally,代码行数:62,代码来源:GamePlayView.cs


注:本文中的Car.Draw方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。