The present invention relates to the field of computer technology, and discloses a method for rendering in 3D scene text, which comprises the following steps: (1) will be split into a character string; (2) to construct the network model for each character; (3) to generate the corresponding texture of each character; (4) the texture mapping and network model correspondence; (5) submitted GPU rendering. The invention solves the requirement of rendering characters at any position in the three-dimensional scene. By building the mesh in the 3D scene, the text becomes the model, and the texture is rendered to the model so that the text can be rendered directly using the GPU rendering fixed pipeline directly. And all the text texture is merged, so that the texture can be reused, reducing the number of CPU to submit the texture data to GPU, reducing the time consumption of rendering, rendering text rendering more efficient.
【技术实现步骤摘要】
一种在三维场景中渲染文字的方法
本专利技术涉及计算机
,特别是涉及一种在三维场景中渲染文字的方法。
技术介绍
三维模型广泛用任何使用三维图形的地方。实际上,它们的应用早于个人电脑上三维图形的流行。许多计算机游戏使用预先渲染的三维模型图像作为sprite用于实时计算机渲染。现在,三维模型已经用于各种不同的领域。在医疗行业使用它们制作器官的精确模型;电影行业将它们用于活动的人物、物体以及现实电影;视频游戏产业将它们作为计算机与视频游戏中的资源;在科学领域将它们作为化合物的精确模型;建筑业将它们用来展示提议的建筑物或者风景表现;工程界将它们用于设计新设备、交通工具、结构以及其它应用领域;在最近几十年,地球科学领域开始构建三维地质模型。三维模型本身是不可见的,可以根据简单的线框在不同细节层次渲染的或者用不同方法进行明暗描绘(shaded)。但是,许多三维模型使用纹理进行覆盖,将纹理排列放到三维模型上的过程称作纹理映射。纹理就是一个图像,但是它可以让模型更加细致并且看起来更加真实。三维文字渲染在三维模型中也有广泛的应用,但是三维引擎中原有的文字渲染方式只能渲染在屏幕固定位置上,无法达到在三维场景内任意位置渲染的要求。为了实现在三维场景中任意位置渲染文字,在三维场景中构建网格建立模型,生成对应文字的纹理图片,把纹理与模型结合,使用渲染模型的方式(通过GPU固定管线提交纹理,提交对应的顶点与纹理坐标)来渲染文字。并且考虑内存的消耗与渲染的压力,需要对文字纹理实行最大程度的复用。
技术实现思路
本专利技术针对现有技术中硬件要求高、渲染效率低的缺点,提供了一种在三维场景中 ...
【技术保护点】
一种在三维场景中渲染文字的方法,其特征在于,包括如下步骤:(1)获取到字符串后,将字符串拆分成一个个字符,然后拆分后的字符按照实体字符和格式字符分成两类,格式字符用于格式对齐,实体字符用于渲染;(2)将步骤(1)拆分字符串中的每一个实体字符为一个独立单元,通过获取的三维空间信息中,包括的文字渲染的中心点坐标,根据中心点坐标为每一独立单元在三维空间中构建网格并建立模型;(3)对每一类文字字体创建一个管理对象,每个管理对象为每类字体的字库,用于管理已经生成的用于表现实体字符可视效果的纹理,在管理过程中对多个字符产生的纹理数据进行合并,得到一个大纹理,并且记录了纹理被合并的字符的纹理贴图信息;(4)每一个独立单元内的字符,在字符对应文字字体的字库中,进行查找对应的纹理贴图信息,查找到时,把查找到的纹理贴图信息与构建的网格对应;如果未查找到,实时生成所需纹理贴图,把生成的纹理贴图信息导入字库管理,并把生成的纹理贴图信息与构建的网格模型对应;(5)最后根据步骤(2)构建的网格模型和步骤(4)生成的纹理贴图信息,通过图形API向GPU提交渲染指令,把文字渲染在三维场景中。
【技术特征摘要】
1.一种在三维场景中渲染文字的方法,其特征在于,包括如下步骤:(1)获取到字符串后,将字符串拆分成一个个字符,然后拆分后的字符按照实体字符和格式字符分成两类,格式字符用于格式对齐,实体字符用于渲染;(2)将步骤(1)拆分字符串中的每一个实体字符为一个独立单元,通过获取的三维空间信息中,包括的文字渲染的中心点坐标,根据中心点坐标为每一独立单元在三维空间中构建网格并建立模型;(3)对每一类文字字体创建一个管理对象,每个管理对象为每类字体的字库,用于管理已经生成的用于表现实体字符可视效果的纹理,在管理过程中对多个字符产生的纹理数据进行合并,得到一个大纹理,并且记录了纹理被合并的字符的纹理贴图信息;(4)每一个独立单元内的字符,在字符对应文字字体的字库中,进行查找对应的纹理贴图信息,查找到时,把查...
【专利技术属性】
技术研发人员:季惟婷,俞蔚,
申请(专利权)人:浙江科澜信息技术有限公司,
类型:发明
国别省市:浙江,33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。