Stage3D大冒险
摘自:http://dreamana.com/weblog/?p=92
摘自:http://baike.baidu.com/view/6794042.htm
Stage3D的Flash Player和AdobeAIR的API提供了充分的硬件加速架构,带来令人惊叹的视觉效果,使桌面浏览器和iOS和Android应用程序都能够使用先进的2D和3D功能。无论你是使用最先进的3D游戏引擎或intuitive(愤怒的小鸟说采用的快如闪电的椋Starling2D框架),这组基础的GPU加速API,在视频游戏开发利用GPU硬件加速,为开发人员提供了相当的灵活性、显着的性能提升
Molehill是什么?
Molehill是Flash Stage3D技术的开发代号(现在正式命名Stage3D)。它能让下一代Flash游戏通过显卡GPU硬件加速去渲染3D图形(或成千上万个“精灵”),从而降低CPU负载。
Molehill不是什么?
Molehill是非常低层的API,只提供基本的3D渲染功能。它不是一个游戏引擎(如Unity3d或者Unreal又或者ID Tech),一个游戏引擎还包含物理模拟,音频,音乐,碰撞检测等等补充的游戏函数。取而代之的是,你可使用Molehill这样的低层API去制作你自己的游戏引擎。与OpenGL或Direct3D相似,Molehill是一些非常基本的函数集合,是游戏和游戏引擎的基本构件。
基本3D术语
Mesh 网格
3D模型在游戏里通常称为网格。这些网格是用3D建模软件(Maya,3DsMax,Blender等)制作。定义一物体的三维形状,通常也会给它上色。
Polygon 多边形
一个网格可以由成千上万个多边形组成。任何多边形都能分解成一个三角形的集合,所以显卡会将3D几何图形当成一大堆三角形去处理。(Triangle 三角形, Quad 四边形, Polys 多边形数, Tris 三角形数)
Vertex 顶点
一个多边形由三个或多个“角”的位置决定的,这些“角”叫做顶点。比如一个四方形有4个顶点,一个3D盒有6个面,8个顶点。
Texture 材质/纹理
为了绘制一个网格(除非你只要渲染线框),你需要一张或多张图片去上色,这些图片叫做材质(或纹理)。可以将它们想象成墙纸:贴材质到网格上,将网格包起来,而且图片可以拉伸去适应网格形状。(俗称“贴图”)
Shaders 着色器
着色器是用来定义视觉风格细节的,定义“如何画”一些东西。比如某些着色器可能用于渲染亮金属的,又比如有些用来表现爆炸的。
在Stage3D的API中,着色器保存在Program3D类里面,为了创建program3D你需要创建一个fragment program和一个vertex program,两个加起来就是一个Shader(着色器)。
Vertex Program 顶点程序
每渲染一次,顶点程序会对网格各个顶点运算一次,然后在渲染之前得出“最终位置”。除了计算位置可以附带其他信息比如颜色。凡是渲染网格都需要一个顶点程序,无论是非常简单的(按原位置绘制每一个顶点),还是复杂的(将整个网格变形去完成一个步行循环动画)。
Fragment Program 片元程序
在Molehill中,片元程序是用来定义怎么处理一个特定的网格的视觉渲染。描述在给定一个表面/材质对光的反应。不同的物质对光的反应不一样(取决于物体的反射率和透明度),你需要用不同的代码去模拟它们。片元程序通常使用材质通过复杂的函数去决定屏幕上每个像素显示什么颜色,有时候会为了合成特效使用一个以上的材质。渲染网格都要需要一个片元程序,可能是简单的(只用材质原本)或者复杂的(混合两个材质并染成半透明泛光的红色)。
Vector 向量/矢量
Vector3D是一个含有x,y,z值的对象,用来描述3D空间里面的位置。
Normal 标准化向量/单位向量/法向量/法线
标准化向量是一种通常用来描述方向的特殊向量,长度总是等于1,所以也称为单位向量。
Matrix 矩阵
如果要只通过一步就对某个对象完成移动、旋转、缩放操作,就需要用到矩阵。Matrix3D是一个4×4矩阵,内建了平移、旋转、缩放函数。
Stage3D大冒险的更多相关文章
- 菜鸡学C语言之真心话大冒险
题目描述 Leslie非常喜欢真心话大冒险的游戏.这一次游戏的规则有些不同.每个人都有自己的真心话,一开始每个人也都只知道自己的真心话.每一轮每个人都告诉指定的一个人他所知道的所有真心话,那么Lesl ...
- 一卡通大冒险(hdu2512)
一卡通大冒险 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Sub ...
- HDU 2512 一卡通大冒险(第二类斯特林数+贝尔数)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2512 题目大意:因为长期钻研算法, 无暇顾及个人问题,BUAA ACM/ICPC 训练小组的帅哥们大部 ...
- HDUOJ----2512一卡通大冒险
一卡通大冒险 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- 一卡通大冒险(hdu 2512)
因为长期钻研算法, 无暇顾及个人问题,BUAA ACM/ICPC 训练小组的帅哥们大部分都是单身.某天,他们在机房商量一个绝妙的计划"一卡通大冒险".这个计划是由wf最先提出来的, ...
- android 真心话大冒险 摇色子
android 真心话大冒险 摇色子 软件
- HDU2512 一卡通大冒险 —— 第二类斯特林数
题目链接:https://vjudge.net/problem/HDU-2512 一卡通大冒险 Time Limit: 2000/1000 MS (Java/Others) Memory Lim ...
- HDU 2512 一卡通大冒险(dp)
一卡通大冒险 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- 123457123457#1#-----com.threeapp.ErTongHuaXue01----儿童滑雪大冒险
123456123456#0#-----com.threeapp.ErTongHuaXue01----儿童滑雪大冒险
随机推荐
- 面向对象程序设计(java)
201871010136-赵艳强<面向对象程序设计(java)>第二周学习总 第一部分:理论知识学习部分 一.简单的Java程序应运程序 1.标识符0标识符由字母.下划线.美元符号和数 ...
- VC 静态库与动态库(一)介绍
定义: 静态库与动态库都属于库,库从本质上来说就是种代码重用的方式. 把需要重复使用的公共代码抽离出来,生成库文件,外部程序只需包含库文件,调用相关接口即可 静态库与动态库区别: 静态库:需要库的.h ...
- navicat密码错误的问题
上集说到我的navicat打不开对吧..‘ 这下就来聊聊打开了的问题 下午非常开心,就打开了mysql的图形化界面, 但是,在我连接数据库的时候就报错了 错误就是密码错误那行 什么什么‘localho ...
- du和ls的区别:如何正确计算文件大小
上一篇文章写到的权限检查脚本,后来我又加入了 apk size 对比的功能,分享给组内同事使用后,暴露出一个问题:脚本输出的 apk size 和 Jenkins 出包信息以及电脑上显示的存储大小都有 ...
- [LeetCode] 234. Palindrome Linked List 回文链表
Given a singly linked list, determine if it is a palindrome. Example 1: Input: 1->2 Output: false ...
- 使用logstash同步mysql数据库信息到ElasticSearch
本文介绍如何使用logstash同步mysql数据库信息到ElasticSearch. 1.准备工作 1.1 安装JDK 网上文章比较多,可以参考:https://www.dalaoyang.cn/a ...
- [转载]3.2 UiPath鼠标操作文本的介绍和使用
一.鼠标(mouse)操作的介绍 模拟用户使用鼠标操作的一种行为,例如单击,双击,悬浮.根据作用对象的不同我们可以分为对元素的操作.对文本的操作和对图像的操作 二.鼠标对文本的操作在UiPath中的使 ...
- Oracle逻辑结构学习笔记
数据库(Database)由若干表空间(Tablespace)组成,表空间(Tablespace)由若干段(Segment)组成,段(Segment)由若干区(Extent)组成,区(Extent)又 ...
- centos7上配置mysql8的双主互写
注意:1.主库1:10.1.131.75,主库2:10.1.131.762.server-id必须是纯数字,并且主从两个server-id在局域网内要唯一. [主节点1]vi /etc/my.cnf[ ...
- 使用velero进行kubernetes灾备
使用velero可以对集群进行备份和恢复,降低集群DR造成的影响.velero的基本原理就是将集群的数据备份到对象存储中,在恢复的时候将数据从对象存储中拉取下来.可以从官方文档查看可接收的对象存储,本 ...