xna 渲染3d图片

xna 渲染3d图片我们在做一个 3d 显示的时候为了突出模型的某些部位以及更好的区别某些模块我们需要渲染各种不同的颜色来体现 下面代码演示 publicvoidlo spriteBatch newSpriteBat GraphicsDevi m

  我们在做一个3d显示的时候为了突出模型的某些部位以及更好的区别某些模块我们需要渲染各种不同的颜色来体现,

  下面代码演示:

   

 public void loade() { spriteBatch = new SpriteBatch(GraphicsDevice); myModel = Content.Load 
    
      ("Models\\" + mainform.filename); //素材管道载入3D模型//download the 3d model TextureCoordinate = Content.Load 
     
       ("Models\\test"); //aaa=new Texture2D(,100,100) aspectRatio = (float)graphics.GraphicsDevice.Viewport.Width / (float)graphics.GraphicsDevice.Viewport.Height; } 
      
    

  为了不发生异常我们还需在lodeconten加一句代码,就可以多次加载了

 

   

 protected override void LoadContent() { //spriteBatch = new SpriteBatch(GraphicsDevice); //myModel = Content.Load 
    
      ("Models\\"+mainform.filename); 
    //素材管道载入3D模型//download the 3d model //aspectRatio = (float)graphics.GraphicsDevice.Viewport.Width /(float)graphics.GraphicsDevice.Viewport.Height; GraphicsDevice.SamplerStates[0] = SamplerState.LinearClamp; loade(); // TODO: use this.Content to load your game content here }

  

 protected override void Draw(GameTime gameTime) { GraphicsDevice.Clear(Color.Black); Matrix[] transforms = new Matrix[myModel.Bones.Count]; myModel.CopyAbsoluteBoneTransformsTo(transforms); // 绘制模型 foreach (ModelMesh mesh in myModel.Meshes) //遍历模型mesh// for() all the mesh { //BasicEffect类可以简单的通过设置属性,包含光照、纹理等等就可以在“五分钟”内实现对一个物体的呈现。 string aaa = mesh.Name; if (aaa.ToString().IndexOf("矩形") > 0) { foreach (BasicEffect effect in mesh.Effects) { effect.EnableDefaultLighting(); effect.TextureEnabled = true;//纹理加载 effect.Texture =TextureCoordinate; //光照 //light effect.SpecularColor = new Vector3(1, 1, 1); effect.SpecularPower = 24; effect.World = transforms[mesh.ParentBone.Index] * Matrix.CreateRotationY(Program.modelRotationY) * Matrix.CreateRotationX(Program.modelRotationX) * Matrix.CreateTranslation(modelPosition); //使用World矩阵来改变模型在世界坐标系中的位置//use the World Matrix change the world coordinate effect.View = Matrix.CreateLookAt(cameraPosition, Vector3.Zero, Vector3.Up); effect.Projection = Matrix.CreatePerspectiveFieldOfView(MathHelper.ToRadians(60.0f), aspectRatio, 1.0f, 10000.0f); //Color[] colors = new Color[3]; //for (int i = 0; i < 3; i++) //{ // colors.SetValue(new Color(0, 1, 0), i); //} } mesh.Draw(); } } //sprites.Begin(); //sprites.Draw(backgroundTexture, Vector2.Zero, Color.White); //sprites.End(); base.Draw(gameTime); } 

  好了下面我就可以为是矩形的模块显示为蓝色了

    效果如下:

    xna 渲染3d图片

  

 

转载于:https://www.cnblogs.com/mlhelloworld/p/6992858.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/177632.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午7:03
下一篇 2026年3月26日 下午7:04


相关推荐

  • Exception in thread “main“ java.lang.Error: Unresolved compilation problems:

    Exception in thread “main“ java.lang.Error: Unresolved compilation problems:

    2021年10月3日
    57
  • 用户使用报告_2020年抖音用户画像报告[附下载] | 行业数据报告研读[通俗易懂]

    用户使用报告_2020年抖音用户画像报告[附下载] | 行业数据报告研读[通俗易懂]▼ 更多专业报告,请关注我们 ▼▼有趣回顾:▼【小时光面馆】专一先生和善变小姐油烟情书甲壳虫的最后一英里关注公众号,后台发送关键词“2020抖音用户画像”即可获取完整版PDF报告!报告摘要本篇报告针对的是18岁以上使用抖音行为的人群,对此进行规模大小、具体属性分析、兴趣爱好的数据整理,大部分数据都采自2020年1月。抖音用户规模数据截止至2020年1月,抖音日…

    2022年6月12日
    38
  • 775针最好的cpu天梯图_英特尔处理器排名天梯图

    775针最好的cpu天梯图_英特尔处理器排名天梯图E7500是第一代酷睿双核cpu,采用LGA775接口,目前属于低端入门水平,已经淘汰。这款cpu可以满足GTA4的配置要求,可以比较流畅的运行这款游戏。GTA4配置要求.E7500是酷睿2代的中高端双核,在产品线来说是一款中档次产品。酷睿i3是第一代i系列中的入门级双核,性能虽然普遍比上一代产品的定位提升了不少,但和E7500基本.酷睿2系列和奔腾4有啥性能区别?差别大吗?肯定有差距,我使用7…

    2026年2月4日
    6
  • java多线程(二):synchronize和锁「建议收藏」

    java多线程(二):synchronize和锁「建议收藏」一、多线程情况下的线程安全问题先理解一个概念:线程安全:多个线程访问同一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他操作,调用这个

    2022年8月16日
    10
  • vgg网络论文_dna结构综述论文

    vgg网络论文_dna结构综述论文原文地址:https://arxiv.org/pdf/1409.1556.pdfVGG简介:VGG卷积神经网络是牛津大学在2014年提出来的模型。当这个模型被提出时,由于它的简洁性和实用性,马上成为了当时最流行的卷积神经网络模型。它在图像分类和目标检测任务中都表现出非常好的结果。在2014年的ILSVRC比赛中,VGG在Top-5中取得了92.3%的正确率。同年的冠军是googl…

    2022年10月21日
    3
  • android之BitmapFactory.Options的使用

    ,BitmapFactory.Options的使用是在加载图片时,就从图片的加载和使用说起 怎样获取图片的大小?首先我们把这个图片转成Bitmap,然后再利用Bitmap的getWidth()和getHeight()方法就可以取到图片的宽高了。新问题又来了,在通过BitmapFactory.decodeFile(String path)方法将突破转成Bitmap时,遇到大一些的图片

    2022年3月10日
    50

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号