0

第 07 课倾向于给我一个想法,即我们可以在许多渲染器中加载一个对象,以便从不同的视图中查看它。但是我有很多问题:属性dirty是对象及其属性的属性,而不是渲染器的功能:所以当第一个渲染器完成时,他将所有属性都设置为true,下面的渲染器什么都没有去做。

例如,如果我的对象(根)是具有 2 个子对象(child1,child2)的空对象,其中不包含空对象: - 第一个渲染器工作正常(即它添加根、child1 和 child2),但其他渲染器只添加空对象对象,因为 root.dirty==false(参见 renderer3D.hs,第 591 行) - 第一个渲染器计算适合场景的边界框,另一个不计算,因为 root/child1/child2.points.dirty==false(参见 renderer3D .js 在第 793 行)

所以我的问题是:是否有可能拥有 1 个复杂对象并在不同的渲染器中管理它(而每个对象都有一个取决于渲染器的属性:脏)?或者我应该复制它并链接事件,以便在其他渲染中报告 1 个渲染中的转换?还是我应该做更多的修改?

4

1 回答 1

1

我刚刚创建了一个 jsfiddle 来创建一个你说的场景

http://jsfiddle.net/haehn/ZdzeR/

一切正常:

场景是一个 X.object,它包含一个网格和一个立方体。将它添加到所有 3 个渲染器可以正常工作并显示两个对象。

于 2012-05-28T23:41:05.050 回答