1 / 6

Neighbor Isolation Culling

Neighbor Isolation Culling. 例子说明. 本文中所有例子均使用类似如下的三角形网格条带: 并且使用其侧视图描述空间形状(方便 2D 表达) 例如: 原图 侧视图 BVH (忽略最底层组成一个正方形的三角形对). 自碰撞检测 典型算法 1. 算法: SelfCollide (Node n) if n is leaf node return SelfCollide (n-> leftChild ) SelfCollide (n-> rightChild ) Collide(n-> leftChild , n-> rightChild )

skyla
Download Presentation

Neighbor Isolation Culling

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Neighbor Isolation Culling

  2. 例子说明 • 本文中所有例子均使用类似如下的三角形网格条带: • 并且使用其侧视图描述空间形状(方便2D表达) • 例如: • 原图侧视图 BVH • (忽略最底层组成一个正方形的三角形对)

  3. 自碰撞检测 典型算法 1 • 算法: • SelfCollide(Node n) • if n is leaf node return • SelfCollide(n->leftChild) • SelfCollide(n->rightChild) • Collide(n->leftChild, n->rightChild) • 特点: • BVH中所有中间结点其左右子树对 都会进行Collide操作 • 代价极大。

  4. 自碰撞检测 典型算法 2 • P. Volino and N. M. Thalmann, 1994 • 算法: • SelfCollide(Node n) • if n is leaf node then return • if normal cone test & contour test passed then return // culling here • SelfCollide(n->leftChild) • SelfCollide(n->rightChild) • Collide(n->leftChild, n->rightChild)

  5. 自碰撞检测 典型算法 2 • 例子: • 其左右孩子需要做collide操作的结点 • 特点:大大减少了collide操作的任务量 • 问题:contour test似乎没有很好的实现

  6. 算法2存在的问题 • 对于所有做collide操作的结点对,一定会递归下降到叶子结点,因为这对子树对应的两片三角网是邻接的——包含邻接三角形的任意层次包围盒均相交 • 对于更大规模的格网,适应性不佳 • 如下例:

More Related