我建立與XNA遊戲的那一刻,和我現在有我的遊戲對象組件設置像這樣:數據存儲在遊戲對象
class Character : GameComponent
{
public int health, state;
public float speed;
}
等 由於製作菜單系統,我已經玩過數據容器類型的對象,比如我有一個DataContainer的基類,然後是像IntContainer,FloatContainer這樣的子類。根據它們的子類,它們返回它們包含的數據類型。我想將這個菜單系統連接到組件,以便我可以輕鬆編輯它們,我想知道是否應該更改我的組件,以便也採用這種持有通用數據容器的模型,而不是顯式類型的數據,就像這樣:
class Character : GameComponent
{
public DataContainer[] data;
public int health()
{
return (data[0].getValue());
}
}
我可以保留適當的命名方法,所以在代碼中按名稱獲取值仍然很簡單。將引擎交換到這種數據存儲方法需要一些工作,所以我想知道是否有人有輸入,更通用的方法是否會以任何可衡量的方式影響性能?調用兩種方法來獲取比直接獲取值更糟糕的值嗎?
這樣做有很多優點和缺點,正如你所提出的,你的問題很大程度上取決於意見,也非常廣泛。 –
公平不夠,編輯更具體。 – Elliot