Work on MSAA support

This commit is contained in:
Jack Andersen
2018-01-06 19:17:14 -10:00
parent db82ba674b
commit 1dc69c3468
12 changed files with 242 additions and 123 deletions

View File

@@ -51,8 +51,7 @@ public:
virtual const std::vector<SystemString>& getArgs() const=0;
/* Constructors/initializers for sub-objects */
virtual std::shared_ptr<IWindow> newWindow(SystemStringView title, uint32_t drawSamples)=0;
virtual std::shared_ptr<IWindow> newWindow(SystemStringView title)=0;
};
int
@@ -62,6 +61,8 @@ ApplicationRun(IApplication::EPlatformType platform,
SystemStringView friendlyName,
SystemStringView pname,
const std::vector<SystemString>& args,
uint32_t samples = 1,
uint32_t anisotropy = 1,
bool singleInstance=true);
extern IApplication* APP;
@@ -71,6 +72,8 @@ ApplicationRun(IApplication::EPlatformType platform,
SystemStringView uniqueName,
SystemStringView friendlyName,
int argc, const SystemChar** argv,
uint32_t samples = 1,
uint32_t anisotropy = 1,
bool singleInstance=true)
{
if (APP)
@@ -78,7 +81,8 @@ ApplicationRun(IApplication::EPlatformType platform,
std::vector<SystemString> args;
for (int i=1 ; i<argc ; ++i)
args.push_back(argv[i]);
return ApplicationRun(platform, cb, uniqueName, friendlyName, argv[0], args, singleInstance);
return ApplicationRun(platform, cb, uniqueName, friendlyName, argv[0], args,
samples, anisotropy, singleInstance);
}
}

View File

@@ -11,6 +11,12 @@ namespace boo
{
struct BaseGraphicsData;
struct GLContext
{
uint32_t m_sampleCount = 1;
uint32_t m_anisotropy = 1;
};
class GLDataFactory : public IGraphicsDataFactory
{
public:

View File

@@ -45,7 +45,7 @@ public:
ObjToken<IShaderPipeline> newShaderPipeline(const char* vertSource, const char* fragSource,
std::vector<uint8_t>* vertBlobOut,
std::vector<uint8_t>* fragBlobOut,
const ObjToken<IVertexFormat>& vtxFmt, unsigned targetSamples,
const ObjToken<IVertexFormat>& vtxFmt,
BlendFactor srcFac, BlendFactor dstFac, Primitive prim,
ZTest depthTest, bool depthWrite, bool colorWrite,
bool alphaWrite, CullMode culling);