登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Crayon

只想做自己

 
 
 

日志

 
 
 
 

任天堂NDS图形运算单元简要解析  

2012-04-16 23:04:57|  分类: 游戏 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
任天堂NDS图形运算单元简要解析 - Crayon - Crayon

 

NDS没有配备完整的GPU来做图形运算,取而代之的是专用的两个2D引擎单元和一个3D引擎单元!和独立完整的GPU不同,2D引擎和3D引擎都是和NDS的主CPU(ARM946E-S)相连,可以看成是协处理单元(Co-processor),此外任天堂还设计了很多专用于图形运算的内存和缓冲,主要有:

656KB  显存(VRAM) (分为多个bank,作为BG/OBJ/2D/3D/调色板/纹理/WRAM等的缓存)
4KB    OAM/PAL (2KB用于OBJ属性, 2KB用于调色板)
248KB  3D专用内存 (104KB用于多边形缓存, 144KB用于矢量缓存)
 

2D引擎(2D Engine)

NDS拥有两个2D引擎核心,分为一个主核心和一个副核心

主核心和副核心的不同在于:

1.主核心比副核心多两个工作模式,可以处理更大的位图

2.主核心可以为3D引擎运算一幅背景层

3.主核心拥有帧缓冲模式,可以绕过2D引擎直接将内存数据渲染到屏幕

2D硬件特效:

每个屏幕128个精灵(sprites)的缩放/回旋

4重背景卷轴的缩放/回旋

阿尔法混合

两个2D引擎架构都和GBA的2D引擎很类似!

 

3D引擎(3D Engine)

3D引擎包含一个几何引擎(Geometry Engine)和一个渲染引擎(Rendering Engine)

3D引擎只能在一个屏幕处理3D运算,如果两个屏幕同时处理,就会出现一个屏幕等待另一个屏幕,导致帧率减半,效率大降

多边形生成:12万/秒 

像素填充率:3000万/秒

纹理最大支持1024x1024

3D硬件特效:烟雾,定点变换和光照,纹理坐标变换节点,纹理映射,阿尔法混合,Z缓冲,卡通渲染和边缘抗锯齿

NDS的3D操作接口非常类似于OpenGL,大部分机能都被包含在这个接口中!和OpenGL比较大的不同在于,NDS的特效都是通过定点数运算,而非浮点数!

 

BY:Crayon

  评论这张
 
阅读(592)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018