CN104835198A - 场景展示方法和装置 - Google Patents

场景展示方法和装置 Download PDF

Info

Publication number
CN104835198A
CN104835198A CN201510258188.4A CN201510258188A CN104835198A CN 104835198 A CN104835198 A CN 104835198A CN 201510258188 A CN201510258188 A CN 201510258188A CN 104835198 A CN104835198 A CN 104835198A
Authority
CN
China
Prior art keywords
observation point
position coordinates
view parameter
sparse matrix
interpolation algorithm
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
CN201510258188.4A
Other languages
English (en)
Other versions
CN104835198B (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.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network 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 Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN201510258188.4A priority Critical patent/CN104835198B/zh
Publication of CN104835198A publication Critical patent/CN104835198A/zh
Application granted granted Critical
Publication of CN104835198B publication Critical patent/CN104835198B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Controls And Circuits For Display Device (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明公开了一种场景展示方法,包括:获取当前观察点的位置坐标;调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数;其中,n≥2;根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数;根据所述当前观察点的视角参数,对场景进行渲染。本发明还公开了一种场景展示装置。采用本发明实施例,能够实现三维场景的多视角展示,自动调整场景视角,保证场景视角的平滑过渡,减少区域切换的突兀感,同时便于场景设计和场景视角配置。

Description

场景展示方法和装置
技术领域
本发明涉及计算机领域,尤其涉及一种场景展示方法和装置。
背景技术
现有的三维技术被广泛用于游戏、地图以及多媒体展示等各个领域,三维场景的查看视角对于场景的展示效果起着至关重要的作用,如何对场景视角进行配置以实现更优的场景展示效果已成为业界的难题。以三维游戏场景的视角控制为例,现有的控制方案主要有以下三种:
一、固定视角:采用固定的视角参数,例如“斜45度”视角,在游戏过程当中,全程视角固定,玩家移动到任何位置,视角向量和视角距离均固定不变。然而若采用固定视角的方式,由于场景采用固定的视角进行展示,设计者在设计场景时,必须按照该固定的角度来设计,并避免场景对视线的遮挡,场景设计难度较大。而玩家在体验游戏的过程中,视角是固定不变的,也不能更近距离地查看某个物体,游戏体验较差。
二、全开放式视角:视角参数的设定由玩家设定,玩家可通过双手触摸滑动的方式按照喜好自行调整视角。然而若采用全开放式视角的方式,由于场景的视角的开放性,设计者在设计场景时,需要全方位考虑玩家从不同角度对场景进行查看的可能性,因此必须对场景中所有可能产生遮挡的地方均加以考虑,场景设计的难度比采用固定视角的方式时更大。而玩家在体验游戏的过程中,需要手动地去调整视角,在一定程度上增加了玩家操作的复杂度,在三维手机游戏中,由于手机操作的局限性,全开放式视角操作复杂的弊端尤为突出。
三、区域视角:将场景划分为多个不同的区域,对于不同的区域,设置不同的视角参数,在不同的区域之间,采用直接切换的方式或者在一定时间内缓慢过渡的方式进行切换。然而若采用区域视角配置的方式,为了避免场景中出现没有覆盖或者重复覆盖的地方,设计者在设计场景时,必须让各个区域严格相接,导致设计者在配置区域的时难度较大;同时,当出现拐角等变化较多的地方时,设计者还需要额外增加很多细小的区域,并分别对这些细小的区域进行配置,操作繁琐,工作量较大。而玩家在体验游戏的过程中,采用区域视角配置的方式虽然可以让玩家有更多的视角去查看场景,也无需玩家主动去调节视角,但是由于不同视角区域之间的切换不够平滑,玩家能明显感觉到区域切换的突兀感。
发明内容
本发明实施例的目的在于提供一种场景展示方法和装置,实现三维场景的多视角展示,自动调整场景视角,保证场景视角的平滑过渡,减少区域切换的突兀感,同时便于场景设计和场景视角配置。
本发明实施例提供了一种场景展示方法,包括:
获取当前观察点的位置坐标;
调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数;其中,n≥2;
根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数;
根据所述当前观察点的视角参数,对场景进行渲染。
其中,所述视角参数包括视角向量和视角距离。
优选地,所述n个参考观察点的位置坐标存储于第一稀疏矩阵中,所述n个参考观察点的视角参数存储于第二稀疏矩阵中,所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置与所述n个参考观察点的视角参数在所述第二稀疏矩阵中的位置相对应;
所述调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数,具体为:
调取所述第一稀疏矩阵,从所述第一稀疏矩阵中获取所述n个参考观察点的位置坐标;
调取所述第二稀疏矩阵,根据所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置,从所述第二稀疏矩阵中获取与所述n个参考观察点对应的视角参数。
在一种优选的实施方式中,所述根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数,具体为:
根据所述当前观察点的位置坐标和所述n个参考观察点的位置坐标,分别计算所述当前观察点与所述n个参考观察点之间的欧氏距离;
根据所述当前观察点与所述n个参考观察点之间的欧氏距离,采用线性插值算法,计算出所述当前观察点的视角参数,所述线性插值算法的计算公式如下:
matrix _ value ( x , y , z ) = Sum ( 1 dist [ i ] 2 * value [ i ] ) Sum ( 1 dist [ i ] 2 )
其中,dist[i]为所述当前观察点与第i个参考观察点之间的欧氏距离,value[i]为第i个参考观察点的视角参数。
在另一种优选的实施方式中,所述根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数,具体为:
将所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数代入插值算法多项式,求解出所述插值算法多项式中的系数;所述插值算法多项式如下:
a 0 + a 1 x 1 + a 2 x 1 2 + . . . + a n x 1 n = y 1 a 0 + a 1 x 2 + a 2 x 2 2 + . . . + a n x 2 n = y 2 . . . a 0 + a 1 x n + a 2 x n 2 + . . . + a n x n n = y n
其中,a0、a1、…、an为所述系数,x1、x2、…、xn为所述n个参考观察点的位置坐标,y1、y2、…、yn为所述n个参考观察点的视角参数;
将所述当前观察点的位置坐标,代入求解出系数后的插值算法多项式,计算出所述当前观察点的视角参数。
本发明实施例还提供了另一种场景展示方法,包括:
获取当前观察点的位置坐标;
调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数;其中,n≥2;
判断所述当前观察点的位置坐标是否与所述n个参考观察点中的至少一个参考观察点的位置坐标相同;
若所述当前观察点的位置坐标与所述n个参考观察点中的至少一个参考观察点的位置坐标相同,则将所述参考观察点的视角参数作为所述当前观察点的视角参数;
若所述当前观察点的位置坐标与所述n个参考观察点的位置坐标均不相同,则根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数;
根据所述当前观察点的视角参数,对场景进行渲染。
其中,所述视角参数包括视角向量和视角距离。
优选地,所述n个参考观察点的位置坐标存储于第一稀疏矩阵中,所述n个参考观察点的视角参数存储于第二稀疏矩阵中,所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置与所述n个参考观察点的视角参数在所述第二稀疏矩阵中的位置相对应;
所述调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数,具体为:
调取所述第一稀疏矩阵,从所述第一稀疏矩阵中获取所述n个参考观察点的位置坐标;
调取所述第二稀疏矩阵,根据所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置,从所述第二稀疏矩阵中获取与所述n个参考观察点对应的视角参数。
在一种优选的实施方式中,所述根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数,具体为:
根据所述当前观察点的位置坐标和所述n个参考观察点的位置坐标,分别计算所述当前观察点与所述n个参考观察点之间的欧氏距离;
根据所述当前观察点与所述n个参考观察点之间的欧氏距离,采用线性插值算法,计算出所述当前观察点的视角参数,所述线性插值算法的计算公式如下:
matrix _ value ( x , y , z ) = Sum ( 1 dist [ i ] 2 * value [ i ] ) Sum ( 1 dist [ i ] 2 )
其中,dist[i]为所述当前观察点与第i个参考观察点之间的欧氏距离,value[i]为第i个参考观察点的视角参数。
在另一种优选的实施方式中,所述根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数,具体为:
将所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数代入插值算法多项式,求解出所述插值算法多项式中的系数;所述插值算法多项式如下:
a 0 + a 1 x 1 + a 2 x 1 2 + . . . + a n x 1 n = y 1 a 0 + a 1 x 2 + a 2 x 2 2 + . . . + a n x 2 n = y 2 . . . a 0 + a 1 x n + a 2 x n 2 + . . . + a n x n n = y n
其中,a0、a1、…、an为所述系数,x1、x2、…、xn为所述n个参考观察点的位置坐标,y1、y2、…、yn为所述n个参考观察点的视角参数;
将所述当前观察点的位置坐标,代入求解出系数后的插值算法多项式,计算出所述当前观察点的视角参数。
本发明实施例提供了一种场景展示装置,包括:
当前观察点获取单元,用于获取当前观察点的位置坐标;
参考观察点调取单元,用于调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数;其中,n≥2;
视角参数计算单元,用于根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数;和,
场景展示单元,用于根据所述当前观察点的视角参数,对场景进行渲染。
其中,所述视角参数包括视角向量和视角距离。
优选地,所述场景展示装置还包括:
存储单元,用于将所述n个参考观察点的位置坐标存储于第一稀疏矩阵中,将所述n个参考观察点的视角参数存储于第二稀疏矩阵中,所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置与所述n个参考观察点的视角参数在所述第二稀疏矩阵中的位置相对应;
所述参考观察点调取单元包括:
第一调取子单元,用于调取所述第一稀疏矩阵,从所述第一稀疏矩阵中获取所述n个参考观察点的位置坐标;和,
第二调取子单元,用于调取所述第二稀疏矩阵,根据所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置,从所述第二稀疏矩阵中获取与所述n个参考观察点对应的视角参数。
在一种优选的实施方式中,所述视角参数计算单元包括:
距离计算子单元,用于根据所述当前观察点的位置坐标和所述n个参考观察点的位置坐标,分别计算所述当前观察点与所述n个参考观察点之间的欧氏距离;和,
视角计算子单元,用于根据所述当前观察点与所述n个参考观察点之间的欧氏距离,采用线性插值算法,计算出所述当前观察点的视角参数,所述线性插值算法的计算公式如下:
matrix _ value ( x , y , z ) = Sum ( 1 dist [ i ] 2 * value [ i ] ) Sum ( 1 dist [ i ] 2 )
其中,dist[i]为所述当前观察点与第i个参考观察点之间的欧氏距离,value[i]为第i个参考观察点的视角参数。
在另一种优选的实施方式中,所述视角参数计算单元包括:
第一计算子单元,用于将所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数代入插值算法多项式,求解出所述插值算法多项式中的系数;所述插值算法多项式如下:
a 0 + a 1 x 1 + a 2 x 1 2 + . . . + a n x 1 n = y 1 a 0 + a 1 x 2 + a 2 x 2 2 + . . . + a n x 2 n = y 2 . . . a 0 + a 1 x n + a 2 x n 2 + . . . + a n x n n = y n
其中,a0、a1、…、an为所述系数,x1、x2、…、xn为所述n个参考观察点的位置坐标,y1、y2、…、yn为所述n个参考观察点的视角参数;和,
第二计算子单元,用于将所述当前观察点的位置坐标,代入求解出系数后的插值算法多项式,计算出所述当前观察点的视角参数。
本发明实施例还提供了另一种场景展示装置,包括:
当前观察点获取单元,用于获取当前观察点的位置坐标;
参考观察点调取单元,用于调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数;其中,n≥2;
判断单元,用于判断所述当前观察点的位置坐标是否与所述n个参考观察点中的至少一个参考观察点的位置坐标相同;
视角参数代入单元,用于若所述当前观察点的位置坐标与所述n个参考观察点中的至少一个参考观察点的位置坐标相同,则将所述参考观察点的视角参数作为所述当前观察点的视角参数;
视角参数计算单元,用于若所述当前观察点的位置坐标与所述n个参考观察点的位置坐标均不相同,则根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数;和,
场景展示单元,用于根据所述当前观察点的视角参数,对场景进行渲染。
其中,所述视角参数包括视角向量和视角距离。
优选地,所述场景展示装置还包括:
存储单元,用于将所述n个参考观察点的位置坐标存储于第一稀疏矩阵中,将所述n个参考观察点的视角参数存储于第二稀疏矩阵中,所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置与所述n个参考观察点的视角参数在所述第二稀疏矩阵中的位置相对应;
所述参考观察点调取单元包括:
第一调取子单元,用于调取所述第一稀疏矩阵,从所述第一稀疏矩阵中获取所述n个参考观察点的位置坐标;和,
第二调取子单元,用于调取所述第二稀疏矩阵,根据所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置,从所述第二稀疏矩阵中获取与所述n个参考观察点对应的视角参数。
在一种优选的实施方式中,所述视角参数计算单元包括:
距离计算子单元,用于根据所述当前观察点的位置坐标和所述n个参考观察点的位置坐标,分别计算所述当前观察点与所述n个参考观察点之间的欧氏距离;和,
视角计算子单元,用于根据所述当前观察点与所述n个参考观察点之间的欧氏距离,采用线性插值算法,计算出所述当前观察点的视角参数,所述线性插值算法的计算公式如下:
matrix _ value ( x , y , z ) = Sum ( 1 dist [ i ] 2 * value [ i ] ) Sum ( 1 dist [ i ] 2 )
其中,dist[i]为所述当前观察点与第i个参考观察点之间的欧氏距离,value[i]为第i个参考观察点的视角参数。
在另一种优选的实施方式中,所述视角参数计算单元包括:
第一计算子单元,用于将所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数代入插值算法多项式,求解出所述插值算法多项式中的系数;所述插值算法多项式如下:
a 0 + a 1 x 1 + a 2 x 1 2 + . . . + a n x 1 n = y 1 a 0 + a 1 x 2 + a 2 x 2 2 + . . . + a n x 2 n = y 2 . . . a 0 + a 1 x n + a 2 x n 2 + . . . + a n x n n = y n
其中,a0、a1、…、an为所述系数,x1、x2、…、xn为所述n个参考观察点的位置坐标,y1、y2、…、yn为所述n个参考观察点的视角参数;和,
第二计算子单元,用于将所述当前观察点的位置坐标,代入求解出系数后的插值算法多项式,计算出所述当前观察点的视角参数。
本发明实施例提供的场景展示方法和装置,通过预先设置n个参考观察点的位置坐标和所述n个参考观察点的视角参数,根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数,并根据所述当前观察点的视角参数对场景进行展示。首先,本发明实施例对场景中的不同观察点,赋予不同的视角参数,实现场景的多视角展示,一方面,使得场景设计者在设计场景的时候无需过多的考虑固定视角和全开放式视角中的遮挡问题,另外一方面,也让场景设计者有更多的角度展示更完美的场景效果。其次,本发明实施例只需获取当前观察点的位置坐标,即可自动计算出当前观察点的视角参数,实现了场景视角的自动调整,无需用户或玩家进行手动调整,提高了操作的便利性,有助于改善用户体验。再者,本发明实施例通过插值算法,实时计算出当前观察点的视角参数,实现了相邻位置场景视角的平滑过渡,降低了区域边界过渡的突兀感。进一步地,场景设计者仅需设置场景中几个参考观察点的视角参数,即可通过算法生成场景内其他观察点的视角参数,覆盖全面,也无需担心视角配置重复。
附图说明
图1是本发明提供的场景展示方法的一个实施例的方法流程图;
图2是本发明提供的场景展示方法的另一个实施例的方法流程图;
图3是本发明提供的场景展示装置的一个实施例的装置结构图;
图4是本发明提供的场景展示装置的另一个实施例的装置结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。应当说明,本发明实施例中各步骤前的序号仅为方便说明,不应视为对各步骤先后顺序的限定。
参见图1,是本发明提供的场景展示方法的一个实施例的方法流程图。
本发明实施例提供一种场景展示方法,包括步骤S11至S14,具体如下:
S11,获取当前观察点的位置坐标。
所述当前观察点一般为画面的中心,在实际应用当中,可以将游戏人物的当前位置作为所述当前观察点。
S12,调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数。其中,n≥2。
其中,所述视角参数包括视角向量和视角距离。所述视角向量为视点到观察点的方向向量。所述视角距离为视点到观察点的距离,即摄影机到游戏人物的距离。
在一个实施方式中,所述n个参考观察点的位置坐标存储于第一稀疏矩阵中,所述n个参考观察点的视角参数存储于第二稀疏矩阵中,所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置与所述n个参考观察点的视角参数在所述第二稀疏矩阵中的位置相对应。
在具体实施当中,所述步骤S12包括:
调取所述第一稀疏矩阵,从所述第一稀疏矩阵中获取所述n个参考观察点的位置坐标。
调取所述第二稀疏矩阵,根据所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置,从所述第二稀疏矩阵中获取与所述n个参考观察点对应的视角参数。
场景设计人员在场景设计阶段,通过配表或者视角配置工具,从场景中选择若干特殊位置作为所述参考观察点进行视角参数配置,场景设计人员可以根据自己对视野的喜好选取参考观察点,以实现最优的场景展示效果。同时对于有弯路的场景,建议将弯路的入口、拐点和出口选取为参考观察点,为每个参考观察点配置相应的视角参数,并且建议两个参考观察点之间的距离不要太近,以提高三维场景的视角展示效果。
根据配置好的参考观察点的位置坐标和参考观察点的视角参数分别形成位置集合pos(i)=(x0,y0,z0),(x1,y1,z1)......(xn,yn,zn),以及视角参数集合value(i)=(a0,b0,c0,l0),(a1,b1,c1,l1)......(an,bn,cn,ln)。
其中,所述位置集合中的元素和所述视角参数集合中的元素一一对应。
根据所述位置集合生成所述第一稀疏矩阵,将所述参考观察点对应的视角参数填入所述第一稀疏矩阵中的相应位置中,形成所述第二稀疏矩阵,将所述第一稀疏矩阵和所述第二稀疏矩阵存储到内存中,以待计算当前观察点的视角参数时调用。场景中有大量的位置坐标,配置者只配置了稍许坐标点,通过采用稀疏矩阵的方式对所述参考观察点的位置坐标和所述参考观察点的视角参数进行存储,大大节省了数据存储空间。
S13,根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数。
在一种优选的实施方式中,所述插值算法可以采用线性插值算法,则所述步骤S13具体为:
根据所述当前观察点的位置坐标和所述n个参考观察点的位置坐标,分别计算所述当前观察点与所述n个参考观察点之间的欧氏距离。
根据所述当前观察点与所述n个参考观察点之间的欧氏距离,采用线性插值算法,计算出所述当前观察点的视角参数,所述线性插值算法的计算公式如下:
matrix _ value ( x , y , z ) = Sum ( 1 dist [ i ] 2 * value [ i ] ) Sum ( 1 dist [ i ] 2 )
其中,dist[i]为所述当前观察点与第i个参考观察点之间的欧氏距离,value[i]为第i个参考观察点的视角参数。
在另一种优选的实施方式中,所述插值算法可以采用多项式算法,则所述步骤S13具体为:
将所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数代入插值算法多项式,求解出所述插值算法多项式中的系数;所述插值算法多项式如下:
a 0 + a 1 x 1 + a 2 x 1 2 + . . . + a n x 1 n = y 1 a 0 + a 1 x 2 + a 2 x 2 2 + . . . + a n x 2 n = y 2 . . . a 0 + a 1 x n + a 2 x n 2 + . . . + a n x n n = y n
其中,a0、a1、…、an为所述系数,x1、x2、…、xn为所述n个参考观察点的位置坐标,y1、y2、…、yn为所述n个参考观察点的视角参数。
将所述当前观察点的位置坐标,代入求解出系数后的插值算法多项式,计算出所述当前观察点的视角参数。
需要说明的是,上述两种实施方式仅为本发明的两种优选实施方式,而非全部实施方式,本发明还可以根据实际需要,采用其他插值算法,计算所述当前观察点的视角参数,例如可以采用Lagrange插值算法、样条插值算法等,本领域技术人员可根据实际应用情况选择,本发明对此不作限定。
S14,根据所述当前观察点的视角参数,对场景进行渲染。
具体实施时,在获得当前观察点的视角参数后,可根据所述视角参数中的视角距离和视角向量,设定摄影机的位置和方向,对场景进行绘制、渲染,实现场景展示。
本实施例提供的场景展示方法,通过预先设置n个参考观察点的位置坐标和所述n个参考观察点的视角参数,根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数,并根据所述当前观察点的视角参数对场景进行展示。场景设计者在视角参数配置过程中,只需要通过系统提供的工具配置场景中几个特殊位置的视角参数即可,其他点的视角参数通过系统自动生成,不会有遗漏,也不会有重复,减轻了场景设计者配置视角参数的工作量。对于场景中的不同观察点,其视角参数不同,为玩家提供多视角查看场景的便利。玩家只需要在场景中移动,系统将自动为玩家调整视角,提高了操作的便利性。通过插值算法,实时计算出当前观察点的视角参数,保证在每一个点的周围,赋予权重最大的是其距离最近的点,从而保证了在移动的过程中视角平滑过渡。
参照图2,是本发明提供的场景展示方法的另一个实施例的方法流程图。
本发明实施例提供另一种场景展示方法,包括步骤S21至S26,具体如下:
S21,获取当前观察点的位置坐标。
S22,调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数。其中,n≥2。
S23,判断所述当前观察点的位置坐标是否与所述n个参考观察点中的至少一个参考观察点的位置坐标相同。
S24,若所述当前观察点的位置坐标与所述n个参考观察点中的至少一个参考观察点的位置坐标相同,则将所述参考观察点的视角参数作为所述当前观察点的视角参数。
S25,若所述当前观察点的位置坐标与所述n个参考观察点的位置坐标均不相同,则根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数。
S26,根据所述当前观察点的视角参数,对场景进行渲染。
其中,本实施例中的步骤S21、步骤S22、步骤S25和步骤S26,与上述图1所示实施例中的步骤S11至S14相同,其原理和具体实施方式可参见上述图1所示实施例中的相关描述,在此不再赘述。
与上述图1所示实施例相比,本实施例的主要区别在于,增加了步骤S23,判断所述当前观察点的位置坐标是否与所述n个参考观察点中的至少一个参考观察点的位置坐标相同。当所述当前观察点的位置坐标与所述n个参考观察点的位置坐标均不相同时,才根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数。而当所述当前观察点的位置坐标与所述n个参考观察点中的至少一个参考观察点的位置坐标相同时,则直接将所述参考观察点的视角参数作为所述当前观察点的视角参数。其优点在于,系统中已存储有配置好的参考观察点的视角参数,如果当前观察点与参考观察点相同时(例如,游戏人物移动到参考观察点的位置时),直接采用初始配置的参考观察点的视角参数作为当前观察点的视角参数,无需通过计算获得,在一定程度上减少了系统的计算量。
本发明实施例还提供一种场景展示装置,能够实现上述实施例的场景展示方法的所有流程。
参照图3,是本发明提供的场景展示装置的一个实施例的装置结构图。图3所示实施例的实质内容与图1所示方法实施例对应,本实施例中未详述之处,可参见图1所示实施例中的相关描述。
如图3所示,所述场景展示装置包括:
当前观察点获取单元301,用于获取当前观察点的位置坐标;
参考观察点调取单元302,用于调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数。其中,n≥2。其中,所述视角参数包括视角向量和视角距离;
视角参数计算单元303,用于根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数;和,
场景展示单元304,用于根据所述当前观察点的视角参数,对场景进行渲染。
在具体实施当中,所述场景展示装置还包括:
存储单元305,用于将所述n个参考观察点的位置坐标存储于第一稀疏矩阵中,将所述n个参考观察点的视角参数存储于第二稀疏矩阵中,所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置与所述n个参考观察点的视角参数在所述第二稀疏矩阵中的位置相对应。
所述参考观察点调取单元302包括:
第一调取子单元,用于调取所述第一稀疏矩阵,从所述第一稀疏矩阵中获取所述n个参考观察点的位置坐标;和,
第二调取子单元,用于调取所述第二稀疏矩阵,根据所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置,从所述第二稀疏矩阵中获取与所述n个参考观察点对应的视角参数。
在一种优选的实施方式中,所述视角参数计算单元303包括:
距离计算子单元,用于根据所述当前观察点的位置坐标和所述n个参考观察点的位置坐标,分别计算所述当前观察点与所述n个参考观察点之间的欧氏距离;和,
视角计算子单元,用于根据所述当前观察点与所述n个参考观察点之间的欧氏距离,采用线性插值算法,计算出所述当前观察点的视角参数,所述线性插值算法的计算公式如下:
matrix _ value ( x , y , z ) = Sum ( 1 dist [ i ] 2 * value [ i ] ) Sum ( 1 dist [ i ] 2 )
其中,dist[i]为所述当前观察点与第i个参考观察点之间的欧氏距离,value[i]为第i个参考观察点的视角参数。
在另一种优选的实施方式中,所述视角参数计算单元303包括:
第一计算子单元,用于将所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数代入插值算法多项式,求解出所述插值算法多项式中的系数;所述插值算法多项式如下:
a 0 + a 1 x 1 + a 2 x 1 2 + . . . + a n x 1 n = y 1 a 0 + a 1 x 2 + a 2 x 2 2 + . . . + a n x 2 n = y 2 . . . a 0 + a 1 x n + a 2 x n 2 + . . . + a n x n n = y n
其中,a0、a1、…、an为所述系数,x1、x2、…、xn为所述n个参考观察点的位置坐标,y1、y2、…、yn为所述n个参考观察点的视角参数;和,
第二计算子单元,用于将所述当前观察点的位置坐标,代入求解出系数后的插值算法多项式,计算出所述当前观察点的视角参数。
需要说明的是,上述两种实施方式仅为本发明的两种优选实施方式,而非全部实施方式本发明还可以通过其他插值算法,计算所述当前观察点的视角参数,例如可以采用Lagrange插值算法、样条插值算法等,本领域技术人员可根据实际需要进行选择,本发明对此不作限定。
本实施例提供了一种场景展示装置,通过当前观察点获取单元301获取当前观察点的位置坐标,通过参考观察点调取单元302调取预先设置的参考观察点的位置坐标和所述参考观察点的视角参数,通过视角参数计算单元303采用插值算法,计算出所述当前观察点的视角参数,并通过场景展示单元304根据计算出的当前观察点的视角参数,对场景进行渲染展示,实现了三维场景的多视角展示,可自动调整场景视角,保证场景视角的平滑过渡,减少区域切换的突兀感,同时便于场景设计和场景视角配置。
参照图4,是是本发明提供的场景展示装置的另一个实施例的装置结构图。
如图4所示,所述场景展示装置包括:
当前观察点获取单元301,用于获取当前观察点的位置坐标;
参考观察点调取单元302,用于调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数。其中,n≥2;
判断单元401,用于判断所述当前观察点的位置坐标是否与所述n个参考观察点中的至少一个参考观察点的位置坐标相同;
视角参数代入单元402,用于若所述当前观察点的位置坐标与所述n个参考观察点中的至少一个参考观察点的位置坐标相同,则将所述参考观察点的视角参数作为所述当前观察点的视角参数;
视角参数计算单元303,用于若所述当前观察点的位置坐标与所述n个参考观察点的位置坐标均不相同,则根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数;和,
场景展示单元304,用于根据所述当前观察点的视角参数,对场景进行渲染。
其中,当前观察点获取单元301、参考观察点调取单元302、视角参数计算单元303、场景展示单元304和存储单元305与图3所示实施例相同,其工作原理和具体实施方式可参见图3所示实施例中的相关描述,在此不再赘述。
与图3所示实施例相比,图4所示实施例的主要区别在于,增加了判断单元401,用于判断所述当前观察点的位置坐标是否与所述n个参考观察点中的至少一个参考观察点的位置坐标相同。当所述当前观察点的位置坐标与所述n个参考观察点的位置坐标均不相同时,才通过所述视角参数计算单元303,根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数。而当所述当前观察点的位置坐标与所述n个参考观察点中的至少一个参考观察点的位置坐标相同时,则通过视角参数代入单元402将所述参考观察点的视角参数作为所述当前观察点的视角参数。其优点在于,系统中已存储有配置好的参考观察点的视角参数,当游戏人物移动到参考观察点的位置时,直接采用初始配置参考观察点的视角参数,无需通过计算获得,在一定程度上减少了系统的计算量,确保在参考观察点上的场景效果与视角配置人员的预设一致。
综上所述,本发明实施例提供的场景展示方法和装置,通过预先设置n个参考观察点的位置坐标和所述n个参考观察点的视角参数,根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数,并根据所述当前观察点的视角参数对场景进行展示。首先,本发明实施例对场景中的不同观察点,赋予不同的视角参数,实现场景的多视角展示,一方面,使得场景设计者在设计场景的时候无需过多的考虑固定视角和全开放式视角中的遮挡问题,另外一方面,也让场景设计者有更多的角度展示更完美的场景效果。其次,本发明实施例只需获取当前观察点的位置坐标,即可自动计算出当前观察点的视角参数,实现了场景视角的自动调整,无需用户或玩家进行手动调整,提高了操作的便利性,有助于改善用户体验。再者,本发明实施例通过插值算法,实时计算出当前观察点的视角参数,实现了相邻位置场景视角的平滑过渡,降低了区域边界过渡的突兀感。进一步地,场景设计者仅需设置场景中几个参考观察点的视角参数,即可通过算法生成场景内其他观察点的视角参数,覆盖全面,也无需担心视角配置重复。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (20)

1.一种场景展示方法,其特征在于,包括:
获取当前观察点的位置坐标;
调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数;其中,n≥2;
根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数;
根据所述当前观察点的视角参数,对场景进行渲染。
2.如权利要求1所述的场景展示方法,其特征在于,所述视角参数包括视角向量和视角距离。
3.如权利要求2所述的场景展示方法,其特征在于,所述n个参考观察点的位置坐标存储于第一稀疏矩阵中,所述n个参考观察点的视角参数存储于第二稀疏矩阵中,所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置与所述n个参考观察点的视角参数在所述第二稀疏矩阵中的位置相对应;
所述调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数,具体为:
调取所述第一稀疏矩阵,从所述第一稀疏矩阵中获取所述n个参考观察点的位置坐标;
调取所述第二稀疏矩阵,根据所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置,从所述第二稀疏矩阵中获取与所述n个参考观察点对应的视角参数。
4.如权利要求1~3任一项所述的场景展示方法,其特征在于,所述根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数,具体为:
根据所述当前观察点的位置坐标和所述n个参考观察点的位置坐标,分别计算所述当前观察点与所述n个参考观察点之间的欧氏距离;
根据所述当前观察点与所述n个参考观察点之间的欧氏距离,采用线性插值算法,计算出所述当前观察点的视角参数,所述线性插值算法的计算公式如下:
matrix _ value ( x , y , z ) = Sum ( 1 dist [ i ] 2 * value [ i ] ) Sum ( 1 dist [ i ] 2 )
其中,dist[i]为所述当前观察点与第i个参考观察点之间的欧氏距离,value[i]为第i个参考观察点的视角参数。
5.如权利要求1~3任一项所述的场景展示方法,其特征在于,所述根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数,具体为:
将所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数代入插值算法多项式,求解出所述插值算法多项式中的系数;所述插值算法多项式如下:
a 0 + a 1 x 1 + a 2 x 1 2 + . . . + a n x 1 n = y 1 a 0 + a 1 x 2 + a 2 x 2 2 + . . . + a n x 2 n = y 2 . . . a 0 + a 1 x n + a 2 x n 2 + . . . + a n x n n = y n
其中,a0、a1、…、an为所述系数,x1、x2、…、xn为所述n个参考观察点的位置坐标,y1、y2、…、yn为所述n个参考观察点的视角参数;
将所述当前观察点的位置坐标,代入求解出系数后的插值算法多项式,计算出所述当前观察点的视角参数。
6.一种场景展示方法,其特征在于,包括:
获取当前观察点的位置坐标;
调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数;其中,n≥2;
判断所述当前观察点的位置坐标是否与所述n个参考观察点中的至少一个参考观察点的位置坐标相同;
若所述当前观察点的位置坐标与所述n个参考观察点中的至少一个参考观察点的位置坐标相同,则将所述参考观察点的视角参数作为所述当前观察点的视角参数;
若所述当前观察点的位置坐标与所述n个参考观察点的位置坐标均不相同,则根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数;
根据所述当前观察点的视角参数,对场景进行渲染。
7.如权利要求6所述的场景展示方法,其特征在于,所述视角参数包括视角向量和视角距离。
8.如权利要求7所述的场景展示方法,其特征在于,所述n个参考观察点的位置坐标存储于第一稀疏矩阵中,所述n个参考观察点的视角参数存储于第二稀疏矩阵中,所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置与所述n个参考观察点的视角参数在所述第二稀疏矩阵中的位置相对应;
所述调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数,具体为:
调取所述第一稀疏矩阵,从所述第一稀疏矩阵中获取所述n个参考观察点的位置坐标;
调取所述第二稀疏矩阵,根据所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置,从所述第二稀疏矩阵中获取与所述n个参考观察点对应的视角参数。
9.如权利要求6~8任一项所述的场景展示方法,其特征在于,所述根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数,具体为:
根据所述当前观察点的位置坐标和所述n个参考观察点的位置坐标,分别计算所述当前观察点与所述n个参考观察点之间的欧氏距离;
根据所述当前观察点与所述n个参考观察点之间的欧氏距离,采用线性插值算法,计算出所述当前观察点的视角参数,所述线性插值算法的计算公式如下:
matrix _ value ( x , y , z ) = Sum ( 1 dist [ i ] 2 * value [ i ] ) Sum ( 1 dist [ i ] 2 )
其中,dist[i]为所述当前观察点与第i个参考观察点之间的欧氏距离,value[i]为第i个参考观察点的视角参数。
10.如权利要求6~8任一项所述的场景展示方法,其特征在于,所述根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数,具体为:
将所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数代入插值算法多项式,求解出所述插值算法多项式中的系数;所述插值算法多项式如下:
a 0 + a 1 x 1 + a 2 x 1 2 + . . . + a n x 1 n = y 1 a 0 + a 1 x 2 + a 2 x 2 2 + . . . + a n x 2 n = y 2 . . . a 0 + a 1 x n + a 2 x n 2 + . . . + a n x n n = y n
其中,a0、a1、…、an为所述系数,x1、x2、…、xn为所述n个参考观察点的位置坐标,y1、y2、…、yn为所述n个参考观察点的视角参数;
将所述当前观察点的位置坐标,代入求解出系数后的插值算法多项式,计算出所述当前观察点的视角参数。
11.一种场景展示装置,其特征在于,包括:
当前观察点获取单元,用于获取当前观察点的位置坐标;
参考观察点调取单元,用于调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数;其中,n≥2;
视角参数计算单元,用于根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数;和,
场景展示单元,用于根据所述当前观察点的视角参数,对场景进行渲染。
12.如权利要求11所述的场景展示装置,其特征在于,所述视角参数包括视角向量和视角距离。
13.如权利要求12所述的场景展示装置,其特征在于,所述场景展示装置还包括:
存储单元,用于将所述n个参考观察点的位置坐标存储于第一稀疏矩阵中,将所述n个参考观察点的视角参数存储于第二稀疏矩阵中,所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置与所述n个参考观察点的视角参数在所述第二稀疏矩阵中的位置相对应;
所述参考观察点调取单元包括:
第一调取子单元,用于调取所述第一稀疏矩阵,从所述第一稀疏矩阵中获取所述n个参考观察点的位置坐标;和,
第二调取子单元,用于调取所述第二稀疏矩阵,根据所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置,从所述第二稀疏矩阵中获取与所述n个参考观察点对应的视角参数。
14.如权利要求11~13任一项所述的场景展示装置,其特征在于,所述视角参数计算单元包括:
距离计算子单元,用于根据所述当前观察点的位置坐标和所述n个参考观察点的位置坐标,分别计算所述当前观察点与所述n个参考观察点之间的欧氏距离;和,
视角计算子单元,用于根据所述当前观察点与所述n个参考观察点之间的欧氏距离,采用线性插值算法,计算出所述当前观察点的视角参数,所述线性插值算法的计算公式如下:
matrix _ value ( x , y , z ) = Sum ( 1 dist [ i ] 2 * value [ i ] ) Sum ( 1 dist [ i ] 2 )
其中,dist[i]为所述当前观察点与第i个参考观察点之间的欧氏距离,value[i]为第i个参考观察点的视角参数。
15.如权利要求11~13任一项所述的场景展示装置,其特征在于,所述视角参数计算单元包括:
第一计算子单元,用于将所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数代入插值算法多项式,求解出所述插值算法多项式中的系数;所述插值算法多项式如下:
a 0 + a 1 x 1 + a 2 x 1 2 + . . . + a n x 1 n = y 1 a 0 + a 1 x 2 + a 2 x 2 2 + . . . + a n x 2 n = y 2 . . . a 0 + a 1 x n + a 2 x n 2 + . . . + a n x n n = y n
其中,a0、a1、…、an为所述系数,x1、x2、…、xn为所述n个参考观察点的位置坐标,y1、y2、…、yn为所述n个参考观察点的视角参数;和,
第二计算子单元,用于将所述当前观察点的位置坐标,代入求解出系数后的插值算法多项式,计算出所述当前观察点的视角参数。
16.一种场景展示装置,其特征在于,包括:
当前观察点获取单元,用于获取当前观察点的位置坐标;
参考观察点调取单元,用于调取预先设置的n个参考观察点的位置坐标和所述n个参考观察点的视角参数;其中,n≥2;
判断单元,用于判断所述当前观察点的位置坐标是否与所述n个参考观察点中的至少一个参考观察点的位置坐标相同;
视角参数代入单元,用于若所述当前观察点的位置坐标与所述n个参考观察点中的至少一个参考观察点的位置坐标相同,则将所述参考观察点的视角参数作为所述当前观察点的视角参数;
视角参数计算单元,用于若所述当前观察点的位置坐标与所述n个参考观察点的位置坐标均不相同,则根据所述当前观察点的位置坐标、所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数,采用插值算法,计算出所述当前观察点的视角参数;和,
场景展示单元,用于根据所述当前观察点的视角参数,对场景进行渲染。
17.如权利要求16所述的场景展示装置,其特征在于,所述视角参数包括视角向量和视角距离。
18.如权利要求17所述的场景展示装置,其特征在于,所述场景展示装置还包括:
存储单元,用于将所述n个参考观察点的位置坐标存储于第一稀疏矩阵中,将所述n个参考观察点的视角参数存储于第二稀疏矩阵中,所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置与所述n个参考观察点的视角参数在所述第二稀疏矩阵中的位置相对应;
所述参考观察点调取单元包括:
第一调取子单元,用于调取所述第一稀疏矩阵,从所述第一稀疏矩阵中获取所述n个参考观察点的位置坐标;和,
第二调取子单元,用于调取所述第二稀疏矩阵,根据所述n个参考观察点的位置坐标在所述第一稀疏矩阵中的位置,从所述第二稀疏矩阵中获取与所述n个参考观察点对应的视角参数。
19.如权利要求16~18任一项所述的场景展示装置,其特征在于,所述视角参数计算单元包括:
距离计算子单元,用于根据所述当前观察点的位置坐标和所述n个参考观察点的位置坐标,分别计算所述当前观察点与所述n个参考观察点之间的欧氏距离;和,
视角计算子单元,用于根据所述当前观察点与所述n个参考观察点之间的欧氏距离,采用线性插值算法,计算出所述当前观察点的视角参数,所述线性插值算法的计算公式如下:
matrix _ value ( x , y , z ) = Sum ( 1 dist [ i ] 2 * value [ i ] ) Sum ( 1 dist [ i ] 2 )
其中,dist[i]为所述当前观察点与第i个参考观察点之间的欧氏距离,value[i]为第i个参考观察点的视角参数。
20.如权利要求16~18任一项所述的场景展示装置,其特征在于,所述视角参数计算单元包括:
第一计算子单元,用于将所述n个参考观察点的位置坐标和所述n个参考观察点的视角参数代入插值算法多项式,求解出所述插值算法多项式中的系数;所述插值算法多项式如下:
a 0 + a 1 x 1 + a 2 x 1 2 + . . . + a n x 1 n = y 1 a 0 + a 1 x 2 + a 2 x 2 2 + . . . + a n x 2 n = y 2 . . . a 0 + a 1 x n + a 2 x n 2 + . . . + a n x n n = y n
其中,a0、a1、…、an为所述系数,x1、x2、…、xn为所述n个参考观察点的位置坐标,y1、y2、…、yn为所述n个参考观察点的视角参数;和,
第二计算子单元,用于将所述当前观察点的位置坐标,代入求解出系数后的插值算法多项式,计算出所述当前观察点的视角参数。
CN201510258188.4A 2015-05-19 2015-05-19 游戏场景展示方法和装置 Active CN104835198B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510258188.4A CN104835198B (zh) 2015-05-19 2015-05-19 游戏场景展示方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510258188.4A CN104835198B (zh) 2015-05-19 2015-05-19 游戏场景展示方法和装置

Publications (2)

Publication Number Publication Date
CN104835198A true CN104835198A (zh) 2015-08-12
CN104835198B CN104835198B (zh) 2018-09-14

Family

ID=53813062

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510258188.4A Active CN104835198B (zh) 2015-05-19 2015-05-19 游戏场景展示方法和装置

Country Status (1)

Country Link
CN (1) CN104835198B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106446515A (zh) * 2016-08-31 2017-02-22 上海联影医疗科技有限公司 一种三维医学图像显示方法及装置
CN106570923A (zh) * 2016-09-27 2017-04-19 乐视控股(北京)有限公司 一种画面渲染方法及装置
CN113144612A (zh) * 2021-04-25 2021-07-23 上海雷鸣文化传播有限公司 一种基于三维扫描的游戏场景设计方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090079761A1 (en) * 2007-09-20 2009-03-26 Yoshiyuki Kokojima Apparatus, method, and computer program product for rendering multi-viewpoint images
CN102393970A (zh) * 2011-12-13 2012-03-28 北京航空航天大学 一种物体三维建模与渲染系统及三维模型生成、渲染方法
CN102467756A (zh) * 2010-10-29 2012-05-23 国际商业机器公司 用于三维场景的透视方法及装置
CN102521520A (zh) * 2011-12-22 2012-06-27 北京像素软件科技股份有限公司 应用于3d网络游戏中的相机控制方法
CN103345771A (zh) * 2013-06-28 2013-10-09 中国科学技术大学 一种基于建模的图像高效渲染方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090079761A1 (en) * 2007-09-20 2009-03-26 Yoshiyuki Kokojima Apparatus, method, and computer program product for rendering multi-viewpoint images
CN102467756A (zh) * 2010-10-29 2012-05-23 国际商业机器公司 用于三维场景的透视方法及装置
CN102393970A (zh) * 2011-12-13 2012-03-28 北京航空航天大学 一种物体三维建模与渲染系统及三维模型生成、渲染方法
CN102521520A (zh) * 2011-12-22 2012-06-27 北京像素软件科技股份有限公司 应用于3d网络游戏中的相机控制方法
CN103345771A (zh) * 2013-06-28 2013-10-09 中国科学技术大学 一种基于建模的图像高效渲染方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
俞洲等: "基于CUDA海量空间数据实时体绘制研究", 《计算机工程与设计》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106446515A (zh) * 2016-08-31 2017-02-22 上海联影医疗科技有限公司 一种三维医学图像显示方法及装置
CN106570923A (zh) * 2016-09-27 2017-04-19 乐视控股(北京)有限公司 一种画面渲染方法及装置
CN113144612A (zh) * 2021-04-25 2021-07-23 上海雷鸣文化传播有限公司 一种基于三维扫描的游戏场景设计方法

Also Published As

Publication number Publication date
CN104835198B (zh) 2018-09-14

Similar Documents

Publication Publication Date Title
US11342000B2 (en) Immersive virtual reality production and playback for storytelling content
CN106251403B (zh) 一种虚拟立体场景实现的方法、装置和系统
JP6433559B1 (ja) 提供装置および提供方法、プログラム
US20170160795A1 (en) Method and device for image rendering processing
JP7130653B2 (ja) 画像表示方法、画像配信方法、画像表示装置及び画像配信装置
JP2005295004A (ja) 立体画像処理方法および立体画像処理装置
CN108771866B (zh) 虚拟现实中的虚拟对象控制方法及装置
US20160323507A1 (en) Method and apparatus for generating moving photograph
CN106774937A (zh) 一种增强现实技术中的图像交互方法及其装置
CN104012088A (zh) 图像处理装置以及图像处理方法
US20170235462A1 (en) Interaction control method and electronic device for virtual reality
CN104835198A (zh) 场景展示方法和装置
WO2022062903A1 (zh) 弹幕播放方法、相关设备及存储介质
JP6463346B2 (ja) ゲーム画像生成装置およびプログラム
CN104662602A (zh) 显示装置、控制系统和控制程序
WO2018000608A1 (zh) 一种虚拟现实系统中分享全景影像的方法和电子设备
CN106598250B (zh) 一种vr显示方法、装置和电子设备
CN106170094A (zh) 全景视频的直播方法及装置
CN105915877A (zh) 一种三维视频的自由观影方法及设备
JP7212611B2 (ja) 画像配信方法、画像表示方法、画像配信装置及び画像表示装置
CN109993822A (zh) 一种水墨风格渲染方法和装置
CN108243349A (zh) 一种信息处理方法及装置
CN106325505B (zh) 基于视点跟踪的控制方法和装置
CN111862291A (zh) 水系的烘焙方法及装置、存储介质、电子装置
US20190304202A1 (en) Method and apparatus for placing media file, storage medium, and virtual reality apparatus

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant