CN102142150A - 基于分块渲染的gpu中锯齿线段的生成 - Google Patents

基于分块渲染的gpu中锯齿线段的生成 Download PDF

Info

Publication number
CN102142150A
CN102142150A CN 201110064784 CN201110064784A CN102142150A CN 102142150 A CN102142150 A CN 102142150A CN 201110064784 CN201110064784 CN 201110064784 CN 201110064784 A CN201110064784 A CN 201110064784A CN 102142150 A CN102142150 A CN 102142150A
Authority
CN
China
Prior art keywords
line segment
piece
coordinate
scale
current block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 201110064784
Other languages
English (en)
Other versions
CN102142150B (zh
Inventor
焦勇
周敏龙
林苍松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Changsha Jingjia Microelectronic Co., Ltd.
Original Assignee
CHANGSHA JINGJIA MICROELECTRONICS Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CHANGSHA JINGJIA MICROELECTRONICS Co Ltd filed Critical CHANGSHA JINGJIA MICROELECTRONICS Co Ltd
Priority to CN201110064784A priority Critical patent/CN102142150B/zh
Publication of CN102142150A publication Critical patent/CN102142150A/zh
Application granted granted Critical
Publication of CN102142150B publication Critical patent/CN102142150B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Generation (AREA)

Abstract

本发明公开了一种基于分块渲染算法实现的GPU中锯齿线段的生成技术,它是在线段已完成分块的基础上进行的,它包括根据线段所在块和线段生成方向确定块内线段的左右(或上下)交点;交点数据写入存储器;从存储器中取出线段后的宽度为1的坐标生成;根据线段宽度扩展坐标;根据块边界的裁剪等步骤,该实现方式可以配合分块渲染算法完成锯齿线段的快速生成。

Description

基于分块渲染的GPU中锯齿线段的生成
技术领域
本发明主要涉及到基于分块渲染的GPU设计领域,特指基于分块渲染的GPU中锯齿线段的生成。
背景技术
分块渲染技术是为了缓解传统GPU中频繁访存导致效率低下而提出的,传统GPU采用固定流水线技术,渲染一个图元要经过Z测试、纹理、Alpha测试、融合等多个读写存储器的过程,一个像素可能经过多次访存之后并不需要真正写入帧存,由此带来的性能损失是很大的,为了缓解这一问题,分块渲染技术就被提出来,这种技术是将绘图区划分为若干个大小相等的块,将图元按块划分完成之后,在绘制时按照块的顺序绘制,这就保证了绘制当前块的时候,只需要缓存当前块的信息即可,等当前块全部绘制完成之后再将当前块写回帧存,大大减少了访存次数。
三角形分块渲染技术已经比较成熟,但在GPU应用中,有时需要绘制大量的线段(如地图绘制),如果对三角形使用了分块渲染而线段不采用,那么由于线段的局部性比较差,可能会导致运行效率更低,因此需要对线段也采用分块渲染的技术。
发明内容
本发明要解决的问题就在于:针对现有技术存在的技术难点,本发明提供了一种基于分块渲染的GPU中锯齿线段的生成技术,该实现技术逻辑简单、渲染速度快。
本发明的优点就在于:1、逻辑简单:本发明提出的锯齿线段生成技术算法比较简单,有利于硬件实现;2、渲染速度快:将线段分块之后,在渲染某一块时,不论三角形还是线段都只会在本块内渲染,片上缓存也只需要存储当前块的信息即可,当前块渲染完毕再将当前缓冲区的内容写入帧存。
附图说明
图1是本发明实现的基于分块渲染的GPU中锯齿线段生成结构。
具体实施方式
以下将结合附图和具体实施例对本发明做进一步详细说明。
如图1所示,为本发明实现的基于分块渲染的GPU中锯齿线段生成结构。将线段分块并得到线段所在的确切块号之后,根据线段所在确切块号和绘图区域的大小计算该块的有效覆盖范围;根据线段生成的方向计算线段在块内生成时的坐标范围,以沿X方向生成线段为例,需要计算左右范围,计算线段与块的左边界和右边界的y交点,若线段起始点x坐标大于当前块的左边界x坐标,取线段的起始点,否则取计算得到的块的左边界,若线段终点的x坐标大于当前块的右边界x坐标,取计算得到的块的右边界,否则取线段的终点坐标,这样就得到当前块内需从存储器读出,按照锯齿线段的生成算法生成宽度为1的线段,然后将线段按照实际宽度进行扩展,得到想要绘制的线段的宽度;当线段坐标生成之后,由于前面的计算只是考虑了线段左右(或上下)边界,所以生成的线段坐标会有一些像素并不在当前绘制的块中,因此需要对得到的像素进行裁剪,得到绘制的有效像素。要绘制的线段坐标;根据分块渲染算法的思想需要将待绘制图元全部收集完成后再进行绘制,所以需要将当前计算得到的线段的边界写入存储器;将线段数据。

Claims (14)

1.基于分块渲染算法实现的GPU中锯齿线段的生成,其输入为线段两个端点的单精度浮点格式的坐标                                                
Figure 840712DEST_PATH_IMAGE001
,线段确切所在块的X块号和Y块号以及绘图区的范围。
2.根据线段所在确切块号计算该块的有效覆盖范围。
3.设X和Y方向的块号分别为Tx和Ty,绘图区范围为ScreenX和ScreenY,那么该块覆盖的有效范围可以如下得到:
左、下范围的计算。
4.由于所得到的块号均为正数,所以该块的左边界为ScaleXmin={Tx,6’h0},下边界为ScaleYmin={Ty,6’h0};
右、上范围的计算。
5.if ({Tx,6’h3f}>ScreenX) ScaleXmax={ Tx,6’h3f } 
else ScaleXmax= ScreenX
if ({Ty,6’h3f}>ScreenY) ScaleYmax={ Ty,6’h3f } 
else ScaleYmax= ScreenY
根据线段生成的方向计算线段在块内生成时的坐标范围。
6.以沿X方向生成线段为例,需要计算左右范围:
根据公式 
Figure 204697DEST_PATH_IMAGE002
Figure 565271DEST_PATH_IMAGE003
       计算线段与块的左边界和右边界的y交点。
7.根据以下条件取确切交点。
8.若线段起始点x坐标大于当前块的左边界x坐标,取线段的起始点,否则取计算得到的块的左边界;若线段终点的x坐标大于当前块的右边界x坐标,取计算得到的块的右边界,否则取线段的终点坐标。
9.这样就得到当前块内需要绘制的线段坐标
Figure 14707DEST_PATH_IMAGE004
10.若线段数量非常大,根据分块渲染算法的思想需要将待绘制图元全部收集完成后再进行绘制,所以需要将当前计算得到的线段的边界写入存储器。
11.当开始绘制以后,将线段数据从存储器读出。
12.按照锯齿线段的生成算法生成宽度为1的线段,然后将线段按照实际宽度进行扩展,得到想要绘制的线段的宽度。
13.当线段坐标生成之后,由于前面的计算只是考虑了线段左右(或上下)边界,所以生成的线段坐标会有一些像素并不在当前绘制的块中,因此需要对得到的像素进行裁剪。
14.当前块的范围为
Figure 384509DEST_PATH_IMAGE005
,那么有当前块内绘制的有效像素为满足下面条件的点(x,y):
      
Figure 337421DEST_PATH_IMAGE006
CN201110064784A 2011-03-17 2011-03-17 基于分块渲染的gpu中锯齿线段的生成 Active CN102142150B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110064784A CN102142150B (zh) 2011-03-17 2011-03-17 基于分块渲染的gpu中锯齿线段的生成

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110064784A CN102142150B (zh) 2011-03-17 2011-03-17 基于分块渲染的gpu中锯齿线段的生成

Publications (2)

Publication Number Publication Date
CN102142150A true CN102142150A (zh) 2011-08-03
CN102142150B CN102142150B (zh) 2012-10-17

Family

ID=44409634

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110064784A Active CN102142150B (zh) 2011-03-17 2011-03-17 基于分块渲染的gpu中锯齿线段的生成

Country Status (1)

Country Link
CN (1) CN102142150B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6285375B1 (en) * 1999-02-05 2001-09-04 International Business Machines Corporation Algorithm to transform generalized polygons to trapezoids
CN101978393A (zh) * 2008-03-20 2011-02-16 高通股份有限公司 用于图形渲染的多阶段细分

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6285375B1 (en) * 1999-02-05 2001-09-04 International Business Machines Corporation Algorithm to transform generalized polygons to trapezoids
CN101978393A (zh) * 2008-03-20 2011-02-16 高通股份有限公司 用于图形渲染的多阶段细分

Also Published As

Publication number Publication date
CN102142150B (zh) 2012-10-17

Similar Documents

Publication Publication Date Title
CN102890829B (zh) 一种基于gpu的渲染地形的方法
CN102096897B (zh) 基于分块渲染的gpu中块存储策略的实现
CN104183005B (zh) 图形处理单元和基于图块的渲染方法
CN101840566A (zh) 一种基于gpu并行计算的实时阴影生成方法及系统
CN102737097A (zh) 基于lod透明纹理的三维矢量实时动态叠加技术
US9013479B2 (en) Apparatus and method for tile-based rendering
JPH08161509A (ja) テクスチャ・マッピングを行うコンピュータ・システム
EP2380139A1 (en) Display list control stream grouping in tile based 3d computer graphics system
CN101261743A (zh) 一种基于规则网格的大规模地形漫游模拟方法
CN101976432B (zh) 图形芯片设计中分级裁剪策略的实现
CN103380417A (zh) 用于从存储器请求所存储的数据的技术
Kipfer et al. GPU construction and transparent rendering of iso-surfaces
CN102999946A (zh) 一种3d图形数据处理方法、装置及设备
CN102915563A (zh) 三维网格模型透明绘制的方法及其系统
CN102096935B (zh) 基于分块渲染的gpu中反走样线段的生成
CN104317754B (zh) 面向异构计算系统的跨步数据传输优化方法
CN115187445A (zh) 一种基于Unity引擎加载模型的可视化方法及装置
CN102270351A (zh) 基于分块渲染的gpu中线段分块技术的实现
CN102142150B (zh) 基于分块渲染的gpu中锯齿线段的生成
CN103310409A (zh) 一种Tile-based渲染架构GPU的三角形快速分块方法
US20220066819A1 (en) Methods and apparatuses for coalescing function calls for ray-tracing
CN101354793A (zh) 基于图形处理器的实时三维图像平滑处理方法
CN108897847A (zh) 基于局部敏感哈希的多gpu密度峰值聚类方法
CN102663958A (zh) 一种顾及拓扑关系的大规模矢量地图快速综合的方法
CN108986212B (zh) 一种基于裂缝消除的三维虚拟地形lod模型的生成方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: 410205 Hunan province Changsha Hexi Lugu high tech Zone base Lu Jing Road No. 2 Changsha Productivity Promotion Center

Patentee after: Changsha Jingjia Microelectronic Co., Ltd.

Address before: 410205 Hunan province Changsha Hexi Lugu high tech Zone base Lu Jing Road No. 2 Changsha Productivity Promotion Center

Patentee before: Changsha Jingjia Microelectronics Co., Ltd.