1
讓說,在這個例子中,我有世界類。世界的模式集合:管理HLSL效果
class World
{
public:
map<string, Model*> Models;
};
模式將是在應用程序的所有實體抽象類,例如汽車,球,高山或立方體。
,問題是 - 什麼是用於管理該模型效果最好的做法。假設我有4個效果文件:base1.fx,base2.fx,base3.fx,bas4.fx。他們每個人都有類接口,這可能會被綁定到(IBaseEffect1,IBaseEffect2,IBaseEffect3,IBaseEffect4)模型。
現在,我應該考慮各自獨立的模型,並做一些事情,如:
Cube1.Bind(IBaseEffect2);
Car.Bind(IBaseEffect3);
凡模型將不得不管理作用的能力,所以我會做:
World::Render()
{
foreach model -> Render();
}
這是實際的解決方案爲我的引擎。
或者更好的是管理的影響獨立的,這樣做:
IBaseEffect1.SetAsActual();
foreach Model which should be considered for effect1 -> Render();
IBaseEffect2.SetAsActual();
foreach Model which should be considered for effect2 -> Render();
等等
也許是我整個的觀點是錯誤的,應該由其他辦法嗎?
這就是我所期望的。感謝您的確認和答覆 – 2013-02-20 16:57:21