永威国际道州本土游戏.docVIP

  • 5
  • 0
  • 约7.31千字
  • 约 3页
  • 2018-04-03 发布于河南
  • 举报
永威国际道州本土游戏

永威国际道州本土游戏 第 13 章:HLSL基础 问答答案 1.? 在 HLSL 中,如何获取一个 float4 对象的第一个元素?? 如果您想要获取一个叫做 color 的 float4 对象中的第一个元素,您可以用数组符号 (color[0])或者您也可以使用颜色和位置的命名空间(color.r 或者 color.x)? 2.? 什么叫做混合(swizzling)?? Swizzling 是指从颜色或位置的命名空间(如 color.rb 或 color.xyz)取两个或多个元 素来获取一个 float4 或类似数据类型的多个元素。? 3.? 在 HLSL,如何规定使用顶点、像素着色器的哪一个版本?? 在 HLSL 效果文件处理技巧中,您可以通过提供带有着色器版本的 compile 关键字来指定 一个 VertexShader(顶点着色器)和/或 PixelShader(像素着色器) 。对于顶点着色器, 您可以用 vs_2_0 句法,而对于像素着色器,您则可以用 ps_2_0 语法。? 4.? 若没有 HLSL,您不能实现哪些效果?? HLSL 允许开发人员连接到硬件功能,而 XNA 框架是不提供这些的。原因:图形硬件变得越 来越复杂,如果 XNA 框架被扩展来处理所有显卡(graphics? card)的话,XNA 框架会变得很庞 大。所以,HLSL 与 XNA 协作,允许您为显卡本身编写代码。? 5.? 在 HLSL,怎样将那个两个矩阵相乘?? HLSL 中的 mul 函数可以将两个矩阵相乘。? 6.? 语义(semantic)在 HLSL 扮演什么角色?? 一个语义标记一个变量的特定用途。对于输入参数(input?parameters) ,语义意味着该参数 会被自动赋予由语义指定的一个值;对于输出参数(output?parameters) ,语义是一种标记特定 391 变量含有特定信息的方式,这种信息会在着色器(shader)执行完之后被处理。? 练习答案 使用本章所创建的代码,绘制一个六面体,用树木图像作为每面的纹理。在六面体的每面上, 使用本章创建的四种纹理特效(一般纹理、模糊纹理、反相纹理、灰度纹理)的其中一种,每种效 果必须被至少使用一次。? 本练习和第 9 章的练习很相似,在那里您做了一个每个面纹理都不同的六面体。不同之处 在于,您现在要对每个面应用相同的纹理,再对那些面应用不同的 HLSL 效果。? 首先,根据本章所介绍的方法创建不同的效果文件,然后使用与下面类似的代码来创建这 个六面体并为其应用您所创建的效果:? using using using using using using using using using using System; System.Collections.Generic; System.Linq; Microsoft.Xna.Framework; Microsoft.Xna.Framework.Audio; Microsoft.Xna.Framework.Content; Microsoft.Xna.Framework.GamerServices; Microsoft.Xna.Framework.Graphics; Microsoft.Xna.Framework.Input; Microsoft.Xna.Framework.Media; namespace _3D_Madness { /// /// This is the main type for your game. /// public class Game1 : Microsoft.Xna.Framework.Game { GraphicsDeviceManager graphics; SpriteBatch spriteBatch; // Game camera Camera camera; // Vertex data VertexPositionTexture[] verts; VertexBuffer vertexBuffer; // Effect Effect normalEffect; Effect blurEffect; Effect negativeEffect; Effect grayscaleEffect; // Movement and rotation stuff Matrix worldTranslation = Matrix.Identity; Matrix worldRotation = Matrix.Identity; // Texture info Texture2D texture; public Game1()

文档评论(0)

1亿VIP精品文档

相关文档