2009-01-27 25 views
2

據我所知,使用PhysX API,獲取NxActor的唯一方法是使用createActor方法從NxScene的實例中獲取。這真是讓我煩惱。我想保持我的代碼清潔,但我覺得沒有選擇,只能繞過從構造函數到構造函數的這個場景,以便類可以創建並引用actor。我猜想,或者我可以把場景變成全局的(eek!),但我認爲全局變量不是一個好主意。我想過的一個想法是讓我的類只存儲一個NxActorDesc(並讓他們通過消息傳遞將其提供給場景以創建角色),但他們確實需要引用NxActor,以便他們可以將其轉換與actor同步。PhysX NxActor問題

無論如何,我想看看別人可能具有的洞察力。你是否認爲我正在以正確的方式進行(將NxScene傳遍整個地方)?它感覺很噁心,但也許我只是瘋了。如果不是,我怎樣才能以更優雅的方式同步諸如Model類和NxActor之類的東西?提前致謝!

回答

0

如果你不想讓你的對象與演員直接耦合,我會建議一種不同的方法。你可以想出一種方法來註冊一個物體來讓物理更新它。然後,註冊這些對象的模塊將爲每個對象分配一個Actor,該Actor將用於定期設置對象的信息。這樣,您只有一個模塊與Actor/PhysX管理結合在一起,並且對象只需要一個允許使用物理信息更新它們的接口。