文档章节

GamePlay3d材质系统分析

o
 ooeyusea
发布于 2015/01/21 23:53
字数 261
阅读 111
收藏 0

      最近开始着手做自己的3d引擎的材质系统借鉴了很多GamePlay3d的材质系统的设计,正好分享下这段时间分析GamePlay3d的材质系统的心得。

       GamePlay3d的材质系统主要分为Material,Techinque,Pass。Material 包含多个Techinque, Techinque包含多个

Pass。它们都继承自Renderstate。Renderstate保存基本的opengl的设备设置(深度测试,alpha测试,stencil测市,etc)

和最终用于shader的Uniform设置(_parameters)。Renderstate还支持一些内建的Uniform参数(_autoBindings)。Material中的_currentTechnique是当前正在使用的Techinque。Material每次只会生效一个Techinque用于渲染。Pass包含一个Effect(其实就是最终渲染使用的shader程序)。

        这样分析下来:

        Material是物体的材质。

        Techinque是具体用来绘制的方法,这样可以实现同一个材质实现不同的渲染质量。

        Pass是单个渲染操作,要实现特殊的绘制效果,可能需要多次绘制,也就是多个Pass


© 著作权归作者所有

o
粉丝 1
博文 5
码字总数 1129
作品 0
松江
私信 提问
【UE4文档翻译】材质的关键性概念

材质是获得逼真外观的最重要方面之一,不管是对你的物体来说,还是对整个关卡来说。本文以一个很概括的视角介绍了如何快速创建材质的方法。 如果你对之前版本的UE材质非常熟悉,你可能会对《...

闪电的蓝熊猫
2018/10/25
0
0
【Unity3D技术文档翻译】第2.4篇 PBR材质验证器(Physically Based Rendering Material Validator)

上一章:【Unity3D技术文档翻译】第2.3.3.12篇 材质查阅图表 & 制作你自己的 本章原文所在章节:【Unity Manual】→【Graphics】→【Graphics Overview】→【Materials, Shaders & Textures...

何三思
2018/06/27
0
0
three.js中材质的应用

一个场景的炫酷和视觉效果不仅取决于光照渲染,和动画渲染,在很大程度上也取决于场景中对象的材质属性。巧妙的应用材质属性,将会使场景锦上添花,美不胜收。接下来就对three.js中几种叫常用...

qq_37338983
2017/11/24
0
0
KeyShot中材质该怎么分配

在KeyShot中分配材质给模型,在实时窗口中从库里将它们拖放到某个部件时,将会显示即将分配材质的部件预览,只有松开鼠标左键,材质才会分配给模型。   若有疑问可直接访问:http://www.ke...

Keyshot中文版
2016/12/05
60
0
3ds max 导出插件 中的多重材质问题。

现在负责开发公司的3D引擎了。3ds max导出插件自然是第一步的工作。 之前对3ds max导出插件有过一些研究。也顺利的编写了基础模型和骨骼动画的导出。 但在提交给美术后,很快发现了一个问题,...

长平狐
2013/03/19
202
0

没有更多内容

加载失败,请刷新页面

加载更多

一个简单易用的Linux文本编辑器:nano的安装与使用

许多状况下咱们都必要编纂云主机里的文本情节,而现时用的比力多的文本编纂器是vim,这个估量许多人都以为很难用,这边伏笔VPS引荐一个简略易用的文本编纂器nano,比vim简略许多,很轻易上手...

shzwork
20分钟前
1
0
go recover

异常、错误常见语言处理 一般语言都有其错误处理方式,就以鄙人熟悉的php来距离吧。 PHP有多个级别的错误处理方式,以防止程序在还未正确执行完毕时,就造成了程序的提前结束。 try/catch/fi...

o0无忧亦无怖
38分钟前
0
0
玩转混合云+边缘计算,且看ZStack Mini!

文章导读:2019年4月16日,ZStack新品和合作伙伴战略发布会上,面向集团客户和边缘场景需求,ZStack重磅推出ZStack Mini超融合一体机(以下简称:ZStack Mini)和ZStack多云管理平台(以下简...

ZStack社区版
40分钟前
1
0
springboot 整合redis

springboot整合redis官方是有文档的: 英文看不懂可以翻译,代码应该看得懂, 这个是自动注入的。当然也可以xml注入,手动配置。 整合步骤: pom文件: <!-- spring boot web --> ...

jason_kiss
43分钟前
2
0
手机耗电问题,大部分是没有正确使用这个“锁”

当安卓设备闲置时,设备很快会进入休眠状态,以达到省电和减少CPU占用的目的。但有些应用在手机灭屏甚至系统休眠时,依然频繁占用CPU处理事件或唤醒屏幕提示用户消息,这类行为会导致手机耗电...

安卓绿色联盟
45分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部