- 1、本文档共43页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3D输出管道、特效-程式设计
* 頂點著色器的輸入語意 POSITION頂點座標float4 COLOR頂點顏色float4 NORMAL頂點法向量float4 TEXCOORD頂點的紋理圖UV座標float4 TANGENT頂點的正切向量float4 BINORMAL頂點的binormal向量float4 BLENDINDICES頂點的骨骼混合索引值int4 BLENDWEIGHT頂點的骨骼混合權重float4 * 頂點著色器的輸出語意 POSITION頂點座標float4 COLOR頂點顏色float4 TEXCOORD頂點的紋理圖UV座標float4 FOG頂點霧化值float * 像素著色器的輸入語意 COLOR像素顏色float4 TEXCOORD像素的紋理圖UV座標float4 * 像素著色器的輸出語意 COLOR像素顏色float4 DEPTH像素的Z軸值(深度值)float * HLSL語言內建函數 dot向量內積 cross向量外積 lerp線性內插 mul矩陣相承 normalize向量單位化 pow指數 eflect反射向量 refract折射向量 saturate將值限制在 0~1 之間 tex2d2D紋理圖素採樣 tex3d3D紋理圖素採樣 * 3D模型、網格、網格零件、和效果的關係 * Effects是全部網格零件的Effect的總集 * 範例一:使用BasicEffect呈現一個3D模型 加入3D模型(宣告及上載) 在LoadContent將模型內的骨架轉換矩陣拷貝出來 在Draw中一一畫出在模型中的每一個網格(mesh) * 範例一:使用BasicEffect呈現一個3D模型 protected override void LoadContent() { // TODO: use this.Content to load your game content here myModel = this.Content.LoadModel(“monster_01”); // 上載 // 3D 模型 // 將myModel模型內的骨轉換矩陣拷貝出來到一個矩陣 transforms = new Matrix[myModel.Bones.Count]; myModel.CopyAbsoluteBoneTransformsTo(transforms); } * 範例一:使用BasicEffect呈現一個3D模型 protected override void Draw(GameTime gameTime) { …..foreach (ModelMesh mesh in myModel.Meshes) { // 設定網格的呈現效果 (世界、觀測、投影矩陣) foreach (BasicEffect effect in mesh.Effects) { effect.World = transforms[mesh.ParentBone.Index] * Matrix.CreateScale(0.01f); // 如果模型太大 就縮小一些 effect.World = effect.World* Matrix.CreateRotationY(modelRotation); effect.View = Matrix.CreateLookAt(new Vector3(0.0f, 1.2f, 1.2f), Vector3.Zero, Vector3.Up); effect.Projection = Matrix.CreatePerspectiveFieldOfView( MathHelper.ToRadians(45.0f), 1.333f, 1.0f, 10000.0f); } // 畫出在 模型 中的 某一個 網格 mesh.Draw(); } base.Draw(gameTime); } } } * 範例一:使用BasicEffect呈現一個3D模型 /// protected override void Update(GameTime gameTime) { // Allows the game to exit if
您可能关注的文档
最近下载
- 【社会层面】社会主义核心价值观.ppt VIP
- 回话有招高情商回话术书本.doc VIP
- 【社会层面】社会主义核心价值观精品课件.ppt VIP
- 沪教8AUnit6Ancientstories more practice-The story of 100,000 arrows 公开课优质课教案教学设计.doc
- 小学《科学》新教材培训研讨会:技术与工程领域总体介绍.pptx
- 2024年中考英语复习 并列复合句 讲义学案(解析版).pdf VIP
- 血常规结果解释ppt课件.pptx VIP
- 第16课 课件 2022-2023学年高中新经典日本语基础教程第二册.pptx VIP
- 软件工程专业生涯发展展示.pptx
- 成人脑室外引流护理——中华护理学会团体标准解读.pptx
文档评论(0)