A node organization method for 3D objects in virtual scene is presented. The three attribute positions, rotation, scale, local coordinate system and world coordinate system involved in the process of node organization of 3D objects in scene are processed. The local coordinate system represents nodes. The world coordinate system represents the actual position, rotation and scaling of the node object relative to the parent node object. The nodalization organization method of the 3D object in the virtual scene includes defining the node object, rendering the node, and processing the new node. Four parts of the process of moving a subnode under a branch of a node tree or a subnode tree to another node.
【技术实现步骤摘要】
一种3D对象在虚拟场景中的节点化组织方法
本专利技术涉及计算机图形
,具体来说,3D对象在虚拟场景中节点化组织方法的技术实现。
技术介绍
3D场景中组织虚拟节点的一种方式是扁平化的组织方式,即所有的节点处于平行位置,相互之间没有父子关系,修改一个节点的属性不会影响其他节点,由于这种组织方式计算量相对较少,也不用考虑其他节点的变化带来的一些额外的判断(通常是由节点的不均等缩放造成的矩阵计算问题),所以一般的模型展示引擎普遍采用这种组织方式,但是这种组织方式的缺点也同样明显,在大型复杂环境下,对象与对象之间存在明显的层级关系,如餐桌上的茶杯,这时如果要正确的让茶杯随着餐桌一同运动,则需要分别设置餐桌对象和茶杯对象的属性才能并且在设置茶杯的属性时还需要考虑餐桌的运动才能呈现出正确的效果,这样对于有复杂层级关系的大型应用来说是致命的,而且现有技术只在PC端3D引擎中实现,所以为了应对复杂的场景应用,需要设计一套能够处理复杂层级关系的场景组织方法,实现节点对象在节点树中变化后渲染形态一致的技术。
技术实现思路
为了达到上述目的,本专利技术提供一种3D对象在虚拟场景中的节点 ...
【技术保护点】
1.一种3D对象在虚拟场景中的节点化组织方法,针对3D对象在场景中进行节点化的过程中所涉及的节点对象的三个属性位置(position)、旋转(rotation)、缩放(scale)以及局部坐标系(Local)和世界坐标系(World)进行处理,其特征在于,局部坐标系表示节点对象相对于父节点对象的位置、旋转以及缩放,世界坐标系表示节点对象在3D空间中的实际位置、旋转以及缩放;所述3D对象在虚拟场景中的节点化组织方法包括对节点对象进行定义、对节点进行渲染处理对新生节点的处理、将一个节点树分支下的子节或者子节点树移动到另一个节点下的处理四个部分;对节点对象进行定义,包括如下几个步 ...
【技术特征摘要】
1.一种3D对象在虚拟场景中的节点化组织方法,针对3D对象在场景中进行节点化的过程中所涉及的节点对象的三个属性位置(position)、旋转(rotation)、缩放(scale)以及局部坐标系(Local)和世界坐标系(World)进行处理,其特征在于,局部坐标系表示节点对象相对于父节点对象的位置、旋转以及缩放,世界坐标系表示节点对象在3D空间中的实际位置、旋转以及缩放;所述3D对象在虚拟场景中的节点化组织方法包括对节点对象进行定义、对节点进行渲染处理对新生节点的处理、将一个节点树分支下的子节或者子节点树移动到另一个节点下的处理四个部分;对节点对象进行定义,包括如下几个步骤;s11、用position、rotation以及scale分别表示节点对象在世界坐标系下的位置、旋转以及缩放;s12、用localPosition、localRotation、localScale分别表示节点对象在局部坐标系下的位置、旋转以及缩放;s13、节点对象通过_parent属性设置其父节点,通过_children数组索引其子节点,以建立节点数的双向链表,保证从任意一个节点可以遍历到整颗节点树;并且提供了iterateUp以及iterateDown调用分别用来从当前节点向上遍历到场景节点树的根节点,以及向下遍历该节点的所有子节点;对节点进行渲染,是通过分别计算出节点的position、rotation、scale属性值来组成矩阵传给渲染引擎进行渲染实现的;其中,position、rotation、scale的计算均需要调用iterateUP遍历其所有父节点...
【专利技术属性】
技术研发人员:程正,
申请(专利权)人:成都明镜视觉科技有限公司,
类型:发明
国别省市:四川,51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。