![VR第45讲绘制技术2011_第1页](http://file4.renrendoc.com/view11/M01/0C/27/wKhkGWWO7ZyANDt-AAE6B2GAHrQ463.jpg)
![VR第45讲绘制技术2011_第2页](http://file4.renrendoc.com/view11/M01/0C/27/wKhkGWWO7ZyANDt-AAE6B2GAHrQ4632.jpg)
![VR第45讲绘制技术2011_第3页](http://file4.renrendoc.com/view11/M01/0C/27/wKhkGWWO7ZyANDt-AAE6B2GAHrQ4633.jpg)
![VR第45讲绘制技术2011_第4页](http://file4.renrendoc.com/view11/M01/0C/27/wKhkGWWO7ZyANDt-AAE6B2GAHrQ4634.jpg)
![VR第45讲绘制技术2011_第5页](http://file4.renrendoc.com/view11/M01/0C/27/wKhkGWWO7ZyANDt-AAE6B2GAHrQ4635.jpg)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
虚拟现实技术计算机学院虚拟现实技术与系统国家重点实验室 2011.9TechnologyofVirtualReality(VR)第四讲绘制与渲染技术视/听/触/味/嗅位置/姿态/操作用户/操作者真实环境虚拟环境化身化身化身真实环境现实世界/对象
建模虚拟现实组成中的作用生成过程中的作用真实世界对象模型虚拟环境显示渲染建模绘制与渲染目的:将虚拟环境输出,作用于参与者绘制与渲染技术分类从感知通道角度视觉渲染将几何模型按照视觉原理进行表现触力觉渲染提供力觉/触力觉感知信息听觉渲染提供逼真的听觉感受其他通道渲染嗅觉、味觉等上述通道并不孤立,需要相互结合,而视觉通道是输出的主体例子:听觉与视觉的结合HarmonicFluids,SIGGRAPH2009在逼真表现流体模型的基础上,增加逼真的声音效果例子:
视觉与嗅觉结合
北京时间3月5日消息,据英国《每日邮报》报道,英国科学家设计了一种虚拟现实的神奇头盔,这种头盔能够模拟视觉、嗅觉、听觉、触觉甚至味觉功能,让使用者不必亲自前往遥远的度假目的地,在家中便可获得身临其境的感觉,尽情享受虚拟旅游的快乐。
戴上这款头盔后,“扶椅游客”(只阅读或听说关于旅游的事而不亲身旅行的人)只需舒舒服服地坐在起居室,便可听到狩猎之旅中狮子的咆哮,闻到高山草甸上鲜花的芳香并感受加勒比海阳光的热度。此外,这款装置还可让用户问候远在世界另一端的朋友和家人,就好像他们也身在同一房间,让自己尽情沉浸在虚幻中的世界。有了这个头盔,学生便可以对历史进行虚拟探索,体验生活在古埃及、古罗马或者古希腊的感受。
科学家研制虚拟现实装置已经有近20年历史了,但直到现在,绝大多数装置仍能够只能创造声音和图像。来自约克和华威大学的一支英国科学家小组发起了一项计划,研制世界上第一款真正意义上的虚拟现实头盔,这种装置能够模拟所有5种感觉,让他们所说的“真实虚拟”变得更加可信。
这款头盔名为“虚拟茧”,内装专门研发的电子设备,包括一个高清晰、高动态电脑显示屏、高技术含量的扬声器、用来向佩戴者面部吹热/冷风的风扇以及一个可以在鼻子下方释放化学物质的“嗅觉管”以模拟真实世界中的气味。
视觉渲染技术的表现形态绘制引擎场景管理碰撞检测多种类型对象渲染(几何、流体….)本讲主要内容常用绘制引擎及OpenGVS场景管理与碰撞检测技术GPU技术
常用绘制引擎绘制系统的层次结构硬件平台:显卡、GPU、……基本绘制层:OpenGL、DirectX
常用绘制引擎商用PerformerWorldToolKit(WTK)VTreeOpenGVSVegaVirtools……开源OSG……OpenGVS基础OpenGVSisaveryhigh-level,ApplicationsProgrammingInterface(API)forreal-time3-Dsoftwaredevelopersandsystemintegrators.APIconsistsofmanypowerfulfunctions.OpenGVS是API
使用OpenGVS可以快速开发跨平台的虚拟现实应用。OpenGVS的应用软件可以在许多不同的硬件平台和带不同绘图标准(OpenGL,3DFXGLIDE,Direct3D)的操作系统上运行,而不需要做什么修改。支持OpenGL、3DFXGlide以及DirectX多种加速引擎。
OpenGVS的优势OpenGVS与OpenGLD3D的关系
在虚拟现实系统的开发中,还有OpenGL、Direct3D、WTK等图形开发工具。OpenGVS与OpenGL、Direct3D一样都是用于3D图形系统开发的API。不同的是OpenGL等属于“较低层次”绘图原语。OpenGVS则是一种软件开发包(SDK),它把繁杂的软件开发琐事分成许多简单的相互关联又方便使用的组件。用户应用程序既可以调用这些软件,也可以避开OpenGVS直接调用底层绘图软件包提供的函数。图形系统OpenGVSOpenGVS资源组成SystemFacilityCommandFacilityImportFacilityUserFacilityObjectFacilitySceneFacilityCameraFacilityChannelFacilityFrameBufferFacilityFogFacilityLightFacility MaterialFacilityTextureFacility GeometryFacility
OpenGVS的功能组件OpenGVS基本术语OpenGVS基本术语
帧缓存(FrameBuffer)
TheFrameBufferFacilityisusedtoestablishasoftwareresourcerelationshipbetweenthegraphicshardwareframebufferandtheGVS.EveryGVSapplicationwillneedtocreateatleastone(andusuallyonlyone)framebuffer.Channels(whichincludeauserspecifiedsceneandcamera)mustbeaddedtotheframebuffertocompletetherequiredGVSsoftwareconnections.Innearlyallcases,allyou’llneedtodoiscreateasingleframebufferresourceandconnectyourchanneltotheframebuffer.OpenGVS基本术语
通道(Channel):
Theterm“channel”isanhistoricaltermborrowedfromtheoriginalcomputerimagegenerationindustryterminologywhichbeganinthe1960s;theterm“imagegenerationchannel”remainsinforcetoday.AGVSchanneladoptsthisterminologyandissimplya3-Ddrawingsurfacerelativetosomearbitrarydesigneyepointin3-Dspace.TheChannelFacilityisusedtoformpartoftheGVSviewingpipelinealongwithacamera.通道是随相机(camera)而建立的一个三维视觉管道,也可看成是场景、对象、雾、光源等众多资源的集合体。通道与帧缓存相连,把视频信号传到物理输出媒介。在通常的仿真程序中,程序员至少要建立一个通道,在其中渲染想要的颜色并加入相机和场景(scene),这样当这个通道与帧缓存相连时,GVS就可以绘制所需的场景了。
属性缺省值设定时所用函数NameNULL(emptystring"")GV_chn_set_name()NormalizedViewportDimensions(.xmin,.xmax,.ymin,.ymax){-1.0,1.0,-1.0,1.0}GV_chn_set_viewport()EraseModeGV_CHN_ERASE_MODE_ONGV_chn_set_erase_mode()EraseColor{0.0,0.0,0.0,1.0}(black)GV_chn_set_erase_color()BorderG_ONGV_chn_set_border()DoubleBufferingG_ON
FarClippingPlane(systemunits)250000.0
NearClippingPlane0.1
Shear(.x,.y)Translation{0.0,0.0}GV_chn_set_shear()Twist(.x,.y,.z)Angles{0.0,0.0,0.0}GV_chn_set_twist()通道(GvsChn)类classGvsChn{int id;//通道标识号G_Name name;//通道名float clip_near; //通道中近剪切面到相机的距离float clip_far; //通道中远剪切面到相机的距离GV_Viewport*view_port; //通道的视口坐标GV_Rgba *erase_color; //通道的填涂颜色G_Vector2 *shear;//通道错切角度GvsCam *cam;//通道中的相机GvsScn *scn;//通道中的场景GvsChn *m_pPrev;//通道链表中的前一通道GvsChn *m_pNext;//通道链表中的后一通道OpenGVS基本术语
场景(Scene)是基本的资源,绘图数据在此保存。场景是零个或多个实体实例的集合。在OpenGVS中,实体实例在被绘出之前必须加入场景。用户可为他们的应用程序定义任意多的场景,但每次只有一个场景及其通道被激活,同时每个场景中又可以存在多个通道。场景(Scene)类classScene{int id; //场景标识号G_Name name; //场景名GvsFog *fog; //场景中的雾GvsLsr *lsr; //场景中的光GvsObiList *obi_list;//实体链表objectdefinitionGvsObi *terr; //场景中的地形(是一个静态实体库)GvsScn* m_pPrev; //场景链表中的前一个场景GvsScn* m_pNext; //场景链表中的后一个场景}OpenGVS基本术语
实体(Objects)具有继承性,也就是说,每个实体都拥有用户定义的树状结构。这个结构由一个“父”节点开始,每个节点可以有零个或多个“子”节点。在任意时刻,对象定义(definition)的多个实例(instances)都可以加入场景或从场景中移走。实体类classObilist{intcount()const; //实体计数GvsObi*first()const; //实体链表中的第一个实体GvsObi*last()const; //实体链表中的最后一个实体voidAdded(GvsObi*node); //链表中添加一个实体voidRemove(GvsObi*node);//实体移去(不显示)voidRemoveAndDelete(GvsObi*node);//将实体移去并从链表删除GvsObi*lookup(constintid)const;//实体标识查找实体GvsObi*lookup(G_Namename)const; /实体名称找实体intGetChannles(GvsObi**&m_pGvsObiList);//通过实体查找实体所在通道GvsObi*m_pFirst; //链表中第一个实体GvsObi*m_pLast; //链表中最后一个实体}OpenGVS基本术语
照相机(Camera)——OpenGVS中基本的视点控制机制。每个相机都有一个或多个相互关联的平台。在用户的应用程序中,相机只有被加入通道才能被激活。系统中可以有多个不同角度的照相机,但每一时刻只能有一个照相机是活动的。用户可在不同照相机间切换就象是用不同的镜头观察场景。因此使用哪个相机决定了场景怎样绘制。OpenGVS基本术语
光源(Lightsources)
在用户定义的OpenGVS场景中创建和更新光源。为了激活一个光源,必须把它加入到用户的应用程序中去。尽管对大多数硬件系统来说在一个场景中每次之只加入一个无限远的光源的效果最好,但在一个场景中还是可以有多个光源用来模拟太阳、路灯等等OpenGVS基本术语
雾(Fogmodel)可加入场景用来模拟自然界中烟或雾的特殊效果,这一资源并不是必须的。
OpenGVS仿真循环系统初始化1.GV_sys_init()——要想初始化OpenGVS,必须在程序中调用一次也只能调用一次这个函数。GV_sys_init()初始化OpenGVS的软件管道,并启动数据库导入过程。在完成了自身的初始化动作之后,GV_sys_init()将调用用户初始化函数GV_user_init()。2.GV_user_init()——这是程序员真正进行初始化的地方。生成关键的图形资源:建立帧缓存,建立通道,建立相机,建立场景,建立光源。地形初始化,从对象的定义生成对象的实例,再将实例加入场景之中。进行其它必要的资源连接:将光源加入场景,为通道设置相机,为通道设置场景,将通道加入帧缓存。运行时模块CWinApp::Run()的作用是提供一个缺省的消息循环,不断地获取和发送Windows消息,直到它收到一个WM_QUIT消息。通过重载VC的CWinApp类的成员函数Run()把消息循环的控制权交给OpenGVS,它也不断地获取和发送Windows消息,直到它收到一个WM_QUIT消息。这些消息将由OpenGVS的应用程序来处理,而不是由MFC的应用程序处理。XXX::Run()函数建立的消息循环中调用了OpenGVS的运行时模块GV_sys_proc()。从此,OpenGVS进入运行时状态。在运行时的每一帧,OpenGVS总是自动地以一种回调函数的机制来调用一些程序定义的回调函数。例:应用程序通过运行时函数GV_user_proc()
对所有实体实现以下功能1)通过传感器接收参与者的一些操作指令,根据这些指令对本地实体的状态进行刷新;2)读取并处理网上PDU;3)本地实体碰撞检测;4)其他交互事件处理(如开火、爆炸、碰撞等);5)发布本地仿真实体信息6)根据当前视点,绘制视景。以坦克实体为例,描述GV_user_proc()的实现。仿真循环:intGV_user_proc(){ for(inti=0;i++;i<MTotalNumber){if(m_entity[i].type==1)//实体是人在回路接收输入设备数据,根据动力学方程求解下一时刻的位置;if(m_entity[i].type==2)//实体是计算机生成兵力(CGF){if(导航代理) 根据规则进行决策,求解下一时刻位置;}if(火控代理)求解火炮发射角,并装弹射击;if(防护代理) 求解坦克毁伤情况;if(三维图形代理)三维图形刷新;if(二维图形代理)二维图形刷新;if(三维声音代理)三维声音刷新;if(网络代理)发送实体状态Pdu;}关闭模块当应用程序接收到系统消息WM_QUIT时,将退出OpenGVS的消息循环,并调用关闭模块。这个模块完成资源句柄或指针的释放。setG_DEV=d:setG_ROOT_PATH=\gemsetGV_ROOT=\gem\gvsetGV_GFX=openglsetG_COMPILER=msvccalld:\gem\gv\login_gv.batd:cd\progra~1\MICROS~1\Common\MSDev98\bin\msdev.exe
OpenGVS环境变量设置OpenGL加速引擎编译连接设置Preprocessordefinitions:WIN32,_WINDOWS,_AFXDLLObject/librarymodules:libgv.lib$(GV_LIB_GL)netapi32.libwinmm.libmpr.lib
VC工程文件的设置(1)GLIDE加速引擎编译连接设置Preprocessordefinitions:WIN32,_DEBUG,_WINDOWS,OpenGVS,NOGEOMETRY,G_SYS_GLIDEObject/librarymodules:d:\gem\gv\lib\w32\x86mt\glide\libgv3.libd:\gem\gv\lib\w32\x86mt\glide\libgv.libd:\gem\gv\lib\w32\x86mt\glide\libsgl.libd:\gem\gv\lib\w32\x86mt\glide\libstub.libd:\gem\gv\libsys\w32\x86\glide\glide2x.libmpr.libnetapi32.libwinmm.liboldnames.lib
VC工程文件的设置(2)
COMMANDFACILITY(1)
COMMANDFACILITY(2)
OpenGVS支持的模型(1)3DStudioMaxFilesexportedin3DSbinaryfileformat(.3ds)(2)MultiGenOpenFlightformat(.flt)(3)GameGenformat(.gam)(4)WavefrontAscii(.obj)(5)InternalencryptedOpenGVSdatabasefileformat(.gvm)
ImportFacility(1)importfile=filename[options]
ImportFacility(2)
加载模型的两种方法(1)IMPORTINGMODELSVIASTARTUPCOMMANDFILES:在gvsinit.cmd中指定如下命令:importfile=f18.flt(2)IMPORTINGDATABASESUSINGFUNCTIONCALLS:在应用程序中使用函数调用:intstatus;status=GV_cmd_service("importfile=f18.gam");GV_cmd_service("importfile=f18.gamname=AIRPLANE");GV_Obiinst;GV_obi_instance_by_name("AIRPLANE",&inst);GV_obi_set_name(inst,"PLANE_0");staticG_Positionposition={-20000.,4000.,800.};GV_obi_set_position(inst,&position);staticG_Rotationangles={0.,45.0*G_DEG_TO_RAD,0.};GV_obi_set_rotation(inst,&angles);
创建对象实例及操作对象
访问对象的树状结构GV_Obibarrel;GV_obi_inq_by_name("TANK/TURRET/Barrel",&barrel);GV_obi_inq_by_name("TANK",&root);GV_obi_inq_by_name_relative(root,".../Barrel",&barrel);创建SCENEGV_Sceneotw_scene;GV_scn_create(&otw_scene);
SCENEFACILITY(1)向SCENE中加入对象GV_obi_instance_by_name("moon",&inst);GV_scn_add_object(scene,inst);在SCENE中删除一个对象GV_scn_remove_object(scene,inst);向SCENE中加入光源GV_lsr_inq_by_name("sun",&sun);GV_scn_add_light(scene,sun);
SCENEFACILITY(2)向SCENE中加入雾化模型GV_fog_inq_by_name("haze",&haze);GV_scn_add_fog(scene,haze);将SCENE加入通道中GV_scn_inq_by_name("OTW",&scnhdl);GV_chn_inq_by_name("main",&chnhdl);GV_chn_set_scene(chnhdl,scnhdl);创建CAMERAGV_Cameranew_camera;GV_cam_create(&new_camera);
CAMERAFACILITY(1)将相机加入通道中externGV_Channelchannel_main;GV_chn_set_camera(channel_main,camera1);将相机绑定到一个运动对象上GV_obi_inq_by_name("AIRCRAFT",&aircraft_inst);GV_cam_set_mount_obi(camera_pilot,aircraft_inst);相机追踪某一对象GV_cam_set_track_mode(camera,GV_CAM_TRACK_MODE_OBI_SINGLE);GV_cam_add_trackable_obi(camera,thing_inst);
CAMERAFACILITY(2)相机参数的设定GV_cam_set_aov_nominal(camera,angle);GV_cam_set_zoom_mode(camera,GV_CAM_ZOOM_MODE_AUTO);释放相机占用的资源GV_cam_free(camera);创建CHANNELGV_Channelchannel;GV_chn_create(&channel);
CHANNELFACILITY设置视口大小staticGV_Viewportvport_upper_right={0.0,1.0,0.0,1.0};GV_chn_set_viewport(channel,&vport_upper_right);GEOMETRYFACILITYGV_geo_inq_intersection(scene,&p0,&p1,type_mask,exclude,&data);G_Booleanisc_result;//G_TRUEifintersectionoccuredGV_Obiisc_object;//NULLifnone,otherwisehandleGV_Obiisc_sub_object;//NULLorHandleGV_Geo_faceisc_face;//NULLifnone,otherwisehandlefloatisc_range;//RangetointersectionG_Vector3isc_point;//PointofintersectionVR应用程序(漫游)构造过程场景数据库模型加载模型控制面及控制参数非碰撞实体表面定义场景调度碰撞检测地形匹配实体操纵输入映射与解释状态设置视点控制交互设计二维地图特殊效果外部输入图5-1通用漫游引擎框架结构示意图DOF实体约束系统状态控制机制外部输入(包括各种传感器输入及可能的网络命令等)主要完成四方面(1)状态设置:用于定制漫游系统,在漫游过程中打开/关闭漫游引擎提供的某些功能,包括设置特殊效果以及是否使用二维地图向导。(2)视点控制:控制漫游系统中观察相机的运动,在相机运动的过程中,完成场景调度控制、碰撞检测与响应、地形匹配等功能。(3)交互设计:在漫游过程中进行简单的虚拟场景动态交互设计。(4)实体操纵:对虚拟环境中的实体实施选择、操纵。如开/关门窗等。漫游引擎的状态机制
通用漫游框架中定义的绝大多数功能都被定义为可选择项,也就是说,漫游者可以根据自己的需要打开或关闭某些功能,如开/关雾化效果、开/关二维地图、决定是否进行碰撞检测、选择透明处理方式等。另一方面,漫游者还可以对漫游系统的初始状态进行设置,比如观察相机的初始位置、相机行进的速度步长、转角的步长、系统模拟的气候条件(晴、多云、阴)、时段(早晨、中午、傍晚)等。输入设备映射键盘鼠标游戏杆步行器传感器用户控制指令视点控制相机运动参数映射解释图5-2输入设备映射与视点控制视点控制模型walker_heighteye_height行走相机观察相机v_p1v_p0v_p2w_p1w_p0w_p2step-step
图5-3漫游引擎中的视点控制模型其他策略场景调度控制碰撞检测与响应地形匹配技术二维地图漫游向导依照计算机图形学正投影的原理,将三维场景模型“压缩”到一个平面上,然后运用相机资源,实现地图的显示、缩放以及二维与三维视点的同步运动基于雾化效果的恒定帧频技术
场景组织及碰撞检测技术基本求交计算——基本几何体求交场景组织——包含多个物体碰撞检测——场景下求交场景此处是广义概念,指三维物体所在的空间。(并非OpenGVS中场景)OpenGVS中场景是基本的资源,绘图数据在此保存。场景是零个或多个实体实例的集合。判断一个点是否在多边形内的方法叉积判断法(仅适用于凸多边形)夹角之和检验法交点计数检验选择算法的关键是计算复杂度Vi=Pi–P0,i=1,2,…n,Vn+1=V1P0在多边形内的充要条件是ViХVi+1的符号相同P1P2P3P4P5P0一条射线与长方体是否相交,可以采用Cyrus-Back算法(简称C-B算法)在一般的射线与长方体求交时,是对射线进行逐面求交并判断,这样这样当射线与长方体有交时,至少要求出与两个面的交点,而当射线与长方体无交时,必须将射线与六个面均求交后方可确定。基于凸多面体裁剪的C-B算法利用矢量的概念进行求解,运算效率较高多边形边界上的任意点p1,p2,N为其中一点处的内法线:N.(p2-p1)>=0V1.V2=|V1|.|V2|.cos(θ)两矢量垂直,点积为0由于在凸多边形内部,-Π/2≤θ≤Π/2,故其点积恒非负假设fi为边界上一点,直线方程为X=p0+Dt则如果与该边界相交,有:N.(P0+Dt-fi)=0即:N.(P0-fi)+(N.D)t=0,即可得到t,求出与该边界的交点场景组织包含多个物体后如何快速求交?空间数据组织结构空间结构信息包围体层次球,AABB,OBB,k-DOP(离散有向多面体)用于加速绘制和各种计算与查询静态,动态场景空间结构信息BSP树轴对齐BSP树计算开销比较大可以进行粗排序对OcclusionCulling有利静态场景多边形对齐BSP树计算开销大从后到前严格遍历静态场景空间结构信息OCTree普通八叉树预处理计算开销大更新困难静态场景松散八叉树空间结构信息与逻辑语义信息SceneGraph高层数据结构(纹理,变换。。)状态切换少场景描述能力强不需要预处理静态,动态直接应用碰撞检测场景裁减GEOMETRYFACILITYGV_geo_inq_intersection(scene,&p0,&p1,type_mask,exclude,&data);G_Booleanisc_result;//G_TRUEifintersectionoccuredGV_Obiisc_object;//NULLifnone,otherwisehandleGV_Obiisc_sub_object;//NULLorHandleGV_Geo_faceisc_face;//NULLifnone,otherwisehandlefloatisc_range;//RangetointersectionG_Vector3isc_point;//Pointofintersection可见性裁减视锥细节裁剪视锥裁剪遮挡裁剪细节裁剪
GPU技术概述GPUGraphicsProcessingUnitGPU历史1999年——Geforce256——GPU2001年——Geforce3——可编程2006年——ATI的X1900XTX(R580),NVIDIA的GeForce7900GTX(G71)2006年底——G80
概述GPGPU(GeneralPurposeComputationOnGraphicsHardware)WHYGPGPU?价格性能目标:使廉价的GPU能够被开发人员更好的作为计算处理器应用GPUvs.CPUCPUGPU每次处理单个/组数据每次处理一个数据流通用功能专用于图形绘制存储系统侧重于延时小存储系统侧重于大吞吐量串行执行任务固有的并行结构GPUvs.CPU“流”计算模型流(Stream):一组具有相同计算和操作的数据纪录核心(kernel):对数据流中每个元素进行操作的函数,以一个或多个流作为输入,产生一个或多个流作为输出。经典的例子:绘制流水线GPU适于计算密集,高并行的计算,GPU设计了更多的晶体管专用于数据处理,而非数据高速缓存和流控制GPU与计算机体系结构CPU芯片、计算机主内存、显卡接口和南桥芯片分别连在北桥芯片上由北桥芯片负责协调它们之间数据的传输GPU与计算机体系结构图形连接器(Graphicsconnector)PCI最大132MB/secAGP 最大264MB/secx8(AGP8x)PCIExpress最大8GB/sec(PCI-E16x4G上行,4G下行)GPU与计算机体系结构采用PCI-E(16x)总线情况下的各部分带宽GPU的结构和绘制流程顶点处理部分(VS)Setup&光栅化部分像素(片元)处理部分(PS)GPU的结构和绘制流程顶点处理部分完成顶点变换、光照计算,纹理地址计算等功能VertexTextureFetchGPU的结构和绘制流程三角形设定器/光栅化部件(3D->2D)完成图元组装、根据视棱锥和用户裁剪平面进行裁剪、齐次除法、视区缩放、背向面和视区剔除、设置三角形、光栅化处理等功能GPU的结构和绘制流程像素处理部分PixelShaderUnit(PSU像素着色单元)TextureMappingUnit(TMU贴图单元)rasteroperation(ROP像素结果输出处理器)GPU的结构和绘制流程GPU的结构和绘制流程一般3D绘制流程:GPGPU可用资源GPU擅长于什么样的运算?数据上平行且独立高算法强度 ArithmeticIntensity= o
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大学生非物质遗产创业项目
- 训练退出申请书
- 大学生创业贷款项目及材料
- 小学四年级数学三位数除以两位数单元检测口算题
- 三年级数学因数中间或末尾有零的乘法综合考核练习题大全附答案
- Unit 2 语法填空同步练习(含解析)-七年级英语下册(沪教版2024)
- 专科教育解析
- 语法掌握之道
- 音乐鉴赏之道
- 艺术历史探秘
- JGJ202-2010 建筑施工工具式脚手架安全技术规范【清晰版】
- JBT 7946.3-2017 铸造铝合金金相 第3部分:铸造铝合金针孔
- 2024年燃气轮机值班员技能鉴定理论知识考试题库-上(单选题)
- 中学校园安保服务投标方案
- 义务教育“双减”作业设计初中生物作业设计案例共三篇
- 2024-2030年中国车载冰箱行业市场发展调研及投资战略分析报告
- 数字全息显微成像的理论和实验研究
- 第16讲 电气绝缘节工作原理讲解
- 《行政伦理学教程(第四版)》课件 第3、4章 行政理性与行政价值、行政伦理规范
- (正式版)SHT 3046-2024 石油化工立式圆筒形钢制焊接储罐设计规范
- 2024-2029年中国电力工程监理行业市场现状分析及竞争格局与投资发展研究报告
评论
0/150
提交评论