Как стать автором
Обновить

Комментарии 5

Статья интересная. Только абсолютно бессмысленная. Alwar Engine — закрытая разработка.
Если нет, где можно скачать и попробовать? Сколько стоит лицензия?
Автор, а кроме игр жанра ZHOPA (не смог сдержаться чтоб так не написать) на этом вашем движке есть на что посмотреть? Любопытства ради спрашиваю.
void SetTexture(DWORD _stage, IDirect3DTexture9* _texture);
void SetPixelShader(IDirect3DPixelShader9* _shader);
void SetRenderTarget(IDirect3DTexture9* _texture);

как-то это не очень кроссплатформенно выглядит…
На каждой платформе методы CRenderDevice имеют аналогичные параметры, например:
void SetTexture(unsigned int _stage, dsgcm::CGcmSurface* _surface);
void SetPixelShader(dsgcm::ShaderInfo* _shader);

Платформонезависимый код не работает с системными типами напрямую. На верхнем уровне данные методы используются в виде:
m_RenderDevice.SetPixelShader(pixel_shader? pixel_shader->Get(): 0);
m_RenderDevice.SetTexture(0, _texture->Get()->Get());

При этом обертка над системной текстурой и системным шейдером в методах Get() возвращает объект, тип которого адекватен платформе.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий